:root{
  --green:#1f8f2e; --green-d:#166b22; --orange:#f26522; --yellow:#ffd21e;
  --red:#d32f2f; --grey:#8a8a8a; --ink:#1c1c1c; --line:#e2e2e2; --bg:#f4f5f6;
  --muted:#6b7480; --ink-soft:#42505e;
  /* flade-tokens (lyst tema; overskrives i mørkt tema) */
  --surface:#fff; --surface-2:#fafbfc; --surface-3:#eef1f4;
  /* trafiklys */
  --tl-gron:#00B050; --tl-gron-tint:#e0f3e8; --tl-gron-line:#a3d8b8; --tl-gron-ink:#007a38;
  --tl-gul:#FFC000;  --tl-gul-tint:#fff3d6;  --tl-gul-line:#f2d78a;  --tl-gul-ink:#6e5200;
  --tl-rod:#E81123;  --tl-rod-tint:#fde7e8;  --tl-rod-line:#f4afb4;  --tl-rod-ink:#c00f1c;
  --tl-blaa:#1c4fa3; --tl-blaa-tint:#e8f0ff; --tl-blaa-line:#c3d6f5; --tl-blaa-ink:#173a6b;
  --radius:14px; --shadow:0 1px 2px rgba(18,28,42,.06),0 8px 22px rgba(18,28,42,.09);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
/* Blød scroll KUN ved manuelle anker-klik (.smooth sættes af JS EFTER load), så en genindlæsning
   med #anker ikke laver et "rul fra toppen og ned" – springet sker øjeblikkeligt. */
html.smooth{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html.smooth{scroll-behavior:auto}}
/* Ankre lander under det faste hoved (topbar + breadcrumb + fane-stribe), ikke skjult bagved. */
.card,.pagehead,.steps,[id]{scroll-margin-top:116px}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.45}
a{color:var(--green-d)}
h1,h2,h3{margin:.2em 0}
.muted{color:var(--muted)}
.small{font-size:13px}
.right{text-align:right}
.center{text-align:center}
.nowrap{white-space:nowrap}

/* ---------- Topbar ---------- */
/* Fastfrosset hoved: topbjælke + fane-stribe følger med ved scroll (også i fuld skærm). */
.apphead{position:sticky;top:0;z-index:60;box-shadow:0 2px 8px rgba(18,28,42,.10)}
.topbar{background:var(--orange);color:#fff;padding:11px 18px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.topbar .brand{font-weight:800;font-size:17px;display:flex;align-items:center;gap:10px}
.topbar .brand .brandlogo{height:30px;width:auto;display:block;background:#fff;border-radius:7px;padding:4px 8px}
.topbar a{color:#fff;text-decoration:none}
.topbar .nav{display:flex;flex-wrap:wrap;gap:4px}
.topbar .brand{text-decoration:none}
.topbar .nav a{padding:6px 11px;border-radius:8px;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:5px}
.topbar .nav a:hover{background:rgba(255,255,255,.15)}
.topbar .nav a.mod.active{background:rgba(255,255,255,.22)}
/* Tilbage/Hjem: samme højde som tema-, fuldskærm- og konfigurations-knapperne (padding 5px 10px · 13px · ikon 16px). */
.topbar .nav a.home{background:rgba(255,255,255,.15);padding:5px 10px;font-size:13px}
.topbar .nav a.home svg{width:16px;height:16px}
.topbar .nav a.newbtn{background:var(--green);color:#fff;font-weight:800;box-shadow:0 1px 5px rgba(0,0,0,.18)}
.topbar .nav a.newbtn:hover{background:var(--green-d)}
.topbar .nav a.newbtn svg{width:16px;height:16px}
/* Konfiguration-knap i højre side af topbjælken */
.topbar .who .cfg{background:rgba(255,255,255,.15);padding:5px 10px;border-radius:8px;font-weight:600;display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.topbar .who .cfg:hover{background:rgba(255,255,255,.28)}
.topbar .who .cfg.active{background:rgba(255,255,255,.30)}
.topbar .who .cfg svg{width:16px;height:16px}
/* Breadcrumb-sti: tynd stribe der altid viser hvor man er (Hjem › Modul › Visning) */
.crumbbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;background:#fbfcfd;border-bottom:1px solid var(--line);padding:4px 18px;font-size:12px;color:var(--grey);line-height:1.3}
.crumbbar a{color:var(--grey);text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.crumbbar a:hover{color:var(--ink);text-decoration:underline}
.crumbbar a svg{width:13px;height:13px}
.crumbbar .sep{opacity:.55}
.crumbbar .cur{color:var(--ink);font-weight:600}
/* Sekundær fane-stribe (modulets visninger) under den faste topbjælke */
.subnav{display:flex;align-items:center;flex-wrap:wrap;gap:4px;background:#fff;border-bottom:1px solid var(--line);padding:8px 18px}
.subnav a{padding:6px 13px;border-radius:8px;font-weight:600;font-size:14px;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:5px}
.subnav a:hover{background:var(--bg)}
.subnav a.tab.active{background:#e8f5ec;color:var(--green-d)}
.subnav a.newbtn{margin-left:auto;background:var(--green);color:#fff;font-weight:800;box-shadow:0 1px 5px rgba(31,143,46,.25)}
.subnav a.newbtn:hover{background:var(--green-d)}
.subnav a.newbtn svg{width:16px;height:16px}
/* Lodret menu-søjle (venstre) – toggler mellem modulets visninger. ~2,5 cm bred. */
:root{--rail-w:104px}
.sidenav{position:fixed;left:0;top:var(--apphead-h,86px);bottom:0;width:var(--rail-w);z-index:55;
  background:#fff;border-right:1px solid var(--line);padding:8px 6px;overflow-y:auto;
  display:flex;flex-direction:column;gap:4px;box-shadow:2px 0 8px rgba(18,28,42,.05)}
.sidenav a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;
  padding:8px 4px;border-radius:9px;font-weight:600;font-size:11.5px;line-height:1.2;color:var(--ink);
  text-decoration:none;overflow-wrap:anywhere;hyphens:auto}
.sidenav a:hover{background:var(--bg)}
.sidenav a.tab.active{background:#e8f5ec;color:var(--green-d)}
.sidenav a.newbtn{background:var(--green);color:#fff;font-weight:800;order:-1;margin-bottom:2px;box-shadow:0 1px 5px rgba(31,143,46,.25)}
.sidenav a.newbtn:hover{background:var(--green-d)}
.sidenav svg{width:18px;height:18px;flex:none}
.sidenav details{width:100%;position:relative}
.sidenav details>summary{list-style:none;cursor:pointer;padding:8px 4px;border-radius:9px;font-weight:600;font-size:11.5px;line-height:1.2;text-align:center;color:var(--ink)}
.sidenav details>summary::-webkit-details-marker{display:none}
.sidenav details>summary:hover{background:var(--bg)}
.wrap.has-rail{margin-left:calc(var(--rail-w) + 10px);margin-right:auto}
@media(max-width:640px){:root{--rail-w:74px}.sidenav a,.sidenav details>summary{font-size:10.5px}.wrap.has-rail{margin-left:calc(var(--rail-w) + 6px)}}
@media(max-width:560px){.topbar .nav a.home .hlabel{display:none}.topbar .who .cfg .hlabel{display:none}}

/* ---------- Modul-forside ---------- */
.hero{display:flex;align-items:center;gap:16px;margin:6px 0 22px}
.hero .hicon{width:56px;height:56px;border-radius:16px;background:var(--tl-gron-tint);color:var(--green-d);display:grid;place-items:center;flex:none}
.hero .hicon svg{width:30px;height:30px}
.hero h1{font-size:26px;letter-spacing:-.4px}
.hero p{margin:2px 0 0;color:var(--muted);font-size:14.5px}
.modgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:16px}
.modtile{display:flex;flex-direction:column;gap:11px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow);text-decoration:none;color:var(--ink);transition:transform .15s,border-color .15s,box-shadow .15s;position:relative;min-height:172px}
.modtile:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 8px 22px rgba(18,28,42,.12)}
.modtile .mi{width:52px;height:52px;border-radius:14px;display:grid;place-items:center}
.modtile .mi svg{width:27px;height:27px}
.modtile h3{font-size:16.5px;margin:0}
.modtile p{margin:0;font-size:13px;color:var(--muted);line-height:1.45}
.modtile .go{margin-top:auto;font-weight:700;font-size:13px;color:var(--green-d);display:inline-flex;align-items:center;gap:4px}
.modtile.soon{opacity:.7;pointer-events:none;background:#fafbfc}
.modtile .soon-tag{position:absolute;top:14px;right:14px;background:#eef1f4;color:#69737d;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:700}
.modtile.noaccess{position:relative;opacity:.6;filter:grayscale(1);pointer-events:none;background:#fafbfc;box-shadow:none}
.mi-gron{background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
.mi-blaa{background:var(--tl-blaa-tint);color:var(--tl-blaa-ink)}
.mi-orange{background:#fde9df;color:#b4531c}
.mi-gul{background:var(--tl-gul-tint);color:var(--tl-gul-ink)}
.mi-lilla{background:#efe7fb;color:#6b3fa0}
.mi-teal{background:#dbf3f0;color:#0f766e}
.mi-graa{background:#eef1f4;color:#69737d}
.topbar .who{font-size:13px;opacity:.95;display:flex;align-items:center;gap:12px}
.topbar .who .whoava{display:inline-flex;flex:none;margin-right:-6px}
.topbar .who .whoava .avatar{box-shadow:0 0 0 2px rgba(255,255,255,.65)}
.topbar .who .whoname a{text-decoration:underline}

/* ---------- Layout ---------- */
.wrap{max-width:1000px;margin:0 auto;padding:18px 16px 60px}
.wrap.narrow{max-width:720px}
.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin:4px 0 14px}
.pagehead h1{font-size:23px;letter-spacing:-.2px}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:6px}
.crumbs a{color:var(--muted)}

/* ===== Modul-vejledning: lille "!"-ikon → pop-up ===== */
.guide-launch{display:flex;justify-content:flex-end;gap:8px;margin:0 0 6px}
.guide-btn{width:32px;height:32px;border-radius:50%;border:none;background:var(--green);color:#fff;font-weight:900;font-size:18px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.15);font-family:Georgia,"Times New Roman",serif}
.guide-btn:hover{background:var(--green-d);transform:scale(1.06)}
.guide-btn.faq-btn{background:#2e6fdb}
.guide-btn.faq-btn:hover{background:#245bb5}
.faq-head{background:#2e6fdb !important}
.faq-item{border:1px solid var(--line);border-radius:10px;margin:0 0 8px;overflow:hidden;background:var(--surface-2)}
.faq-item>summary{cursor:pointer;font-weight:700;padding:10px 12px;list-style:none;color:var(--ink)}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::before{content:"▸";color:#2e6fdb;font-weight:900;margin-right:7px;display:inline-block}
.faq-item[open]>summary::before{content:"▾"}
.faq-item[open]>summary{color:#2e6fdb}
.faq-a{padding:0 12px 12px 30px;font-size:14px;line-height:1.55;color:var(--ink-soft)}
.guide-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1200;display:none;align-items:flex-start;justify-content:center;overflow:auto;padding:24px 12px}
.guide-modal.on{display:flex}
.guide-box{background:var(--surface);border-radius:14px;max-width:720px;width:100%;box-shadow:0 12px 40px rgba(0,0,0,.3);overflow:hidden}
.guide-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 18px;background:var(--green);color:#fff}
.guide-head h3{margin:0;font-size:17px}
.guide-x{background:rgba(255,255,255,.18);color:#fff;border:none;border-radius:8px;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer}
.guide-x:hover{background:rgba(255,255,255,.3)}
.guide-box .mod-guide{padding:16px 18px}
.mod-guide{font-size:14px;line-height:1.6;color:var(--ink-soft)}
.mod-guide .bg-step{margin:0 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.mod-guide .bg-step b:first-child{color:var(--green-d)}
.mod-guide .bg-step p{margin:4px 0 0}
.guide-badge{display:inline-block;background:var(--tl-gul-tint);color:var(--tl-gul-ink);border:1px solid var(--tl-gul-line);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:800;margin-left:6px}

.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}
.card.tight{padding:14px 16px}
.card h2{margin-top:0;font-size:17px;display:flex;align-items:center;gap:8px}
.card h2 .ico{width:30px;height:30px;border-radius:9px;background:var(--tl-gron-tint);color:var(--green-d);display:grid;place-items:center;flex:none}
.card h2 .ico svg{width:17px;height:17px}
.sectionhelp{color:var(--muted);font-size:13.5px;margin:.2em 0 12px}
.hr{border:none;border-top:1px solid var(--line);margin:16px 0}

/* ---------- Forms ---------- */
label{display:block;font-weight:600;margin:12px 0 4px;font-size:14px}
label.inline{display:inline-flex;align-items:center;gap:7px;font-weight:500;margin:0}
input[type=text],input[type=password],input[type=number],input[type=date],input[type=time],input[type=url],input[type=email],select,textarea{
  width:100%;padding:9px 11px;border:1px solid #cdd2d8;border-radius:9px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green)}
textarea{min-height:84px;resize:vertical}
.help{font-size:13px;color:var(--muted);margin:3px 0 0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px 16px}
@media(max-width:640px){.grid2,.grid3{grid-template-columns:1fr}}
.req{color:var(--red)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:7px;background:var(--green);color:#fff;border:none;padding:10px 18px;border-radius:9px;font-size:15px;font-weight:700;cursor:pointer;text-decoration:none;font-family:inherit}
.btn:hover{background:var(--green-d)}
.btn svg{width:17px;height:17px}
.btn-orange{background:var(--orange)}.btn-orange:hover{background:#d9541a}
.btn-grey{background:#5f6b76}.btn-grey:hover{background:#4c5761}
.btn-red{background:var(--red)}.btn-red:hover{background:#b3271f}
.btn-ghost{background:#fff;color:var(--green-d);border:1px solid var(--tl-gron-line)}
.btn-ghost:hover{background:var(--tl-gron-tint)}
.btn-sm{padding:6px 12px;font-size:13px;border-radius:8px}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;align-items:center}

/* Flash */
.flash{padding:11px 15px;border-radius:10px;margin-bottom:14px;font-weight:600;font-size:14px}
.flash.info{background:var(--tl-blaa-tint);color:var(--tl-blaa-ink)}
.flash.ok{background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
.flash.error{background:var(--tl-rod-tint);color:var(--tl-rod-ink)}

/* Checkbox / radio grid */
.checkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin-top:6px}
.chk{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:9px 12px;cursor:pointer;background:#fff;font-size:14px;font-weight:500}
.chk:hover{border-color:var(--tl-gron-line);background:#fafffb}
.chk input{width:auto;flex:none}
.chk.on{border-color:var(--tl-gron-line);background:var(--tl-gron-tint)}

/* YES/NO segmented */
.yn{display:inline-flex;gap:8px;margin-top:4px}
.yn label{margin:0}
.yn label span{display:inline-block;border:1px solid var(--line);border-radius:9px;padding:8px 18px;font-weight:700;cursor:pointer}
.yn input{position:absolute;opacity:0;pointer-events:none}
.yn input:checked+span{border-color:var(--green);background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
.yn.neg input:checked+span{border-color:var(--red);background:var(--tl-rod-tint);color:var(--tl-rod-ink)}

/* ---------- Tables ---------- */
/* Kebab-menu (⋮) – genbruges i lister/detaljer */
.kebab{position:relative;display:inline-block;vertical-align:top}
.kebab>summary{list-style:none;cursor:pointer;padding:0 10px;font-size:20px;line-height:30px}
.kebab>summary::-webkit-details-marker{display:none}
.kebab-menu{position:fixed;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(18,28,42,.24);padding:6px;min-width:220px;z-index:1200}
.kebab-menu .km-h{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);padding:8px 8px 2px;font-weight:700}
.kebab-menu .km-item{display:block;width:100%;text-align:left;padding:8px 9px;border:none;background:none;border-radius:8px;cursor:pointer;font:inherit;font-size:14px;color:var(--ink);text-decoration:none}
.kebab-menu .km-item:hover{background:var(--tl-gron-tint)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;border:1px solid var(--line);background:#fff}
table.list{width:100%;border-collapse:collapse;background:#fff}
/* Lange ord/e-mails/URL'er ombrydes i stedet for at presse tabellen bredere end siden (undgår vandret scroll).
   Lidt mere kompakt polstring, så brede tabeller (mange kolonner) passer i indholdsbredden uden vandret scroll. */
table.list th,table.list td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:13.5px;vertical-align:middle;overflow-wrap:anywhere;word-break:break-word}
table.list th{background:#f7f8f9;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}
table.list tbody tr:last-child td{border-bottom:none}
table.list tr.clickable{cursor:pointer}
table.list tr.clickable:hover td{background:#f6fbf7}
/* Kompakt tabel på smallere skærme, så en hel række kan ses uden vandret scroll-bar. */
@media(max-width:900px){
  table.list th,table.list td{padding:7px 8px;font-size:12.5px}
  /* Tillad ellers "nowrap"-celler at ombryde på små skærme (datoer/knapper er stadig korte). */
  table.list td.nowrap,table.list th.nowrap{white-space:normal}
}
/* Kompetence-matrix */
.cmatrix{border-collapse:collapse;font-size:13px;white-space:nowrap}
.cmatrix th,.cmatrix td{border:1px solid var(--line);padding:6px 8px;text-align:center}
.cmatrix thead th{background:#f7f8f9;font-size:11px;font-weight:700;color:var(--muted);vertical-align:bottom}
.cmatrix th.grp{text-align:center;color:var(--tl-blaa-ink);background:#eef2f7;border-bottom:2px solid var(--tl-blaa-line);white-space:nowrap;padding:5px 8px;font-size:11.5px}
.cmatrix th.rot{height:128px;padding:4px 0;vertical-align:bottom}
.cmatrix th.rot span{writing-mode:vertical-rl;transform:rotate(180deg);display:inline-block;font-size:11px;font-weight:600;line-height:1.1;max-height:118px;overflow:hidden}
.cmatrix td{width:26px;min-width:26px}
.cmatrix th.emp,.cmatrix td.emp{text-align:left;position:sticky;left:0;background:#fff;z-index:1;font-weight:700;white-space:nowrap;width:auto;min-width:150px}
.cmatrix thead th.emp{background:#f7f8f9;vertical-align:middle}
.cmatrix tr.clickable:hover td{background:#f6fbf7}
.cdot{display:inline-block;width:15px;height:15px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}
.cdot-gron{background:var(--tl-gron)}.cdot-gul{background:var(--tl-gul)}.cdot-rod{background:var(--tl-rod)}.cdot-graa{background:#dfe4ea}.cdot-blaa{background:var(--tl-blaa)}
.clegend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin:8px 0 0;align-items:center}
.clegend span{display:inline-flex;align-items:center;gap:6px}

.matrix{width:100%;border-collapse:collapse}
.matrix th,.matrix td{border:1px solid var(--line);padding:8px 10px;font-size:14px;text-align:left}
.matrix th{background:#f7f8f9;font-weight:700}
.matrix td.c{text-align:center;width:120px}

/* Pills */
.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid transparent;white-space:nowrap}
.pill-gron{background:var(--tl-gron-tint);color:var(--tl-gron-ink);border-color:var(--tl-gron-line)}
.pill-gul{background:var(--tl-gul-tint);color:var(--tl-gul-ink);border-color:var(--tl-gul-line)}
.pill-rod{background:var(--tl-rod-tint);color:var(--tl-rod-ink);border-color:var(--tl-rod-line)}
.pill-blaa{background:var(--tl-blaa-tint);color:var(--tl-blaa-ink);border-color:var(--tl-blaa-line)}
.pill-graa{background:#eef1f4;color:#69737d;border-color:#dbe0e6}
.pill-orange{background:#fde9df;color:#b4531c;border-color:#f4c9a8}
.tag{display:inline-block;background:#eef1f4;color:#4a555f;border-radius:7px;padding:2px 9px;font-size:12.5px;font-weight:600;margin:2px 4px 2px 0}

/* ---------- Steps / workflow ---------- */
.steps{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 4px}
.step{flex:1;min-width:120px;background:#f1f3f5;border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:13px;position:relative}
.step .n{font-weight:800;font-size:12px;color:var(--muted)}
.step .t{font-weight:700;color:var(--ink-soft)}
.step.done{background:var(--tl-gron-tint);border-color:var(--tl-gron-line)}
.step.done .n,.step.done .t{color:var(--tl-gron-ink)}
.step.current{background:#fff;border-color:var(--green);box-shadow:0 0 0 2px var(--tl-gron-tint)}
.step.current .t{color:var(--green-d)}
a.step{text-decoration:none;color:inherit;cursor:pointer}
a.step:hover{border-color:var(--green)}
a.step:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Definition list (read view) */
dl.kv{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 18px}
dl.kv dt{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);align-self:center}
dl.kv dd{margin:0;font-size:15px;font-weight:600}
@media(max-width:560px){dl.kv{grid-template-columns:1fr;gap:2px 0}dl.kv dd{margin-bottom:8px}}

/* ---------- KPI tiles + stats ---------- */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow)}
.kpi .num{font-size:30px;font-weight:800;letter-spacing:-.5px;line-height:1}
.kpi .lbl{font-size:12.5px;color:var(--muted);font-weight:600;margin-top:5px}
.kpi.accent-red .num{color:var(--tl-rod-ink)}
.kpi.accent-orange .num{color:#b4531c}
.kpi.accent-green .num{color:var(--tl-gron-ink)}
.kpi.accent-blue .num{color:var(--tl-blaa-ink)}
/* Kompakt genvejs-række (lavere fliser) */
.kpis.slim{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.kpis.slim .kpi{padding:9px 14px}
.kpis.slim .kpi .num{font-size:20px}
.kpis.slim .kpi .lbl{margin-top:2px}
.kpis.slim .kpi svg{width:20px;height:20px}

.statbars{margin-top:6px}
.statbar{display:grid;grid-template-columns:150px 1fr 42px;align-items:center;gap:10px;margin:7px 0;font-size:13.5px}
.statbar .lab{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.statbar .track{background:#eef1f4;border-radius:999px;height:16px;overflow:hidden}
.statbar .fill{height:100%;border-radius:999px;background:var(--green);min-width:2px}
.statbar .val{text-align:right;font-weight:700;color:var(--ink-soft)}
.statbar .fill.c-rod{background:var(--tl-rod)}.statbar .fill.c-gul{background:var(--tl-gul)}
.statbar .fill.c-blaa{background:var(--tl-blaa)}.statbar .fill.c-orange{background:var(--orange)}
@media(max-width:560px){.statbar{grid-template-columns:110px 1fr 38px}}

/* HOC ladder */
.hoc{list-style:none;padding:0;margin:8px 0 0}
.hoc li{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:9px 12px;margin-bottom:7px}
.hoc li .lv{flex:none;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font-weight:800;font-size:14px;background:#eef1f4;color:var(--muted)}
.hoc li .txt{font-size:14px}
.hoc li .txt b{display:block}
.hoc li.on{border-color:var(--tl-gron-line);background:var(--tl-gron-tint)}
.hoc li.on .lv{background:var(--tl-gron);color:#fff}
.hoc-scale-1 .lv,.hoc-scale-2 .lv{background:var(--tl-rod)!important;color:#fff!important}
/* height cue: higher level = stronger */

/* Kalender */
.calnav{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.calnav .m{font-weight:800;font-size:17px;min-width:150px}
.calnav a{text-decoration:none;font-weight:700;color:var(--green-d);border:1px solid var(--line);border-radius:8px;padding:5px 12px}
.calnav a:hover{background:var(--tl-gron-tint);border-color:var(--tl-gron-line)}
.cal{display:grid;grid-template-columns:48px repeat(5,1fr);gap:5px}
.cal .cah{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);text-align:center;padding:3px}
.cal .cah.wk{text-align:center}
.cal .wknum{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--muted);background:#f4f6f8;border-radius:8px}
.cal .cell{min-height:82px;border:1px solid var(--line);border-radius:9px;padding:5px 6px;background:#fff;overflow:hidden}
.cal .cell.blank{background:transparent;border:none}
.cal .cell.today{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}
.cal .dnum{font-weight:700;color:var(--ink-soft);font-size:11.5px}
.cal .ev{display:block;background:var(--tl-blaa-tint);color:var(--tl-blaa-ink);border-radius:5px;padding:1px 6px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;text-decoration:none}
.cal .ev-afventer{background:var(--tl-gul-tint);color:var(--tl-gul-ink)}
.cal .ev-gennemfoert{background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
/* Global kalender: 7 dage (inkl. weekend) + type-farvede events */
.cal.cal7{grid-template-columns:48px repeat(7,1fr)}
.cal .ev-aktion{background:#fde9df;color:#b4531c}
.cal .ev-uddannelse{background:var(--tl-blaa-tint);color:var(--tl-blaa-ink)}
.cal .ev-aftale{background:#dbf3f0;color:#0f766e}
.cal .ev-ferie{background:#eef1f4;color:#42505e}
.cal .ev-syg{background:var(--tl-rod-tint);color:var(--tl-rod-ink)}
.callegend{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.callegend .lg{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 10px}
.callegend .lg-aktion{background:#fde9df;color:#b4531c}
.callegend .lg-uddannelse{background:var(--tl-blaa-tint);color:var(--tl-blaa-ink)}
.callegend .lg-aftale{background:#dbf3f0;color:#0f766e}
.callegend .lg-ferie{background:#eef1f4;color:#42505e}
.callegend .lg-syg{background:var(--tl-rod-tint);color:var(--tl-rod-ink)}
@media(max-width:560px){.cal .cell{min-height:56px;font-size:10px}.cal .ev{font-size:10px}.cal.cal7{grid-template-columns:26px repeat(7,1fr);gap:3px}}
/* Deltager-checkbokse (aftaler) */
.chkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 14px}
.chkgrid .chk{display:flex;align-items:center;gap:7px;font-weight:500;margin:0;font-size:14px}
.chkgrid .chk input{width:auto;margin:0}

.emptystate{text-align:center;color:var(--muted);padding:34px 16px}
.emptystate svg{width:44px;height:44px;opacity:.4;margin-bottom:8px}

/* Login */
.login-wrap{max-width:380px;margin:9vh auto;padding:0 16px}
.login-logo{text-align:center;margin-bottom:16px}
.login-logo .l{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--green);color:#fff;font-weight:900;font-size:22px}
.login-logo .t{font-weight:800;margin-top:8px;font-size:18px}
.login-logo .s{color:var(--muted);font-size:13px}

/* attachments */
.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.thumbs a{display:block}
.thumbs img{height:74px;border-radius:9px;border:1px solid var(--line);display:block;object-fit:cover}

/* action item (sammenfoldeligt kort) */
.actionitem{border:1px solid var(--line);border-radius:11px;margin-bottom:10px;background:#fff}
.actionitem.static{padding:12px 14px}
details.actionitem>summary{list-style:none;cursor:pointer;padding:12px 14px;border-radius:11px}
details.actionitem>summary::-webkit-details-marker{display:none}
details.actionitem[open]>summary{border-bottom:1px dashed var(--line);border-radius:11px 11px 0 0}
details.actionitem:hover{border-color:var(--tl-gron-line)}
.actionitem .top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.actionitem .grow{flex:1;min-width:0}
.actionitem .desc{font-weight:600}
.actionitem .meta{font-size:13px;color:var(--muted);margin-top:5px;display:flex;flex-wrap:wrap;gap:4px 14px}
.actionitem .act-right{display:flex;align-items:center;gap:8px;flex:none}
.act-chev{color:var(--muted);display:flex;transition:transform .18s ease}
details.actionitem[open] .act-chev{transform:rotate(180deg)}
.act-chev svg{width:18px;height:18px}
.actbody{padding:12px 14px}
a.actionitem{display:block;text-decoration:none;color:inherit;padding:12px 14px}
a.actionitem:hover{border-color:var(--tl-gron-line);background:#fafffb}
.overdue{color:var(--tl-rod-ink);font-weight:700}
.filter-empty{color:var(--muted);padding:16px;text-align:center;display:none}
@media (prefers-reduced-motion:reduce){.act-chev{transition:none}}

/* ---------- RCA ---------- */
.rca-num{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--tl-blaa-tint);color:var(--tl-blaa-ink);font-weight:800;font-size:14px;flex:none}
.methodpick{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 2px}
.methodpick .chk{min-width:0}
.hint{display:inline-block;background:#eef1f4;color:#4a555f;border:1px solid #dde2e7;border-radius:7px;padding:2px 9px;font-size:12px;font-weight:600;margin:2px 4px 0 0;cursor:pointer}
.hint:hover{background:var(--tl-gron-tint);border-color:var(--tl-gron-line);color:var(--tl-gron-ink)}

/* 5xWhy kæde */
.whychain{margin-top:8px}
.whyrow{position:relative;border-left:3px solid var(--tl-blaa-line);padding:0 0 4px 16px;margin-left:12px}
.whyrow::before{content:"";position:absolute;left:-9px;top:6px;width:15px;height:15px;border-radius:50%;background:var(--tl-blaa);color:#fff;box-shadow:0 0 0 3px #fff}
.whyrow .wq{font-weight:700;font-size:13px;color:var(--tl-blaa-ink);margin:6px 0 4px}
.whyrow .wq input{font-weight:700;color:var(--tl-blaa-ink);border-color:var(--tl-blaa-line);background:#f6f9ff}
.whyrow:last-child{border-left-color:transparent}

/* Fishbone 6M */
.fishgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}
@media(max-width:640px){.fishgrid{grid-template-columns:1fr}}
.fishcat{border:1px solid var(--line);border-radius:11px;padding:11px 13px;background:#fbfcfd}
.fishcat h4{margin:0 0 4px;font-size:14px}
.fishcat textarea{min-height:60px}

/* Risiko 5x5 */
.riskbox{display:flex;gap:20px;flex-wrap:wrap;margin-top:6px}
.riskcol{flex:1;min-width:240px}
.riskcol h4{margin:0 0 6px;font-size:14px}
.riskctl{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.riskctl select{width:auto;min-width:150px}
.riskscore{font-weight:800;font-size:14px;padding:5px 12px;border-radius:999px;border:1px solid transparent}
.rs-graa{background:#eef1f4;color:#69737d}.rs-gron{background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
.rs-gul{background:var(--tl-gul-tint);color:var(--tl-gul-ink)}.rs-orange{background:#fde9df;color:#b4531c}
.rs-rod{background:var(--tl-rod-tint);color:var(--tl-rod-ink)}

/* ---------- Kategori-vælger (4 typer) ---------- */
.typepick{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:6px}
@media(max-width:560px){.typepick{grid-template-columns:1fr}}
.typepick label{margin:0}
.typepick input{position:absolute;opacity:0;pointer-events:none}
.typepick .opt{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;cursor:pointer;font-weight:700;background:#fff;transition:.12s}
.typepick .opt .dot{width:14px;height:14px;border-radius:50%;flex:none;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.typepick .opt .sub{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.typepick .dot-gron{background:var(--tl-gron)} .typepick .dot-orange{background:var(--orange)}
.typepick .dot-rod{background:var(--tl-rod)} .typepick .dot-blaa{background:var(--tl-blaa)}
.typepick input:checked+.opt.t-gron{border-color:var(--tl-gron);background:var(--tl-gron-tint)}
.typepick input:checked+.opt.t-orange{border-color:var(--orange);background:#fde9df}
.typepick input:checked+.opt.t-rod{border-color:var(--tl-rod);background:var(--tl-rod-tint)}
.typepick input:checked+.opt.t-blaa{border-color:var(--tl-blaa);background:var(--tl-blaa-tint)}
.typepick input:focus-visible+.opt{outline:2px solid var(--green);outline-offset:2px}

/* ---------- Proportional model ---------- */
.overview{display:grid;grid-template-columns:210px 1fr;gap:14px;margin:6px 0 16px}
@media(max-width:640px){.overview{grid-template-columns:1fr}}
.levelcard{border-radius:var(--radius);padding:15px 16px;border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:5px}
.levelcard .cap{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.85}
.levelcard .lvl{font-size:23px;font-weight:800;letter-spacing:-.3px;line-height:1}
.levelcard .why{font-size:12.5px;line-height:1.4;opacity:.92}
.lv-enkel{background:var(--tl-gron-tint);border-color:var(--tl-gron-line);color:var(--tl-gron-ink)}
.lv-standard{background:var(--tl-blaa-tint);border-color:var(--tl-blaa-line);color:var(--tl-blaa-ink)}
.lv-udvidet{background:#fde9df;border-color:#f4c9a8;color:#b4531c}
.resume{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:15px 16px}
.resume .lbl{display:block;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.resume p{margin:0;font-size:15.5px;line-height:1.55;color:var(--ink)}
.resume b{color:var(--green-d)}
.resume .sev-h{color:var(--tl-rod-ink)}

.seg{display:inline-flex;background:#eef1f4;border-radius:10px;padding:3px;gap:3px;flex-wrap:wrap}
.seg label{margin:0;position:relative}
.seg label span{display:inline-block;font-weight:700;font-size:13.5px;color:var(--ink-soft);padding:8px 15px;border-radius:8px;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{background:#fff;color:var(--green-d);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.seg input[value="ulykke"]:checked+span{color:var(--tl-rod-ink)}

.sevrow{display:grid;grid-template-columns:130px 1fr;gap:12px;align-items:center;margin-top:10px}
@media(max-width:560px){.sevrow{grid-template-columns:1fr}}
.sevscale{display:flex;gap:6px;flex-wrap:wrap}
.sevscale label{margin:0}
.sevscale input{position:absolute;opacity:0;pointer-events:none}
.sevscale span{display:inline-block;border:1px solid var(--line);background:#fff;font-weight:700;font-size:12.5px;color:var(--muted);padding:7px 11px;border-radius:9px;cursor:pointer}
.sevscale input[data-s="0"]:checked+span{background:#eef1f4;border-color:var(--muted);color:var(--ink-soft)}
.sevscale input[data-s="1"]:checked+span{background:var(--tl-gron-tint);border-color:var(--tl-gron-line);color:var(--tl-gron-ink)}
.sevscale input[data-s="2"]:checked+span{background:var(--tl-gul-tint);border-color:var(--tl-gul-line);color:var(--tl-gul-ink)}
.sevscale input[data-s="3"]:checked+span{background:#fde9df;border-color:#f4c9a8;color:#b4531c}
.sevscale input[data-s="4"]:checked+span{background:var(--tl-rod-tint);border-color:var(--tl-rod-line);color:var(--tl-rod-ink)}

.impactchips{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.impactchips label{margin:0}
.impactchips input{position:absolute;opacity:0;pointer-events:none}
.impactchips span{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:600;color:var(--ink-soft);cursor:pointer}
.impactchips span::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--line)}
.impactchips input:checked+span{background:var(--tl-gron-tint);border-color:var(--tl-gron-line);color:var(--tl-gron-ink)}
.impactchips input:checked+span::before{background:var(--tl-gron)}

.rootbox{background:var(--tl-gron-tint);border:1px solid var(--tl-gron-line);border-radius:11px;padding:12px 14px;margin-top:12px}
.rootbox .lbl{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--tl-gron-ink)}
.rootbox .val{font-size:16px;font-weight:700;color:var(--ink);margin-top:3px;min-height:1.2em}

/* Uddyb-panel (progressiv visning) */
details.uddyb{border:1px dashed var(--tl-blaa-line);border-radius:11px;margin-top:16px;background:#f8fafd}
details.uddyb>summary{cursor:pointer;padding:12px 15px;font-weight:700;color:var(--tl-blaa-ink);list-style:none;display:flex;align-items:center;gap:8px}
details.uddyb>summary::-webkit-details-marker{display:none}
details.uddyb>summary::before{content:"▸";font-size:12px;transition:transform .15s}
details.uddyb[open]>summary::before{content:"▾"}
details.uddyb>summary .sub{font-weight:500;color:var(--muted);font-size:12.5px}
.uddyb-body{padding:2px 15px 15px}
.uddyb-body h3{font-size:14px;margin:16px 0 4px;color:var(--ink-soft)}

/* Root cause auto-forslag */
.autonote{font-size:12.5px;color:var(--tl-gron-ink);font-weight:600;margin-top:5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.catchip{display:inline-flex;align-items:center;gap:6px;background:var(--tl-gron-tint);border:1px solid var(--tl-gron-line);color:var(--tl-gron-ink);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:700}
.catchip button{border:none;background:var(--tl-gron);color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:2px 9px;cursor:pointer}
.whyrow textarea{min-height:0;height:42px}

.print-hint{font-size:12px;color:var(--muted)}
@media print{.topbar,.btnrow,.noprint{display:none!important}.card{box-shadow:none;break-inside:avoid}.wrap{max-width:100%}}

/* ==================== KPI-dashboard ==================== */
.kpihead{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.kpihead h1{margin:0}
.kpihead .crumbs{color:var(--muted);font-size:13px}
.kpi-period{display:flex;align-items:center;gap:8px;margin-left:auto}
.kpi-period label{font-size:12px;color:var(--muted);font-weight:600}
.kpi-period select{width:auto;padding:6px 10px}
.kpi-updated{font-size:12px;color:var(--muted);width:100%;text-align:right}
.kpi-sechead{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-soft);margin:22px 2px 10px}
.tl-legend{display:inline-flex;gap:4px}
.tl-dot{width:11px;height:11px;border-radius:50%;flex:none;display:inline-block;background:#cbd2d8}
.tl-dot.tl-gron{background:var(--tl-gron)}.tl-dot.tl-gul{background:var(--tl-gul)}.tl-dot.tl-rod{background:var(--tl-rod)}.tl-dot.tl-none{background:#cbd2d8}
.kgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.kgrid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.kgrid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.kgrid-4{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
.kgrid-5{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}
.kcard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(18,28,42,.05),0 6px 16px rgba(18,28,42,.05)}
.kc-top{display:flex;align-items:center;gap:8px;padding:9px 13px;border-bottom:1px solid var(--line);background:#f7f9fa}
.kcard.k-gron .kc-top{background:var(--tl-gron-tint);color:var(--tl-gron-ink);border-color:var(--tl-gron-line)}
.kcard.k-gul .kc-top{background:var(--tl-gul-tint);color:var(--tl-gul-ink);border-color:var(--tl-gul-line)}
.kcard.k-rod .kc-top{background:var(--tl-rod-tint);color:var(--tl-rod-ink);border-color:var(--tl-rod-line)}
.kc-title{font-size:12px;font-weight:800;letter-spacing:.3px;text-transform:uppercase}
.kcard>.kc-title{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--line)}
.kcard>.kc-title svg{width:18px;height:18px;color:var(--green-d);flex:none}
.kcard>.kc-title.small{text-transform:none;border:none;padding:9px 12px 0;font-size:12px;color:var(--ink-soft)}
.kc-body{display:flex;align-items:center;gap:12px;padding:12px 14px 2px}
.kc-ico{width:40px;height:40px;border-radius:11px;background:var(--tl-gron-tint);color:var(--green-d);display:grid;place-items:center;flex:none}
.kcard.k-gul .kc-ico{background:var(--tl-gul-tint);color:var(--tl-gul-ink)}
.kcard.k-rod .kc-ico{background:var(--tl-rod-tint);color:var(--tl-rod-ink)}
.kc-ico svg{width:22px;height:22px}
.kc-num{font-size:34px;font-weight:800;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
.kc-target{padding:2px 14px 0;font-size:12px;color:var(--muted);font-weight:600}
.kc-sub{padding:6px 14px 13px;font-size:12px;color:var(--ink-soft);line-height:1.4}
.kc-sub b{color:var(--ink)}
.kcard.wide .spark{margin-top:6px}
.ks-now{padding:2px 14px 12px;font-weight:800;font-size:22px;color:var(--ink)}
.ks-now span{font-size:12px;color:var(--muted);font-weight:600}
.spark{width:calc(100% - 24px);height:54px;display:block;margin:6px 12px 2px}
.spark polyline{vector-effect:non-scaling-stroke}
.spark-x{display:flex;justify-content:space-between;padding:0 12px 10px;font-size:8px;color:var(--muted)}
.spark-x span{flex:1;text-align:center;overflow:hidden;white-space:nowrap}
.trendcard{}
.hbars{padding:11px 14px 14px;display:flex;flex-direction:column;gap:7px}
.hbar{display:grid;grid-template-columns:108px 1fr 36px;align-items:center;gap:8px;font-size:12.5px}
.hb-lab{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-soft)}
.hb-track{background:#eef1f4;border-radius:6px;height:10px;overflow:hidden}
.hb-fill{height:100%;border-radius:6px}
.hb-val{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.donut{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px}
.donut svg{width:118px;height:118px}
.donut-pct{font-size:9px;font-weight:800;fill:var(--ink)}
.donut-cap{font-size:12px;color:var(--muted);font-weight:600}
.komp-overblik{display:flex;align-items:center;gap:14px;padding:6px 14px 2px}
.komp-legend{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:5px;font-size:12.5px}
.komp-legend li{display:flex;align-items:center;gap:8px}
.komp-legend li i{width:11px;height:11px;border-radius:3px;flex:none}
.komp-legend li b{margin-left:auto;font-variant-numeric:tabular-nums}
.komp-legend li.tot{border-top:1px solid var(--line);margin-top:3px;padding-top:6px;font-weight:700}
.toplist{list-style:none;margin:0;padding:11px 14px 14px;display:flex;flex-direction:column;gap:9px}
.toplist li{display:flex;align-items:center;gap:10px;font-size:13px}
.toplist .rank{width:22px;height:22px;border-radius:50%;background:var(--tl-gron-tint);color:var(--green-d);font-weight:800;font-size:12px;display:grid;place-items:center;flex:none}
.tl-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tl-num{font-weight:800;font-variant-numeric:tabular-nums}
.fokuslist{list-style:none;margin:0;padding:6px 14px 12px;display:flex;flex-direction:column}
.fokuslist li{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line);font-size:13px}
.fokuslist li:last-child{border-bottom:none}
.fk-name{flex:1;display:flex;align-items:center;gap:8px;font-weight:600}
.fk-name svg{width:18px;height:18px;color:var(--green-d);flex:none}
.fk-val{font-weight:800;font-size:17px;font-variant-numeric:tabular-nums}
.kcard .tablewrap{padding:4px 12px 12px}
table.list.mini th,table.list.mini td{padding:5px 8px;font-size:12px}
.kcard>p.muted{padding:2px 14px 12px;margin:6px 0 0}
/* KPI-indstillinger */
.secgrid{display:flex;flex-wrap:wrap;gap:10px 20px}
.secopt{display:inline-flex;align-items:center;gap:8px;font-weight:500}
.secopt input{width:auto}
table.kpicfg td{vertical-align:middle}
table.kpicfg td.c{text-align:center}
table.kpicfg input[type=text],table.kpicfg input[type=number],table.kpicfg select{padding:5px 7px;border:1px solid var(--line);border-radius:7px;font-size:12.5px;background:#fff}
table.kpicfg input[type=checkbox]{width:auto}
table.kpicfg .grouprow td{background:#f4f6f8;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-soft)}
@media(max-width:720px){.kpi-updated{text-align:left}.hbar{grid-template-columns:90px 1fr 30px}}
/* Bruger-org felter */
.subjgrid{display:flex;flex-wrap:wrap;gap:8px 16px;margin:6px 0 12px}
.subjopt{display:inline-flex;align-items:center;gap:7px;font-weight:500;font-size:13px}
.subjopt input{width:auto}
/* ==================== Aktionsmodul ==================== */
.actbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.req{color:#d32f2f}
.overdue{color:#d32f2f;font-weight:700}
dl.kv{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;margin:10px 0 0;font-size:13.5px}
dl.kv dt{color:var(--muted);font-weight:600}
dl.kv dd{margin:0;font-weight:500}
.card hr{border:none;border-top:1px solid var(--line);margin:12px 0}
.cmt{border-left:3px solid var(--tl-gron-line);padding:1px 0 1px 10px;margin:8px 0}
.cmt-h{font-size:12px;color:var(--muted)}
.cmt-b{font-size:14px}
.logfeed{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.logfeed li{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:7px}
.logfeed li:last-child{border-bottom:none}
.log-ev{display:inline-block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;padding:1px 7px;border-radius:999px;background:#eef1f4;color:#69737d;margin-right:6px}
.log-ev.log-created,.log-ev.log-closed{background:var(--tl-gron-tint);color:var(--tl-gron-ink)}
.log-ev.log-status{background:var(--tl-gul-tint);color:var(--tl-gul-ink)}
.log-ev.log-assign,.log-ev.log-deadline{background:#e7effb;color:#2f5aa8}
.log-m{font-size:11px;color:var(--muted);margin-top:2px}
.filelist{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.filetag{display:inline-flex;align-items:center;gap:6px;background:#f4f6f8;border:1px solid var(--line);border-radius:8px;padding:5px 10px;font-size:12.5px;color:var(--ink);text-decoration:none}
.filetag svg{width:15px;height:15px;color:var(--green-d)}
/* Aktions-rækker, påmindelser, ekstra piller */
.subrow{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;margin-bottom:8px}
.subrow .grow{flex:1;min-width:200px}
.subrow label{font-size:12px}
.notiflist{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.notif{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-left:4px solid #8a8a8a;border-radius:10px;background:#fff}
.notif .grow{flex:1}
.notif.lvl-1{border-left-color:var(--tl-gul)}
.notif.lvl-2{border-left-color:var(--orange)}
.notif.lvl-3{border-left-color:var(--tl-rod)}
.pill-orange{background:#fdece0;color:#9a3b12;border-color:#f6c9a8}
.pill-teal{background:#d9f2ee;color:#0b5c50;border-color:#a8ddd4}
.log-ev.log-escalate{background:#fdece0;color:#9a3b12}
/* Ulæst-badge (nye besvarelser) + opgave-tag */
.unread-dot{display:inline-block;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#d32f2f;color:#fff;font-size:11px;font-weight:800;line-height:18px;text-align:center;vertical-align:middle}
.minitag{display:inline-block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;background:#eef1f4;color:#69737d;border-radius:5px;padding:1px 5px;vertical-align:middle}

/* ---- Tegninger + pins + zoom (Sites / Stillads Book) ---- */
.dscroll{overflow:auto;min-height:62vh;max-height:88vh;border:1px solid var(--line);border-radius:10px;background:#fbfcfd}
.dwrap{position:relative;display:block;width:700px;max-width:100%}
.dimg,.dpdf{display:block;width:100%;height:auto}
.pin{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#E81123;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.5);z-index:2;text-decoration:none}
a.pin.pin-link{cursor:pointer}
.pin small{position:absolute;left:18px;top:-4px;white-space:nowrap;background:#1c1c1c;color:#fff;padding:1px 6px;border-radius:5px;font-size:11px;opacity:0;transition:.1s;z-index:3}
.pin:hover small{opacity:1}
.pin-c-rod{background:#E81123}.pin-c-orange{background:#f26522}.pin-c-gron{background:#00B050}.pin-c-gul{background:#FFC000}.pin-c-blaa{background:#2e6fdb}.pin-c-graa{background:#8a8a8a}
.pin-new{background:#1f8f2e;opacity:.85}
.dzoombar{display:flex;gap:6px;align-items:center;margin:6px 0;flex-wrap:wrap}
.dzoombar button{font:inherit;font-size:13px;border:1px solid var(--line);background:#fff;border-radius:6px;padding:3px 11px;cursor:pointer;line-height:1.2}
.dzoombar .zlbl{font-size:12px;color:#555;min-width:44px;text-align:center}
.pinlegend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#555;margin-top:10px}
.pinlegend span{display:inline-flex;align-items:center;gap:5px}
.pinlegend i{width:12px;height:12px;border-radius:50%;display:inline-block;border:1px solid #0002}

/* ---------- Chat / talebobler (iMessage-agtige) ---------- */
.chat{display:flex;flex-direction:column;gap:10px;margin:6px 0 2px}
.chat .bubble{max-width:80%;padding:8px 12px 6px;border-radius:16px;position:relative;box-shadow:0 1px 1px rgba(18,28,42,.06)}
.chat .bubble .who{font-size:11px;font-weight:700;letter-spacing:.02em;opacity:.85;margin-bottom:2px}
.chat .bubble .txt{font-size:14px;line-height:1.4;white-space:normal;word-break:break-word}
.chat .bubble .when{font-size:10.5px;opacity:.7;margin-top:3px;text-align:right}
.chat .bubble.them{align-self:flex-start;background:#e9edf2;color:var(--ink);border-bottom-left-radius:5px}
.chat .bubble.me{align-self:flex-end;background:var(--green);color:#fff;border-bottom-right-radius:5px}
.chat .bubble.me .who{color:#eafff0}
.chat .bubble.them.ext{background:var(--amber-tint,#fff6e3);border:1px solid var(--amber-line,#f2d79a)}
.chat .bubble .exttag{display:inline-block;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--amber,#e6900e);color:#fff;border-radius:999px;padding:0 6px;margin-left:5px;vertical-align:1px}
.chat-warn{display:flex;gap:12px;align-items:flex-start;background:var(--amber-tint,#fff6e3);border:1px solid var(--amber-line,#f2d79a);color:var(--amber-ink,#6a4e05);border-radius:12px;padding:12px 14px;margin-bottom:14px;font-size:13.5px}
.chat-warn svg{flex:none;width:22px;height:22px;stroke:var(--amber,#e6900e)}
/* Forside-preview af samtaler */
.chatprev .bubble{max-width:100%}
.chatprev{margin:2px 0 8px}

/* ---------- Flydende chat-widget ---------- */
#chatw{position:fixed;right:18px;bottom:18px;z-index:1200}
#chatw [hidden]{display:none!important} /* class-display-regler nedenfor må ikke overtrumfe [hidden] */
#chatw-btn{width:56px;height:56px;border-radius:50%;border:none;background:var(--green);color:#fff;box-shadow:0 6px 18px rgba(31,143,46,.42);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative}
#chatw-btn svg{width:26px;height:26px;stroke:#fff}
#chatw-btn:hover{background:var(--green-d)}
.cw-badge{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
.cw-panel{position:absolute;right:0;bottom:70px;width:360px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 110px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 40px rgba(18,28,42,.28);display:flex;flex-direction:column;overflow:hidden}
.cw-head{display:flex;align-items:center;gap:8px;padding:11px 14px;background:var(--green);color:#fff}
.cw-head b{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cw-head .cw-x,.cw-head .cw-back{background:none;border:none;color:#fff;cursor:pointer;font-size:18px;line-height:1;padding:2px 7px;border-radius:6px}
.cw-head .cw-x{margin-left:auto}
.cw-head .cw-x:hover,.cw-head .cw-back:hover{background:rgba(255,255,255,.18)}
.cw-body{flex:1;overflow-y:auto;padding:10px 12px;background:var(--bg)}
.cw-body .chat{gap:8px}
.cw-body .bubble{max-width:88%}
.cw-foot{padding:8px;border-top:1px solid var(--line);display:flex;gap:6px;align-items:flex-end}
.cw-foot textarea{flex:1;min-height:38px;max-height:120px;resize:none;font:inherit;font-size:14px;border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.cw-newbar{padding:8px;border-top:1px solid var(--line)}
.cw-titem{display:block;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 11px;margin-bottom:8px;cursor:pointer}
.cw-titem:hover{border-color:var(--green)}
.cw-titem .t{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px}
.cw-titem .s{font-size:12.5px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cw-titem .cw-udot{margin-left:auto;background:var(--red);color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.cw-userrow{display:flex;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.cw-userrow input{width:16px;height:16px}
.cw-empty{color:var(--muted);font-size:13px;text-align:center;padding:20px 6px}
.cw-badge-blue{background:#2563eb;left:-3px;right:auto}
.cw-tabs{display:flex;border-bottom:1px solid var(--line);background:#fff}
.cw-tab{flex:1;padding:9px 6px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font:inherit;font-weight:600;font-size:13.5px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px}
.cw-tab.active{color:var(--green);border-bottom-color:var(--green)}
.cw-tc{min-width:18px;height:18px;border-radius:999px;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.cw-tc.red{background:var(--red)}
.cw-tc.blue{background:#2563eb}
.cw-notif .s2{font-size:13px;color:var(--ink);margin:2px 0;white-space:normal}
.cw-notif.lvl{border-left:3px solid var(--orange)}
.cw-notif.read{opacity:.62}
.cw-nbtns{display:flex;gap:6px;margin-top:8px}
@media(max-width:520px){.cw-panel{width:calc(100vw - 24px);height:calc(100vh - 100px)}}
@media print{#chatw{display:none}}

/* ===== Tema-vælger-knap i topbjælken (virker i begge temaer) ===== */
.topbar .who .themebtn{background:rgba(255,255,255,.15);padding:5px 9px;border-radius:8px;font-weight:600;display:inline-flex;align-items:center;gap:5px;text-decoration:none;color:#fff;border:none;cursor:pointer;font:inherit;font-size:13px}
.topbar .who .themebtn:hover{background:rgba(255,255,255,.28)}
.topbar .who .themebtn svg{width:16px;height:16px;stroke:currentColor;fill:none}
/* Ensartet højde på hele knap-klyngen i topbjælken: Tilbage · Hjem · Tema · Fuldskærm · Konfiguration. */
.topbar .nav a.home,.topbar .who .cfg,.topbar .who .themebtn{height:32px;box-sizing:border-box;padding-top:0;padding-bottom:0}
.themebtn .t-moon{display:inline-flex}.themebtn .t-sun{display:none}
html.theme-dark .themebtn .t-moon{display:none}html.theme-dark .themebtn .t-sun{display:inline-flex}
.themebtn .fs-out{display:none}.themebtn .fs-in{display:inline-flex}
html.is-fs .themebtn .fs-in{display:none}html.is-fs .themebtn .fs-out{display:inline-flex}

/* =======================================================================
   NEON NAVY — mørkt tema (gated bag html.theme-dark; tema-vælger i topbjælken)
   Bevarer: trafiklys-semantik (grøn/gul/rød), print forbliver lyst.
   Flade-tokens (--surface m.fl.) er defineret lyst i basis-:root, så
   standalone print-/kundesider uden tema-klasse automatisk forbliver lyse.
   ======================================================================= */
html.theme-dark{
  /* Flader */
  --bg:#0b111f; --surface:#161c30; --surface-2:#1d2440; --surface-3:#232c4c;
  /* Tekst */
  --ink:#f2f4f9; --ink-soft:#c6cddb; --muted:#98a3b8;
  --line:rgba(255,255,255,.10);
  /* Primær brand-accent → neon pink (var før grøn) */
  --green:#ec2b8f; --green-d:#ff4da3;
  /* Tema-accenter (primær = neon pink) */
  --nn-pink:#ec2b8f; --nn-purple:#7b3ff5; --nn-blue:#3fb0e6; --nn-gold:#f1c44d;
  --shadow:0 1px 0 rgba(255,255,255,.03), 0 24px 50px -28px rgba(0,0,0,.85);
}
html.theme-dark,html.theme-dark body{background:var(--bg)}
html.theme-dark body{
  color:var(--ink);
  background-image:
    radial-gradient(1200px 600px at 100% -5%, rgba(123,63,245,.10), transparent 60%),
    radial-gradient(900px 500px at -10% 0%, rgba(236,43,143,.08), transparent 55%),
    linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:auto,auto,58px 58px,58px 58px;
  background-attachment:fixed,fixed,fixed,fixed;
}
html.theme-dark a{color:var(--nn-blue)}
html.theme-dark a:hover{color:#83d2f4}

/* ---- Topbjælke: mørk med pink accentkant ---- */
html.theme-dark .topbar{background:linear-gradient(180deg,#141b31,#0e1424)!important;border-bottom:2px solid var(--nn-pink);color:#fff}
html.theme-dark .topbar .brand .brandlogo{background:#fff} /* logo beholder hvid baggrund */
html.theme-dark .crumbbar{background:var(--surface-2)!important;border-bottom:1px solid var(--line);color:var(--muted)}
html.theme-dark .crumbbar a{color:var(--muted)}
html.theme-dark .crumbbar a:hover{color:var(--ink)}
html.theme-dark .crumbbar .cur{color:var(--ink)}
html.theme-dark .subnav{background:var(--surface)!important;border-bottom:1px solid var(--line)}
html.theme-dark .subnav a{color:var(--ink)}
html.theme-dark .subnav a:hover{background:var(--surface-2)}
html.theme-dark .subnav a.tab.active{background:rgba(236,43,143,.18);color:#ff86c4}
html.theme-dark .sidenav{background:var(--surface)!important;border-right:1px solid var(--line)}
html.theme-dark .sidenav a,html.theme-dark .sidenav details>summary{color:var(--ink)}
html.theme-dark .sidenav a:hover,html.theme-dark .sidenav details>summary:hover{background:var(--surface-2)}
html.theme-dark .sidenav a.tab.active{background:rgba(236,43,143,.18);color:#ff86c4}
html.theme-dark .sidenav a.newbtn{color:#fff}

/* ---- Kort & flader ---- */
html.theme-dark .card,html.theme-dark .modtile,html.theme-dark .pagehead .card,html.theme-dark .tablewrap{background:var(--surface)!important;border-color:var(--line)!important}
html.theme-dark .modtile.soon,html.theme-dark .modtile.noaccess{background:var(--surface-2)!important}
html.theme-dark .modtile:hover{border-color:var(--nn-pink)!important}
html.theme-dark .card h2,html.theme-dark .pagehead h1,html.theme-dark .hero h1,html.theme-dark h1,html.theme-dark h2,html.theme-dark h3{color:var(--ink)}
html.theme-dark .crumbs,html.theme-dark .crumbs a,html.theme-dark .muted,html.theme-dark .sectionhelp{color:var(--muted)}
html.theme-dark .hr,html.theme-dark .card .hr{border-top-color:var(--line)}

/* neutrale inline-flader (fx style="background:#fafbfc") → mørke */
html.theme-dark [style*="#fafbfc"],html.theme-dark [style*="#f7f9fb"],html.theme-dark [style*="#f9fafb"],html.theme-dark [style*="#fbfbfc"],html.theme-dark [style*="#f4f5f6"]{background:var(--surface-2)!important}

/* ---- Felter ---- */
html.theme-dark input,html.theme-dark select,html.theme-dark textarea{background:var(--surface-2)!important;color:var(--ink)!important;border:1px solid var(--line)!important}
html.theme-dark input::placeholder,html.theme-dark textarea::placeholder{color:#7b8498}
html.theme-dark input:focus,html.theme-dark select:focus,html.theme-dark textarea:focus{outline:2px solid var(--nn-pink);outline-offset:1px;border-color:transparent!important}
html.theme-dark select option{background:#1d2440;color:#f2f4f9}
html.theme-dark label{color:var(--ink-soft)}

/* ---- Knapper ---- */
html.theme-dark .btn{background:var(--nn-pink);color:#fff;border:none}
html.theme-dark .btn:hover{background:#ff3d9a}
html.theme-dark .btn-grey{background:var(--surface-3)!important;color:var(--ink)!important}
html.theme-dark .btn-grey:hover{background:#2c3760!important}
html.theme-dark .btn-orange{background:var(--nn-blue)!important;color:#06263a!important}
html.theme-dark .btn-orange:hover{background:#2f9fd6!important}
html.theme-dark .btn-red{background:var(--tl-rod)!important;color:#fff!important}
/* Neon-blå udlåns-knap (kun dark-mode) — glødende cyan/blå med mørk tekst */
html.theme-dark .btn-tool{background:linear-gradient(180deg,#22d3ff,#0aa2e6)!important;border:none!important;color:#04121c!important;font-weight:800;box-shadow:0 0 0 1px rgba(34,211,255,.55),0 0 18px rgba(34,211,255,.55),0 4px 14px -4px rgba(34,211,255,.6)!important}
html.theme-dark .btn-tool:hover{background:linear-gradient(180deg,#4ce0ff,#1ab4f5)!important;box-shadow:0 0 0 1px rgba(76,224,255,.75),0 0 26px rgba(76,224,255,.7),0 6px 18px -4px rgba(76,224,255,.7)!important}
html.theme-dark .btn-tool .pill{background:#04121c!important;color:#4ce0ff!important;border:none!important}

/* ---- Tabeller ---- */
html.theme-dark table.list{background:var(--surface)}
html.theme-dark table.list th{background:var(--surface-2);color:var(--muted);border-color:var(--line)}
html.theme-dark table.list td{border-color:var(--line);color:var(--ink)}
html.theme-dark table.list tr:hover td,html.theme-dark tr.clickable:hover td{background:var(--surface-2)}

/* ---- Flash ---- */
html.theme-dark .flash{border:1px solid var(--line)}
html.theme-dark .flash.info{background:rgba(63,176,230,.15);color:#bfe6fb}
html.theme-dark .flash.ok{background:rgba(0,176,80,.17);color:#bff0cf}
html.theme-dark .flash.error{background:rgba(232,17,35,.16);color:#ffc2c7}

/* ---- Hero/kort-ikon ---- */
html.theme-dark .hero .hicon,html.theme-dark .card h2 .ico{background:rgba(236,43,143,.16);color:#ff86c4}

/* ---- Kategori-vælger (typepick) på mørk: mørke kort + læsbar tekst ---- */
html.theme-dark .typepick .opt{background:var(--surface-2)!important;color:var(--ink)}
html.theme-dark .typepick .opt .sub{color:var(--muted)}
html.theme-dark .typepick .opt .dot{border-color:var(--surface-2)}
html.theme-dark .typepick input:checked+.opt.t-gron{background:rgba(0,176,80,.20)!important;border-color:var(--tl-gron)!important}
html.theme-dark .typepick input:checked+.opt.t-orange{background:rgba(242,101,34,.22)!important;border-color:var(--orange)!important}
html.theme-dark .typepick input:checked+.opt.t-rod{background:rgba(232,17,35,.20)!important;border-color:var(--tl-rod)!important}
html.theme-dark .typepick input:checked+.opt.t-blaa{background:rgba(63,110,190,.30)!important;border-color:var(--tl-blaa)!important}

/* ---- Behandling af sag / RCA / diverse lyse flader → mørke (læsbarhed) ---- */
html.theme-dark .step,html.theme-dark .fishcat,html.theme-dark details.uddyb,html.theme-dark .dscroll,html.theme-dark .kc-top,html.theme-dark .cal .wknum{background:var(--surface-2)!important;color:var(--ink)}
html.theme-dark .step.current,html.theme-dark .resume,html.theme-dark .notif,html.theme-dark .kcard,html.theme-dark .actionitem,html.theme-dark .cal .cell,html.theme-dark .cmatrix td.emp{background:var(--surface)!important;color:var(--ink)}
html.theme-dark .step.current{border-color:var(--nn-pink)!important}
html.theme-dark .chk{background:var(--surface-2)!important}
html.theme-dark .chk:hover,html.theme-dark .actionitem:hover,html.theme-dark a.actionitem:hover,html.theme-dark table.list tr.clickable:hover td,html.theme-dark .cmatrix tr.clickable:hover td{background:var(--surface-2)!important}
html.theme-dark .seg{background:var(--surface-3)!important}
html.theme-dark .seg input:checked+span{background:var(--surface)!important;color:#ff86c4!important}
html.theme-dark .sevscale span,html.theme-dark .impactchips span,html.theme-dark .filetag,html.theme-dark .dzoombar button{background:var(--surface-2)!important;color:var(--ink-soft)!important}
html.theme-dark .statbar .track,html.theme-dark .hb-track,html.theme-dark .hoc li .lv{background:var(--surface-3)!important}
html.theme-dark .cmatrix thead th,html.theme-dark .cmatrix th.grp,html.theme-dark .cmatrix thead th.emp,html.theme-dark .matrix th,html.theme-dark table.kpicfg .grouprow td{background:var(--surface-2)!important;color:var(--muted)}
html.theme-dark .whyrow .wq input{background:var(--surface-2)!important;color:var(--ink)!important}
html.theme-dark .btn-ghost{background:transparent!important;color:var(--nn-blue)!important;border-color:var(--line)!important}
html.theme-dark .tablewrap,html.theme-dark table.list{background:var(--surface)!important}

/* ---- Galleri (Visuelt overblik) + generiske modul-kort ---- */
html.theme-dark .gcard,html.theme-dark .gchip{color:var(--ink)}
html.theme-dark .gcard .gsub,html.theme-dark .gcard .gmon,html.theme-dark .gcard .gfoot{color:var(--muted)}
html.theme-dark .gcard .gmeta .m{background:var(--surface-3)!important;color:var(--ink-soft)}
html.theme-dark .gchip.on{background:var(--nn-pink)!important;border-color:var(--nn-pink)!important;color:#fff}
html.theme-dark .gcard .qrbadge{background:rgba(255,255,255,.12);color:#fff}

/* ---- Chat-bobler på mørk ---- */
html.theme-dark .chat .bubble.them{background:var(--surface-2);color:var(--ink)}
html.theme-dark .cw-panel,html.theme-dark .cw-titem{background:var(--surface)!important;color:var(--ink)}
html.theme-dark .cw-body{background:var(--bg)!important}
html.theme-dark .cw-tabs,html.theme-dark .cw-head{background:var(--surface-2)}

/* ---- Scrollbar ---- */
html.theme-dark ::-webkit-scrollbar{height:12px;width:12px}
html.theme-dark ::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:8px}
html.theme-dark ::-webkit-scrollbar-track{background:var(--bg)}

/* ---- PRINT skal forblive lyst (rapporter/breve) ---- */
@media print{
  html.theme-dark,html.theme-dark body{background:#fff!important;color:#000!important;background-image:none!important}
  html.theme-dark .card,html.theme-dark .modtile,html.theme-dark .tablewrap,html.theme-dark table.list,html.theme-dark table.list td{background:#fff!important;color:#000!important}
  html.theme-dark table.list th{background:#f2f2f2!important;color:#000!important}
  html.theme-dark table.list td,html.theme-dark table.list th{border-color:#ddd!important}
  html.theme-dark a{color:#000!important}
}