:root{
  --bg:#EDF1F0; --panel:#FFFFFF; --panel2:#F6F8F7; --ink:#14201D; --muted:#566661; --line:#D2DBD8; --line2:#E4EAE8;
  --accent:#1D5C78; --accent-ink:#FFFFFF; --accent-soft:#E1EEF3;
  --t-arb:#2C6E8A; --t-ot:#D2762B; --t-mer:#9467B5; --t-jour:#3A4796; --t-ber:#86A6A2; --t-ink:#C23B7A;
  --bad:#C0362C; --bad-bg:#FBE8E5; --warn:#A96A0E; --warn-bg:#FBF0DA; --okx:#2F7D4A; --okx-bg:#E3F2E7;
  --grid:rgba(20,32,29,.07);
  --sans:"Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#0F1614; --panel:#162020; --panel2:#1B2725; --ink:#E3ECE9; --muted:#93A5A0; --line:#2B3936; --line2:#22302D;
    --accent:#6FB6D4; --accent-ink:#0B1A20; --accent-soft:#1B3440;
    --t-arb:#5AA3C4; --t-ot:#E8954E; --t-mer:#B38FD4; --t-jour:#7C8AE0; --t-ber:#6E918D; --t-ink:#E06AA2;
    --bad:#F0776B; --bad-bg:#3A1C19; --warn:#E3AC4E; --warn-bg:#352813; --okx:#6CC08A; --okx-bg:#173020;
    --grid:rgba(227,236,233,.07);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0F1614; --panel:#162020; --panel2:#1B2725; --ink:#E3ECE9; --muted:#93A5A0; --line:#2B3936; --line2:#22302D;
  --accent:#6FB6D4; --accent-ink:#0B1A20; --accent-soft:#1B3440;
  --t-arb:#5AA3C4; --t-ot:#E8954E; --t-mer:#B38FD4; --t-jour:#7C8AE0; --t-ber:#6E918D; --t-ink:#E06AA2;
  --bad:#F0776B; --bad-bg:#3A1C19; --warn:#E3AC4E; --warn-bg:#352813; --okx:#6CC08A; --okx-bg:#173020;
  --grid:rgba(227,236,233,.07);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;padding-inline:16px;padding-block:0 48px}
.wrap{max-width:1360px;margin-inline:auto}
h1,h2,h3{text-wrap:balance;margin:0;line-height:1.2}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* header */
.top{padding-block:28px 22px}
.brand{display:flex;gap:16px;align-items:flex-start}
.mark{flex:none;width:46px;height:46px;border-radius:12px;background:var(--ink);color:var(--bg);display:grid;place-items:center}
.brand h1{font-size:30px;font-weight:800;letter-spacing:-.02em}
.brand p{margin:4px 0 0;color:var(--muted);max-width:70ch}

/* layout */
.layout{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:980px){.layout{grid-template-columns:minmax(0,1fr)}}
.col{display:flex;flex-direction:column;gap:16px;min-width:0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:12px;min-width:0}
.ph{display:flex;align-items:center;gap:10px}
.step{font-family:var(--mono);font-size:12px;font-weight:600;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;flex:none}
.ph h2{font-size:18px;font-weight:700}
.ph .aside{margin-left:auto;font-size:12px;color:var(--muted)}
.lbl{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.desc{margin:0;color:var(--muted);font-size:14px}
select,input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=time],textarea{background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:7px 9px;min-width:0;width:100%}
textarea{font-family:var(--mono);font-size:13px;line-height:1.55;resize:vertical}
#sched{min-height:260px;white-space:pre;overflow-x:auto}
.btns{display:flex;flex-wrap:wrap;gap:8px}
.btn{border:1px solid var(--line);background:var(--panel2);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;font-weight:500}
.btn:hover{border-color:var(--accent)}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.btn.ghost{background:none}
.filebtn{position:relative;overflow:hidden}
.filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
details{border-top:1px solid var(--line2);padding-top:10px}
summary{cursor:pointer;font-weight:600;font-size:14px}
details[open]>summary{margin-bottom:10px}
.note{font-size:13px;color:var(--muted);margin:0}
.note code,.fmt code{font-family:var(--mono);font-size:12px;background:var(--panel2);border:1px solid var(--line2);padding:0 4px;border-radius:4px}
.examplebar{display:flex;gap:10px;align-items:center;justify-content:space-between;background:var(--accent-soft);border-radius:6px;padding:7px 10px;font-size:13px}
.examplebar[hidden]{display:none!important}
.errors{margin:0;padding:0;list-style:none;font-size:13px;color:var(--bad);display:flex;flex-direction:column;gap:2px}
.errors code{font-family:var(--mono);font-size:12px}
.parsed{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.fmt{font-size:13px;color:var(--muted);display:grid;gap:4px}

/* rule editor */
.rgroup{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.rgroup h3{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rule{border:1px solid var(--line2);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.rule.off .params,.rule.off .rule-d{opacity:.45}
.rule-h{display:flex;align-items:center;gap:8px}
.rule-h label{display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer}
.ref{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap}
.rule-d{margin:0;font-size:13px;color:var(--muted)}
.params{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.params label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}
.inp{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}
.inp input{font-family:var(--mono);font-size:13px}
.settings{display:flex;flex-direction:column;gap:8px}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:14px;cursor:pointer}
.chk input{margin-top:4px}
.chk small{display:block;color:var(--muted);font-size:12px}

/* exceptions */
.exlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ex{border:1px solid var(--line2);border-left:3px solid var(--okx);border-radius:6px;padding:8px 10px;display:grid;grid-template-columns:1fr auto;gap:2px 10px;font-size:13px}
.ex b{font-size:14px}
.ex .meta{color:var(--muted);font-family:var(--mono);font-size:12px}
.ex .x{grid-row:1/span 3;grid-column:2;align-self:start;border:none;background:none;cursor:pointer;color:var(--muted);font-size:18px;line-height:1;padding:2px 4px}
.ex .x:hover{color:var(--bad)}
.exform{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.exform label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}
.exform .full{grid-column:1/-1}

/* results */
.verdict{border-radius:10px;padding:18px 20px;display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;border:1px solid var(--line);background:var(--panel)}
.verdict .v-main{flex:1 1 280px;display:flex;gap:14px;align-items:center}
.v-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;font-weight:800;font-size:22px}
.verdict.bad .v-icon{background:var(--bad-bg);color:var(--bad)}
.verdict.warn .v-icon{background:var(--warn-bg);color:var(--warn)}
.verdict.good .v-icon{background:var(--okx-bg);color:var(--okx)}
.verdict h2{font-size:22px;font-weight:800;letter-spacing:-.01em}
.verdict p{margin:2px 0 0;color:var(--muted);font-size:14px}
.stats{display:flex;flex-wrap:wrap;gap:6px 22px}
.stat{display:flex;flex-direction:column}
.stat span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.stat b{font-family:var(--mono);font-size:17px;font-weight:600;font-variant-numeric:tabular-nums}

.overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.ov{border:1px solid var(--line2);border-radius:8px;padding:9px 11px;display:flex;flex-direction:column;gap:3px;background:var(--panel2);cursor:pointer;text-align:left}
.ov:hover{border-color:var(--accent)}
.ov.sel{outline:2px solid var(--accent);outline-offset:-1px}
.ov .top-l{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ov b{font-size:14px}
.ov small{color:var(--muted);font-size:12px;font-family:var(--mono)}
.ov.dis{opacity:.5}
.pill{display:inline-flex;align-items:center;gap:4px;border-radius:99px;padding:1px 8px;font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.pill.fel{background:var(--bad-bg);color:var(--bad)}
.pill.varning{background:var(--warn-bg);color:var(--warn)}
.pill.undantag{background:var(--okx-bg);color:var(--okx)}
.pill.ok{background:transparent;color:var(--okx);border:1px solid var(--okx)}
.pill.av{background:transparent;color:var(--muted);border:1px solid var(--line)}

.filters{display:flex;flex-wrap:wrap;gap:6px}
.fchip{border:1px solid var(--line);background:var(--panel2);border-radius:99px;padding:3px 11px;font-size:13px;cursor:pointer}
.fchip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.findings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.fd{border:1px solid var(--line2);border-left:4px solid var(--line);border-radius:6px;padding:9px 12px;display:grid;grid-template-columns:auto 1fr;gap:3px 12px;cursor:pointer;background:var(--panel)}
.fd:hover{border-color:var(--accent)}
.fd.fel{border-left-color:var(--bad)} .fd.varning{border-left-color:var(--warn)} .fd.undantag{border-left-color:var(--okx)}
.fd .when{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap;padding-top:2px}
.fd .what{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.fd .what b{font-size:14px}
.fd .what .ref{margin-left:0}
.fd p{margin:0;grid-column:2;font-size:13px;color:var(--muted)}
.fd .via{color:var(--okx)}
.empty{color:var(--muted);font-size:14px;padding:8px 0}

/* timeline */
.legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted)}
.legend i{display:inline-block;width:14px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.tl-scroll{overflow-x:auto}
.tl{min-width:560px;display:flex;flex-direction:column;gap:3px;font-variant-numeric:tabular-nums}
.tl-axis,.tl-row{display:grid;grid-template-columns:96px 1fr 58px;gap:10px;align-items:center}
.tl-axis .ticks{position:relative;height:16px;font-family:var(--mono);font-size:11px;color:var(--muted)}
.tl-axis .ticks span{position:absolute;transform:translateX(-50%)}
.tl-axis .ticks span:first-child{transform:none}
.tl-axis .ticks span:last-child{transform:translateX(-100%)}
.tl-wk{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:8px;border-bottom:1px solid var(--line2);letter-spacing:.04em}
.tl-row .dl{font-size:12px;font-family:var(--mono);white-space:nowrap}
.tl-row .dl.we{color:var(--muted)}
.bar{position:relative;height:22px;border-radius:4px;background:var(--panel2);border:1px solid var(--line2);overflow:hidden;
  background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px);background-size:25% 100%}
.seg{position:absolute;top:2px;bottom:2px;border-radius:2px}
.seg.c1{background:repeating-linear-gradient(135deg,var(--t-ber) 0 3px,transparent 3px 6px);border:1px solid var(--t-ber)}
.seg.c2{background:var(--t-jour)} .seg.c3{background:var(--t-arb)} .seg.c4{background:var(--t-mer)} .seg.c5{background:var(--t-ot)} .seg.c6{background:var(--t-ink)}
.ovl{position:absolute;top:0;bottom:0;border-top:3px solid;border-bottom:3px solid;pointer-events:none}
.ovl.fel{border-color:var(--bad);background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--bad) 22%,transparent) 0 4px,transparent 4px 8px)}
.ovl.varning{border-color:var(--warn);background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--warn) 18%,transparent) 0 4px,transparent 4px 8px)}
.ovl.undantag{border-color:var(--okx);background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--okx) 16%,transparent) 0 4px,transparent 4px 8px)}
.abs{position:absolute;inset:0;display:flex;align-items:center;padding-left:8px;font-size:11px;color:var(--muted);font-family:var(--mono);background:repeating-linear-gradient(90deg,transparent 0 6px,var(--grid) 6px 7px)}
.flags{display:flex;gap:3px;flex-wrap:wrap}
.flags i{width:9px;height:9px;border-radius:50%}
.flags i.fel{background:var(--bad)} .flags i.varning{background:var(--warn)} .flags i.undantag{background:var(--okx)}
.tl-row.flash .bar{box-shadow:0 0 0 2px var(--accent)}

table.wk{border-collapse:collapse;width:100%;font-size:13px;font-variant-numeric:tabular-nums;min-width:640px}
table.wk th,table.wk td{padding:6px 8px;border-bottom:1px solid var(--line2);text-align:right;white-space:nowrap}
table.wk th:first-child,table.wk td:first-child{text-align:left}
table.wk th{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:600}
table.wk td{font-family:var(--mono)}
table.wk td.low{color:var(--bad);font-weight:600}
table.wk tr.act td{background:var(--accent-soft)}
table.wk tr.click{cursor:pointer}
.tscroll{overflow-x:auto}
.disclaimer{font-size:12px;color:var(--muted);margin:0;max-width:90ch}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (prefers-reduced-motion:no-preference){.tl-row .bar{transition:box-shadow .3s}}
@media (max-width:520px){
  .brand h1{font-size:24px}
  .tl-axis,.tl-row{grid-template-columns:78px 1fr 40px;gap:6px}
  .exform{grid-template-columns:1fr}
  .fd{grid-template-columns:1fr}.fd p{grid-column:1}
}

/* nav + guide */
.nav{display:flex;gap:4px;margin-left:auto;align-self:center;flex-wrap:wrap}
.nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:14px;padding:6px 12px;border-radius:6px;border:1px solid transparent}
.nav a:hover{border-color:var(--line)}
.nav a[aria-current="page"]{background:var(--ink);color:var(--bg)}
.top .brand{flex-wrap:wrap}
.help{margin-left:6px;font-family:var(--mono);font-size:11px;color:var(--accent);text-decoration:none;border:1px solid var(--line);border-radius:50%;width:18px;height:18px;display:inline-grid;place-items:center;flex:none}
.help:hover{border-color:var(--accent)}
.loading{opacity:.55;transition:opacity .2s}
.guide{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:900px){.guide{grid-template-columns:minmax(0,1fr)}.toc{position:static!important}}
.toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + 16px);display:flex;flex-direction:column;gap:2px;font-size:14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}
.toc b{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:8px}
.toc b:first-child{margin-top:0}
.toc a{color:var(--ink);text-decoration:none;padding:2px 0}
.toc a:hover{color:var(--accent)}
.doc{display:flex;flex-direction:column;gap:18px;min-width:0}
.doc section{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px 22px;display:flex;flex-direction:column;gap:10px;min-width:0;scroll-margin-top:16px}
.doc h2{font-size:22px;font-weight:800;letter-spacing:-.01em}
.doc h3{font-size:16px;font-weight:700;margin-top:8px}
.doc p,.doc li{max-width:75ch}
.doc p{margin:0}
.doc ul,.doc ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}
.doc code{font-family:var(--mono);font-size:13px;background:var(--panel2);border:1px solid var(--line2);padding:0 4px;border-radius:4px}
.doc pre{font-family:var(--mono);font-size:12.5px;line-height:1.55;background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:12px 14px;overflow-x:auto;margin:0}
.doc pre code{background:none;border:none;padding:0}
.doc .eyebrow{font-family:var(--mono);font-size:12px;color:var(--muted)}
.doc table{border-collapse:collapse;width:100%;font-size:14px;min-width:560px}
.doc th,.doc td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line2);vertical-align:top}
.doc th{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.doc td code{white-space:nowrap}
.doc .calc{border-left:3px solid var(--accent);background:var(--accent-soft);padding:10px 14px;border-radius:0 8px 8px 0}
.doc .calc p{max-width:none}
.rulehead{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.rulehead .ref{margin-left:0}
a{color:var(--accent)}

/* säljsida */
.sales{display:flex;flex-direction:column;gap:20px}
.hero{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px 28px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center}
@media (max-width:900px){.hero{grid-template-columns:minmax(0,1fr);padding:22px 18px}}
.hero h2{font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
@media (max-width:520px){.hero h2{font-size:26px}}
.hero p{margin:0;color:var(--muted);font-size:16px;max-width:56ch}
.hero .lead{display:flex;flex-direction:column;gap:14px}
.hero pre{font-family:var(--mono);font-size:12px;line-height:1.55;background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:12px 14px;overflow-x:auto;margin:0}
.cta{display:flex;flex-wrap:wrap;gap:10px}
.btn.big{padding:10px 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center}
a.btn{color:inherit;text-decoration:none}
a.btn.primary{color:var(--accent-ink)}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.card h3{font-size:16px;font-weight:700}
.card p{margin:0;color:var(--muted);font-size:14px}
.section-h{display:flex;flex-direction:column;gap:4px}
.section-h h2{font-size:22px;font-weight:800;letter-spacing:-.01em}
.section-h p{margin:0;color:var(--muted)}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;align-items:stretch}
.plan{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px}
.plan.hl{border:2px solid var(--accent)}
.plan .tag{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border-radius:99px;padding:2px 9px}
.plan h3{font-size:20px;font-weight:800}
.plan .price{font-family:var(--mono);font-size:18px;font-weight:600}
.plan .limit{font-size:13px;color:var(--muted);font-family:var(--mono)}
.plan ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:14px;flex:1}
.plan .btn{align-self:stretch;justify-content:center;text-align:center}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;counter-reset:s}
.steps li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px;counter-increment:s}
.steps li::before{content:counter(s);font-family:var(--mono);font-size:12px;font-weight:600;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center}
.steps b{font-size:15px}
.steps span{font-size:14px;color:var(--muted)}
.buy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:20px;align-items:start}
@media (max-width:900px){.buy{grid-template-columns:minmax(0,1fr)}}
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:620px){.form{grid-template-columns:1fr}}
.form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.form .full{grid-column:1/-1}
.form .err{color:var(--bad);font-size:12px;min-height:0}
.form .invalid input,.form .invalid select,.form .invalid textarea{border-color:var(--bad)}
.form textarea{font-family:var(--sans);font-size:14px;white-space:normal}
.planpick{display:flex;flex-wrap:wrap;gap:8px}
.planpick label{flex-direction:row;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;cursor:pointer;color:var(--ink);font-size:14px}
.planpick label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.done{background:var(--okx-bg);color:var(--ink);border:1px solid var(--okx);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.done b{color:var(--okx);font-size:16px}
.aside-box{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;font-size:14px}
.aside-box h3{font-size:15px;font-weight:700}
.aside-box p{margin:0;color:var(--muted)}
.upsell{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;background:var(--accent-soft);border:1px solid var(--line);border-radius:10px;padding:16px 18px}
.upsell b{font-size:16px}
.upsell p{margin:2px 0 0;color:var(--muted);font-size:14px}

/* avtalskatalog */
.catlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}
.catitem{border:1px solid var(--line2);border-radius:8px;padding:8px 10px;display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;background:var(--panel2)}
.catitem b{font-size:14px}
.catitem small{color:var(--muted);font-size:12px;grid-column:1}
.catitem .btn{grid-row:1/span 2;grid-column:2;font-size:13px;padding:4px 10px}
.rsmeta{display:flex;flex-direction:column;gap:6px;font-size:13px}
.rsmeta .pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pill.lag,.pill.avtal{background:var(--okx-bg);color:var(--okx)}
.pill.mall{background:var(--warn-bg);color:var(--warn)}
.pill.exempel,.pill.eget{background:var(--panel2);color:var(--muted);border:1px solid var(--line)}
.rsmeta ul{margin:0;padding-left:18px;color:var(--muted);display:flex;flex-direction:column;gap:3px}

/* sidhuvud, sidfot, startsida och ämnessidor */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line2);margin-inline:-16px;padding-inline:16px;margin-bottom:20px}
.site-in{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-block:10px}
.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:800;font-size:18px;letter-spacing:-.01em}
.logo .mark{width:34px;height:34px;border-radius:9px;background:var(--ink);color:var(--bg);display:grid;place-items:center}
.site .nav{margin-left:auto}
.intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;align-items:center;margin-bottom:20px}
@media (max-width:900px){.intro{grid-template-columns:minmax(0,1fr)}}
.intro h1{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1.12}
@media (max-width:520px){.intro h1{font-size:25px}}
.intro-text{display:flex;flex-direction:column;gap:10px}
.intro-text p{margin:0;color:var(--muted);font-size:16px;max-width:62ch}
.trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;font-weight:600}
.trust li::before{content:"✓ ";color:var(--okx)}
.offer{display:grid;gap:8px}
.offer-card{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--ink);text-decoration:none}
.offer-card:hover{border-color:var(--accent)}
.offer-card span{color:var(--muted);font-size:14px}
.offer-card.accent{border-color:var(--accent);background:var(--accent-soft)}
.seo{margin-top:28px;display:flex;flex-direction:column;gap:14px}
.seo h2{font-size:22px;font-weight:800}
.seo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.seo-grid a{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;color:var(--ink);text-decoration:none;display:flex;flex-direction:column;gap:4px}
.seo-grid a:hover{border-color:var(--accent)}
.seo-grid span{color:var(--muted);font-size:14px}
.seo-faq{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.seo-faq details{border-top:1px solid var(--line2);padding-top:8px}
.seo-faq p{margin:6px 0 0;color:var(--muted);max-width:75ch}
.pagehead{margin-bottom:18px;display:flex;flex-direction:column;gap:6px}
.pagehead h1{font-size:30px;font-weight:800;letter-spacing:-.02em}
.pagehead p{margin:0;color:var(--muted);max-width:70ch}
.topic{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:24px;align-items:start}
@media (max-width:900px){.topic{grid-template-columns:minmax(0,1fr)}}
.topic h1{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
@media (max-width:520px){.topic h1{font-size:25px}}
.topic .lead{font-size:17px;color:var(--muted);max-width:68ch}
.crumbs{font-size:13px;color:var(--muted)}
.crumbs a{color:var(--muted)}
.topic-cta{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;background:var(--accent-soft);border:1px solid var(--line);border-radius:10px;padding:14px 16px}
.topic-cta p{margin:2px 0 0;color:var(--muted);font-size:14px}
.topic-links{list-style:none;padding:0}
.toc a[aria-current="page"]{font-weight:700;color:var(--accent)}
.site-foot{margin-top:40px;border-top:1px solid var(--line);margin-inline:-16px;padding-inline:16px;background:var(--panel)}
.foot-in{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:24px;padding-block:28px 18px}
@media (max-width:700px){.foot-in{grid-template-columns:minmax(0,1fr)}}
.foot-brand p{margin:8px 0 0;color:var(--muted);font-size:14px;max-width:44ch}
.site-foot b{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.site-foot ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14px}
.site-foot ul a{color:var(--ink);text-decoration:none}
.site-foot ul a:hover{color:var(--accent)}
.foot-note{font-size:12px;color:var(--muted);padding-block:12px 20px;border-top:1px solid var(--line2)}
body{padding-block:0}

/* förenklad startsida */
.intro{grid-template-columns:minmax(0,1fr);margin-bottom:16px}
.intro h1{font-size:30px}
.adv{display:flex;flex-direction:column;gap:12px}
.share{border-top:1px solid var(--line2);padding-top:10px;display:flex;flex-direction:column;gap:8px}
details.fold{display:block}
details.fold>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer}
details.fold>summary::-webkit-details-marker{display:none}
details.fold>summary::after{content:"▾";margin-left:8px;color:var(--muted)}
details.fold[open]>summary::after{content:"▴"}
details.fold[open]>summary{margin-bottom:12px}
details.fold>*+*{margin-top:12px}
.fold-h{font-size:18px;font-weight:700}
.fold-sub{font-size:13px;font-weight:500;color:var(--muted);margin-left:4px}
details.fold .aside{margin-left:auto;font-size:12px;color:var(--muted)}
.tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:-6px}
.tabs [role=tab]{border:1px solid transparent;border-bottom:none;background:none;padding:8px 14px;border-radius:8px 8px 0 0;font-weight:600;font-size:14px;color:var(--muted);cursor:pointer;margin-bottom:-1px}
.tabs [role=tab][aria-selected=true]{background:var(--panel);border-color:var(--line);color:var(--ink)}
.tabs [role=tab]:hover{color:var(--ink)}
.tcount{font-family:var(--mono);font-size:12px;background:var(--panel2);border:1px solid var(--line2);border-radius:99px;padding:0 6px;margin-left:2px}
.tcount:empty{display:none}
.tabpanel{border-top-left-radius:0}
.upsell-line{margin:4px 0 0;font-size:14px;color:var(--muted)}
.mobile-only{display:none}
@media (max-width:980px){.mobile-only{display:inline-flex}#results{scroll-margin-top:70px}}
.linebar{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
#line-count.over{color:var(--bad);font-weight:600}

/* cookieruta */
.cookie{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:50;max-width:560px;margin-inline:auto;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.cookie p{margin:0;font-size:14px;color:var(--muted)}
.cookie p b{color:var(--ink);margin-right:4px}
.cookie .btns{justify-content:flex-end}
.foot-note a{color:var(--muted)}
.plan .pricenote{font-size:12px;color:var(--muted);margin-top:-6px}
.plans{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}

/* konto */
.acct-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.panel.narrow{max-width:520px;margin:20px auto}
.nav .nav-acct{border:1px solid var(--line)}
.meter{height:8px;border-radius:99px;background:var(--panel2);border:1px solid var(--line2);overflow:hidden}
.meter i{display:block;height:100%;background:var(--accent);width:0}
.acctbar{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;justify-content:space-between;background:var(--accent-soft);border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:14px;margin-bottom:14px}
.acctbar b{font-weight:700}
.emp-table td:first-child{font-family:var(--sans)}
.emp-table tr.sel td{background:var(--accent-soft)}
@media print{
  header.site,.site-foot,.col:first-child,.tabs,.filters,.upsell-line,.cookie,#export-bar,.intro,.seo,.acctbar{display:none!important}
  .layout{grid-template-columns:1fr!important}
  .tabpanel[hidden]{display:block!important}
  body{background:#fff;color:#000}
  .panel,.verdict{border:1px solid #bbb;break-inside:avoid}
}
.runrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#run-btn.pulse{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}
.acctbar{margin-inline:auto}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:4px 0 0}
.facts dt{color:var(--muted);font-size:13px}
.facts dd{margin:0}
.foot-co{font-size:13px;color:var(--muted)}
/* sparade tidsmallar och körningar */
.savedbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.savedbar select{flex:1 1 220px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.savedform{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);background:var(--panel2);border-radius:10px;padding:14px;margin-bottom:12px}
.savedform>label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:14px}
.savedform input[type=text],.savedform #saved-name{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-weight:400}
.savedform fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.savedform .radio{display:flex;gap:8px;align-items:flex-start;font-size:14px;font-weight:400}
.savedform .radio input{margin-top:4px}
/* adminsidan */
:root{--c-web:#2477B0;--c-konto:#D2762B;--c-api:#7A5AB8}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--c-web:#4E9BD6;--c-konto:#C87830;--c-api:#9A7FD6}}
:root[data-theme="dark"]{--c-web:#4E9BD6;--c-konto:#C87830;--c-api:#9A7FD6}
.admin{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.a-head{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:flex-end}
.a-head h1{font-size:28px;font-weight:800}
.a-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.a-kpi{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;min-width:0}
.a-kpi span{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.a-kpi b{font-family:var(--mono);font-size:26px;font-weight:600;line-height:1.2}
.a-kpi small{color:var(--muted);font-size:13px}
.a-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.a-chart{position:relative;height:200px;display:flex;align-items:flex-end;gap:2px;padding:0 0 22px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 44px,var(--grid) 44px,var(--grid) 45px)}
.a-bar{flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column-reverse;gap:2px;cursor:default;position:relative}
.a-bar i{display:block;width:100%;min-height:0}
.a-bar i.web{background:var(--c-web);border-radius:0 0 0 0}
.a-bar i.api{background:var(--c-api)}
.a-bar i.konto{background:var(--c-konto)}
.a-bar i:last-of-type{border-radius:4px 4px 0 0}
.a-bar em{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}
.a-bar:hover i{filter:brightness(1.12)}
.a-tip{position:absolute;z-index:5;background:var(--ink);color:var(--bg);font-size:13px;padding:6px 10px;border-radius:6px;pointer-events:none;white-space:nowrap}
.a-legend{display:flex;gap:6px;align-items:center}
.sw{display:inline-block;width:10px;height:10px;border-radius:2px;margin-left:8px}
.sw.web{background:var(--c-web)}.sw.konto{background:var(--c-konto)}.sw.api{background:var(--c-api)}
.admin table{width:100%;border-collapse:collapse;font-size:14px}
.admin th,.admin td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line2);vertical-align:top}
.admin th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}
.admin td.n,.admin th.n{text-align:right;font-family:var(--mono)}
.admin .a-small{font-size:12.5px}
.admin select,.admin input{padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}
.admin .tag{display:inline-block;font-size:12px;padding:0 6px;border-radius:4px;background:var(--panel2);border:1px solid var(--line2)}
.admin .bad{color:var(--bad)}
.admin section.panel{position:relative}
/* schemaeditor: radnummer och markerade fel ligger bakom textrutan */
.editor{display:flex;border:1px solid var(--line);border-radius:6px;background:var(--panel2);overflow:hidden;--ed-lh:20px;--ed-pad:8px}
.editor:focus-within{outline:2px solid var(--accent);outline-offset:1px}
.ed-gutter{position:relative;flex:none;min-width:3.2em;padding:0 6px;text-align:right;font-family:var(--mono);font-size:12px;line-height:var(--ed-lh);color:var(--muted);background:var(--panel);border-right:1px solid var(--line2);overflow:hidden;user-select:none;white-space:pre}
.ed-gutter span{display:block;height:var(--ed-lh)}
.ed-gutter span.err{color:var(--bad);font-weight:700}
.ed-gutter span.cur{color:var(--ink)}
.ed-main{position:relative;flex:1;min-width:0;display:flex}
.ed-back{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.ed-win{position:absolute;left:0;right:0;top:0;will-change:transform}
.ed-gutter .ed-win{left:6px;right:6px}
.ed-back div{height:var(--ed-lh)}
.ed-back div.err{background:var(--bad-bg);box-shadow:inset 3px 0 0 var(--bad)}
.ed-back div.head{background:var(--accent-soft)}
.ed-back div.cur{background:var(--grid)}
.ed-back div.err.cur{background:var(--bad-bg)}
.editor #sched{position:relative;background:transparent;border:0;border-radius:0;outline:none;width:100%;min-height:260px;margin:0;
  padding:var(--ed-pad) 10px;line-height:var(--ed-lh);font-size:13px;white-space:pre;overflow:auto;resize:vertical}
.editor #sched:focus-visible{outline:none}
.edtools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}
.edtools select{flex:1 1 200px;min-width:0;width:auto}
.errors li.jump{cursor:pointer}
.errors li.jump:hover{text-decoration:underline}
/* startsidan: försäljning */
.intro .eyebrow{margin:0;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.intro h1{font-size:36px}
@media (max-width:520px){.intro h1{font-size:27px}}
.intro .cta{margin-top:4px}
.intro{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:28px}
@media (max-width:900px){.intro{grid-template-columns:minmax(0,1fr);gap:16px}}
.facts-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.facts-strip li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.facts-strip b{font-family:var(--mono);font-size:24px;line-height:1.1;color:var(--accent)}
.facts-strip span{font-size:13.5px;color:var(--muted)}
@media (max-width:900px){.facts-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:640px){.facts-strip{display:none}}
.upsell{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;background:var(--accent-soft);border:1px solid var(--accent);border-radius:10px;padding:16px 18px;margin-bottom:12px}
.upsell h2{font-size:17px;font-weight:800;margin-bottom:6px}
.upsell ul{margin:0;padding-left:18px;font-size:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:2px 18px}
.upsell-cta{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.home-sec{margin-top:36px;display:flex;flex-direction:column;gap:14px}
.home-sec>h2{font-size:24px;font-weight:800;letter-spacing:-.01em}
.home-sec .card h3{font-size:16px;font-weight:700}
.home-sec .card p{margin:0;color:var(--muted);font-size:14.5px}
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.price-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.price-card{position:relative;display:flex;flex-direction:column;gap:3px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;color:var(--ink);text-decoration:none}
.price-card:hover{border-color:var(--accent)}
.price-card.hl{border:2px solid var(--accent)}
.price-card .tag{position:absolute;top:-10px;left:14px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border-radius:99px;padding:2px 9px}
.pc-price{font-size:22px;font-weight:800;letter-spacing:-.01em}
.pc-limit{font-size:13.5px;color:var(--muted)}
.pc-go{margin-top:6px;font-size:14px;font-weight:600;color:var(--accent)}
.trustband{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 20px}
.trustband h2{font-size:20px;font-weight:800;margin-bottom:4px}
.trustband p{margin:0;color:var(--muted);max-width:80ch}
.final-cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--bg);border-radius:12px;padding:22px 24px}
.final-cta h2{font-size:22px;font-weight:800}
.final-cta p{margin:4px 0 0;opacity:.8}
.final-cta .btn:not(.primary){background:transparent;color:var(--bg);border-color:color-mix(in srgb,var(--bg) 40%,transparent)}
@media print{.upsell,.home-sec,.final-cta,.facts-strip{display:none!important}}
/* veckoschema (som ett skolschema) */
.sch-bar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;margin-bottom:6px}
.sch-nav,.sch-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sch-nav b{min-width:12ch;text-align:center;font-size:15px}
.sch-wrap{overflow-x:auto;margin-top:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.sch{display:grid;grid-template-columns:48px repeat(7,minmax(92px,1fr));min-width:700px}
.sch-h{height:40px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px;border-bottom:1px solid var(--line);background:var(--panel2);position:sticky;top:0}
.sch-h .flags{display:flex;gap:2px}
.sch-h .flags i{width:7px;height:7px;border-radius:50%}
.sch-h .flags i.fel{background:var(--bad)}.sch-h .flags i.varning{background:var(--warn)}.sch-h .flags i.undantag{background:var(--okx)}
.sch-col{border-left:1px solid var(--line2);min-width:0}
.sch-col.we .sch-day{background-color:color-mix(in srgb,var(--panel2) 60%,transparent)}
.sch-axis{position:relative}
.sch-axis span{position:absolute;right:6px;transform:translateY(-50%);font-family:var(--mono);font-size:11px;color:var(--muted)}
.sch-axis span:first-child{transform:none}
.sch-day{position:relative;cursor:crosshair;touch-action:none;background-image:repeating-linear-gradient(to bottom,var(--line2) 0 1px,transparent 1px 28px)}
.sch-b{position:absolute;left:3px;right:3px;border-radius:6px;padding:3px 6px;font:inherit;font-size:12px;text-align:left;color:#fff;border:0;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:1px;line-height:1.25;box-shadow:0 0 0 1px var(--panel)}
.sch-b b{font-family:var(--mono);font-size:11.5px;font-weight:600}
.sch-b span{opacity:.9}
.sch-b.c1{background:repeating-linear-gradient(135deg,var(--t-ber) 0 4px,color-mix(in srgb,var(--t-ber) 55%,var(--panel)) 4px 8px);color:var(--ink)}
.sch-b.c2{background:var(--t-jour)}.sch-b.c3{background:var(--t-arb)}.sch-b.c4{background:var(--t-mer)}.sch-b.c5{background:var(--t-ot)}.sch-b.c6{background:var(--t-ink)}
.sch-b.fel{outline:3px solid var(--bad);outline-offset:-3px}
.sch-b.varning{outline:3px dashed var(--warn);outline-offset:-3px}
.sch-b.pending,.sch-b.ghost{opacity:.65;border:2px dashed var(--ink);cursor:default}
.sch-b.ghost{pointer-events:none}
.sch-b:focus-visible{outline:2px solid var(--ink);outline-offset:1px}
.sch-abs{position:absolute;inset:6px 4px auto;padding:6px;border-radius:6px;background:var(--okx-bg);color:var(--okx);font-size:12px;font-weight:600;text-align:center}
.sch-sum{margin-top:6px}
.sch-dlg{border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);padding:18px 20px;max-width:min(460px,calc(100vw - 32px))}
.sch-dlg::backdrop{background:rgba(0,0,0,.35)}
.sch-dlg h3{font-size:18px;margin-bottom:10px}
.sch-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
.sch-grid label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}
@media print{
  body.print-sch *{visibility:hidden}
  body.print-sch #p-sch,body.print-sch #p-sch *{visibility:visible}
  body.print-sch #p-sch{position:absolute;inset:0;border:0}
  body.print-sch .sch-actions,body.print-sch .sch-nav button,body.print-sch #sch-hint,body.print-sch .sch-dlg{display:none!important}
  body.print-sch .sch-wrap{overflow:visible;border:1px solid #999}
  body.print-sch .sch-h{position:static}
  body.print-sch .sch-nav b{font-size:18px;text-align:left}
  body.print-sch .sch{min-width:0}
  body.print-sch .sch-b{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* kalkylatorer */
.calc{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px;background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:16px}
.calc fieldset{border:1px solid var(--line2);border-radius:8px;padding:10px 12px;margin:0;display:grid;gap:8px}
.calc legend{font-weight:700;font-size:14px;padding:0 4px}
.calc label{display:flex;flex-direction:column;gap:4px;font-size:13.5px;font-weight:600}
.calc .full{grid-column:1/-1}
.calc textarea{font-family:var(--mono);font-size:13px;min-height:150px}
.vv-tab{width:100%;border-collapse:collapse;font-size:14px}
.vv-tab th,.vv-tab td{padding:4px 6px;text-align:left;border-bottom:1px solid var(--line2)}
.vv-tab th[scope=row]{font-weight:600;white-space:nowrap}
.calc-out{border-radius:10px;border:1px solid var(--line);padding:16px 18px;display:flex;flex-direction:column;gap:8px;margin-top:4px}
.calc-out.ok{background:var(--okx-bg);border-color:var(--okx)}
.calc-out.bad{background:var(--bad-bg);border-color:var(--bad)}
.calc-out.info{background:var(--panel2)}
.co-head{display:flex;gap:10px;align-items:center;font-size:18px}
.co-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:var(--muted);flex:none}
.calc-out.ok .co-icon{background:var(--okx)}.calc-out.bad .co-icon{background:var(--bad)}
.co-body p{margin:0 0 6px}
.ot-tab{border-collapse:collapse;font-size:14px;margin:4px 0 8px}
.ot-tab th,.ot-tab td{padding:3px 12px 3px 0;text-align:left}
/* granskningsrapport (bara vid utskrift) */
.report{display:none}
@media print{
  body.print-report{background:#fff;padding:0}
  body.print-report > *:not(main), body.print-report main > *:not(#verktyg), body.print-report #verktyg > .col:first-child,
  body.print-report #results > *:not(#report){display:none!important}
  body.print-report #verktyg{display:block}
  body.print-report .report{display:block!important;color:#111;font-size:11pt;line-height:1.4}
  .report h1{font-size:20pt;margin:2px 0 4px}
  .report h2{font-size:14pt;margin:18px 0 6px;break-after:avoid}
  .report h3{font-size:11.5pt;margin:10px 0 4px}
  .rp-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #111;padding-bottom:10px}
  .rp-head p{margin:0}
  .rp-brand{font-weight:800;font-size:12pt;color:#1D5C78}
  .rp-meta{text-align:right;font-size:9.5pt;color:#444}
  .rp-sum{display:flex;gap:10px;margin:14px 0}
  .rp-sum div{flex:1;border:1px solid #bbb;border-radius:6px;padding:8px 10px}
  .rp-sum b{display:block;font-size:18pt}
  .rp-sum .fel b{color:#B0302A}.rp-sum .varning b{color:#8A5A0A}.rp-sum .undantag b{color:#2F7D4A}
  .rp-tab{width:100%;border-collapse:collapse;font-size:9.5pt;margin:4px 0 8px}
  .rp-tab th,.rp-tab td{border-bottom:1px solid #ccc;padding:4px 6px;text-align:left;vertical-align:top}
  .rp-tab th{background:#f0f0f0}
  .rp-tab .n{text-align:right}
  .rp-emp{break-before:page}
  .rp-emp:first-of-type{break-before:auto}
  .rp-sub{margin:0 0 6px;color:#444}
  .rp-find{padding-left:18px;margin:0}
  .rp-find li{margin:0 0 7px;break-inside:avoid}
  .rp-find p{margin:2px 0 0;font-size:9.5pt;color:#333}
  .rp-via{color:#2F7D4A!important}
  .rp-pill{display:inline-block;font-size:8pt;font-weight:700;border-radius:3px;padding:0 5px;border:1px solid}
  .rp-pill.fel{color:#B0302A}.rp-pill.varning{color:#8A5A0A}.rp-pill.undantag{color:#2F7D4A}.rp-pill.ok{color:#2F7D4A}
  .rp-sign{display:flex;gap:20px;margin-top:40px;break-inside:avoid}
  .rp-sign div{flex:1;border-top:1px solid #111;padding-top:4px;font-size:9pt}
  .rp-foot{margin-top:18px;font-size:8.5pt;color:#555}
  @page{margin:16mm 14mm}
}
/* OB */
.ob-top{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:flex-end;justify-content:space-between;margin-bottom:8px}
.ob-top .note{flex:1 1 320px;margin:0}
.ob-wage{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;width:160px}
.ob-wh{font-size:15px;margin:14px 0 6px}
table.wk tr.sum td{border-top:2px solid var(--line)}
.ob-ed .ob-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 28px;gap:6px 8px;align-items:end;padding:10px 0;border-top:1px solid var(--line2)}
.ob-ed .ob-row>input[type=text]{grid-column:1/5}
.ob-ed .ob-row>.x{grid-column:5;grid-row:1}
.ob-ed .ob-days{grid-column:1/-1}
.ob-ed .ob-row label{display:flex;flex-direction:column;gap:3px;font-size:12px;min-width:0}
.ob-ed .ob-row input{min-width:0}
.ob-days{grid-column:1/-1}}
.ob-ed .ob-row label{display:flex;flex-direction:column;gap:3px;font-size:12px}
.ob-days{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:12.5px}
.ob-days label{flex-direction:row!important;align-items:center;gap:3px!important}
.rv-tab{width:100%;border-collapse:collapse;font-size:14px}
.rv-tab th,.rv-tab td{padding:6px 8px;border-bottom:1px solid var(--line2);text-align:left;vertical-align:top}
.rv-tab th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.rv-tab tr.diff td{background:var(--accent-soft)}
.rv-tab tr.diff td:first-child{box-shadow:inset 3px 0 0 var(--accent)}
.rv-tab tr.off td{color:var(--muted)}
.notices{list-style:none;margin:10px 0 0;padding:8px 12px;border-radius:8px;background:var(--accent-soft);font-size:13.5px;display:flex;flex-direction:column;gap:4px}
@media print{.rp-notes{font-size:9.5pt;color:#1D5C78;padding-left:16px;margin:4px 0 8px}}
.logo-t{display:flex;flex-direction:column;line-height:1.05}
.logo-t small{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.import-msg:empty{display:none}
.import-msg .warn{color:var(--warn)}
.locked-note{background:var(--accent-soft);border-color:var(--accent);margin-bottom:12px;display:block}
/* startsidan, kortare */
.reasons{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:800px){.reasons{grid-template-columns:minmax(0,1fr)}}
.reasons div{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-left:3px solid var(--accent);background:var(--panel);border-radius:0 10px 10px 0}
.reasons b{font-size:15.5px}
.reasons span{color:var(--muted);font-size:14px}
.linkrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.linkrow h2{font-size:15px!important;font-weight:700;margin-right:6px;width:100%}
.linkrow a{padding:6px 12px;border:1px solid var(--line);border-radius:99px;background:var(--panel);color:var(--ink);text-decoration:none;font-size:14px}
.linkrow a:hover{border-color:var(--accent)}
/* verktyg för stora scheman (inloggad) */
.edtools2 select{flex:1 1 160px}
.edpanel{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:end;padding:10px;margin-bottom:8px;border:1px solid var(--line);border-radius:6px;background:var(--panel2)}
.edpanel>label:not(.radio){display:flex;flex-direction:column;gap:3px;font-size:13px;flex:0 1 240px}
.edpanel .btns{margin:0;flex:1 1 100%}
.edpanel .note{margin:0;flex:1 1 100%}
.edpanel .radio{flex:1 1 100%}
.ed-keys{font-size:12px}
.ed-keys kbd{font-family:var(--mono);font-size:11px;padding:0 4px;border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;background:var(--panel)}
.layout.ed-wide{grid-template-columns:minmax(0,1fr)}
.layout.ed-wide .editor #sched{height:calc(100vh - 300px);min-height:420px}
@media (max-width:700px){.ed-keys{display:none}}
/* schemabyggaren */
:root{--c1:#2477B0;--c2:#D2762B;--c3:#2F8F5B;--c4:#7A5AB8;--c5:#C2477A;--c6:#1F8A8A;--c7:#9A7B1C;--c8:#5C6F84}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--c1:#5AA3D6;--c2:#E8954E;--c3:#62BF8A;--c4:#A58BDB;--c5:#E07AA6;--c6:#4DBDBD;--c7:#D0AE4A;--c8:#93A6BB}}
:root[data-theme="dark"]{--c1:#5AA3D6;--c2:#E8954E;--c3:#62BF8A;--c4:#A58BDB;--c5:#E07AA6;--c6:#4DBDBD;--c7:#D0AE4A;--c8:#93A6BB}
.sb-page{display:flex;flex-direction:column;gap:14px;padding-top:18px}
.sb-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;justify-content:space-between}
.sb-head h1{font-size:32px;font-weight:800;letter-spacing:-.02em}
.sb-head .lead{max-width:72ch;color:var(--muted);margin:6px 0 0}
.sb-head .eyebrow{margin:0;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.sb-start{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sb-bar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;position:relative}
.sb-name{flex:1 1 220px}.sb-name input{width:100%;font-weight:700;font-size:16px;border:1px solid var(--line);border-radius:6px;padding:6px 10px;background:var(--panel2)}
.sb-saved{display:flex;gap:6px}.sb-saved select{max-width:240px}
.sb-actions{display:flex;gap:6px;flex-wrap:wrap}
.sb-settings summary{list-style:none;cursor:pointer}.sb-settings summary::-webkit-details-marker{display:none}
.sb-settings[open] .sb-set-in{position:absolute;z-index:20;left:12px;right:12px;top:calc(100% + 4px);display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.sb-set-in label{display:flex;flex-direction:column;gap:3px;font-size:13px}
.sb-set-in .radio{flex-direction:row;grid-column:1/-1;align-items:flex-start;gap:8px}
.sb-page select,.sb-page input[type=date],.sb-page input[type=time],.sb-page input[type=number],.sb-dlg input:not([type=checkbox]),.sb-dlg select,.sb-add input{border:1px solid var(--line);border-radius:6px;padding:6px 8px;background:var(--panel2);min-width:0}
.sb-layout{display:grid;grid-template-columns:230px minmax(0,1fr) 300px;gap:14px;align-items:start}
@media (max-width:1180px){.sb-layout{grid-template-columns:220px minmax(0,1fr)}.sb-check{grid-column:1/-1}}
@media (max-width:760px){.sb-layout{grid-template-columns:minmax(0,1fr)}}
.sb-side{gap:10px;padding:12px}
.sb-all{border:1px solid var(--line);background:var(--panel2);border-radius:8px;padding:8px 10px;font-weight:700;text-align:left;cursor:pointer}
.sb-all[aria-pressed=true],.sb-r[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.sb-r[aria-pressed=true] small{color:inherit;opacity:.85}
.sb-kind summary{list-style:none;cursor:pointer}.sb-kind summary::-webkit-details-marker{display:none}
.sb-kind summary h3::before{content:'▸ ';}.sb-kind[open] summary h3::before{content:'▾ '}
#sb-find{border:1px solid var(--line);border-radius:6px;padding:6px 8px;background:var(--panel2)}
.sb-add textarea{border:1px solid var(--line);border-radius:6px;padding:6px 8px;background:var(--panel2);resize:vertical;min-width:0;font:inherit}
.sb-members{max-height:260px;overflow:auto}
.sb-kind h3{display:inline;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:4px 0}
.sb-kind ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
.sb-r{width:100%;display:grid;grid-template-columns:1fr auto;gap:0 6px;align-items:center;text-align:left;border:1px solid transparent;background:none;border-radius:6px;padding:5px 8px;cursor:pointer}
.sb-r:hover{border-color:var(--line)}
.sb-r-n{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sb-r small{grid-column:1;color:var(--muted);font-size:12px}
.sb-r .sb-b{grid-row:1/3;grid-column:2}
.sb-b{font-size:11px;font-weight:700;border-radius:10px;padding:1px 7px;background:var(--panel2);border:1px solid var(--line);white-space:nowrap}
.sb-b.bad{background:var(--bad-bg);color:var(--bad);border-color:transparent}.sb-b.warn{background:var(--warn-bg);color:var(--warn);border-color:transparent}.sb-b.ok{background:var(--okx-bg);color:var(--okx);border-color:transparent}
.sb-add{display:grid;grid-template-columns:1fr auto;gap:6px}.sb-add select{grid-column:1/-1}
.sb-main{padding:12px;gap:8px}
.sb-view{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.sb-view h2{font-size:20px;font-weight:800}
.sb-help{max-width:90ch}
.sb-grid-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.sb-g{display:grid;grid-template-columns:46px repeat(var(--cols),minmax(110px,1fr));min-width:calc(46px + var(--cols) * 110px);user-select:none}
.sb-dh{height:32px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:700;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel2)}
.sb-tb{position:relative;height:var(--h)}
.sb-tb span{position:absolute;right:6px;transform:translateY(-50%);font-family:var(--mono);font-size:11px;color:var(--muted)}
.sb-tb span:first-child{transform:none}
.sb-col{border-left:1px solid var(--line2);min-width:0}
.sb-body{position:relative;height:var(--h);background-image:repeating-linear-gradient(to bottom,var(--line2) 0 1px,transparent 1px var(--hr));cursor:crosshair;touch-action:pan-x pan-y}
.sb-na{position:absolute;left:0;right:0;background:repeating-linear-gradient(135deg,var(--grid) 0 6px,transparent 6px 12px);border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);pointer-events:none;display:flex;justify-content:center}
.sb-na span{font-size:11px;color:var(--muted);padding-top:2px}
.sb-ghost{position:absolute;left:2px;right:2px;background:var(--accent-soft);border:2px dashed var(--accent);border-radius:6px;font-size:11px;font-family:var(--mono);padding:2px 4px;pointer-events:none}
.sb-ev{--c:var(--c8);position:absolute;box-sizing:border-box;margin-left:1px;border-radius:6px;padding:2px 6px 4px;overflow:hidden;cursor:grab;touch-action:none;
  background:color-mix(in srgb,var(--c) 16%,var(--panel));border:1px solid color-mix(in srgb,var(--c) 45%,var(--panel));border-left:4px solid var(--c);font-size:12px;line-height:1.25;display:flex;flex-direction:column}
.sb-ev b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-ev>*{flex-shrink:0;min-width:0}
.sb-ev .t{font-family:var(--mono);font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-ev .w{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-ev.narrow{padding:2px 3px}.sb-ev.narrow .t,.sb-ev.narrow .w{display:none}.sb-ev.narrow b{font-size:11px}
.sb-ev.short{flex-direction:row;flex-wrap:nowrap;gap:0 6px;align-items:baseline}.sb-ev.short b{flex-shrink:0;max-width:65%;overflow:hidden;text-overflow:ellipsis}.sb-ev.short .t{flex-shrink:1}.sb-ev.short .w{display:none}
.sb-ev.auto{border-style:dashed;border-left-style:solid}
.sb-ev.jour,.sb-ev.beredskap{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--c) 14%,var(--panel)) 0 6px,var(--panel) 6px 12px)}
.sb-ev.conf{outline:2px solid var(--bad);outline-offset:-1px;background:var(--bad-bg)}
.sb-ev.drag{z-index:5;box-shadow:0 6px 16px rgba(0,0,0,.2);cursor:grabbing;opacity:.95}
.sb-ev:focus-visible{outline:2px solid var(--accent);outline-offset:1px;z-index:4}
.sb-ev.flash{animation:sbflash 1.2s 2}
@keyframes sbflash{50%{box-shadow:0 0 0 4px var(--bad)}}
.sb-rsz{position:absolute;left:0;right:0;bottom:0;height:7px;cursor:ns-resize}
.c1{--c:var(--c1)}.c2{--c:var(--c2)}.c3{--c:var(--c3)}.c4{--c:var(--c4)}.c5{--c:var(--c5)}.c6{--c:var(--c6)}.c7{--c:var(--c7)}.c8{--c:var(--c8)}.c0{--c:var(--muted)}
.sb-flag{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:12px;color:#fff;background:var(--warn)}.sb-flag.bad{background:var(--bad)}
.sb-check{padding:12px;gap:10px}
.sb-check h3{font-size:15px}.sb-check h3.bad,.sb-plan-res .bad{color:var(--bad)}
.sb-ok{color:var(--okx);font-weight:600;margin:0}
.sb-status{font-size:13px;color:var(--muted)}
.sb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px}
.linklike{background:none;border:0;padding:0;color:var(--ink);text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line);font:inherit}
.sb-people{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.sb-pp{width:100%;display:flex;gap:8px;align-items:center;background:var(--panel2);border:1px solid var(--line2);border-radius:6px;padding:5px 8px;cursor:pointer;text-align:left}
.sb-pp b{flex:1}.sb-pp span:not(.sb-b){font-size:12px;color:var(--muted);font-family:var(--mono)}
.sb-f{list-style:none;margin:4px 0 0;padding:0 0 0 8px;font-size:12.5px;display:flex;flex-direction:column;gap:2px}
.sb-f li{border-left:3px solid var(--warn);padding-left:6px}.sb-f li.fel{border-color:var(--bad)}.sb-f small{color:var(--muted)}
.sb-reqlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sb-req{width:100%;display:grid;grid-template-columns:10px 1fr auto;gap:0 8px;align-items:center;background:var(--panel2);border:1px solid var(--line2);border-radius:6px;padding:6px 8px;cursor:pointer;text-align:left}
.sb-req small{grid-column:2;color:var(--muted);font-size:12px}.sb-req .sb-b{grid-row:1/3;grid-column:3}
.sb-sw{grid-row:1/3;width:10px;height:100%;min-height:26px;border-radius:3px;background:var(--c)}
.sb-plan-res{display:flex;flex-direction:column;gap:6px;font-size:13.5px}.sb-plan-res p{margin:0}
.sb-dlg{border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);padding:18px 20px;width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 24px)}
.sb-dlg::backdrop{background:rgba(0,0,0,.4)}
.sb-dlg form{display:flex;flex-direction:column;gap:10px}
.sb-dlg h2{font-size:19px;font-weight:800}
.sb-dlg label{display:flex;flex-direction:column;gap:3px;font-size:13px}
.sb-dlg fieldset{border:1px solid var(--line2);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:6px;margin:0}
.sb-dlg legend{font-size:13px;font-weight:700;padding:0 4px}
.sb-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}
@media (max-width:520px){.sb-row3{grid-template-columns:1fr 1fr}}
.sb-dlg .radio{flex-direction:row;align-items:center;gap:6px}
.sb-pick{display:flex;flex-direction:column;gap:6px}
.sb-pk{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.sb-pk b{font-size:12px;color:var(--muted);width:100%}
.sb-days{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.chip{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:5px!important;border:1px solid var(--line);border-radius:14px;padding:3px 10px;font-size:13px!important;cursor:pointer;background:var(--panel2)}
.chip:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}
.chip.busy{border-style:dashed}.chip.busy small{color:var(--bad)}
.chip input{margin:0}
.sb-inline{flex-direction:row!important;align-items:center;gap:8px!important}.sb-inline input{width:80px}
.sb-ev-warn{color:var(--bad)}
.sb-doc{margin-top:10px}
.sb-print-area{display:none}
@media print{
  body.print-sb>*:not(main),body.print-sb main>*:not(#sb-print-area){display:none!important}
  body.print-sb #sb-print-area{display:block}
  body.print-sb{background:#fff;color:#000;padding:0}
  .sb-pr{break-after:page;display:flex;flex-direction:column;gap:6px}
  .sb-pr h2{font-size:18px}
  .sb-g.pr{min-width:0;grid-template-columns:40px repeat(var(--cols),1fr)}
  .sb-g.pr .sb-ev{background:#fff;border-color:#999;color:#000}
  .sb-g.pr .sb-dh{position:static}
}

/* schemabyggaren: listorna följer med vid scroll bara när de står bredvid schemat */
@media (min-width:761px){.sb-side{position:sticky;top:76px;max-height:calc(100vh - 86px);overflow:auto}}
@media (min-width:1181px){.sb-check{position:sticky;top:76px;max-height:calc(100vh - 86px);overflow:auto}}
.sb-times{position:sticky;left:0;z-index:3;background:var(--panel);border-right:1px solid var(--line2)}
.sb-mob{display:none}
@media (max-width:760px){
  .sb-layout{gap:10px}
  .sb-main{order:1}.sb-check{order:2}.sb-side{order:3}
  .sb-mob{display:block;width:100%;font-weight:600}
  .sb-help,.sb-view h2{display:none}
  .sb-g{grid-template-columns:42px repeat(var(--cols),minmax(128px,1fr));min-width:calc(42px + var(--cols) * 128px)}
  .sb-head h1{font-size:26px}.sb-head .lead{font-size:15px}
  .sb-bar{padding:8px}.sb-name{flex-basis:100%}
  .sb-actions .btn,.sb-settings .btn{padding:6px 10px}
  .sb-main,.sb-side,.sb-check{padding:10px}
}
/* mobil: sidhuvudet tar mindre plats och följer inte med vid scroll */
@media (max-width:700px){
  header.site{position:static;margin-bottom:12px}
  .site-in{gap:6px 10px;padding-block:8px}
  .nav{gap:2px}
  .nav a{padding:5px 9px;font-size:13.5px}
}

/* renare startsida */
.tabs .t-more{display:none}
.tabs.show-more .t-more{display:inline-block}
.t-morebtn{border:0;background:none;padding:8px 12px;font-weight:600;font-size:14px;color:var(--accent);cursor:pointer;margin-left:auto}
.upsell.slim{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 16px}
.upsell.slim h2{font-size:16px;margin:0}
.upsell.slim p{margin:2px 0 0}
.price-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:28px;padding:16px 20px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.price-line h2{font-size:18px;font-weight:800}
.price-line p{margin:0;flex:1 1 320px;color:var(--muted)}
.more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
@media (max-width:760px){.more-grid{grid-template-columns:minmax(0,1fr)}}
.more-grid>*{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:4px 12px;align-content:flex-start}
.more-grid h2{font-size:15px;font-weight:800;width:100%;margin-bottom:4px}
.more-grid p{margin:0;color:var(--muted);font-size:14px;width:100%}
.more-grid a{font-size:14px}

/* priser */
.price-hero{padding:8px 0 4px}.price-hero h1{font-size:32px;font-weight:800;letter-spacing:-.02em}
.price-hero .lead{max-width:70ch;color:var(--muted);font-size:17px;margin:6px 0 0}
.plan-alt{font-size:13px;text-align:center;margin-top:6px;color:var(--muted)}
.api-ex{margin-top:12px}.api-ex summary{cursor:pointer;font-weight:600;color:var(--accent)}
.api-ex pre{margin-top:8px;font-family:var(--mono);font-size:12.5px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto}
#api .btns{margin-top:12px}
.faq-plain{border:0;padding:0;background:none}.seo-faq summary{cursor:pointer;font-weight:600}

/* utvecklare */
.dev .cta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.steps.steps3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.steps.steps3{grid-template-columns:minmax(0,1fr)}}
.code-ex{border:1px solid var(--line2);border-radius:8px;padding:8px 12px;background:var(--panel2)}
.code-ex summary{cursor:pointer;font-weight:700;font-family:var(--mono);font-size:13px}
.code-ex pre,.code-out{margin:8px 0 0;font-family:var(--mono);font-size:12.5px;line-height:1.55;background:var(--panel);border:1px solid var(--line2);border-radius:8px;padding:12px 14px;overflow-x:auto}
.dev-tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.dev-tbl th,.dev-tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line2);vertical-align:top}
.dev-tbl code{font-family:var(--mono);font-size:12.5px;white-space:nowrap}
.dev .section-h code{font-family:var(--mono);font-size:12.5px}
/* menyer i sidhuvudet */
.nav{align-items:center}
.dd{position:relative}
.dd>summary{list-style:none;cursor:pointer;font-weight:600;font-size:14px;padding:6px 12px;border-radius:6px;border:1px solid transparent;color:var(--ink);user-select:none}
.dd>summary::-webkit-details-marker{display:none}
.dd>summary::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);opacity:.6}
.dd[open]>summary::after{transform:translateY(0) rotate(-135deg)}
.dd>summary:hover,.dd[open]>summary{border-color:var(--line)}
.dd>summary.cur{background:var(--ink);color:var(--bg)}
.dd-menu{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.14);padding:8px}
.dd-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.dd-tools{width:340px;display:flex;flex-direction:column}
.dd-item{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--ink)}
a.dd-item:hover,.dd-item:focus-visible{background:var(--panel2)}
.dd-item b{font-size:14px}
.dd-item span{font-size:12.5px;color:var(--muted);font-weight:400}
.dd-calc b a{color:var(--ink);text-decoration:none}.dd-calc b a:hover{text-decoration:underline}
.dd-calc span a{color:var(--accent)}
.dd-foot{margin-top:4px;padding:9px 10px;border-top:1px solid var(--line2);font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}
.dd-foot:hover{text-decoration:underline}
.dd-rules{width:400px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:12px}
.dd-rules>div{display:flex;flex-direction:column}
.dd-rules a{padding:4px 8px;border-radius:6px;font-size:14px;font-weight:500;color:var(--ink);text-decoration:none}
.dd-rules a:hover{background:var(--panel2)}
.dd-h{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:6px 8px 2px}
@media (max-width:700px){
  .dd{position:static}
  .dd>summary{padding:5px 9px;font-size:13.5px}
  .dd-menu{left:0;right:0;transform:none;width:auto;top:100%;margin-top:0}
  .site-in{position:relative}
  .dd-rules{grid-template-columns:1fr 1fr}
}
.tools-line{margin:0;font-size:14px;color:var(--muted)}.tools-line a{font-weight:600}
/* menyerna ska inte få de allmänna stilarna för details och menylänkar */
.dd,.sb-settings{border-top:0;padding-top:0}
.dd[open]>summary,.sb-settings[open]>summary{margin-bottom:0}
.nav .dd-menu a{padding:0;border:0;border-radius:0;font-size:inherit;font-weight:inherit;background:none}
.nav .dd-menu a.dd-item{padding:8px 10px;border-radius:8px}
.nav .dd-menu a.dd-item:hover{background:var(--panel2)}
.nav .dd-menu a.dd-foot{padding:9px 10px;font-size:13px;font-weight:600}
.nav .dd-rules a{padding:4px 8px;border-radius:6px;font-size:14px;font-weight:500}
.nav .dd-rules a:hover{background:var(--panel2)}
.nav .dd-calc span a{font-weight:500}
