:root{color-scheme:dark;--bg:#050a10;--card:#0b1623;--line:#1e3a52;--text:#f3f7fb;--muted:#91a6b8;--green:#50d9a0;--amber:#e9b571}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px Inter,Arial,sans-serif;display:flex;min-height:100vh}aside{width:226px;flex-shrink:0;background:linear-gradient(100deg,#0b2427,#08111d);border:1px solid var(--line);border-left:3px solid var(--green);padding:30px 16px;min-height:1080px;border-radius:8px}.logo{font-size:21px;color:var(--green);margin:0 9px}nav{margin-top:45px;display:grid;gap:16px}button,input,select{font:inherit}button{cursor:pointer}nav button{text-align:left;background:none;border:1px solid transparent;color:var(--muted);padding:10px 17px;border-radius:8px;height:37px}nav button.active{border-color:var(--green);background:#0b2a3a;color:var(--green);font-weight:bold}nav button:disabled{opacity:.55;cursor:default}main{padding:24px 28px;width:calc(100% - 226px);max-width:1600px}h1{font-size:27px;margin:0 0 12px}h2{font-size:18px;margin:0 0 20px}p{line-height:1.6}.muted,small{color:var(--muted)}small{font-size:11px}.demo{color:var(--amber);font-size:12px;font-weight:bold}.header{display:flex;justify-content:space-between;gap:20px;margin-bottom:26px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 9px 23px -15px var(--green)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.kpi span{color:var(--muted);font-size:13px}.kpi strong{display:block;font-size:27px;margin:15px 0 20px}.green{color:var(--green)}.red{color:#ed7c89}.info{padding:0 4px;background:none;border:0;color:var(--muted);font-size:13px}.dates{display:flex;gap:12px}.dates .card{padding:10px 14px}.dates label{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}input,select{color:var(--text);background:#0b1824;border:1px solid var(--line);border-radius:7px;padding:10px;min-width:0}input[type=date]{padding:4px;width:130px}.filters{margin:20px 0;display:grid;gap:12px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips button,.action{background:#0b1824;border:1px solid var(--line);padding:10px 14px;border-radius:8px;color:var(--muted)}.chips button.active,.action{background:#0b2a3a;border-color:var(--green);color:var(--green)}.filterline{display:flex;gap:12px;align-items:center}.filterline input[type=search]{flex:1}.assets-body{display:grid;grid-template-columns:minmax(600px,1fr) 344px;gap:18px}.holdings{padding:18px 16px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:var(--muted);font-size:11px;font-weight:normal;padding:16px 6px}td{padding:13px 6px;color:var(--muted)}td:first-child{color:var(--text)}td:nth-child(n+3),th:nth-child(n+3){text-align:right}tbody tr{cursor:pointer;border:1px solid transparent}tbody tr.selected{background:#0b2a3a;border-color:var(--green)}tbody tr:hover{background:#102a35}td small{display:block}tfoot{font-weight:bold}tfoot td{color:var(--text)}.detail strong.big{font-size:30px;display:block;margin:20px 0 14px}.detail dl{display:grid;grid-template-columns:1fr 1fr;row-gap:22px;font-size:12px;margin:28px 0}.detail dt{color:var(--muted)}.detail dd{text-align:right;margin:0;font-weight:bold}.detail .action{width:100%;margin-top:16px}.note{margin-top:20px}.note h2{font-size:14px;margin-bottom:8px}.note p{font-size:12px;color:var(--muted);margin:0 0 8px}footer{font-size:11px;color:var(--muted);margin-top:24px}.charts{display:grid;grid-template-columns:1.86fr 1fr;gap:18px;margin-bottom:18px}.charts.lower{grid-template-columns:1fr 1fr}svg{width:100%;height:auto}.legend{display:flex;gap:24px;font-size:11px;color:var(--muted)}.donut{width:150px;height:150px;margin:15px auto 30px;border-radius:50%;background:conic-gradient(var(--green) 0 34%,#32d3e9 34% 63%,#6084ff 63% 86%,#acbdcf 86%);display:grid;place-items:center}.donut>div{width:112px;height:112px;background:var(--card);border-radius:50%;display:grid;align-content:center;text-align:center}.allocation{display:grid;grid-template-columns:1fr auto auto;gap:12px;font-size:12px}.bars{height:155px;display:flex;align-items:end;gap:20px;padding:12px 3px 20px}.bar{flex:1;background:var(--green);border-radius:5px;box-shadow:0 0 10px #50d9a044;position:relative}.bar small{position:absolute;bottom:-20px;left:0}.account{font-size:12px;margin-bottom:18px}.account div{display:flex;justify-content:space-between;margin-bottom:6px}.track{background:#30404d;height:6px}.track i{height:6px;background:var(--green);display:block;border-radius:4px}.settings .card{background:#1a2938;box-shadow:none;border:0;border-radius:10px;padding:24px}.settings .source{margin:28px 0 24px}.settings p{color:var(--muted);font-size:13px}.folder{display:flex;gap:16px;margin:12px 0}.folder input{flex:1}.folder .action{width:270px;background:#23594f;border:0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check{display:block;margin:24px 0;font-size:13px}.check input{accent-color:var(--green);margin-right:10px}.settings footer{margin-top:100px}dialog{max-width:560px;background:#152736;border:1px solid var(--green);border-radius:14px;padding:28px;color:var(--text)}dialog::backdrop{background:#0009}.close{float:right;background:none;border:0;color:var(--text);font-size:24px}.empty{text-align:center;padding:40px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media(max-width:1100px){aside{width:180px}main{width:calc(100% - 180px);padding:24px 18px}.assets-body{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.header{flex-wrap:wrap}.charts{grid-template-columns:1fr}.filterline{flex-wrap:wrap}}@media(max-width:650px){body{display:block}aside{width:100%;min-height:0;padding:16px}nav{display:flex;margin-top:16px;gap:4px;overflow:auto}nav button:disabled{display:none}main{width:100%;padding:20px 12px}.settings-grid,.charts.lower{grid-template-columns:1fr}.kpi strong{font-size:22px}.holdings{overflow:auto}.folder{flex-wrap:wrap}.dates{flex-wrap:wrap}}
:root{--compact:1}aside{min-height:100vh}main{padding:20px 24px}.header{margin-bottom:16px}h1{font-size:25px;margin-bottom:8px}.card{padding:14px}.kpis{gap:12px;margin-bottom:14px}.kpi strong{font-size:25px;margin:10px 0 12px}.charts{gap:14px;margin-bottom:14px}.charts h2{font-size:16px;margin-bottom:12px}.charts svg{max-height:235px}.donut{width:130px;height:130px;margin:10px auto 18px}.donut>div{width:98px;height:98px}.allocation{gap:8px;font-size:11px}.bars{height:130px;padding-bottom:20px}.account{margin-bottom:12px}.charts.lower .card{padding-bottom:10px}th{padding:10px 6px}td{padding:9px 6px}footer{margin-top:16px}.filters{margin:14px 0}.note{margin-top:14px}.detail dl{row-gap:18px;margin:22px 0}.settings .source{margin:20px 0}.settings .card{padding:20px}.settings footer{margin-top:30px}.info{position:relative;cursor:help}.info[data-help]:hover{color:var(--green)}
@media(min-width:1101px) and (max-height:850px){main{padding:16px 20px}aside{padding-top:24px}.header{margin-bottom:12px}.kpi strong{margin:8px 0 10px;font-size:24px}.card{padding:12px}.charts svg{max-height:195px}.bars{height:117px}.bar{max-height:90px}.donut{width:115px;height:115px;margin:8px auto 12px}.donut>div{width:88px;height:88px}.charts h2{margin-bottom:9px}.charts,.kpis{margin-bottom:12px}.account{margin-bottom:10px}td{padding:7px 6px}footer{margin-top:12px}.detail dl{row-gap:16px}.detail strong.big{margin:14px 0}.note p{font-size:11px}}
.brand-logo{display:block;width:150px;height:100px;object-fit:contain;margin:0 auto 12px;background:white;border-radius:10px}nav{margin-top:24px}.periods{justify-content:flex-end;margin:-6px 0 12px}.swatch{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:8px}.monthly-chart{height:138px;position:relative;padding:0 12px}.zero-axis{position:absolute;left:12px;right:12px;top:60px;border-top:1px solid #78909d}.zero-axis span{position:absolute;right:0;top:-15px;color:var(--muted);font-size:10px}.month-columns{display:flex;gap:8px;height:120px;overflow-x:auto}.month-column{min-width:10px;flex:1;position:relative;height:120px}.month-bar{display:block;position:absolute;left:15%;width:70%;border-radius:3px;max-height:48px}.month-bar.positive{bottom:60px;background:var(--green)}.month-bar.negative{top:60px;background:#ed7c89}.month-column small{position:absolute;top:111px;font-size:9px;white-space:nowrap}.top-five h2{margin-bottom:6px}.top-five td{padding:6px}.charts svg{max-height:210px}@media(min-width:1101px) and (max-height:850px){.brand-logo{height:90px;width:140px}.charts svg{max-height:170px}.monthly-chart{height:130px}.allocation{font-size:10px}.top-five td{padding:4px 6px}.top-five th{padding:6px}}
.interactive-donut{position:relative;width:130px;height:130px;margin:10px auto 18px}.interactive-donut svg{width:100%;height:100%;overflow:visible}.donut-label{position:absolute;inset:30px;display:grid;align-content:center;text-align:center;pointer-events:none;font-size:12px}.donut-label small{font-size:9px;margin-top:5px}.donut-segment{cursor:help;transition:stroke-width .15s,filter .15s}.donut-segment:hover,.donut-segment:focus{stroke-width:23;filter:brightness(1.2);outline:none}.account-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px}.account-tile{border:1px solid var(--line);border-radius:8px;padding:10px;background:#08121e}.account-tile>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.account-tile strong{font-size:16px}.account-tile b{font-size:13px}@media(min-width:1101px) and (max-height:850px){.interactive-donut{width:115px;height:115px;margin:8px auto 12px}.donut-label{inset:25px;font-size:11px}.account-tile{padding:8px}.account-tile strong{font-size:14px}}
.allocation{display:block}.allocation-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:4px 6px;border-radius:5px;transition:background .15s}.allocation-row.highlighted{background:#214237;outline:1px solid var(--green)}.donut-tooltip{position:absolute;left:50%;top:-12px;transform:translate(-50%,-100%);background:#18372f;border:1px solid var(--green);color:var(--text);border-radius:7px;padding:8px 10px;white-space:nowrap;font-size:12px;z-index:10;pointer-events:none;box-shadow:0 6px 18px #0008}.donut-tooltip[hidden]{display:none}
.month-column .month-tick{left:50%;transform:translateX(-50%);font-size:10px;font-variant-numeric:tabular-nums}.month-column .month-tick.first{left:0;transform:none}.month-column .month-tick.last{left:auto;right:0;transform:none}.month-columns{gap:2px;overflow:visible}.month-column{min-width:0}.monthly-chart{padding-left:8px;padding-right:8px}.detail dt .info{font-size:12px}.detail .big .info{vertical-align:middle}
html{min-width:320px}body{padding-bottom:env(safe-area-inset-bottom)}.settings .folder{flex-wrap:wrap}.settings .folder input{min-width:180px}.allocation-row{grid-template-columns:minmax(65px,1fr) auto auto}.assets-body{grid-template-columns:minmax(0,1fr) 344px}.holdings{min-width:0;overflow-x:auto}.holdings table{min-width:640px}.charts>section{min-width:0}.top-five{overflow-x:auto}.top-five table{min-width:550px}@media(max-width:1100px){.assets-body{grid-template-columns:1fr}.header .dates{flex-wrap:wrap}.header>div{max-width:100%}}@media(max-width:650px){aside{padding:10px 12px}.brand-logo{height:60px;width:100px;margin:0}nav{margin-top:10px;gap:6px}nav button{flex:1;text-align:center;padding:8px;min-width:80px}main{padding:16px 12px}.header{gap:12px}.dates{width:100%}.dates>.card{flex:1;min-width:140px}.dates input[type=date]{width:115px;font-size:12px}.kpis{gap:8px}.kpi{padding:10px}.kpi strong{font-size:20px;margin:10px 0}.kpi span{font-size:11px}.kpi small{font-size:10px}.periods{justify-content:flex-start;margin:0 0 12px;gap:5px}.periods button{padding:8px 10px;flex:1;font-size:11px}.charts{grid-template-columns:1fr}.charts.lower{grid-template-columns:1fr}.charts svg{max-height:none}.interactive-donut{width:150px;height:150px}.donut-label{inset:35px}.allocation-row{font-size:12px;padding:6px}.account-tile strong{font-size:15px}.filterline{display:grid;grid-template-columns:1fr}.chips button{font-size:11px;padding:8px}.settings .folder .action{width:100%}.settings .folder input{width:100%}.settings .card{padding:16px}.detail dt{font-size:12px}.donut-tooltip{font-size:11px;white-space:normal;min-width:180px;text-align:center}dialog{max-width:calc(100vw - 24px)}.monthly-chart{height:140px}.settings-grid{grid-template-columns:1fr}.settings footer{margin-top:24px}}
.mobile-link-button{display:block;width:100%;margin-top:28px;padding:12px 8px;border:1px solid var(--green);border-radius:8px;background:#0b2a3a;color:var(--green);font-size:12px}.mobile-url{display:block;width:100%;margin:18px 0;font-size:12px}.mobile-link-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:650px){.mobile-link-button{width:auto;margin-top:10px;padding:8px 12px}}
.pin-screen{position:fixed;inset:0;z-index:999;background:#050a10;display:grid;place-items:center;padding:20px;overflow:auto}.pin-screen[hidden]{display:none}.pin-card{width:min(100%,390px);padding:26px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 35px #50d9a022}.pin-card img{width:100px;height:100px;object-fit:contain;border-radius:10px;display:block;margin:0 auto 22px}.pin-card h1{text-align:center;font-size:24px}.pin-card p{color:var(--muted);font-size:13px}.pin-card label{display:block;font-size:12px;color:var(--muted);margin:16px 0}.pin-card label[hidden]{display:none}.pin-card input{display:block;width:100%;text-align:center;letter-spacing:14px;font-size:26px;margin-top:8px}.pin-card button{width:100%;margin-bottom:18px}.pin-card .pin-status{color:var(--amber);min-height:20px}.pin-card small{display:block;line-height:1.5}
@media(max-width:650px){aside{min-height:0;height:auto;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.brand-logo{grid-column:1;margin:0}nav{grid-column:1 / -1;grid-row:2;margin-top:0}.mobile-link-button{margin:0;justify-self:end}.mobile-link-button:last-child{grid-column:1 / -1;justify-self:end}main{padding-top:12px}}
/* Responsive layout uses content height at every narrow window size. */
body{align-items:flex-start}aside{min-height:100dvh;position:sticky;top:0}main{min-width:0;flex:1;width:auto}.live-app .header{align-items:flex-start}.live-app .kpi strong{font-size:clamp(19px,1.7vw,26px)}.data-badge{color:var(--green)}.amber{color:var(--amber)}.live-app .card{min-width:0}.live-app .allocation-row>span:first-child{overflow-wrap:anywhere;min-width:0}.allocation-row small{display:block;margin-top:3px}.table-scroll{overflow-x:auto;width:100%}.table-scroll table{min-width:620px}.hover-explanation{position:fixed;z-index:1200;padding:12px;background:#17332e;border:1px solid var(--green);border-radius:9px;box-shadow:0 8px 25px #0009;font-size:12px;line-height:1.5;color:var(--text);pointer-events:none;white-space:normal}.hover-explanation[hidden]{display:none}.real-segment{cursor:help;transition:stroke-width .15s,filter .15s}.real-segment:hover,.real-segment:focus{stroke-width:23;filter:brightness(1.2);outline:none}.valuation-chart{position:relative}.chart-tip{position:absolute;left:8px;right:8px;top:8px;width:max-content;max-width:calc(100% - 16px);padding:9px 12px;background:#152e29ee;border:1px solid var(--green);border-radius:7px;z-index:8;font-size:11px;line-height:1.5;pointer-events:none}.chart-tip[hidden]{display:none}.chart-tip strong{display:block}.trade-dot{cursor:pointer}.live-monthly{height:180px;padding-top:20px}.live-monthly .zero-axis{top:80px}.live-monthly .month-columns{height:150px}.live-monthly .month-column{height:120px}.bar-percent{position:absolute;left:50%;transform:translateX(-50%);font-size:9px;white-space:nowrap;color:var(--green)}.bar-percent.negative{color:#ed7c89}.live-status{font-size:11px;color:var(--muted)}.live-detail{margin-top:14px}.live-detail dl{display:grid;grid-template-columns:1fr auto;gap:12px;max-width:520px}.live-detail dd{margin:0}.live-app .charts{grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr)}.live-app .charts.lower{grid-template-columns:1fr 1fr}.live-app .donut-label{inset:23px;font-size:11px}.live-app .donut-tooltip{max-width:310px;white-space:normal;width:270px;text-align:center}.account-tile>div{flex-wrap:wrap}.quote-map{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.quote-map input{max-width:200px}
@media(max-width:1200px){aside{width:160px;padding:18px 10px}.brand-logo{width:110px;height:78px}main{padding:16px}.live-app .charts{grid-template-columns:1fr}.live-app .charts.lower{grid-template-columns:1fr 1fr}.live-app .interactive-donut{width:150px;height:150px}.live-app .allocation{max-width:600px;margin:auto}}
@media(max-width:850px){aside{width:140px;padding:12px 8px}nav{gap:8px}nav button{padding:8px;font-size:12px}.live-app .charts.lower{grid-template-columns:1fr}.account-tiles{grid-template-columns:1fr 1fr}.live-app .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.live-app .header{display:block}.live-app .dates{margin-top:12px}.live-app .dates .card{width:100%}}
@media(max-width:650px){body{display:block}aside{position:static;width:100%;min-height:0;height:auto;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px}.brand-logo{width:90px;height:54px}main{width:100%;padding:12px}.mobile-link-button{margin:0}.mobile-link-button:last-child{grid-column:auto;grid-row:1}nav{grid-column:1 / -1;grid-row:2;display:flex;gap:5px;overflow-x:auto}nav button{min-width:74px;flex:1}.live-app .header{margin-bottom:14px}.live-app h1{font-size:22px}.live-app .charts,.live-app .charts.lower{grid-template-columns:1fr}.live-app .allocation-row{grid-template-columns:minmax(0,1fr) auto}.live-app .allocation-row>span:last-child{grid-column:1 / -1;text-align:right}.live-app .donut-label{inset:30px}.live-app .kpi strong{font-size:20px}.live-app .periods{flex-wrap:nowrap}.live-app .periods button{padding:8px 4px}.chart-tip{font-size:10px}.live-app .monthly-chart{overflow:visible}.live-app .month-columns{gap:4px;overflow-x:auto;overflow-y:visible;height:156px}.live-app .month-column{min-width:35px}.live-app .bar-percent{font-size:8px}.table-scroll table{min-width:620px}.live-app .dates input{width:112px}.hover-explanation{font-size:12px}}

.live-app .allocation{max-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#28534b transparent;padding-right:5px}

.summary-scope{display:block;margin:4px 0 10px}.period-summary{margin-bottom:14px}.period-summary h2{font-size:14px;margin-bottom:8px}.period-summary>div{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:8px}.period-summary>div span{font-size:12px}.bond-series-heading{margin-top:24px}@media(max-width:650px){.period-summary>div{display:grid;gap:8px}}

.lifetime-summary{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:12px;font-size:12px}.lifetime-summary b{display:block;margin-top:4px}.asset-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.asset-options button{padding:12px;text-align:left;border:1px solid #25434e;border-radius:9px;background:#0d202b;color:#dce8ed;cursor:pointer}.asset-options button.active{border-color:#50d9a0;background:#14362f}.asset-options strong,.asset-options small,.asset-options b{display:block;margin:3px 0}.pin-reset{margin-top:12px;width:100%}.pin-status a{color:#50d9a0}.live-detail{margin:12px 0}.kpi strong{overflow-wrap:anywhere}
@media(max-width:600px){.asset-options{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-options button{font-size:12px;padding:9px}.lifetime-summary{gap:10px}.lifetime-summary>span{flex:1 1 42%}.live-detail dd{overflow-wrap:anywhere}.live-detail dt{max-width:65%}.kpi{min-width:0}.period-summary div{flex-wrap:wrap}}

.position-percent{display:block;color:inherit;font-weight:600;margin-top:3px}.excluded-note{color:var(--amber);font-size:10px}.account-tile b{overflow-wrap:anywhere}
