body.dark{
  --bg-app:#081320; --bg-panel:#12263A; --bd-panel:rgba(197,210,221,.22);
  --accent:#31C7CC;
  --bg-grad:radial-gradient(1200px 700px at 78% -8%,rgba(43,179,184,.16),transparent 60%),radial-gradient(900px 600px at 8% 108%,rgba(30,150,176,.12),transparent 55%),var(--bg-app);
  --bg-grad:radial-gradient(1200px 700px at 78% -8%,color-mix(in srgb,var(--teal) 16%,transparent),transparent 60%),radial-gradient(900px 600px at 8% 108%,color-mix(in srgb,var(--blue) 12%,transparent),transparent 55%),var(--bg-app);
  --ink-900:#EAF2F8; --ink-800:#DEE9F1; --ink-700:#C6D6E2; --ink-600:#AFC2D2;
  --ink-500:#7d94a9; --ink-300:#3a5268; --ink-200:rgba(197,210,221,.18);
  --ink-100:rgba(197,210,221,.10); --ink-50:#0B1B2B;
  --panel:linear-gradient(180deg,rgba(21,42,63,.92),rgba(13,30,47,.92));
  --panel-solid:#0E2233;
  --border:rgba(120,190,210,.16); --border-strong:rgba(120,200,220,.30);
  --ink:#EAF5F9; --ink-2:#9DB6C8; --ink-3:#63809A;
  --glow:0 0 0 1px rgba(120,200,220,.10),0 18px 44px -20px rgba(0,0,0,.75),0 0 60px -30px rgba(43,179,184,.5);
  --glow:0 0 0 1px rgba(120,200,220,.10),0 18px 44px -20px rgba(0,0,0,.75),0 0 60px -30px color-mix(in oklab,var(--teal) 50%,transparent);
  --shadow:0 20px 50px -24px rgba(0,0,0,.8);
  --shadow-float:0 24px 60px -20px rgba(0,0,0,.85);
  --chip:rgba(255,255,255,.04); --chip-bd:rgba(150,190,210,.16);
  --card-top:linear-gradient(90deg,transparent,rgba(67,228,228,.6),transparent);
  --card-top:linear-gradient(90deg,transparent,color-mix(in oklab,var(--accent-bright) 60%,transparent),transparent);
  --num-glow:0 0 22px rgba(67,228,228,.45);
  --num-glow:0 0 22px color-mix(in oklab,var(--accent-bright) 45%,transparent);
  --tbl-hover:rgba(43,179,184,.07);
  --tbl-hover:color-mix(in oklab,var(--teal) 7%,transparent);
  --grad-btn:linear-gradient(135deg,#1E96B0,#2BB3B8 55%,#43E4E4);
  --grad-btn:linear-gradient(135deg,var(--blue),var(--teal) 55%,var(--accent-bright));
  --green-bg:rgba(24,164,108,.16); --green-tx:#18A46C;
  --amber-bg:rgba(240,180,60,.14); --amber-tx:#E0A93E;
  --red-bg:rgba(214,69,65,.16);    --red-tx:#E65F58;
  --info-bg:rgba(47,169,196,.16);  --info-tx:#7FD4E4;
  --green-bd:rgba(24,164,108,.32); --amber-bd:rgba(224,169,62,.32);
  --red-bd:rgba(230,95,88,.32);
}
body.dark{
  --accent-soft:rgba(49,199,204,.16);
  --accent-soft:color-mix(in oklab, var(--accent) 16%, transparent);
  --accent-soft-tx:#b2e7e8;
  --accent-soft-tx:color-mix(in oklab, var(--accent) 45%, white);
  --accent-link:#b2e7e8;
  --accent-link:color-mix(in oklab, var(--accent) 45%, white);
}
body.dark{
  --bg-panel-2:rgba(255,255,255,.03);
  --panel-2:var(--bg-panel-2);
  --teal-100:var(--accent-soft);
  --teal-200:var(--accent-soft);
  --blue-700:var(--accent-link);
  --teal-400:var(--accent);
  --teal-300:var(--accent);
  --blue-500:var(--accent);
  --accent-strong:color-mix(in oklab,var(--accent) 40%,#06222E);
  --accent-bright:#43E4E4;
  --blue:#1E96B0;
  --teal:#2BB3B8;
  --sb-active-tx:var(--accent-bright);
  --elev-card:0 20px 50px -24px rgba(0,0,0,.8);
  --elev-float:0 24px 60px -20px rgba(0,0,0,.85);
  --bd-control:rgba(197,210,221,.30);
}
body.dark .data-table tbody tr:hover{
  background-color:rgba(49,199,204,.08);
  background-color:color-mix(in oklab, var(--accent) 8%, transparent);
}
body.dark{
  --c-torp-navy:234 242 248;
  --c-torp-blue:127 212 228;
  --c-torp-light:127 212 228;
  --c-torp-bg:23 50 63;
  --c-surface:18 38 58;
  --c-border:39 56 72;
  --c-border-2:58 82 104;
  --c-success:74 222 156;
  --c-success-bg:19 46 40;
  --c-warning:245 197 99;
  --c-warning-bg:46 41 26;
  --c-danger:255 138 132;
  --c-danger-bg:58 30 30;
  --c-neutral:125 148 169;
  --c-neutral-strong:222 233 241;
  --c-neutral-bg:26 45 64;
}
body.dark{ background-color:var(--bg-app); color:var(--ink-800); }
body.dark .kpi-value{ color:var(--ink-900); }
body.dark .kpi-value.kpi-value-grad{
  background:none; -webkit-background-clip:border-box; background-clip:border-box;
  color:var(--ink-900); -webkit-text-fill-color:var(--ink-900);
}
body.dark .bg-white,
body.dark .form-input, body.dark .form-select, body.dark .form-textarea,
body.dark .form-checkbox, body.dark .form-radio,
body.dark .btn-secondary, body.dark .btn-danger-outline, body.dark .filter-pill,
body.dark .modal-container, body.dark .forta-dialog,
body.dark .inline-edit-input, body.dark .inline-edit-popover,
body.dark .list-action, body.dark .notif-dropdown,
body.dark .print-labels-menu, body.dark .sub-combobox-dropdown,
body.dark .topbar-tablet-menu, body.dark .topnav,
body.dark .topnav-mobile-menu, body.dark .topnav-more-menu,
body.dark .activity-event, body.dark .pos-amount-input,
body.dark .pos-btn-card, body.dark .pos-btn-cash,
body.dark .pos-btn-mobilepay, body.dark .pos-btn-cancel,
body.dark .pos-btn-secondary{
  background-color:var(--bg-panel);
}
body.dark input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),
body.dark select, body.dark textarea{
  background-color:var(--bg-panel); color:var(--ink-800);
}
body.dark .form-input, body.dark .form-select, body.dark .form-textarea,
body.dark input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),
body.dark select, body.dark textarea{
  border-color:rgba(197,210,221,.30);
}
body.dark .inline-edit-input{ color:var(--ink-800); }
body.dark .form-input::placeholder, body.dark .form-textarea::placeholder,
body.dark .search-input::placeholder, body.dark input::placeholder{ color:var(--ink-500); }
body.dark .save-bar, body.dark .filter-pill-selected, body.dark .topnav-mark{
  background-color:var(--accent);
}
body.dark .filter-pill-selected{ border-color:var(--accent); color:var(--tekst-paa-lys-accent); }
body.dark .save-bar, body.dark .save-bar .save-bar-text,
body.dark .topnav-mark{ color:var(--tekst-paa-lys-accent); }
body.dark .btn-primary{
  background-color:var(--accent);
  background-image:linear-gradient(135deg,var(--accent),var(--accent-bright));
  background-image:linear-gradient(135deg,var(--accent) 0%,color-mix(in oklab,var(--accent) 45%,var(--accent-bright)) 55%,var(--accent-bright) 100%);
  color:var(--tekst-paa-lys-accent);
  box-shadow:0 10px 24px -12px rgba(43,179,184,.5);
}
body.dark .btn-primary:focus-visible{
  box-shadow:0 0 0 1.5px var(--accent),
             0 0 0 3px var(--accent-glow),
             0 0 0 4.5px var(--ink),
             0 10px 24px -12px rgba(43,179,184,.5);
}
body.dark .btn-primary:hover{ filter:brightness(1.05); }
body.dark input[type="checkbox"]:checked{
  color:var(--accent);
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%2308131F' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E");
}
body.dark input[type="radio"]:checked{
  color:var(--accent);
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2308131F'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E");
}
body.dark .help-tip{ background-color:var(--ink-200); color:var(--ink-700); }
body.dark .modal-container, body.dark .forta-dialog{
  box-shadow:0 24px 60px rgba(0,0,0,.5); border:1px solid var(--bd-panel);
}
body.dark .setting-card:hover{ box-shadow:none; border-color:var(--accent-soft-tx); }
body.dark{ scrollbar-color:var(--ink-300) transparent; }
body.dark ::-webkit-scrollbar{ width:10px; height:10px; }
body.dark ::-webkit-scrollbar-thumb{ background:var(--ink-300); border-radius:6px; }
body.dark ::-webkit-scrollbar-track{ background:transparent; }
