:root{--bg:#0d1020;--kort:#161b2e;--kant:#262e4d;--tekst:#eef0f7;--daemp:#9aa3c0;--guld:#f5c451;--neg:#ff8a8a;--pos:#7be0a4;--r:12px}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--tekst);font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-text-size-adjust:100%}
a{color:#9cc3ff}
h1{font-size:1.45rem;margin:6px 0 14px}h1 small{color:var(--daemp);font-weight:400;font-size:.9rem}
h2{font-size:1.05rem;margin:0 0 10px}
.ahead{position:sticky;top:0;z-index:5;background:rgba(13,16,32,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--kant)}
.ainner{max-width:1100px;margin:0 auto;padding:8px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.logo{color:var(--guld);white-space:nowrap}
.anav{display:flex;gap:2px;overflow-x:auto;flex:1;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.anav::-webkit-scrollbar{display:none}
.anav a{color:var(--daemp);text-decoration:none;padding:8px 10px;border-radius:8px;white-space:nowrap}
.anav a.aktiv{color:var(--tekst);background:var(--kort)}
.ud{display:flex;gap:8px;align-items:center;color:var(--daemp);font-size:.85rem}
.ud button{background:none;border:1px solid var(--kant);color:var(--daemp);border-radius:8px;padding:4px 8px;cursor:pointer}
@media (max-width:700px){.ainner{gap:4px}.anav{order:3;flex-basis:100%}.ud{margin-left:auto}}
.amain{max-width:1100px;margin:0 auto;padding:12px 12px 60px}
.kort{background:var(--kort);border:1px solid var(--kant);border-radius:var(--r);padding:14px;margin-bottom:14px}
.kort.lille{padding:10px}
.kort.advar{border-color:#7a5a2a}
.to{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.to2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:760px){.to{grid-template-columns:1fr}}
.tal4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:6px}
@media (max-width:700px){.tal4{grid-template-columns:1fr 1fr}}
.tal4 .kort{margin:0}.tal4 small{color:var(--daemp);display:block}.tal4 b{font-size:1.35rem}
.knapper{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}
.knapper.stor .knap{padding:14px 16px;font-size:1rem}
.knap,button.knap{display:inline-flex;align-items:center;gap:6px;background:#222944;color:var(--tekst);border:1px solid #39416a;border-radius:10px;padding:10px 14px;font:inherit;cursor:pointer;text-decoration:none;min-height:42px}
.knap.primaer{background:var(--guld);color:#1b1404;border-color:var(--guld);font-weight:700}
.knap.fare{background:#3a1c24;border-color:#6b2c3a;color:#ffb3c0}
.knap.lille{padding:4px 9px;min-height:32px;font-size:.85rem}
.knap.valgt{outline:2px solid var(--guld)}
.knap.stor{padding:14px 22px;font-size:1.05rem}
input,select,textarea{font:inherit;color:var(--tekst);background:#0f1326;border:1px solid #333b60;border-radius:9px;padding:10px;width:100%;min-height:42px}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid #4b6bd6;border-color:transparent}
label{display:block;color:var(--daemp);font-size:.85rem}
label input,label select,label textarea{margin-top:4px;color:var(--tekst)}
.felter{display:grid;gap:10px}
.tjek{display:flex;gap:8px;align-items:center;color:var(--tekst)}.tjek input{width:auto;min-height:0}
.raek{display:flex;gap:8px;align-items:center;margin:0 0 10px}.raek input{flex:1}.raek.wrap{flex-wrap:wrap}
.raek label{flex:0 1 auto}
.titelraek{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.titelraek .knapper{margin:0}
table{width:100%;border-collapse:collapse}
.liste th{text-align:left;color:var(--daemp);font-weight:500;font-size:.8rem;padding:6px;border-bottom:1px solid var(--kant)}
.liste td,table td{padding:7px 6px;border-bottom:1px solid #1f2540;vertical-align:middle}
.tabelwrap{overflow-x:auto}
.h{text-align:right;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}
.neg{color:var(--neg)}.pos{color:var(--pos)}.daemp{color:var(--daemp)}
small{color:var(--daemp)}
tr.sum td{font-weight:700;border-top:2px solid var(--kant)}
tr.nu td{background:rgba(255,122,89,.12)}
.besked{padding:10px 12px;border-radius:10px;margin:0 0 12px}.besked.ok{background:#173326;color:var(--pos)}.besked.fejl{background:#3a1c24;color:#ffb3c0}
.tilbage{display:inline-block;color:var(--daemp);text-decoration:none;margin:2px 0 4px}
.gitter{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-bottom:12px}
.vkort{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;background:var(--kort);border:1px solid var(--kant);border-radius:var(--r);padding:8px;color:var(--tekst);text-decoration:none}
.vkort.inaktiv{opacity:.5}
.vkort img{width:72px;height:54px;object-fit:cover;border-radius:8px;background:#000}
.vkort b{display:block}.vkort small{display:block}
.linje{display:flex;justify-content:space-between;gap:8px}.pris{color:var(--guld);font-weight:700}
img.stort{width:100%;max-height:260px;object-fit:cover;border-radius:10px;background:#000;display:block;margin-bottom:10px}
.billedform{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.billedform input{flex:1;min-width:180px}
.qrboks{width:140px;background:#fff;padding:8px;border-radius:8px}.qrboks svg{display:block;width:100%;height:auto}
.login{max-width:380px;margin:12vh auto;display:grid;gap:12px}.login h1{color:var(--guld)}
.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:var(--kort);border:1px solid var(--kant);border-radius:12px;padding:4px;margin-bottom:12px}
.seg button{background:none;border:0;color:var(--daemp);font:inherit;padding:10px 4px;border-radius:9px;cursor:pointer;font-weight:600}
.seg button.valgt{background:var(--guld);color:#1b1404}
.kamera{background:#000;border-radius:var(--r);overflow:hidden;margin-bottom:12px;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px}
#laeser{width:100%;max-width:520px}
#laeser video{border-radius:10px}
.fund{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:center}
.fund img{width:96px;height:72px;object-fit:cover;border-radius:8px;background:#000}
.fund .stortal{font-size:1.8rem;font-weight:800}
.antal{display:flex;gap:8px;align-items:center;margin:12px 0}
.antal button{width:52px;height:52px;font-size:1.5rem;border-radius:12px;background:#222944;color:var(--tekst);border:1px solid #39416a;cursor:pointer}
.antal input{text-align:center;font-size:1.4rem;font-weight:700;max-width:110px;height:52px}
.blink{animation:blink .6s}@keyframes blink{from{background:#2a4d36}}
.nustyring h2{color:#ff9b7d}
code{background:#0f1326;padding:2px 6px;border-radius:6px;font-size:.85rem}
