:root{--bg:#f4f6fa;--card:#fff;--ink:#17202e;--mut:#667085;--line:#d9dfe8;--acc:#1f3a5f;--warn:#fff3cd;--warnink:#6b4e00;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#10151d;--card:#1a212c;--ink:#e8edf5;--mut:#98a2b3;--line:#2c3544;--acc:#8fb4ee;--warn:#3a3114;--warnink:#f3d98a}}
:root[data-theme="dark"]{--bg:#10151d;--card:#1a212c;--ink:#e8edf5;--mut:#98a2b3;--line:#2c3544;--acc:#8fb4ee;--warn:#3a3114;--warnink:#f3d98a}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.35 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.wrap{max-width:1200px;margin:0 auto;padding:12px 14px 28px}
h1{font-size:22px;margin:4px 0 2px;color:var(--acc)}
.sub{color:var(--mut);font-size:13px;margin-bottom:10px}
.bar{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none}
.bar button{flex:0 0 auto;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:8px 14px;font:inherit;font-size:15px;cursor:pointer}
.bar button.on{background:var(--acc);color:var(--bg);border-color:var(--acc);font-weight:600}
.days button{border-radius:12px;text-align:center;padding:6px 10px;min-width:64px;line-height:1.2}
.days small{display:block;font-size:12px;opacity:.85}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px}
.top{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.big{font-size:34px}
.top b{font-size:17px}
.mut{color:var(--mut);font-size:13px}
.hrs{display:flex;gap:4px;overflow-x:auto;padding:8px 10px}
.hrs div{flex:1 0 auto;min-width:54px;text-align:center;font-size:14px}
.hrs .i{font-size:22px;margin:2px 0}
.hrs small{display:block;color:var(--mut);font-size:12px}
.warn{background:var(--warn);color:var(--warnink);border-radius:10px;padding:8px 10px;margin:6px 0;font-size:14px}
.row{display:flex;gap:10px;padding:9px 0;border-top:1px solid var(--line)}
.row:first-child{border-top:0}
.tm{flex:0 0 96px;font-variant-numeric:tabular-nums;color:var(--mut);font-size:14px}
.bd{flex:1}
.bd span{display:block;color:var(--mut);font-size:13px}
.k-avtale .bd b{color:var(--acc)}
.k-avtale{background:linear-gradient(90deg,rgba(255,200,0,.16),transparent 70%)}
.chip{font-style:normal;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--c);color:#fff;margin-left:6px;vertical-align:1px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.day{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px;cursor:pointer}
.day h3{margin:0 0 4px;font-size:15px;display:flex;justify-content:space-between;gap:6px}
.day .w{font-size:13px;color:var(--mut);margin-bottom:6px}
.ln{font-size:13px;padding:3px 0;border-top:1px dashed var(--line)}
.ln i.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c);margin-right:5px}
.ln.av{font-weight:600}
.ln.rm{color:var(--warnink);background:var(--warn);border-radius:6px;padding:3px 6px;margin-top:3px;border:0}
.mat{margin-top:6px;font-size:13px;border-top:1px solid var(--line);padding-top:5px}
.note{font-size:12px;color:var(--mut);margin-top:14px}
.nav{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.nav a{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:4px 12px;text-decoration:none;font-size:15px}
.nav .sp{flex:1}
