:root{--bg: oklch(.95 .018 79);--panel: oklch(.975 .014 82);--panel-sunken: oklch(.92 .022 76);--line: oklch(.87 .024 74);--ink: oklch(.31 .035 56);--muted: oklch(.52 .03 60);--accent: oklch(.62 .15 47);--accent-ink: oklch(.98 .01 80);--up: oklch(.55 .1 150);--down: oklch(.54 .16 34);--danger: oklch(.5 .12 32);--btn-quiet-bg: color-mix(in oklch, var(--ink) 6%, transparent);--btn-quiet-bg-hover: color-mix(in oklch, var(--ink) 11%, transparent);--btn-danger-bg: color-mix(in oklch, var(--danger) 10%, transparent);--btn-danger-bg-hover: color-mix(in oklch, var(--danger) 17%, transparent);--layer-1: oklch(.66 .15 50);--layer-2: oklch(.74 .13 80);--layer-3: oklch(.62 .09 130);--layer-4: oklch(.68 .11 30);--layer-5: oklch(.78 .09 95);--layer-6: oklch(.58 .08 200);--layer-7: oklch(.7 .12 20);--layer-8: oklch(.55 .05 65);--layer-debt: oklch(.5 .13 32);--ink-strong: oklch(.25 .04 52);--rule: oklch(.83 .027 72);--surface-2: color-mix(in oklch, var(--ink) 4%, transparent);--shadow: color-mix(in oklch, var(--ink) 45%, transparent);--serif: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--measure: 1280px;--radius: 12px;--gap: 22px;--tap: 44px;font-family:var(--sans);color-scheme:light}:root[data-theme=dark]{--bg: oklch(.19 .012 74);--panel: oklch(.225 .014 78);--panel-sunken: oklch(.165 .012 74);--line: oklch(.33 .014 74);--ink: oklch(.9 .02 82);--muted: oklch(.72 .028 72);--accent: oklch(.62 .155 48);--accent-ink: oklch(.99 .008 80);--up: oklch(.7 .13 150);--down: oklch(.66 .16 30);--danger: oklch(.64 .15 30);--layer-1: oklch(.73 .15 55);--layer-2: oklch(.81 .13 84);--layer-3: oklch(.71 .115 148);--layer-4: oklch(.7 .125 33);--layer-5: oklch(.87 .08 100);--layer-6: oklch(.7 .1 215);--layer-7: oklch(.75 .135 6);--layer-8: oklch(.66 .045 70);--layer-debt: oklch(.6 .165 28);--ink-strong: oklch(.965 .014 84);--rule: oklch(.37 .014 72);--surface-2: color-mix(in oklch, var(--ink) 7%, transparent);--shadow: oklch(.08 .01 74 / .55);color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:clip}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tap);padding:0 16px;border:1px solid transparent;border-radius:9px;font:inherit;font-weight:600;line-height:1.1;cursor:pointer;transition:background-color .16s ease,color .16s ease}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:not(:disabled):hover{background:color-mix(in oklch,var(--accent) 90%,var(--ink))}.btn-ghost{background:var(--btn-quiet-bg);color:var(--ink)}.btn-ghost:not(:disabled):hover{background:var(--btn-quiet-bg-hover)}.btn-danger{background:var(--btn-danger-bg);color:var(--danger)}.btn-danger:not(:disabled):hover{background:var(--btn-danger-bg-hover)}.btn-danger-confirm{background:var(--danger);color:var(--accent-ink)}.btn-danger-confirm:not(:disabled):hover{background:color-mix(in oklch,var(--danger) 90%,var(--ink))}.btn-sm{padding:0 11px;font-size:.85rem}.btn-icon{width:38px;height:38px;min-height:38px;padding:0;gap:0;border-radius:50%;flex:0 0 auto}.btn-icon.btn-sm{width:32px;height:32px;min-height:32px}.btn-icon svg{display:block}.account-trigger:focus-visible,.account-menu-item:focus-visible,.add-row:focus-visible,.panel-action:focus-visible,.sort:focus-visible,.schedule-remove:focus-visible,.range-selector button:focus-visible,.legend-move:focus-visible,.legend-name.legend-drill:focus-visible,.gaps-banner button:focus-visible,.account-summary:focus-visible,button.asset-name:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field{width:100%;min-height:var(--tap);background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:0 12px;font:inherit;color:var(--ink)}.label-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 24 24' fill='none' stroke='%23978a76' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;color:var(--muted);font:inherit;font-size:.85rem;padding:3px 17px 3px 7px;border-radius:7px;cursor:pointer}.label-select:hover{background-color:color-mix(in oklch,var(--ink) 7%,transparent);color:var(--ink)}.label-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;color:var(--ink)}.label-new{width:9rem;min-height:30px;border:1px solid var(--accent);border-radius:7px;padding:0 8px;font:inherit;font-size:.85rem;background:var(--panel);color:var(--ink)}.field:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);background:var(--bg)}select.field{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 14px center,right 9px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}input[type=date].field{font-variant-numeric:tabular-nums}input[type=date].field::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;transition:opacity .16s ease}input[type=date].field::-webkit-calendar-picker-indicator:hover{opacity:1}.sek-field{display:flex;flex-direction:column;gap:4px}.field-hint{font-size:.76rem;color:var(--muted);font-weight:400}.topnav{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--rule)}.topnav-inner{max-width:var(--measure);margin:0 auto;padding:15px 24px;display:flex;align-items:baseline;justify-content:space-between;gap:12px 26px;flex-wrap:wrap}.wordmark{font-family:var(--serif);font-optical-sizing:auto;font-weight:500;font-size:1.18rem;letter-spacing:.01em;color:var(--ink-strong)}.topnav nav{display:flex;gap:20px;align-items:baseline;margin-right:auto;margin-left:28px}.topnav nav a{font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding-bottom:3px;border-bottom:1.5px solid transparent;cursor:pointer;transition:color .16s ease}.topnav nav a:hover{color:var(--ink)}.topnav nav a.active{color:var(--ink-strong);border-bottom-color:var(--accent)}.app{max-width:var(--measure);margin:0 auto;padding:0 24px 80px}.subnav{display:flex;gap:18px;padding-top:26px}.subnav a{font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding-bottom:3px;border-bottom:1.5px solid transparent;transition:color .16s ease}.subnav a:hover{color:var(--ink)}.subnav a.active{color:var(--ink-strong);border-bottom-color:var(--accent)}.subnav+.view{padding-top:24px}.view{display:flex;flex-direction:column;gap:38px;padding-top:34px}.view:has(.panel):not(.view-flow){gap:0}.view:has(.panel):not(.view-flow)>.controls,.view:has(.panel):not(.view-flow)>.source-header{margin-top:0;margin-bottom:32px}.panel{padding:0}.panel+.panel{margin-top:32px;border-top:1px solid var(--rule);padding-top:32px}.panel-row:empty{display:none}.panel+.panel-row{margin-top:32px;border-top:1px solid var(--rule);padding-top:32px}.panel h2,.section-head{margin:0 0 16px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.panel-head h2{margin:0 0 16px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.panel-action{background:none;border:none;color:var(--muted);font:inherit;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:0}.panel-action:hover{color:var(--ink)}.panel-status{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.sub-head{margin:0 0 10px;font-size:.84rem;font-weight:600;letter-spacing:.01em;color:var(--ink)}.statement-label{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.statement-figure{margin:10px 0 0;font-family:var(--serif);font-optical-sizing:auto;font-weight:450;font-size:clamp(2.9rem,9vw,4.6rem);line-height:1;letter-spacing:-.012em;color:var(--ink-strong);font-variant-numeric:tabular-nums lining-nums}.statement-figure.negative{color:var(--down)}.statement-delta{margin:16px 0 0;font-size:1rem;font-variant-numeric:tabular-nums}.statement-delta.up{color:var(--up)}.statement-delta.down{color:var(--down)}.statement-delta.flat{color:var(--muted)}.delta-mark{font-weight:600}.statement-split{margin:6px 0 0;min-height:1.2rem;font-size:.92rem;font-variant-numeric:tabular-nums;color:var(--muted)}.split-growth{color:var(--ink);font-weight:500}.split-growth.up{color:var(--up)}.split-growth.down{color:var(--down)}.split-saved{color:var(--muted)}.split-sep{opacity:.6}.controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 32px;margin-top:-10px}.control-group{display:flex;flex-direction:column;gap:4px}.chart-controls{display:flex;justify-content:flex-end;gap:14px 24px;margin:8px 0 2px}.chart-controls .control-group{align-items:flex-end}.control-label{font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.active-range{display:flex;margin-top:12px}.active-range-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel-sunken);font-size:.82rem;color:var(--ink)}.active-range-dates{font-variant-numeric:tabular-nums}.active-range-clear{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:999px;background:transparent;color:var(--muted);font-size:.8rem;line-height:1;cursor:pointer}.active-range-clear:hover{color:var(--ink);background:color-mix(in oklch,var(--ink) 10%,transparent)}.active-range-clear:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cell-input{width:100%;background:transparent;border:none;border-bottom:1px solid transparent;padding:2px 1px;font:inherit;color:var(--ink)}.cell-input:hover{border-bottom-color:var(--line)}.cell-input:focus{outline:none;border-bottom-color:var(--accent)}.cell-num{width:5rem;text-align:right;font-variant-numeric:tabular-nums}.cell-num::-webkit-outer-spin-button,.cell-num::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.cell-num[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.cell-date{width:10rem}.cell-name{min-width:24ch}.param-field{display:inline-flex;align-items:baseline;gap:5px}.param-unit{color:var(--muted);font-size:.85rem}.model-library-head{margin-top:4px}.model-library-note{margin:4px 0 0;max-width:60ch;color:var(--muted);font-size:.88rem;line-height:1.45}.model-table{margin:10px 0}.model-table td{vertical-align:middle}.model-table .param-field{white-space:nowrap}.model-actions-col{width:1%;text-align:right}.chart-stage{margin-top:-8px}.coverage-note{min-height:1.1rem}.range-selector{display:flex;gap:6px}.range-selector button{background:transparent;border:none;border-bottom:1.5px solid transparent;color:var(--muted);padding:3px 4px;cursor:pointer;font:inherit;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;transition:color .16s ease}.range-selector button:hover{color:var(--ink)}.range-selector button.active{color:var(--ink-strong);border-bottom-color:var(--accent)}.range-selector button:disabled{opacity:.35;cursor:not-allowed}.range-selector button:disabled:hover{color:var(--muted)}.horizon-selector{flex-wrap:wrap;justify-content:flex-end;gap:6px 10px}.topnav-controls{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.theme-toggle.btn-icon{width:26px;height:26px;min-height:26px}.theme-toggle svg{width:18px;height:18px}.account-menu{position:relative}.account-trigger{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;font:inherit;color:var(--muted);padding:5px 8px;border-radius:8px}.account-trigger:hover,.account-trigger[aria-expanded=true]{background:color-mix(in oklch,var(--ink) 6%,transparent);color:var(--ink)}.account-name{max-width:16ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.account-caret{font-size:.6rem;color:var(--muted)}.account-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 32px -14px var(--shadow);padding:8px;z-index:60;display:flex;flex-direction:column;gap:2px}.account-menu-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 10px}.account-menu-label{font-size:.84rem;color:var(--muted)}.account-menu-item{display:block;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;font:inherit;font-size:.9rem;color:var(--ink);padding:9px 10px;border-radius:8px}.account-menu-item:hover:not(:disabled){background:color-mix(in oklch,var(--ink) 6%,transparent)}.account-menu-item:disabled{color:var(--muted);cursor:default}.account-menu-json{margin:2px 0 4px;padding:8px 10px;border-radius:8px;background:var(--panel-sunken);color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.74rem;line-height:1.4;white-space:pre-wrap;word-break:break-all;cursor:copy;-webkit-user-select:all;user-select:all}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:32px;background:var(--bg)}.auth-card{width:min(420px,100%);display:flex;flex-direction:column;gap:14px}.auth-eyebrow{margin:0;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.auth-title{margin:0;font-family:var(--serif, Georgia, serif);font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.1;letter-spacing:-.01em;color:var(--ink-strong)}.auth-lede{margin:0 0 8px;color:var(--muted);max-width:34ch}.auth-google{align-self:flex-start;gap:10px}.source-select{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.9rem}.source-select select{width:auto;font-weight:550}.source-control{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.source-new{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.source-new input{width:auto}.source-new .form-error{flex-basis:100%}.chart{margin:0}.chart svg{width:100%;height:280px;display:block;overflow:visible;user-select:none;-webkit-user-select:none;touch-action:pan-y}.chart-surface{height:280px;touch-action:pan-y}.chart .ts-chart__grid line{stroke:var(--line);stroke-opacity:1}.chart .ts-chart__axes text{fill:var(--muted);fill-opacity:1;font-variant-numeric:tabular-nums}.chart svg:focus{outline:none}.chart svg:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chart-area{fill:color-mix(in oklch,var(--accent) 12%,transparent);stroke:none}.chart-line{fill:none;stroke:var(--accent);stroke-width:2;vector-effect:non-scaling-stroke}.chart-zero{stroke:var(--ink);stroke-width:1;opacity:.35;vector-effect:non-scaling-stroke}.chart-grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.chart-axis-label{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.chart-brush{fill:color-mix(in oklch,var(--accent) 18%,transparent);stroke:var(--accent);stroke-opacity:.5;stroke-width:1;vector-effect:non-scaling-stroke}.chart-brush-armed{fill:color-mix(in oklch,var(--accent) 8%,transparent);stroke:none}.chart-brush-start{stroke:var(--accent);stroke-opacity:.7;stroke-width:1.5;vector-effect:non-scaling-stroke}.chart-cursor line{stroke:var(--muted);stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.chart-cursor circle{fill:var(--accent)}.chart-projection{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:5 4;opacity:.7;vector-effect:non-scaling-stroke}.chart-fan{fill:var(--accent);stroke:none}.chart-divider{stroke:var(--ink);stroke-width:1;opacity:.18;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.chart-projection-veil{fill:var(--panel);opacity:.4}.chart-projection-hatch{stroke:var(--ink);stroke-width:1;opacity:.14;vector-effect:non-scaling-stroke}.chart-tooltip{margin-top:10px;min-height:1.25rem;color:var(--muted);font-variant-numeric:tabular-nums}.layer-band{stroke:none;opacity:.85;transition:opacity .16s ease}.layer-band.dim{opacity:.35}.layer-band.drillable{cursor:pointer}.layer-band.drillable:hover{opacity:1}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;font-size:.82rem;color:var(--muted)}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:11px;height:11px;border-radius:3px;display:inline-block}.chart-legend.reorderable{list-style:none;padding:0;flex-direction:column;align-items:stretch;gap:1px}.legend-row{display:flex;align-items:center;gap:10px;padding:1px 8px;border:1px solid transparent;border-radius:8px}.legend-row:hover,.legend-row.active{border-color:var(--line);background:var(--panel-sunken)}.legend-name{flex:1;display:inline-flex;align-items:center;gap:8px;min-width:0}.legend-name.legend-drill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.legend-name.legend-drill:hover{color:var(--accent)}.legend-value{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.legend-move{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;background:transparent;border:none;color:var(--muted);font-size:.9rem;cursor:pointer;border-radius:7px;transition:color .16s ease}.legend-move:not(:disabled):hover{color:var(--accent)}.legend-move:disabled{opacity:.3;cursor:default}.drill-crumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:baseline;gap:7px;margin-bottom:8px;padding:4px 10px 4px 8px;background:var(--panel-sunken);border-radius:999px;color:var(--muted);font-size:.82rem;cursor:pointer;transition:color .16s ease,background-color .16s ease}.drill-crumb:hover{color:var(--accent);background:color-mix(in oklch,var(--accent) 12%,var(--panel-sunken))}.drill-crumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drill-crumb-back{font-size:.95rem}.drill-crumb-sep{opacity:.5}.drill-crumb strong{color:var(--ink);font-weight:600}.data-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline}.data-table thead th{padding-top:0;font-size:.68rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border-bottom-color:var(--rule)}.data-table tbody td{color:var(--ink)}.data-table tr:last-child td{border-bottom:none}.data-table th.num,.data-table td.num{text-align:right}.data-table td.lead{font-weight:550;color:var(--ink-strong)}.holdings-grid{table-layout:fixed;min-width:34rem}.holdings-grid col.c-hold{width:46%}.holdings-grid col.c-exp{width:18%}.holdings-grid col.c-qty{width:16%}.holdings-grid col.c-val{width:20%}.holdings-grid.with-type col.c-hold{width:38%}.holdings-grid.with-type col.c-type{width:14%}.holdings-grid.with-type col.c-exp{width:16%}.holdings-grid.with-type col.c-qty{width:14%}.holdings-grid.with-type col.c-val{width:18%}.holdings-grid td.lead .asset-name{overflow-wrap:anywhere}.table-fit{width:100%}.data-table[data-stacked] thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.data-table[data-stacked] tbody tr{display:block;padding:7px 0;border-bottom:1px solid var(--line)}.data-table[data-stacked] tbody tr:last-child{border-bottom:none}.data-table[data-stacked] tbody td{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:1px 0;border:none;text-align:right;min-width:0}.data-table[data-stacked] .label-select{min-width:0;max-width:100%}.data-table[data-stacked] tbody td[data-label]:before{content:attr(data-label);flex:none;color:var(--muted);font-size:.66rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-align:left}.data-table[data-stacked] tbody td.lead,.data-table[data-stacked] tbody th[scope=row]{display:block;text-align:left;padding:0 0 3px;border:none;font-weight:600;color:var(--ink-strong)}.data-table[data-stacked] .label-select,.data-table[data-stacked] .param-field{width:auto}.data-table[data-stacked] .cell-input{width:auto;min-width:9rem;text-align:right}.data-table[data-stacked] .cell-num{min-width:0;width:5rem}.data-table[data-stacked] .label-select{text-align:right}.data-table[data-stacked] .schedule-remove{min-height:var(--tap)}.account-cash{display:block}.account-cash-native{display:block;color:var(--muted);font-size:.78rem}.account-total{font-weight:600;color:var(--ink-strong)}.account-list{display:flex;flex-direction:column}.account-group+.account-group{border-top:1px solid var(--rule)}.account-summary{width:100%;display:grid;grid-template-columns:auto 1fr auto auto;align-items:baseline;gap:14px;background:transparent;border:none;cursor:pointer;padding:15px 6px;font:inherit;color:var(--ink);text-align:left}.account-summary:hover{background:color-mix(in oklch,var(--ink) 4%,transparent)}.account-disclosure{color:var(--muted);font-size:.7rem}.account-summary .account-name{font-weight:600;color:var(--ink-strong)}.account-meta{color:var(--muted);font-size:.82rem}.account-sum{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink-strong)}.account-detail{padding:0 6px 18px 26px}.account-cash-row{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;font-size:.9rem;border-top:1px solid var(--rule)}.muted-cell{color:var(--muted)}.lead-main{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.lead-text{min-width:0}.row-edit-toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:none;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,background-color .12s ease}.row-edit-toggle svg{display:block;width:15px;height:15px}.row-edit-toggle:hover{background:color-mix(in oklch,var(--ink) 7%,transparent);color:var(--ink)}.row-edit-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px;opacity:1;color:var(--ink)}.data-table tbody tr:hover .row-edit-toggle,.data-table tbody tr:focus-within .row-edit-toggle,.row-edit-toggle[aria-expanded=true]{opacity:1}@media(hover:none){.row-edit-toggle{opacity:1}}.data-table td.holding-editor-cell{padding:0 12px 14px}.holding-editor{display:flex;flex-wrap:wrap;gap:10px 22px;padding:12px 14px;border-radius:10px;background:color-mix(in oklch,var(--ink) 3.5%,transparent)}.holding-editor-field{display:flex;align-items:center;gap:8px;margin:0}.holding-editor-label{font-size:.66rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.holding-editor-name .field{width:12rem;min-height:32px}.data-table[data-stacked] tbody tr.holding-open{border-bottom:none;padding-bottom:0}.data-table[data-stacked] td.holding-editor-cell{display:block;padding:4px 0 10px}.data-table[data-stacked] .holding-editor{flex-direction:column;align-items:stretch;gap:12px}.data-table[data-stacked] .holding-editor-field{justify-content:space-between}.data-table[data-stacked] .holding-editor-name .field{width:auto;flex:1}.tx-table{font-size:.84rem}.tx-table td,.tx-table th{padding:9px 12px}.tx-type{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-right:7px}.tx-date{color:var(--muted);white-space:nowrap}.stmt-row>td{background:var(--surface-2);height:2.1875rem;padding-top:0;padding-bottom:0;vertical-align:middle}.tx-table .row-actions{width:3rem;padding-left:6px;white-space:nowrap}.tx-table .row-actions .event-actions{justify-content:flex-end}.event-actions-rest .btn-icon{background:transparent}.event-actions-rest .btn-icon:not(:disabled):hover{background:var(--btn-quiet-bg-hover)}.event-actions-rest{opacity:0;transition:opacity .12s ease}tr:hover .event-actions-rest,tr:focus-within .event-actions-rest{opacity:1}@media(hover:none){.event-actions-rest{opacity:1}}.stmt-row .field{width:8.5rem;min-height:2rem;height:2rem}.tx-row-edit .field{width:100%;min-width:4.5rem}.tx-touched{display:inline-block;margin-left:.5ch;padding:0 .4em;border-radius:.4em;font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);background:color-mix(in oklch,var(--ink) 8%,transparent);vertical-align:.08em}.asset-name{display:block;font-weight:550;color:var(--ink-strong)}button.asset-name{background:none;border:none;padding:0;font:inherit;font-weight:550;cursor:pointer;text-align:left}button.asset-name:hover{text-decoration:underline}.account-ledger-link{margin:0;padding:10px 0 0}.asset-isin{display:block;color:var(--muted);font-size:.78rem}.sort{background:none;border:none;color:var(--muted);font:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;font-weight:600;cursor:pointer;padding:0}.allocation-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.donut-body{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.donut-svg{flex:0 0 auto}.donut-body .chart-legend{flex:1 1 11rem;margin:0}.bar-row{display:grid;grid-template-columns:84px 1fr auto;align-items:center;gap:10px;margin-bottom:8px;font-size:.86rem}.bar-label{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background:var(--panel-sunken);border-radius:5px;height:9px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--accent)}.bar-value{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.gaps-banner{display:flex;justify-content:space-between;gap:12px;background:color-mix(in oklch,var(--down) 10%,transparent);border:1px solid color-mix(in oklch,var(--down) 35%,transparent);border-radius:9px;padding:11px 15px;margin-bottom:16px}.gaps-banner ul{margin:6px 0 0;padding-left:18px;color:var(--muted)}.gaps-banner button{background:none;border:none;color:var(--muted);font-size:1.2rem;cursor:pointer;min-width:var(--tap);min-height:var(--tap)}.muted-note{color:var(--muted);font-size:.84rem;margin:4px 0 0}.manual-form{display:flex;flex-direction:column;gap:12px}.manual-form h3{margin:0;font-size:.82rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.manual-form label,.manual-edit-fields label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;color:var(--muted)}.manual-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.paid-in-field{display:flex;align-items:flex-start;gap:8px}.paid-in-field .sek-field{flex:1}.paid-in-currency{display:flex;flex-direction:column;gap:6px}.paid-in-currency .field{min-width:4.5rem}.manual-form .btn{align-self:flex-start}.form-error{color:var(--danger);font-size:.82rem}.panel+.panel.add-account-row{margin-top:0;border-top:none;padding-top:0}.add-row{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;border-radius:9px;padding:14px 6px;font:inherit;font-size:.9rem;color:var(--muted);cursor:pointer;text-align:left}.add-row:hover{color:var(--ink);background:color-mix(in oklch,var(--ink) 4%,transparent)}.add-account-open{position:relative;padding-top:8px}.add-account-open .add-account-close{position:absolute;top:8px;right:0;z-index:1}.state-empty .btn-primary,.state-empty .add-account-open{margin-top:10px}.manual-edit-list{display:flex;flex-direction:column}.manual-edit{padding:14px 0;border-top:1px solid var(--line)}.manual-edit:first-child{border-top:none;padding-top:4px}.asset-head{display:grid;grid-template-columns:minmax(140px,1fr) auto;gap:10px 14px;align-items:end}.asset-title{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--muted)}.asset-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.asset-summary{grid-column:1 / -1;margin:2px 0 0;display:flex;flex-wrap:wrap;gap:10px 28px}.asset-summary div{display:flex;flex-direction:column;gap:1px}.asset-summary dt{font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.asset-summary dd{margin:0;font-variant-numeric:tabular-nums;font-weight:550;color:var(--ink-strong)}.asset-summary dd.up{color:var(--up)}.asset-summary dd.down{color:var(--down)}.manual-edit-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.confirm{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:.86rem;color:var(--ink)}.kind-contribution .tx-type{color:var(--accent)}.event-actions{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:8px}.event-edit-cell .field,.event-edit-cell .pct-input{width:130px;margin-left:auto}.event-edit-cell .field.event-date{width:9.6rem;margin-left:0}.event-edit-cell select.field{width:auto;margin-left:0}.event-add{margin-top:2px}.edit-row .pct-field{flex:0 1 130px;min-width:110px;display:flex;flex-direction:column;gap:4px}.pct-field{display:flex;flex-direction:column;gap:4px}.pct-input{position:relative;display:block}.pct-input .field{padding-right:28px}.pct-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.row-cap{color:var(--muted);font-size:.8rem}.valuation-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:10px}.valuation-row{font-size:.85rem;font-variant-numeric:tabular-nums}.edit-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;font-variant-numeric:tabular-nums}.edit-row .sek-field{flex:0 1 190px;min-width:150px}.edit-row .row-label{flex:0 1 150px;min-width:130px;display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.8rem}.edit-row .manual-edit-actions,.edit-row>.btn{margin-top:1.35rem}.edit-row .row-static{display:inline-flex;flex-direction:column;gap:2px}.edit-row .row-static b{font-weight:550;color:var(--ink-strong)}.edit-row .form-error{flex-basis:100%}.sources-editor{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.state{padding:16px;border-radius:9px;color:var(--muted)}.state-error{background:color-mix(in oklch,var(--down) 10%,transparent);color:var(--ink)}.state-error button{margin-top:8px}.state-cta{background:var(--panel);border:1px solid var(--line)}.state-cta strong{color:var(--ink-strong)}.skeleton-row{height:16px;background:linear-gradient(90deg,var(--panel-sunken) 25%,var(--bg) 50%,var(--panel-sunken) 75%);background-size:200% 100%;border-radius:6px;margin-bottom:11px;animation:skeleton-shimmer 1.3s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.source-header{padding-top:4px}.source-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px}.source-title h1{margin:0;font-family:var(--serif);font-optical-sizing:auto;font-weight:450;font-size:clamp(2rem,6vw,3rem);line-height:1.05;letter-spacing:-.01em;color:var(--ink-strong)}.source-header-meta{margin:5px 0 0;color:var(--muted);font-size:.78rem}.source-header-meta code{font-size:.92em;color:var(--muted)}.source-rename{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.source-rename input{width:auto;flex:1 1 220px;font-family:var(--serif);font-size:1.6rem;color:var(--ink-strong)}.source-chooser-lede{margin:8px 0 0;color:var(--muted)}@media(max-width:640px){.allocation-grid,.manual-form .form-row{grid-template-columns:1fr}.asset-head{grid-template-columns:1fr;align-items:stretch}.topnav nav{margin-left:0;order:3;width:100%;gap:16px}.account-summary{grid-template-columns:auto 1fr auto;gap:10px}.account-meta{display:none}}@media(min-width:1024px){.panel-row{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;align-items:start}.panel-row>.panel+.panel{margin-top:0;border-top:none;padding-top:0}}@media(prefers-reduced-motion:reduce){.topnav nav a,.range-selector button,.legend-move,.layer-band,.btn{transition:none}.skeleton-row{animation:none}}.view-lede{margin:6px 0 0;max-width:62ch;color:var(--muted);line-height:1.5}.empty-note{margin:0;max-width:58ch;color:var(--muted);line-height:1.5}.trend-compare tbody tr{cursor:pointer}.trend-compare tbody tr:hover{background:var(--panel-sunken)}.trend-compare tbody tr.selected{background:color-mix(in oklch,var(--accent) 8%,transparent)}.trend-pick{display:flex;align-items:center;gap:9px;padding:0;border:none;background:none;font:inherit;font-weight:550;color:var(--ink-strong);white-space:nowrap;text-align:left;cursor:pointer}.trend-radio{width:11px;height:11px;border-radius:50%;border:1.5px solid var(--line);flex:none}.trend-compare tr.selected .trend-radio{border-color:var(--accent);background:radial-gradient(circle,var(--accent) 0 38%,transparent 42%)}.trend-compare .method{color:var(--muted);font-size:.88rem;line-height:1.45;white-space:normal}.trend-compare .rate.up{color:var(--up)}.trend-compare .rate.down{color:var(--down)}.trend-panel{display:flex;flex-direction:column;gap:14px}.trend-setup>.panel-head h2{margin-bottom:0}.trend-setup>.view-lede{margin-top:0}.trend-setup>.controls{margin-top:0}.trend-panel-head{display:flex;flex-direction:column;gap:8px}.trend-panel-head h2{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.trend-panel-head p{margin:0;max-width:62ch;color:var(--muted);line-height:1.5}.trend-milestones{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:28px}.trend-milestones li{display:flex;flex-direction:column;gap:2px}.milestone-when{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.milestone-value{font-size:1.05rem;font-weight:600;color:var(--ink-strong);font-variant-numeric:tabular-nums}.chart-cursor.projected line{stroke:var(--accent)}.chart-cursor.projected circle{fill:none;stroke:var(--accent);stroke-width:1.5}.schedule-editor{display:flex;flex-direction:column;gap:14px;align-items:flex-start}.schedule-table{margin:4px 0}.schedule-table td{vertical-align:middle}.schedule-table:not([data-stacked]) .col-date{width:1%;white-space:nowrap}.schedule-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:0 6px}.schedule-remove:hover{color:var(--down)}.projection-summary{margin-top:6px;display:flex;flex-direction:column;gap:4px}.projection-total{margin:0;display:flex;flex-direction:column;gap:2px}.projection-split{margin:0;font-size:.9rem;font-variant-numeric:tabular-nums}.save-note{margin:8px 0 0;color:var(--up);font-size:.85rem}.save-note.error{color:var(--down)}.upload-form{margin-top:20px;max-width:62ch}.upload-drop{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;border:1.5px dashed var(--line);border-radius:var(--radius);color:var(--muted);text-align:center;transition:border-color .16s ease,background-color .16s ease}.upload-drop .btn{align-self:center}.upload-drop.dragging{border-color:var(--accent);background:var(--btn-quiet-bg)}.upload-drop-text{margin:0;font-size:.9rem}.upload-input{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.upload-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.upload-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule)}.upload-name{overflow-wrap:anywhere}.upload-size{color:var(--muted);font-size:.84rem;font-variant-numeric:tabular-nums}.upload-received{display:flex;align-items:center;gap:8px;margin:0;color:var(--up);font-size:1.05rem}
