.portfolio-office{width:min(calc(100% - 2rem),80rem);padding-top:6.25rem}.portfolio-commandbar{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:1.25rem}.portfolio-commandbar h1{margin:.25rem 0 .35rem;font-size:clamp(2.6rem,5vw,4.3rem);line-height:.94;letter-spacing:-.065em}.portfolio-commandbar>div:first-child>p:last-child{margin:0;color:var(--soft);font-size:.78rem}.portfolio-command-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.portfolio-command-actions a{text-decoration:none}.portfolio-trust{display:inline-flex;min-height:2.75rem;align-items:center;gap:.5rem;padding:0 .85rem;color:var(--soft);font-size:.65rem;white-space:nowrap}.portfolio-trust i,.portfolio-risk-note i{width:.45rem;height:.45rem;border-radius:50%;background:var(--positive);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--positive) 10%,transparent)}
.portfolio-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--panel2) 84%,transparent),color-mix(in srgb,var(--panel) 94%,transparent));box-shadow:var(--shadow-1);overflow:hidden}.portfolio-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(19rem,.8fr);gap:.8rem}.portfolio-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.15rem 1.25rem;border-bottom:1px solid var(--line)}.portfolio-card-head span,.portfolio-card-head small{display:block}.portfolio-card-head span{font-size:.75rem;font-weight:720;letter-spacing:-.01em}.portfolio-card-head small{margin-top:.22rem;color:var(--soft);font-size:.57rem}.portfolio-card-head a{color:var(--acid);font-size:.62rem;font-weight:650;text-decoration:none}.portfolio-segmented{display:flex;padding:.18rem;border:1px solid var(--line);border-radius:.65rem;background:color-mix(in srgb,var(--bg) 52%,transparent)}.portfolio-segmented button,.portfolio-periods button{min-width:3rem;min-height:2.3rem;padding:.35rem .65rem;border:0;border-radius:.5rem;background:transparent;color:var(--soft);font:650 .62rem/1 inherit;cursor:pointer;transition:transform 100ms ease-out,background 180ms ease,color 180ms ease,box-shadow 180ms ease}.portfolio-segmented button.active,.portfolio-periods button.active{background:color-mix(in srgb,var(--acid) 13%,var(--panel-raised));color:var(--text);box-shadow:0 1px 0 color-mix(in srgb,var(--text) 8%,transparent) inset,0 .3rem 1rem color-mix(in srgb,var(--bg) 40%,transparent)}.portfolio-segmented button:active,.portfolio-periods button:active{transform:scale(.96)}
.portfolio-value-line{display:flex;justify-content:space-between;gap:1rem;align-items:end;padding:1.5rem 1.25rem .4rem}.portfolio-value-line strong{display:block;font-size:clamp(2rem,4.4vw,3.5rem);font-weight:650;line-height:.95;letter-spacing:-.065em;font-variant-numeric:tabular-nums}.portfolio-value-line span{display:block;margin-top:.55rem;color:var(--soft);font:650 .72rem/1 ui-monospace,"SFMono-Regular",Consolas,monospace}.portfolio-value-line p{margin:0 0 .25rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:2rem;color:var(--soft);font:650 .7rem/1 ui-monospace,"SFMono-Regular",Consolas,monospace}.portfolio-value-line .up,.portfolio-breakdown-total .up{color:var(--positive)}.portfolio-value-line .down,.portfolio-breakdown-total .down{color:var(--red)}.portfolio-periods{display:flex;justify-content:flex-end;gap:.12rem;padding:.25rem 1.25rem}.portfolio-periods button{min-width:2.7rem;min-height:2.5rem}
.portfolio-chart-wrap{position:relative;height:19rem;margin-top:.2rem;touch-action:none;cursor:crosshair}.portfolio-chart-wrap svg{width:100%;height:100%;overflow:visible}.chart-zero{stroke:var(--line);stroke-width:1;stroke-dasharray:3 6}.chart-area{fill:url(#portfolioArea);animation:portfolioAreaIn var(--motion-response) ease-out both}.chart-market-line,.chart-cost-line{fill:none;vector-effect:non-scaling-stroke}.chart-market-line{stroke:var(--chart-1);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 .4rem color-mix(in srgb,var(--chart-1) 30%,transparent));stroke-dasharray:1200;stroke-dashoffset:1200;animation:portfolioLineIn 720ms var(--ease-out) forwards}.chart-cost-line{stroke:var(--muted);stroke-width:1.25;stroke-dasharray:5 7}.chart-last-dot,.chart-cursor-dot{fill:var(--chart-1);stroke:var(--surface-solid);stroke-width:3}.chart-cursor{stroke:color-mix(in srgb,var(--text) 22%,transparent);stroke-width:1;stroke-dasharray:2 5}.portfolio-chart-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.portfolio-chart-empty b,.portfolio-chart-empty span{display:block}.portfolio-chart-empty b{font-size:.85rem}.portfolio-chart-empty span{max-width:24rem;margin-top:.45rem;color:var(--soft);font-size:.62rem;line-height:1.55}.portfolio-chart-tooltip{position:absolute;left:clamp(5rem,var(--tooltip-x),calc(100% - 5rem));top:1.2rem;min-width:8.5rem;padding:.65rem .75rem;border:1px solid var(--line-strong);border-radius:.75rem;background:color-mix(in srgb,var(--surface-solid) 90%,transparent);box-shadow:var(--shadow-2);backdrop-filter:blur(18px) saturate(135%);transform:translateX(-50%);pointer-events:none}.portfolio-chart-tooltip span,.portfolio-chart-tooltip b,.portfolio-chart-tooltip small{display:block}.portfolio-chart-tooltip span,.portfolio-chart-tooltip small{color:var(--soft);font-size:.53rem}.portfolio-chart-tooltip b{margin:.3rem 0;font:700 .78rem/1 ui-monospace,"SFMono-Regular",Consolas,monospace}.portfolio-chart-legend{display:flex;gap:1rem;align-items:center;padding:.8rem 1.25rem 1rem;border-top:1px solid var(--line);color:var(--soft);font-size:.56rem}.portfolio-chart-legend span{display:flex;gap:.4rem;align-items:center}.portfolio-chart-legend i{width:1rem;height:.15rem;border-radius:1rem}.portfolio-chart-legend i.market{background:var(--chart-1)}.portfolio-chart-legend i.cost{border-top:1px dashed var(--muted)}.portfolio-chart-legend small{margin-left:auto}
.portfolio-count{color:var(--soft);font-size:.58rem!important;font-weight:550!important}.portfolio-count b{display:inline;color:var(--text);font-size:.75rem}.portfolio-count em{font-style:normal}.portfolio-donut-wrap{position:relative;display:grid;place-items:center;min-height:18rem;padding:1.4rem}.portfolio-donut-wrap svg{width:min(100%,15.5rem);transform:rotate(-90deg);filter:drop-shadow(0 .8rem 1.8rem color-mix(in srgb,var(--bg) 45%,transparent))}.portfolio-donut-wrap>div{position:absolute;text-align:center}.portfolio-donut-wrap>div span,.portfolio-donut-wrap>div b{display:block}.portfolio-donut-wrap>div span{color:var(--soft);font-size:.57rem}.portfolio-donut-wrap>div b{max-width:8rem;margin-top:.35rem;font-size:1.08rem;letter-spacing:-.035em}.donut-track,.donut-segment{fill:none;stroke-width:13}.donut-track{stroke:color-mix(in srgb,var(--text) 6%,transparent)}.donut-segment{stroke-linecap:butt;transform-origin:center;animation:donutMaterialize 520ms var(--ease-out) both}.portfolio-allocation-legend{padding:0 1.25rem .9rem}.portfolio-allocation-legend>div{display:grid;grid-template-columns:.55rem 1fr auto auto;gap:.55rem;align-items:center;padding:.58rem 0;border-bottom:1px solid var(--line)}.portfolio-allocation-legend i{width:.48rem;height:.48rem;border-radius:50%;background:var(--legend)}.portfolio-allocation-legend span,.portfolio-allocation-legend b,.portfolio-allocation-legend small{font-size:.58rem}.portfolio-allocation-legend span{color:var(--soft)}.portfolio-allocation-legend small{min-width:4.6rem;color:var(--muted);text-align:right}.portfolio-risk-note{display:flex;gap:.6rem;align-items:center;margin:.2rem 1.25rem 1.25rem;padding:.75rem;border:1px solid var(--line);border-radius:.75rem;background:color-mix(in srgb,var(--bg) 32%,transparent)}.portfolio-risk-note span{color:var(--soft);font-size:.58rem;line-height:1.4}.portfolio-risk-note[data-level=high] i{background:var(--red);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--red) 10%,transparent)}.portfolio-risk-note[data-level=medium] i{background:var(--amber);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--amber) 10%,transparent)}
.portfolio-intelligence-grid{display:grid;grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);gap:.8rem;margin-top:.8rem}.portfolio-breakdown-total{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.25rem}.portfolio-breakdown-total span{color:var(--soft);font-size:.62rem}.portfolio-breakdown-total strong{font-size:1.25rem}.portfolio-breakdown-rows{padding:0 1.25rem 1rem}.portfolio-breakdown-rows>div{display:grid;grid-template-columns:9rem 1fr 5.5rem;gap:.8rem;align-items:center;padding:.6rem 0}.portfolio-breakdown-rows span,.portfolio-breakdown-rows b{font-size:.58rem}.portfolio-breakdown-rows span{color:var(--soft)}.portfolio-breakdown-rows b{text-align:right;font-variant-numeric:tabular-nums}.portfolio-breakdown-rows>div>div{height:.28rem;border-radius:1rem;background:color-mix(in srgb,var(--text) 6%,transparent);overflow:hidden}.portfolio-breakdown-rows i{display:block;width:100%;height:100%;border-radius:inherit;background:var(--positive);transform:scaleX(var(--bar));transform-origin:left;transition:transform 560ms var(--ease-out)}.portfolio-breakdown-rows i.down{background:var(--red)}.portfolio-breakdown footer{padding:.8rem 1.25rem;border-top:1px solid var(--line);color:var(--muted);font-size:.53rem;line-height:1.5}.portfolio-holdings-head,.portfolio-holding-rows article{display:grid;grid-template-columns:minmax(13rem,1.5fr) repeat(3,minmax(5.5rem,.65fr));gap:1rem;align-items:center}.portfolio-holdings-head{padding:.72rem 1.25rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.53rem}.portfolio-holding-rows{padding:0 1.25rem .5rem}.portfolio-holding-rows article{padding:.78rem 0;border-bottom:1px solid var(--line)}.portfolio-holding-rows article>div{display:flex;gap:.65rem;align-items:center;min-width:0}.holding-mark{display:grid;place-items:center;flex:0 0 2rem;height:2rem;border:1px solid var(--line);border-radius:.65rem;background:color-mix(in srgb,var(--acid) 8%,transparent);color:var(--acid);font:700 .57rem/1 ui-monospace,"SFMono-Regular",Consolas,monospace}.portfolio-holding-rows p{min-width:0;margin:0}.portfolio-holding-rows p b,.portfolio-holding-rows p small,.portfolio-holding-rows strong small{display:block}.portfolio-holding-rows p b{overflow:hidden;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.portfolio-holding-rows p small,.portfolio-holding-rows strong small{margin-top:.2rem;color:var(--muted);font-size:.52rem}.portfolio-holding-rows article>span,.portfolio-holding-rows article>strong,.portfolio-holding-rows article>b{font-size:.62rem;font-variant-numeric:tabular-nums}.portfolio-empty-row{padding:1.4rem 0;color:var(--soft);font-size:.65rem}.portfolio-empty-row b,.portfolio-empty-row span{display:block}.portfolio-empty-row span{margin-top:.35rem;color:var(--muted)}
.portfolio-tools{margin-top:5rem;scroll-margin-top:6rem}.portfolio-section-title{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:1rem}.portfolio-section-title h2{margin:.35rem 0 0;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.055em}.portfolio-section-title>div:last-child{display:flex;gap:.5rem;flex-wrap:wrap}.portfolio-section-title a{text-decoration:none}.portfolio-workbench{margin-top:.8rem}.portfolio-workbench .position-list{padding-bottom:1rem}
.up{color:var(--positive)!important}.down{color:var(--red)!important}
.portfolio-office button:focus-visible,.portfolio-office a:focus-visible{outline:.16rem solid var(--acid);outline-offset:.16rem}
@keyframes portfolioLineIn{to{stroke-dashoffset:0}}@keyframes portfolioAreaIn{from{opacity:0}to{opacity:1}}@keyframes donutMaterialize{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@media(max-width:62rem){.portfolio-dashboard-grid,.portfolio-intelligence-grid{grid-template-columns:1fr}.portfolio-donut-wrap{min-height:16rem}.portfolio-holdings-head,.portfolio-holding-rows article{grid-template-columns:minmax(12rem,1.4fr) repeat(3,minmax(5rem,.6fr))}}
@media(max-width:46rem){.portfolio-office{width:min(calc(100% - 1rem),80rem)}.portfolio-commandbar,.portfolio-section-title{display:block}.portfolio-command-actions,.portfolio-section-title>div:last-child{margin-top:1rem;justify-content:flex-start}.portfolio-command-actions .portfolio-trust{display:none}.portfolio-dashboard-grid{gap:.65rem}.portfolio-card-head{padding:1rem}.portfolio-value-line{padding:1.25rem 1rem .35rem}.portfolio-value-line strong{font-size:2.35rem}.portfolio-periods{justify-content:space-between;padding-inline:.75rem}.portfolio-periods button{min-width:2.55rem}.portfolio-chart-wrap{height:15rem}.portfolio-chart-legend{padding-inline:1rem}.portfolio-chart-legend small{display:none}.portfolio-intelligence-grid{gap:.65rem}.portfolio-holdings{overflow-x:auto}.portfolio-holdings-head,.portfolio-holding-rows article{min-width:43rem}.portfolio-breakdown-rows>div{grid-template-columns:7.6rem 1fr 4.8rem}.portfolio-tools{margin-top:3.5rem}}
@media(prefers-reduced-motion:reduce){.chart-market-line,.chart-area,.donut-segment{animation:none}.portfolio-breakdown-rows i{transition:none}}
@media(prefers-reduced-transparency:reduce){.portfolio-panel,.portfolio-chart-tooltip{background:var(--surface-solid);backdrop-filter:none}}
@media(prefers-contrast:more){.portfolio-panel,.portfolio-chart-tooltip,.portfolio-segmented{border-color:var(--line-strong);background:var(--surface-solid)}}
