:root{--brand-green:#82C88C;--brand-green-dark:#3F8A4B;--bard-purple:#6B4CE6;--bard-purple-soft:#8f78f2;--accent:var(--brand-green-dark);--accent-soft:var(--brand-green);--on-accent:#fff;--bg:#F5F5F8;--surface:#FFFFFF;--raised:#ECECF2;--line:#DEDEE7;--line-strong:#C9C9D6;--text:#1B1B22;--text-2:#5C5C6E;--text-3:#8A8A9C;--topbar:#FFFFFF;--rail:#FAFAFC;--ok:#2E9E5B;--warn:#C8901A;--danger:#D64545;--info:#2F7FD1;--pdf:#E5533D;--font:"Barlow",system-ui,sans-serif;--r-sm:8px;--r-md:14px;--r-lg:20px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--topbar-h:60px;--rail-w:76px;--shadow:0 1px 2px rgba(20,20,30,.06),0 4px 16px rgba(20,20,30,.06);--menu-shadow:0 12px 40px rgba(20,20,30,.22)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg:#141419;--surface:#1D1D25;--raised:#262631;--line:#2E2E3B;--line-strong:#3C3C4B;--text:#F2F2F7;--text-2:#B0B0C0;--text-3:#7C7C90;--topbar:#0E0E13;--rail:#17171E;--shadow:0 1px 2px rgba(0,0,0,.35),0 6px 20px rgba(0,0,0,.35);--menu-shadow:0 16px 48px rgba(0,0,0,.6);--accent:var(--brand-green);--on-accent:#10261A}}:root[data-theme=dark]{--bg:#141419;--surface:#1D1D25;--raised:#262631;--line:#2E2E3B;--line-strong:#3C3C4B;--text:#F2F2F7;--text-2:#B0B0C0;--text-3:#7C7C90;--topbar:#0E0E13;--rail:#17171E;--shadow:0 1px 2px rgba(0,0,0,.35),0 6px 20px rgba(0,0,0,.35);--menu-shadow:0 16px 48px rgba(0,0,0,.6);--accent:var(--brand-green);--on-accent:#10261A}:root[data-accent=bard]{--accent:var(--bard-purple);--accent-soft:var(--bard-purple-soft);--on-accent:#fff}*{box-sizing:border-box;min-width:0}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.45;overflow-x:hidden;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}svg.i{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.tnum{font-variant-numeric:tabular-nums}.app{display:grid;grid-template-rows:var(--topbar-h) 1fr;grid-template-columns:var(--rail-w) 1fr;min-height:100vh}.topbar{grid-column:1/-1;background:var(--topbar);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 var(--sp-4) 0 var(--sp-5);gap:var(--sp-3);position:sticky;top:0;z-index:30}.logo{display:flex;align-items:center;gap:12px;font-weight:600;font-size:19px;letter-spacing:-.005em;text-decoration:none;color:var(--text)}.logo .mark{width:38px;height:31px;flex:none;background:var(--text);-webkit-mask:url(/logo.png) center/contain no-repeat;mask:url(/logo.png) center/contain no-repeat}.topbar .spacer{flex:1}.icon-btn{width:40px;height:40px;border-radius:var(--r-pill);display:grid;place-items:center;color:var(--text-2)}.icon-btn:hover{background:var(--raised);color:var(--text)}.avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:#10261a;font-weight:600;display:grid;place-items:center;font-size:14px}.rail{background:var(--rail);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;position:sticky;top:var(--topbar-h);height:calc(100vh - var(--topbar-h))}.rail-top{width:100%;height:76px;display:grid;place-items:center;border-bottom:1px solid var(--line)}.rail-rest{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--sp-3) 0}.rail-grow{flex:1}.rail-bottom{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--sp-3) 0;border-top:1px solid var(--line);width:100%}.nav{width:50px;height:50px;border-radius:12px;display:grid;place-items:center;color:var(--text-2)}.nav:hover,.nav[aria-current=page]{background:var(--raised);color:var(--text)}.main{padding-bottom:var(--sp-7)}.tabbar{display:none}.btn{height:44px;padding:0 20px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:16px;border:1px solid transparent;white-space:nowrap}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{filter:brightness(1.08)}.btn-secondary{background:var(--raised);border-color:var(--line)}.btn-secondary:hover{border-color:var(--line-strong)}.btn-sm{height:38px;padding:0 14px;font-size:15px}.split{display:inline-flex;border-radius:var(--r-pill);overflow:hidden}.split .btn{border-radius:0}.split .btn:last-child{padding:0 14px;border-left:1px solid rgba(0,0,0,.15)}.pill{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--raised);font-size:15px;font-weight:500;white-space:nowrap}.pill svg{width:18px;height:18px}.pill-status{background:none}.pill-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.pill-warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.pill-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.pill-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.pill-result{background:color-mix(in srgb,var(--ok) 16%,transparent);border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok);font-weight:600}.pill-result.neg{background:color-mix(in srgb,var(--danger) 16%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.list{display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--line);text-align:left;width:100%}.row:first-child{border-top:0}.row:hover{background:var(--raised)}.row .title{font-size:19px;font-weight:600}.row .meta{color:var(--text-2);font-size:15px;display:flex;gap:14px;flex-wrap:wrap;margin-top:2px}.row .meta span{display:inline-flex;align-items:center;gap:5px}.row .meta svg{width:16px;height:16px}.row .body{flex:1}.row .end{margin-left:auto;display:flex;align-items:center;gap:var(--sp-3)}.badge{width:64px;border-radius:12px;overflow:hidden;text-align:center;flex:none;border:1px solid var(--line)}.badge b{display:block;background:#a83a30;color:#fff;font-size:11px;letter-spacing:.06em;padding:3px 0 2px;font-weight:700}.badge span{display:block;background:var(--raised);font-size:22px;font-weight:600;padding:5px 0 6px}.badge.ok b{background:var(--accent);color:var(--on-accent)}.amount{font-weight:600;font-size:19px}.amount.neg{color:var(--danger)}.toggle{width:52px;height:30px;border-radius:15px;background:var(--line-strong);position:relative;flex:none;transition:background .15s}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .15s}.toggle[aria-checked=true]{background:var(--accent)}.toggle[aria-checked=true]:after{transform:translate(22px)}.toggle-row{display:flex;align-items:center;gap:12px;font-size:17px}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);padding:var(--sp-7) var(--sp-5);text-align:center;color:var(--text-2)}.empty .glyph{width:120px;height:120px;border-radius:50%;background:var(--raised);display:grid;place-items:center}.empty .glyph svg{width:56px;height:56px;stroke:var(--accent-soft);stroke-width:1.5}.empty p{margin:0;font-size:18px;color:var(--text)}.menu{position:absolute;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--menu-shadow);padding:var(--sp-2);z-index:40;min-width:290px;display:none;text-align:left}.menu.open{display:block}.menu hr{border:0;border-top:1px solid var(--line);margin:6px 0}.menu-item{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:10px;width:100%;text-align:left;font-size:17px;color:var(--text)}.menu-item svg{width:20px;height:20px;color:var(--text-2)}.menu-item:hover{background:var(--raised)}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.page-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-6) var(--sp-4);flex-wrap:wrap}.page-head h1{margin:0;font-weight:600;font-size:32px;line-height:1.1;letter-spacing:-.01em}.page-head .actions{margin-left:auto;display:flex;gap:var(--sp-2);align-items:center}.content{max-width:1180px;padding:0 var(--sp-6) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.tabs{display:flex;gap:var(--sp-5);border-bottom:1px solid var(--line)}.tab{height:48px;padding:0 4px;font-size:18px;font-weight:500;color:var(--text-2);border-bottom:2px solid transparent;margin-bottom:-1px}.tab[aria-selected=true]{color:var(--text);border-color:var(--text)}.ph{padding:var(--sp-4) var(--sp-6) 0;border-bottom:1px solid var(--line)}.ph .metaline{display:flex;align-items:center;gap:var(--sp-5);color:var(--text-2);font-size:17px;flex-wrap:wrap;min-height:44px}.ph .metaline span{display:inline-flex;align-items:center;gap:8px}.ph .metaline .r{margin-left:auto;display:flex;gap:6px;align-items:center}.ph .metaline .back{color:var(--text-2);display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 4px;border-radius:var(--r-pill)}.ph .metaline .back:hover{background:var(--raised);color:var(--text)}.ph .title-row{display:flex;gap:var(--sp-5);align-items:flex-start;padding:var(--sp-4) 0 var(--sp-5);flex-wrap:wrap}.ph .tt{flex:1;display:flex;flex-direction:column;gap:14px}.ph h1{margin:0;font-size:38px;font-weight:600;line-height:1.1;letter-spacing:-.01em}.ph .pills{display:flex;gap:10px;flex-wrap:wrap}.ph .right{display:flex;align-items:center;gap:var(--sp-5);margin-left:auto;align-self:center}.liste{max-width:900px;margin:0 auto;padding:var(--sp-5) var(--sp-6) var(--sp-7);display:flex;flex-direction:column;gap:var(--sp-3)}.item{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;text-align:left;width:100%;position:relative}.item.sel{border-color:var(--line-strong)}.item.sel:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:var(--accent)}.item .top{display:flex;align-items:flex-start;gap:12px;padding:16px 14px 14px 20px}.item .n{color:var(--text-3);font-size:19px;width:26px;flex:none}.item .t{font-size:19px;font-weight:600;flex:1;line-height:1.3}.item.sel .t{color:var(--text)}.item:not(.sel) .t{font-weight:500;color:var(--text-2)}.item .more{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--text-2);margin:-8px -6px -8px 0}.item .more:hover{background:var(--raised)}.item .foot{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 20px;border-top:1px solid var(--line);color:var(--text-2);font-size:15px;white-space:nowrap}.item .foot .date{overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto}.item .foot .sum{flex:none}.item .foot .kind{display:inline-flex;align-items:center;gap:8px;padding-right:12px;border-right:1px solid var(--line);flex:none}.item .foot .kind svg{width:18px;height:18px;color:var(--accent-soft)}.item .foot .sum{margin-left:auto;padding-left:4px;font-weight:600;color:var(--text)}.item .foot .sum.in{color:var(--ok)}.group{display:flex;align-items:center;gap:10px;color:var(--text-3);font-size:14px;font-weight:600;letter-spacing:.04em;margin:var(--sp-2) 0 2px}.liste .group:first-child{margin-top:0}.group:after{content:"";flex:1;border-top:1px solid var(--line)}.doc{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-6) var(--sp-6) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.doc h2{margin:0;font-size:34px;font-weight:600;line-height:1.15;letter-spacing:-.01em}.doc .desc{font-size:19px;color:var(--text-2);margin:0}.doc h3{margin:var(--sp-2) 0 0;font-size:22px;font-weight:600}.doc p{margin:0;font-size:18px}.doc .foot{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);color:var(--text-2);font-size:15px;display:flex;align-items:center;gap:8px;justify-content:flex-end}.doc .foot svg{width:16px;height:16px}.kv{display:grid;grid-template-columns:1fr auto;gap:0}.kv-head{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-2) 0 0}.kv-head h3{margin:0}.kv-head .btn{margin-left:auto}.kv.kv-rader{grid-template-columns:1fr auto 44px}.kv .linje-slett{display:flex;justify-content:flex-end;align-items:center;padding:6px 0 6px 8px;border-top:1px solid var(--line)}.kv div:first-child .linje-slett{border-top:0}.kv .linje-slett .lx{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--text-3)}.kv .linje-slett .lx:hover{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.kv .linje-slett .lx svg{width:18px;height:18px}.kv div{display:contents}.kv span{padding:12px 0;border-top:1px solid var(--line);font-size:17px}.kv div:first-child span{border-top:0}.kv span:last-child{text-align:right;font-weight:500}.kv span.total{font-weight:600;font-size:19px;border-top:2px solid var(--line-strong)}.kv span.minus{color:var(--text-2)}.kv span.in{color:var(--ok)}.sec-title{margin:0;font-size:22px;font-weight:600}.sec-head{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-3) var(--sp-6) 0}.sec-head .btn{margin-left:auto}.files{display:flex;flex-direction:column;margin:0 var(--sp-6)}.file{display:flex;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--line);font-size:18px;text-align:left;width:100%}.file:first-child{border-top:0}.file:hover{background:var(--raised)}.file svg{width:26px;height:26px;color:var(--pdf);flex:none}.file small{margin-left:auto;color:var(--text-3);font-size:15px}.bar{height:76px;display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-6);border-bottom:1px solid var(--line)}.bar-title{font-weight:500;font-size:20px;color:var(--text-2)}.bar-r{margin-left:auto;display:flex;gap:var(--sp-2);align-items:center}.content.narrow{max-width:900px;margin:0 auto;padding-top:var(--sp-5)}.prow{padding:0}.prow .body{padding:var(--sp-4) var(--sp-5);text-align:left;flex:1}.prow .end{padding-right:var(--sp-3)}.prow .amount{font-size:20px}.lead{color:var(--text-2);font-size:17px;margin:0;max-width:62ch}.card-pad{padding:var(--sp-5)}.card-h{margin:0;font-size:21px;font-weight:600}.card-sub{margin:4px 0 var(--sp-4);color:var(--text-2);font-size:16px}.unit{color:var(--text-3)}.save-bar{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-4);padding-top:var(--sp-2)}.kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-4)}.kpi .card{padding:var(--sp-4) var(--sp-5)}.kpi .label{font-size:15px;color:var(--text-2);font-weight:500}.kpi .value{font-size:28px;font-weight:600;margin-top:2px}.kpi .value.pos{color:var(--ok)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a108c;display:none;align-items:flex-start;justify-content:center;padding:80px 16px;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.overlay.open{display:flex}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:min(720px,100%);max-height:calc(100vh - 120px);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--menu-shadow)}.modal .mh{display:flex;align-items:center;gap:12px;padding:var(--sp-5) var(--sp-5) var(--sp-4);border-bottom:1px solid var(--line)}.modal .mh h2{margin:0;font-size:30px;font-weight:600;flex:1}.modal .mb{padding:var(--sp-4) var(--sp-5) var(--sp-5);overflow:auto}.modal-sm{width:min(520px,100%)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-pill);padding:3px;background:var(--raised);align-self:flex-start}.seg button{height:38px;padding:0 22px;border-radius:var(--r-pill);font-size:16px;font-weight:500;color:var(--text-2)}.seg button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);font-weight:600}.mndgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mndgrid label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r-md);padding:0 12px;height:44px;font-size:15px;color:var(--text-2)}.mndgrid label:focus-within{border-color:var(--accent)}.mndgrid input{width:100%;border:0;background:none;font:inherit;color:var(--text);outline:none;text-align:right;font-weight:600}.row2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.lrow{display:flex;gap:8px;align-items:center;margin-bottom:8px}.lrow .input{flex:1}.lrow .input.val{width:130px;flex:none}.lrow .input.val.sm{width:104px}.linje-meta{display:block;color:var(--text-3);font-size:14px;margin-top:2px}.lrow .lx{width:42px;height:42px;flex:none;border-radius:50%;display:grid;place-items:center;color:var(--danger)}.lrow .lx:hover{background:color-mix(in srgb,var(--danger) 14%,transparent)}.lrow .lx svg{width:20px;height:20px}.hint{color:var(--text-3);font-size:14px;margin:6px 0 0}.sumline.sub{border-top:1px dashed var(--line);font-size:16px;margin-top:var(--sp-3);padding-top:var(--sp-3);color:var(--text-2)}.sumline.sub b{font-size:17px;color:var(--text-2);font-weight:600}.sumline{display:flex;align-items:center;justify-content:space-between;margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line);font-size:18px}.sumline b{font-size:22px}.modal .mf{display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:15px;font-weight:600;color:var(--text-2)}.input{height:48px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);padding:0 14px;display:flex;align-items:center;gap:10px}.input:focus-within{border-color:var(--accent)}.input input,.input select{border:0;background:none;font:inherit;color:inherit;flex:1;outline:none;min-width:0}.input input[type=date]{color-scheme:light dark}.modal .lbl{color:var(--text-3);font-size:14px;font-weight:600;letter-spacing:.05em;margin:0 0 var(--sp-2)}.act{display:flex;align-items:center;gap:14px;padding:14px 16px;border-top:1px solid var(--line)}.act:first-child{border-top:0}.act .ic{width:44px;height:44px;border-radius:50%;background:var(--raised);display:grid;place-items:center;color:var(--text-2);flex:none}.act .ic svg{width:20px;height:20px}.act small{display:block;color:var(--text-3);font-size:15px}.act b{font-weight:500;font-size:17px}.act .who{margin-left:auto;color:var(--text-2);font-size:15px}@media (max-width:1000px){.ph .right{padding-top:0;width:100%;margin-left:0}}@media (max-width:720px){.app{grid-template-columns:1fr}.rail{display:none}.topbar{padding:0 var(--sp-3)}.logo{font-size:16px}.page-head,.content,.ph,.liste,.bar{padding-left:var(--sp-4);padding-right:var(--sp-4)}.page-head h1,.ph h1{font-size:28px}.doc{padding:var(--sp-5) var(--sp-4) var(--sp-4)}.doc h2{font-size:26px}.sec-head,.files{margin-left:var(--sp-4);margin-right:var(--sp-4)}.main{padding-bottom:96px}.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;height:72px;background:var(--topbar);border-top:1px solid var(--line);z-index:30;padding:6px 6px calc(6px + env(safe-area-inset-bottom))}.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;color:var(--text-2);border-radius:10px}.tabbar button[aria-current=page]{color:var(--accent)}.menu{position:fixed;left:12px;right:12px;top:auto!important;bottom:88px;min-width:0}.row .title{font-size:17px}}.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);padding:var(--sp-5);text-align:center}.login .mark{width:72px;height:58px;background:var(--text);-webkit-mask:url(/logo.png) center/contain no-repeat;mask:url(/logo.png) center/contain no-repeat}.login h1{margin:0;font-size:30px;font-weight:600;letter-spacing:-.01em}.login p{margin:0;color:var(--text-2);font-size:17px;max-width:38ch}.login .btn{margin-top:var(--sp-2)}.rail .nav span{display:none}.app.rail-bred{grid-template-columns:232px 1fr}.app.rail-bred .rail .nav{width:auto;align-self:stretch;margin:0 12px;padding:0 12px;justify-content:flex-start;display:flex;align-items:center;gap:14px;border-radius:12px}.app.rail-bred .rail .nav span{display:inline;font-size:17px;font-weight:500;white-space:nowrap}.app.rail-bred .rail-rest,.app.rail-bred .rail-bottom{align-items:stretch}.app.rail-bred .rail-top{display:flex;align-items:center;justify-content:flex-start}.app.rail-bred .rail-top .nav{margin-left:20px;align-self:center}
