:root{--ground: #f4f7fa;--surface: #ffffff;--surface-2: #edf2f7;--ink: #17222f;--ink-soft: #56697c;--line: #dce4ec;--accent: #0f7285;--accent-ink: #ffffff;--good: #1e9e6a;--good-soft: rgba(30, 158, 106, .12);--bad: #d2495b;--bad-soft: rgba(210, 73, 91, .12);--warn: #c08419;--shadow: 0 1px 2px rgba(20, 35, 55, .06), 0 8px 24px rgba(20, 35, 55, .05);--radius: 12px;--sans: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;color-scheme:light}@media (prefers-color-scheme: dark){:root{--ground: #0c131c;--surface: #141f2b;--surface-2: #1b2735;--ink: #e8eef4;--ink-soft: #94a5b6;--line: #253544;--accent: #3baabe;--good: #37b685;--good-soft: rgba(55, 182, 133, .14);--bad: #e56b7c;--bad-soft: rgba(229, 107, 124, .15);--warn: #d69c3a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 28px rgba(0, 0, 0, .28);color-scheme:dark}}:root[data-theme=light]{--ground: #f4f7fa;--surface: #ffffff;--surface-2: #edf2f7;--ink: #17222f;--ink-soft: #56697c;--line: #dce4ec;--accent: #0f7285;--good: #1e9e6a;--good-soft: rgba(30,158,106,.12);--bad: #d2495b;--bad-soft: rgba(210,73,91,.12);--warn: #c08419;--shadow: 0 1px 2px rgba(20,35,55,.06), 0 8px 24px rgba(20,35,55,.05);color-scheme:light}:root[data-theme=dark]{--ground: #0c131c;--surface: #141f2b;--surface-2: #1b2735;--ink: #e8eef4;--ink-soft: #94a5b6;--line: #253544;--accent: #3baabe;--good: #37b685;--good-soft: rgba(55,182,133,.14);--bad: #e56b7c;--bad-soft: rgba(229,107,124,.15);--warn: #d69c3a;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 10px 28px rgba(0,0,0,.28);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--sans);background:var(--ground);color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-soft)}.below{color:var(--bad);font-weight:600}.shell{display:grid;grid-template-columns:216px 1fr;min-height:100vh}@media (max-width: 820px){.shell{grid-template-columns:1fr}}.rail{background:var(--surface);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:3px;position:sticky;top:0;height:100vh;overflow-y:auto}@media (max-width: 820px){.rail{position:static;height:auto;overflow:visible}}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 16px}.brand .mark{width:34px;height:34px;border-radius:9px;flex:none;background:linear-gradient(150deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#000));display:grid;place-items:center;color:#fff;font-size:17px}.brand .name{font-weight:700;letter-spacing:-.01em;line-height:1.15}.brand .sub{font-size:11px;color:var(--ink-soft)}.navlabel{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:color-mix(in srgb,var(--ink-soft) 75%,transparent);padding:14px 11px 5px}.nav{display:flex;align-items:center;gap:10px;padding:8px 11px;border-radius:8px;color:var(--ink-soft);font-weight:500;font-size:13.5px;cursor:pointer;border:none;background:none;text-align:left;width:100%;transition:background .12s ease,color .12s ease}.nav svg{flex:none;opacity:.85}.nav:hover{background:var(--surface-2);color:var(--ink)}.nav.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:600}.nav.active svg{opacity:1}.rail .spacer{flex:1}.railfoot{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;display:flex;flex-direction:column;gap:2px}.fresh{padding:4px 11px 8px;font-size:11px;color:var(--ink-soft);line-height:1.4}.fresh .dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}.fresh .dot.good{background:var(--good)}.fresh .dot.bad{background:var(--bad)}.userline{display:flex;align-items:center;gap:9px;padding:6px 11px 8px;min-width:0}.userline .avatar{width:26px;height:26px;border-radius:50%;flex:none;background:var(--surface-2);color:var(--ink-soft);display:grid;place-items:center;font-size:11px;font-weight:700}.userline .email{font-size:12px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 820px){.rail{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:8px 12px;gap:4px}.rail .brand{padding:0 8px 0 0;margin:0;flex:none}.rail .brand .sub,.rail .navlabel,.rail .spacer{display:none}.rail .nav{width:auto;white-space:nowrap}.rail .fresh{display:none}.rail .railfoot{flex-direction:row;border-top:none;margin:0;padding:0;align-items:center}.rail .userline{display:none}}.main{padding:22px 26px 48px;max-width:1180px;width:100%}.main:has(.karta-sida){max-width:none}@media (max-width: 820px){.main{padding:16px 14px 32px}}@media (max-width: 820px){.head h1{font-size:19px}}.head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.head h1{font-size:21px;margin:0 0 2px;letter-spacing:-.02em}.head .period{color:var(--ink-soft);font-size:13px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px}.card .ch{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:15px 18px 4px;flex-wrap:wrap}.card .ch h2{font-size:14px;margin:0}.card .ch .hint{font-size:12px;color:var(--ink-soft)}.card .body{padding:12px 18px 18px}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}@media (max-width: 900px){.tiles{grid-template-columns:repeat(2,1fr)}}@media (max-width: 460px){.tiles{grid-template-columns:1fr}}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow)}.tile .k{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:8px}.tile .v{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1}.tile .v small{font-size:15px;font-weight:600;color:var(--ink-soft)}.tile .foot{margin-top:8px;font-size:12px;color:var(--ink-soft)}.pill{font-size:11.5px;font-weight:600;padding:2px 10px;border-radius:20px;display:inline-block}.pill.ok{background:var(--good-soft);color:var(--good)}.pill.no{background:var(--bad-soft);color:var(--bad)}.pill.neutral{background:var(--surface-2);color:var(--ink-soft)}.chip{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}.chip.good{background:var(--good-soft);color:var(--good)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}thead th{text-align:right;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}thead th:first-child,tbody td:first-child{text-align:left}tbody td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}tbody tr:last-child td{border-bottom:none}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:var(--surface-2)}.entry-panel{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;min-width:0}.entry-panel .ep-head{font-weight:600;font-size:13px;margin-bottom:6px}.entry-panel table{table-layout:fixed;margin-bottom:8px}.entry-panel thead th{padding:7px 8px;white-space:normal;line-height:1.25}.entry-panel tbody td{padding:7px 8px}.entry-panel tbody tr.ep-has-note>td{border-bottom:none;padding-bottom:1px}.entry-panel tbody tr.ep-noterow>td{text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:12px;line-height:1.35;padding-top:0;padding-bottom:8px}.entry-panel .ep-notelabel{font-weight:600}.entry-panel .ep-cell{padding-left:2px;padding-right:2px;text-align:center}.entry-panel .ep-qty input{width:100%;text-align:right;padding:2px 6px}.entry-panel .ep-vehicle{font-size:11px}.entry-panel .ep-form input,.entry-panel .ep-form select{min-width:0}.entry-panel .ep-form .ep-narrow{flex:0 1 88px}input,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px;width:100%}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}label{display:block;font-size:12px;color:var(--ink-soft);margin-bottom:4px}.btn{font:inherit;font-weight:600;font-size:13px;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:8px 14px;cursor:pointer}.btn:hover{filter:brightness(1.05)}.btn:disabled{opacity:.55;cursor:default}.btn.ghost{background:transparent;color:var(--accent)}.btn.subtle{background:var(--surface-2);color:var(--ink);border-color:var(--line)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.field{display:flex;flex-direction:column}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:360px;max-width:100%;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:28px}.login-card h1{font-size:19px;margin:12px 0 4px}.login-card .err{color:var(--bad);font-size:13px;margin-top:10px}.stack{display:flex;flex-direction:column;gap:12px}.center-note{color:var(--ink-soft);padding:28px;text-align:center}.spin{color:var(--ink-soft);padding:20px}@media (max-width: 820px){.detail-grid{grid-template-columns:1fr!important}}.chatpage{display:flex;flex-direction:column;height:calc(100dvh - 70px);max-width:780px}.chat-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:20px}.chat-hero-mark{font-size:34px;color:var(--accent);line-height:1}.chat-hero h1{margin:6px 0 0;font-size:26px;letter-spacing:-.02em}.chat-warn{margin-top:14px;font-size:13px;max-width:440px;text-align:left;background:var(--bad-soft);border:1px solid color-mix(in srgb,var(--bad) 35%,transparent);border-radius:10px;padding:10px 14px;line-height:1.5}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px}.chip{font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip:disabled{opacity:.5;cursor:default}.chat-scroll{flex:1;overflow-y:auto;padding:12px 4px 16px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:92%;border-radius:14px;padding:10px 14px;font-size:14px;line-height:1.55}.bubble.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px;white-space:pre-wrap}.bubble.assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:4px;box-shadow:var(--shadow)}.bubble.assistant.error{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 35%,transparent)}.chat-tool{align-self:flex-start;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-soft);padding:2px 6px}.chat-tool .pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:chatpulse 1.1s ease-in-out infinite}@keyframes chatpulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.chat-inputrow{display:flex;gap:8px;padding:10px 0 4px;border-top:1px solid var(--line)}.chat-inputrow input{flex:1;font:inherit;font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px}.chat-inputrow input:focus{outline:none;border-color:var(--accent)}.md p{margin:0 0 8px}.md p:last-child{margin-bottom:0}.md ul,.md ol{margin:4px 0 8px;padding-left:20px}.md li{margin:2px 0}.md .mdh{font-weight:700;margin:8px 0 4px}.md code{background:var(--surface-2);border-radius:4px;padding:1px 5px;font-size:12.5px}.mdtablewrap{overflow-x:auto;margin:6px 0 8px}.mdtable{border-collapse:collapse;font-size:13px;min-width:60%}.mdtable th,.mdtable td{border:1px solid var(--line);padding:5px 10px;text-align:left;white-space:nowrap}.mdtable th{background:var(--surface-2);font-weight:600}.mdtable td:not(:first-child){font-variant-numeric:tabular-nums}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#080f188c;padding:20px}.modal-card{width:380px;max-width:100%;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:22px}.modal-card h2{font-size:16px}.personal-page .grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;align-items:start}.personal-page table.ptable{border-collapse:collapse;width:100%}.personal-page .ptable thead th{text-align:center;border:1.5px solid var(--ink-soft);padding:8px 10px}.personal-page .ptable td{border:1.5px solid var(--ink-soft)}.personal-page .ptable td.no-print,.personal-page .ptable th.no-print{border:none}.personal-page td.pcell{position:relative;padding:22px 10px 8px;text-align:center;min-width:150px}.personal-page .pcell .pval{font-weight:600}.personal-page .ptag{position:absolute;top:3px;right:7px;font-size:11px;color:var(--ink-soft)}.personal-page .ptag.bad{color:var(--bad);font-weight:600}.personal-page select.tagselect{border:none;background:transparent;font-size:11px;color:inherit;padding:0;cursor:pointer;max-width:110px;text-align:right}.personal-page select.cellselect{border:none;background:transparent;font-weight:600;font-size:14px;width:100%;text-align:center;text-align-last:center;cursor:pointer}.personal-page td.pnote input{border:none;background:transparent;width:100%;min-width:120px;text-align:center}.personal-page .pcal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.personal-page .pcal .dow{font-size:12px;color:var(--ink-soft);text-align:center;font-weight:600}.personal-page .pcal .dcell{border:1px solid var(--line);border-radius:10px;min-height:88px;padding:6px 7px;cursor:pointer;background:var(--surface);overflow:hidden}.personal-page .pcal .dcell:hover{border-color:var(--accent)}.personal-page .pcal .dcell.off{opacity:.55}.personal-page .pcal .dcell.today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.personal-page .pcal .dnum{font-size:12px;font-weight:600;margin-bottom:3px}.personal-page .pcal .ent{font-size:11px;line-height:1.4}.personal-page .pcal .ent-sep{border-top:1px solid var(--line);margin:4px 4px 3px}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}body{background:#fff!important;color:#000!important}.rail{display:none!important}.shell{display:block}.main{max-width:none;width:auto;padding:0}.head{margin-bottom:6px}.card{border:none;box-shadow:none;margin:0;background:transparent}.card .ch{padding:0 0 6px}.card .ch .hint{display:none}.card .body{padding:0}.fordon-page .tiles{display:none!important}.print-head{margin:0 0 8px}.print-head .pt-title{font-size:15px;font-weight:700}.print-head .pt-sub{font-size:12px;margin-top:2px}.fordon-page select,.fordon-page input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0;width:auto!important;min-width:0!important;color:#000!important}.fordon-page table{width:100%;font-size:11.5px}.fordon-page thead th,.fordon-page tbody td{color:#000!important;text-align:left!important;white-space:normal;border:.5pt solid #000!important;padding:4px 7px!important}.fordon-page tbody tr:last-child td{border-bottom:.5pt solid #000!important}.fordon-page .pill{background:transparent!important;color:#000!important;border:.5pt solid #666;padding:0 5px}.fordon-page tr,.fordon-page .card{break-inside:avoid}.personal-page .ptable td.pcell{position:relative;text-align:center!important;padding:16px 8px 6px!important}.personal-page .ptable td.pcell select,.personal-page .ptable td.pcell input{text-align:center;text-align-last:center}.personal-page .ptag{font-size:9px;color:#000}.personal-page .ptag select{font-size:9px}@page{margin:14mm}}.karta-sida{display:flex;flex-direction:column;gap:12px;height:calc(100vh - 70px)}.karta-verktygsrad{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.karta-verktygsrad h1{font-size:20px;margin:0}.karta-verktygsrad .spacer{flex:1}.karta-snabbval{display:flex;gap:6px}.karta-snabbval-knapp{font:inherit;font-size:12px;font-weight:600;padding:5px 12px;cursor:pointer;border-radius:20px;border:1px solid var(--line);background:var(--surface);color:var(--ink-soft)}.karta-snabbval-knapp:hover{border-color:var(--accent);color:var(--accent)}.karta-snabbval-knapp.aktiv{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.karta-datum{display:flex;align-items:center;gap:6px}.karta-datum input{font:inherit;font-size:12px;padding:4px 8px;border-radius:8px;width:auto;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.pill.warn{background:#c0841924;color:var(--warn)}.karta-yta{flex:1;min-height:0;display:grid;grid-template-columns:320px 1fr;gap:14px}.karta-sidopanel{overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.karta-kartruta{position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.karta-kartruta .kartyta{position:absolute;top:0;right:0;bottom:0;left:0}.karta-varning{position:absolute;z-index:2;top:12px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:4px;max-width:46ch;padding:10px 14px;border-radius:10px;font-size:12px;line-height:1.4;background:#c084191f;color:var(--ink-soft);border:1px solid rgba(192,132,25,.4);box-shadow:var(--shadow)}.karta-varning b{color:var(--warn);font-size:13px}.karta-varning code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:0 4px}.karta-laddchip{position:absolute;z-index:2;top:12px;left:12px;font-size:12px;font-weight:600;padding:5px 12px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);box-shadow:var(--shadow)}.karta-flyttbanner{position:absolute;z-index:3;top:12px;left:12px;right:12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;padding:10px 14px;border-radius:10px;background:var(--surface);border:1px solid var(--accent);box-shadow:var(--shadow)}.karta-flyttbanner span:first-child{flex:1;min-width:220px}.karta-flyttfel{position:absolute;z-index:3;top:64px;left:12px;right:12px}.karta-fel{font-size:13px;padding:10px 12px;border-radius:10px;margin-bottom:12px;background:var(--bad-soft);color:var(--bad);border:1px solid var(--bad-soft)}.karta-sidopanel .k,.karta-modal .k{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:6px}.karta-tal{display:flex;gap:20px;margin:12px 0 4px}.karta-tal .v{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1}.karta-tomt{margin-top:12px;font-size:13px}.karta-hjalp{margin-top:16px;font-size:12px}.karta-panel-huvud h2{font-size:16px;margin:2px 0}.karta-panel-ort{font-size:13px;color:var(--ink-soft)}.karta-pillrad{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.karta-kalla{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.karta-kalla-adress,.karta-kalla-flera{font-size:13px}.karta-flyttknapp{margin-top:12px}.karta-poster{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}.karta-post{padding:10px 0;border-bottom:1px solid var(--line)}.karta-post:last-child{border-bottom:none}.karta-post-rad{display:flex;gap:8px;justify-content:space-between;font-size:13px}.karta-post-datum{color:var(--ink-soft)}.karta-post-mottagare{font-weight:600;text-align:right}.karta-post-kalla{font-size:12px;margin-top:2px}.karta-post-fot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}.karta-post-av{font-size:11px}.karta-rattaknapp{margin-left:auto;padding:2px 8px;font-size:12px}.karta-modal-bakgrund{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#080f188c;padding:20px}.karta-modal{width:520px;max-width:100%;max-height:88vh;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:22px}.karta-modal--bred{width:760px}.karta-modal h2{font-size:16px;margin:0 0 2px}.karta-modal>.k{margin-top:18px}.karta-sattval{display:flex;gap:2px;padding:2px;border-radius:9px;margin-bottom:10px;background:var(--surface-2);border:1px solid var(--line)}.karta-sattknapp{flex:1;font:inherit;font-size:12.5px;font-weight:600;padding:6px 10px;border:0;border-radius:7px;cursor:pointer;background:transparent;color:var(--ink-soft)}.karta-sattknapp:hover{color:var(--accent)}.karta-sattknapp.aktiv{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.karta-valj{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:14px}.karta-valj-vanster{min-width:0;display:flex;flex-direction:column;gap:10px}.karta-valj-hoger{min-width:0;display:flex;flex-direction:column;gap:6px}.karta-valj-ingen{font-size:11.5px}@media (max-width: 700px){.karta-valj{grid-template-columns:minmax(0,1fr)}}.karta-minikarta{width:100%;border:1px solid var(--line);border-radius:10px;overflow:hidden}.karta-adressfalt{display:flex;flex-direction:column;gap:4px}.karta-adressfalt label{font-size:12px;color:var(--ink-soft);margin-bottom:0}.karta-adressfalt-rad{display:grid;grid-template-columns:1fr 1fr;gap:8px}.karta-adressfalt .btn{align-self:flex-start;margin-top:4px}.karta-uppslag{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:10px;font-size:12.5px;background:var(--surface-2);border:1px solid var(--line)}.karta-uppslag--ok{background:var(--good-soft);border-color:color-mix(in srgb,var(--good) 40%,transparent)}.karta-uppslag--ok b{color:var(--good)}.karta-uppslag--grov{background:#c084191f;border-color:#c0841966}.karta-uppslag--grov b{color:var(--warn)}.karta-uppslag--fel{background:var(--bad-soft);border-color:var(--bad-soft)}.karta-uppslag--fel b{color:var(--bad)}.karta-forslag-plats{margin-top:6px}.karta-menade{display:flex;flex-direction:column;gap:4px}.karta-menade .k{margin-bottom:2px}.karta-menade-kort{display:flex;flex-direction:column;gap:1px;width:100%;text-align:left;font:inherit;color:var(--ink);cursor:pointer;padding:7px 10px;border-radius:9px;background:var(--surface);border:1px solid var(--line)}.karta-menade-kort:hover{border-color:var(--accent)}.karta-menade-kort.vald{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.karta-menade-gata{font-size:13px;font-weight:600}.karta-menade-under{font-size:11.5px}.karta-modal-kalla{margin-top:14px;padding:12px;border-radius:10px;background:var(--surface-2)}.karta-modal-kalla-adress{font-size:14px;font-weight:600}.karta-modal-fot{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.karta-forslag{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto}.karta-forslag-rad{display:flex;gap:8px;align-items:flex-start}.karta-forslag-bock{display:flex;align-items:center;margin:0;padding:12px 0 0;flex:none}.karta-forslag-bock input[type=checkbox]{width:16px;height:16px;flex:none;padding:0;margin:0;accent-color:var(--accent);cursor:pointer}.karta-forslag-bock input[type=checkbox]:disabled{cursor:default;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);position:relative}.karta-forslag-bock input[type=checkbox]:disabled:checked:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12px;line-height:1;color:var(--ink-soft)}.karta-forslag-hjalp{font-size:12px;margin-bottom:8px}.karta-forslag-kort{flex:1;min-width:0;font:inherit;text-align:left;cursor:pointer;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}.karta-forslag-kort:hover{border-color:var(--accent)}.karta-forslag-kort.vald{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.karta-forslag-namn{font-size:14px;font-weight:600}.karta-forslag-adress{font-size:12px}.karta-forslag-evidens{font-size:11.5px;margin-top:4px}.karta-omfang{display:flex;flex-direction:column;gap:10px}.karta-omfang-kort{display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:12px;border:1px solid var(--line);border-radius:10px;margin-bottom:0;color:var(--ink)}.karta-omfang-kort input[type=radio]{width:16px;height:16px;flex:none;padding:0;margin:2px 0 0;accent-color:var(--accent)}.karta-omfang-kort:hover{border-color:var(--accent)}.karta-omfang-kort.vald{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.karta-omfang-kort>span{flex:1;display:flex;flex-direction:column;gap:4px;font-size:13px}.karta-omfang-kort .muted{font-size:12px}.karta-forvalt{align-self:flex-start}.karta-konsekvens{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:10px;border-radius:8px;background:var(--surface-2);font-size:12.5px}.karta-konsekvens-lista{display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--ink-soft)}.karta-omfang-notis{color:var(--warn)}.karta-omfang-sparr{display:flex;flex-direction:column;gap:4px;padding:12px;font-size:13px;border:1px dashed var(--line);border-radius:10px;color:var(--ink-soft)}.karta-omfang-sparr .muted{font-size:12px}@media (max-width: 900px){.karta-sida{height:auto}.karta-yta{grid-template-columns:1fr}.karta-kartruta{height:60vh}}.karta-omraden{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.karta-omraden-huvud{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.karta-flodesprick{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;vertical-align:middle;margin-right:2px}.karta-omrade-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.karta-omrade-rad{display:flex;align-items:center;gap:8px;width:100%;text-align:left;font:inherit;font-size:13px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:8px;padding:6px 8px;cursor:pointer}.karta-omrade-rad:hover{background:var(--surface-2);border-color:var(--line)}.karta-omrade-rad--stilla{cursor:default}.karta-omrade-rad--stilla:hover{background:transparent;border-color:transparent}.karta-omrade-namn{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.karta-omrade-tal{font-size:12px;color:var(--ink-soft);white-space:nowrap}.karta-omrade-utanfor{margin-top:12px}.karta-omrade-detalj{display:flex;flex-direction:column;gap:12px}.karta-omrade-knappar{display:flex;flex-wrap:wrap;gap:6px}.karta-omrade-form{display:flex;flex-direction:column;gap:6px}.karta-omrade-form input,.karta-omrade-form select{width:100%}.karta-omrade-stang{align-self:flex-start}.karta-ritstatus{display:flex;flex-direction:column;gap:8px;padding:10px 12px;margin-bottom:10px;border-radius:10px;font-size:13px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.karta-ritstatus b{color:var(--accent)}.karta-omrade-varning{padding:8px 12px;border-radius:10px;font-size:12.5px;margin-bottom:10px;background:#c084191f;color:var(--warn);border:1px solid rgba(192,132,25,.4)}.karta-flyttbanner--varning{background:#c084191f;border-color:#c0841980}.karta-flyttbanner--varning b{color:var(--warn)}.karta-omrade-forare{width:100%;border-collapse:collapse;font-size:13px}.karta-omrade-forare th{text-align:left;padding:4px 0;border-bottom:1px solid var(--line)}.karta-omrade-forare th.num,.karta-omrade-forare td.num{text-align:right}.karta-omrade-forare td{padding:5px 0;border-bottom:1px solid var(--line)}.karta-vyval{display:flex;gap:2px;padding:2px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line)}.karta-vyknapp{display:flex;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:600;padding:5px 12px;border:0;border-radius:7px;cursor:pointer;background:transparent;color:var(--ink-soft)}.karta-vyknapp:hover{color:var(--accent)}.karta-vyknapp.aktiv{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.karta-vybricka{border-radius:20px;padding:0 6px;font-size:11px;font-weight:700;background:#c084192e;color:var(--warn)}.karta-placerade{margin-top:14px}.karta-placerade-matare{display:flex;height:6px;border-radius:3px;overflow:hidden;background:#c0841973}.karta-placerade-matare span{background:var(--good)}.karta-placerade-text{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:5px;font-size:12px}.karta-placerade-lank{font:inherit;font-size:12px;font-weight:600;color:var(--warn);background:none;border:0;padding:0;cursor:pointer;white-space:nowrap}.karta-placerade-lank:hover{text-decoration:underline}.karta-tillbaka{display:flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:600;color:var(--accent);background:none;border:0;padding:0;margin-bottom:12px;cursor:pointer}.karta-tillbaka:hover{text-decoration:underline}.karta-fakta{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:baseline;margin:14px 0 0;font-size:13px}.karta-fakta dt{margin:0;white-space:nowrap}.karta-fakta dd{margin:0}.karta-sidopanel .karta-fakta dt.k{margin-bottom:0}.karta-flodesrad{display:flex;flex-wrap:wrap;gap:4px 12px}.karta-flodesmarke{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.karta-teckenforklaring{position:absolute;z-index:2;left:12px;bottom:12px;width:214px;display:flex;flex-direction:column;gap:7px;padding:10px 12px;border-radius:10px;font-size:11.5px;background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid var(--line);box-shadow:var(--shadow)}.karta-teckenforklaring-huvud{display:flex;align-items:center;justify-content:space-between}.karta-sidopanel .karta-teckenforklaring .k,.karta-teckenforklaring .k{font-size:10.5px;margin:0}.karta-teckenforklaring-fall{font:inherit;font-size:13px;line-height:1;color:var(--ink-soft);background:none;border:0;padding:0 2px;cursor:pointer}.karta-teckenforklaring-knapp{position:absolute;z-index:2;left:12px;bottom:12px;font:inherit;font-size:12px;font-weight:600;padding:5px 12px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);box-shadow:var(--shadow);cursor:pointer}.karta-teckenrad{display:flex;align-items:center;gap:8px}.karta-teckenrad svg{flex:none}.karta-teckenrad>span:last-child{min-width:0}.karta-ratta{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;overflow-y:auto;padding:18px;background:var(--surface)}.karta-ratta-huvud{padding-bottom:14px;border-bottom:1px solid var(--line)}.karta-ratta-rubrik{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.karta-ratta-rubrik h2{font-size:17px;margin:0;letter-spacing:-.01em}.karta-ratta-matare{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-top:10px;background:#c0841973}.karta-ratta-placerade{background:var(--good)}.karta-ratta-matartext{display:flex;justify-content:space-between;gap:12px;margin-top:6px;font-size:12px}.karta-ratta-avhuggen{margin-top:14px;padding:10px 12px;border-radius:10px;font-size:12.5px;background:#c084191f;color:var(--ink-soft);border:1px solid rgba(192,132,25,.4)}.karta-ratta-klart{display:flex;flex-direction:column;gap:3px;margin-top:18px;font-size:13px}.karta-ratta-grupp{margin-top:20px}.karta-ratta-grupphuvud{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.karta-ratta-grupphuvud h3{font-size:13.5px;margin:0}.karta-ratta-grupphuvud .muted{font-size:12px;flex:1;min-width:220px}.karta-ratta-geokoda{flex:none;align-self:center}.karta-ratta>.karta-uppslag{margin-top:16px}.korning-panel{display:flex;flex-direction:column;gap:12px}.korning-dagval{display:flex;gap:6px;align-items:center}.korning-dagval select{flex:1;min-width:0}.korning-dagval .btn{flex:none;min-width:34px}.korning-forarlista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.korning-forare{width:100%;display:flex;align-items:center;gap:10px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.korning-forare:hover{border-color:var(--accent)}.korning-forare-namn{font-weight:600;font-size:13.5px}.korning-forare .muted{font-size:12px;flex:1;min-width:0}.korning-kontor{font-size:12px}.korning-tillbaka{align-self:flex-start}.korning-rubrik{font-size:15px;margin:0}.korning-summa{display:flex;flex-direction:column;gap:10px}.korning-fakta{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px}.korning-sen{color:var(--bad)}.korning-varning{color:var(--warn)}.korning-varning b{color:inherit}.korning-tomt{display:flex;flex-direction:column;gap:4px;font-size:13px}.korning-fotnot{font-size:11.5px;margin:4px 0 0}.korning-tidslinje{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.korning-besok{width:100%;display:grid;grid-template-columns:26px 44px minmax(0,1fr);gap:8px;align-items:start;text-align:left;font:inherit;color:var(--ink);cursor:pointer;padding:8px 6px;background:transparent;border:1px solid transparent;border-radius:9px}.korning-besok:hover{background:var(--surface-2)}.korning-besok.vald{border-color:var(--accent);background:var(--surface-2)}.korning-nr{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;background:var(--surface);border:2px solid var(--accent);color:var(--ink)}.korning-nr--sen{border-width:3px;border-color:var(--bad)}.korning-tid{font-size:13px;font-weight:600;padding-top:2px}.korning-plats{display:flex;flex-direction:column;gap:3px;min-width:0}.korning-gata{font-size:13px;overflow-wrap:anywhere}.korning-ovriga{font-size:11.5px;overflow-wrap:anywhere}.korning-markor{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;font-size:11.5px}.korning-pill-express{background:#e8a33a2e;color:var(--ink)}.korning-pill-tid{background:#1f4e8c24;color:var(--ink)}.korning-ben{display:flex;align-items:center;gap:8px;padding:1px 6px 1px 16px;font-size:11.5px;color:var(--ink-soft)}.korning-ben-streck{width:2px;align-self:stretch;min-height:14px;background:var(--line)}.korning-ben--klump{color:var(--warn)}.korning-ben--klump .korning-ben-streck{background:repeating-linear-gradient(to bottom,var(--warn) 0 3px,transparent 3px 6px)}.korning-ben--klump b{font-weight:600}.korning-forklaring{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--ink-soft)}.korning-forklaring>span{display:flex;align-items:center;gap:6px}.karta-ratta-rubrikrad,.karta-ratta-rad{display:grid;gap:10px;align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,150px) 64px 86px 92px 14px}.karta-ratta-rubrikrad{padding:10px 8px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft)}.karta-ratta-rubrikrad .num,.karta-ratta-rad .num{text-align:right}.karta-ratta-lista{list-style:none;margin:0;padding:0}.karta-ratta-rad{width:100%;text-align:left;font:inherit;font-size:13px;color:var(--ink);background:transparent;border:1px solid transparent;border-top-color:var(--line);border-radius:8px;padding:9px 8px;cursor:pointer}.karta-ratta-rad:hover{background:var(--surface-2)}.karta-ratta-rad.vald{background:var(--surface-2);border-color:var(--accent)}.karta-ratta-adress{min-width:0;display:flex;flex-direction:column;gap:1px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.karta-ratta-kalla{font-size:11.5px;font-weight:400}.karta-ratta-pil{color:var(--ink-soft)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.karta-stavning>.karta-uppslag{margin-top:10px}.karta-stavning-drift{margin-top:16px}.karta-stavning-lista{list-style:none;margin:8px 0 0;padding:0}.karta-stavning-rad{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;padding:10px 8px;border-top:1px solid var(--line)}.karta-stavning-huvud{min-width:0;display:flex;flex-direction:column;gap:3px}.karta-stavning-par{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:13.5px}.karta-stavning-kalla{color:var(--ink-soft);text-decoration:line-through}.karta-stavning-pil{color:var(--ink-soft)}.karta-stavning-par .muted,.karta-stavning-meta{font-size:12px}.karta-stavning-alt{color:var(--warn)}.karta-stavning-knappar{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.karta-stavning-knappar .btn{padding:4px 11px;font-size:12.5px}.karta-stavning-adresser{grid-column:1 / -1;list-style:none;margin:2px 0 0;padding:6px 0 0 12px;border-left:2px solid var(--line)}.karta-stavning-adress{display:flex;justify-content:space-between;gap:12px;width:100%;text-align:left;font:inherit;font-size:12.5px;color:var(--ink);background:transparent;border:0;border-radius:6px;padding:4px 6px;cursor:pointer}.karta-stavning-adress:hover{background:var(--surface-2)}@media (max-width: 640px){.karta-stavning-rad{grid-template-columns:minmax(0,1fr)}.karta-stavning-knappar{justify-content:flex-start}}.karta-periodtext{font-size:12.5px;white-space:nowrap}.karta-sok{position:relative;flex:0 1 290px;min-width:190px}.karta-sok-ikon{position:absolute;left:10px;top:8px;color:var(--ink-soft);pointer-events:none}.karta-sok input{width:100%;box-sizing:border-box;font:inherit;font-size:12.5px;padding:5px 10px 5px 31px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.karta-sok input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.karta-sok-lista{position:absolute;z-index:20;top:calc(100% + 5px);left:0;right:0;list-style:none;margin:0;padding:4px;max-height:320px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.karta-sok-traff{display:flex;flex-direction:column;gap:1px;width:100%;text-align:left;font:inherit;color:var(--ink);background:transparent;border:0;cursor:pointer;padding:6px 8px;border-radius:7px}.karta-sok-traff.aktiv{background:var(--surface-2)}.karta-sok-rubrik{font-size:13px;font-weight:600}.karta-sok-under{font-size:11.5px}.karta-sok-tomt{display:flex;flex-direction:column;gap:3px;padding:9px 11px;font-size:12.5px}.karta-sok-hjalp{font-size:11.5px}.karta-lista{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;overflow:auto;background:var(--surface)}.karta-lista-huvud{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:12px;padding:13px 18px;background:var(--surface);border-bottom:1px solid var(--line);font-size:13px}.karta-lista-huvud .pill{margin-left:auto}.karta-lista-tomt{padding:18px;font-size:13px}.karta-lista-tabell{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.karta-lista-tabell th,.karta-lista-tabell td{padding:7px 9px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.karta-lista-tabell thead th{position:sticky;top:45px;z-index:1;background:var(--surface);border-bottom:1px solid var(--line);font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);font-weight:600;white-space:nowrap}.karta-lista-tabell tbody th,.karta-lista-tabell tbody td{border-bottom:1px solid var(--surface-2)}@media (max-width: 900px){.karta-lista-tabell{min-width:820px}}.karta-lista-tabell .num{text-align:right;font-variant-numeric:tabular-nums}.karta-lista-tabell tbody tr:hover{background:var(--surface-2)}.karta-lista-tabell tbody tr.vald{background:color-mix(in srgb,var(--accent) 10%,transparent)}.karta-lista-rubrik{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-transform:inherit;letter-spacing:inherit;font-weight:inherit}.karta-lista-rubrik:hover,.karta-lista-rubrik.aktiv{color:var(--accent)}.karta-lista-adress{font:inherit;font-size:13px;font-weight:600;color:var(--ink);background:none;border:0;padding:0;cursor:pointer;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.karta-lista-adress:hover{color:var(--accent);text-decoration:underline}.karta-lista-tabell .karta-flodesrad{flex-wrap:nowrap;gap:5px;min-width:0}.karta-lista-flodesnamn{font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.karta-helagatan{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:10px;font-size:12.5px;background:var(--surface-2);border:1px dashed var(--line)}.karta-helagatan s{color:var(--ink-soft)}.karta-helagatan-knapp{align-self:flex-start;margin-top:4px}
