:root{--ink: #16191d;--ink-soft: #4a525c;--ink-faint: #8b949e;--paper: #f4f6f8;--surface: #ffffff;--line: #e3e7eb;--line-strong:#c9d0d7;--pine: #0b5f57;--pine-dk: #094a44;--pine-tint: #e7f1ef;--debit: #16191d;--credit: #b42318;--credit-tint:#fdeceb;--ok: #0b5f57;--ok-tint: #e7f1ef;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 8px;--shadow: 0 1px 2px rgba(22, 25, 29, .04), 0 4px 16px rgba(22, 25, 29, .05)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.num.credit{color:var(--credit)}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;margin:0}.app{display:flex;flex-direction:column;min-height:100vh}.topbar{flex-shrink:0;background:var(--ink);color:#cbd2da;display:flex;align-items:center;gap:24px;padding:0 20px;height:56px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:8px;white-space:nowrap}.brand .mark{font-family:var(--font-display);font-weight:700;font-size:16px;color:#fff;letter-spacing:-.02em}.brand-switcher{position:relative;display:flex;align-items:center}.brand-switcher:after{content:"▾";position:absolute;right:6px;color:#cbd2da;font-size:11px;pointer-events:none}.company-switcher-main{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-family:var(--font-display);font-weight:700;font-size:16px;color:#fff;letter-spacing:-.02em;background:transparent;border:none;cursor:pointer;padding:2px 20px 2px 0;max-width:220px}.company-switcher-main option{color:#111;font-weight:400}.nav-desktop{display:flex;align-items:center;gap:2px;flex:1 1 auto;min-width:0}.nav-menu{position:relative}.nav-menu-trigger{all:unset;cursor:pointer;padding:8px 14px;border-radius:6px;font-size:13px;color:#aab3bd;white-space:nowrap;transition:background .12s,color .12s}.nav-menu-trigger:hover{background:#22262c;color:#e8ecf0}.nav-menu-trigger.active{background:var(--pine);color:#fff}.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:200px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:1px;z-index:21}.nav-dropdown button{all:unset;cursor:pointer;padding:9px 12px;border-radius:6px;font-size:13px;color:var(--ink-soft);white-space:nowrap}.nav-dropdown button:hover{background:var(--paper);color:var(--ink)}.nav-dropdown button.active{background:var(--pine-tint);color:var(--pine);font-weight:600}.foot-desktop{margin-left:auto;display:flex;align-items:center;gap:14px;font-size:12px;color:#7d8794;white-space:nowrap}.foot-desktop button{all:unset;cursor:pointer;color:#aab3bd;font-size:12px}.foot-desktop button:hover{color:#fff}.mobile-nav{display:none;margin-left:auto;position:relative}.hamburger-btn{all:unset;cursor:pointer;font-size:20px;line-height:1;color:#e8ecf0;padding:6px 8px}.mobile-menu{position:absolute;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 24px));background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px;z-index:21}.mobile-menu-group+.mobile-menu-group{border-top:1px solid var(--line)}.mobile-menu-group-head{all:unset;cursor:pointer;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;padding:11px 10px;font-size:14px;font-weight:600;color:var(--ink)}.mobile-menu-group-head .chevron{color:var(--ink-faint);font-size:11px}.mobile-menu-items{display:flex;flex-direction:column;gap:1px;padding:0 4px 6px}.mobile-menu-items button{all:unset;cursor:pointer;padding:9px 16px;border-radius:6px;font-size:13px;color:var(--ink-soft)}.mobile-menu-items button:hover{background:var(--paper);color:var(--ink)}.mobile-menu-items button.active{background:var(--pine-tint);color:var(--pine);font-weight:600}.mobile-menu-foot{border-top:1px solid var(--line);margin-top:4px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-menu-foot .email{font-size:11px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis}.mobile-menu-foot button{all:unset;cursor:pointer;color:var(--pine);font-size:13px;font-weight:600;white-space:nowrap}.main{flex:1;min-width:0;padding:34px 40px 60px;max-width:1180px}.page-head{margin-bottom:24px}.page-head .eyebrow{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint)}.page-head h1{font-size:26px;margin-top:4px}.page-head p{color:var(--ink-soft);margin:6px 0 0;max-width:60ch}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card+.card{margin-top:20px}.card-head{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h2{font-size:15px}.card-body{padding:4px 0}table{width:100%;border-collapse:collapse}table.aligned-cols{table-layout:fixed}th{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:500;text-align:left;padding:10px 20px;border-bottom:1px solid var(--line)}th.num,td.num{text-align:right}td{padding:10px 20px;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:#fafbfc}.scroll-table{max-height:420px;overflow-y:auto}.scroll-table table{table-layout:fixed}.scroll-table td{overflow-wrap:anywhere}.scroll-table thead th{position:sticky;top:0;background:#fff;z-index:1}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{color:var(--ink)}.konto{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-soft)}.konto-favorite{color:#c9a227;margin-right:6px}.konto-favorite-toggle{all:unset;cursor:pointer;color:var(--ink-faint);margin-right:6px;font-size:14px;line-height:1}.konto-favorite-toggle:hover,.konto-favorite-toggle.active{color:#c9a227}.konto-favorites-toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-soft);cursor:pointer}.konto-link{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--font-mono);font-size:12.5px;color:var(--pine)}.konto-link:hover{text-decoration:underline}.muted{color:var(--ink-faint)}.pill{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding:2px 7px;border-radius:4px;background:#eef1f4;color:var(--ink-soft)}tfoot td{font-family:var(--font-mono);font-weight:600;border-top:2px solid var(--line-strong);background:#fafbfc}label{display:block;font-size:12.5px;color:var(--ink-soft);margin-bottom:5px}input,select{font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;padding:8px 10px;width:100%}input.num,select.num{font-family:var(--font-mono)}input:focus,select:focus{outline:2px solid var(--pine);outline-offset:-1px;border-color:var(--pine)}.field{margin-bottom:14px}.row{display:flex;gap:14px}.row>*{flex:1}button.btn{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--font-body);font-size:13.5px;font-weight:500;padding:9px 16px;border-radius:6px;background:var(--pine);color:#fff;text-align:center;transition:background .12s}button.btn:hover{background:var(--pine-dk)}button.btn:disabled{background:var(--line-strong);color:#fff;cursor:not-allowed}button.btn.ghost{background:transparent;color:var(--pine);border:1px solid var(--line-strong)}button.btn.ghost:hover{background:var(--pine-tint)}button.icon{all:unset;cursor:pointer;color:var(--ink-faint);font-size:16px;padding:4px}button.icon:hover{color:var(--credit)}button.link{all:unset;cursor:pointer;color:var(--pine);font-size:13.5px;text-decoration:underline}.attachments-head{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);margin-bottom:6px}.attachment-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}.attachment-row:last-of-type{border-bottom:none}.attachments-upload{margin-top:8px;display:inline-block}.lines-grid{padding:8px 20px 4px}.lines-grid .lg-head,.lines-grid .lg-row{display:grid;grid-template-columns:2.4fr 1.6fr 1fr 1fr 40px;gap:10px;align-items:center}.lines-grid .lg-head{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);padding-bottom:6px}.lines-grid .lg-head .r{text-align:right}.lines-grid .lg-row{padding:5px 0}.balance-bar{display:flex;align-items:center;gap:22px;padding:14px 20px;border-top:1px solid var(--line);background:#fafbfc;border-radius:0 0 var(--radius) var(--radius)}.balance-bar .stat{display:flex;flex-direction:column}.balance-bar .stat .k{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint)}.balance-bar .stat .v{font-family:var(--font-mono);font-size:16px;font-weight:600}.balance-bar .diff{margin-left:auto;display:flex;align-items:center;gap:12px}.balance-bar .status{font-family:var(--font-mono);font-size:12px;padding:6px 12px;border-radius:999px;display:flex;align-items:center;gap:7px}.balance-bar .status .dot{width:8px;height:8px;border-radius:50%}.balance-bar.is-ok .status{background:var(--ok-tint);color:var(--ok)}.balance-bar.is-ok .status .dot{background:var(--ok)}.balance-bar.is-off .status{background:var(--credit-tint);color:var(--credit)}.balance-bar.is-off .status .dot{background:var(--credit)}.balance-bar .diff .v.off{color:var(--credit)}.hovedbok-table th,.hovedbok-table td{padding:6px 14px;font-size:12.5px}.hovedbok-table .konto-group-row{padding:7px 14px!important}.konto-group-row{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);background:#fafbfc;padding:8px 20px!important}.konto-add-row{display:grid;grid-template-columns:90px 2fr 1.3fr 1.6fr auto auto;gap:10px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--pine-tint)}.account-picker{position:relative}.account-picker-trigger{all:unset;box-sizing:border-box;display:block;width:100%;font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;padding:8px 10px;cursor:pointer}.account-picker-trigger:focus{outline:2px solid var(--pine);outline-offset:-1px;border-color:var(--pine)}.account-picker-panel{position:absolute;z-index:20;top:calc(100% + 4px);left:0;width:max(100%,280px);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.account-picker-search{width:100%;border:none;border-bottom:1px solid var(--line);border-radius:0;padding:10px 12px;font-size:13.5px}.account-picker-search:focus{outline:none;border-color:var(--line)}.account-picker-list{max-height:280px;overflow-y:auto;padding:6px 0}.account-picker-group-label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);padding:8px 12px 4px}.account-picker-item{display:flex;gap:10px;align-items:baseline;padding:7px 12px;cursor:pointer;font-size:13.5px}.account-picker-item .konto{font-family:var(--font-mono);font-size:12px;color:var(--ink-soft);min-width:42px}.account-picker-item:hover,.account-picker-item.active{background:var(--pine-tint)}.account-picker-empty{padding:14px 12px;color:var(--ink-faint);font-size:13px}.toolbar{display:flex;gap:10px;align-items:center}.notice{padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:16px}.notice.err{background:var(--credit-tint);color:var(--credit)}.notice.ok{background:var(--ok-tint);color:var(--ok)}.notice.info{background:var(--pine-tint);color:var(--pine-dk)}.subtabs{display:flex;gap:6px}.subtabs button{all:unset;cursor:pointer;font-size:13px;font-weight:500;padding:7px 14px;border-radius:999px;color:var(--ink-soft);border:1px solid var(--line-strong)}.subtabs button:hover{background:var(--pine-tint)}.subtabs button.active{background:var(--pine);color:#fff;border-color:var(--pine)}.empty{padding:44px 20px;text-align:center;color:var(--ink-faint)}.empty .big{font-family:var(--font-display);font-size:15px;color:var(--ink-soft)}.filterbar{display:flex;gap:12px;align-items:flex-end;margin-bottom:18px}.filterbar .field{margin:0;min-width:260px}.bilag-layout{display:flex;gap:20px;align-items:flex-start}.bilag-layout .bilag-main{flex:1;min-width:0}.assistant-panel{width:320px;flex-shrink:0;position:sticky;top:76px;display:flex;flex-direction:column;max-height:calc(100vh - 96px)}.assistant-messages{flex:1;overflow-y:auto;padding:12px 20px;display:flex;flex-direction:column;gap:10px;min-height:120px}.assistant-msg{font-size:13.5px;padding:8px 12px;border-radius:8px;max-width:100%}.assistant-msg.user{background:var(--pine-tint);color:var(--pine-dk);align-self:flex-end}.assistant-msg.bot{background:#fafbfc;border:1px solid var(--line);align-self:flex-start}.assistant-suggestion-row{display:flex;align-items:center;gap:8px;padding:2px 0}.assistant-input{display:flex;gap:8px;padding:14px 20px;border-top:1px solid var(--line)}.assistant-input input{flex:1}@media (max-width: 960px){.bilag-layout{flex-direction:column}.assistant-panel{width:100%;position:static;max-height:none}}.auth-wrap{min-height:100vh;display:grid;place-items:center;background:var(--ink)}.auth-card{width:360px;background:var(--surface);border-radius:12px;padding:34px 30px;box-shadow:0 20px 60px #00000059}.auth-card .mark{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:-.02em}.auth-card .sub{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em;margin:4px 0 24px}.auth-card .switch{text-align:center;margin-top:16px;font-size:13px;color:var(--ink-soft)}.auth-card .switch button{all:unset;cursor:pointer;color:var(--pine);font-weight:500}@media (max-width: 900px){.nav-desktop,.foot-desktop{display:none}.mobile-nav{display:block}}@media (max-width: 720px){.topbar{gap:10px;padding:0 12px}.main{padding:22px 18px 48px}.lines-grid .lg-head,.lines-grid .lg-row{grid-template-columns:1.6fr 1fr 1fr 1fr 34px}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}
