@import url('/portfolio.css?v=1');

:root{
  --bg:#f3f6f3;
  --surface:#ffffff;
  --surface-2:#f7f9f7;
  --line:#dce4de;
  --line-soft:rgba(22,42,31,.08);
  --text:#18221c;
  --muted:#6d7b73;
  --lime:#527b2b;
  --green:#148454;
  --red:#cf4f47;
  --blue:#2c78ad;
  --amber:#a86813;
}

html{background:var(--bg)}
body{background:radial-gradient(circle at 78% -12%,rgba(91,140,87,.10),transparent 30%),linear-gradient(180deg,#f8faf8 0,#f3f6f3 38%,#eef2ef 100%);color:var(--text)}
.rail{background:rgba(255,255,255,.92);box-shadow:8px 0 30px rgba(28,48,36,.03)}
.logo{color:var(--text)}
.logo-mark{border-color:#bfd2b1;background:#f0f6ea}
.logo-mark i{background:#527b2b;box-shadow:-8px 7px 0 #86b296,8px 7px 0 #8db6d1}
.logo-mark i:after{background:#fff;box-shadow:-8px 7px 0 #fff,8px 7px 0 #fff}
.logo small,.rail nav a i{color:#849188}
.rail nav a{color:#637169}
.rail nav a:hover,.rail nav a.active{background:#edf3e9;color:#203018}
.rail nav a.active{box-shadow:inset 2px 0 #527b2b}
.rail nav a.active i{color:#527b2b}
.rail-foot>i,.live-pill i{background:#1b9b61;box-shadow:0 0 0 3px rgba(27,155,97,.12)}
.topbar p,.section-head>div>span,.etf-title span{color:#7c8981}
.top-actions button,.segmented button,.range-tabs button,.live-pill{background:#fff;color:#435249}
.top-actions button:hover{border-color:#8fa498;background:#f7faf7}
.alert{background:#fff4f2;color:#812f2a}
.alert span{color:#a8524c}
.alert button{color:#8f3730}
.hero article,.risk-grid article,.attribution-hero article,.panel,.rebalance-card,.sector-grid article,.page-intro{background:linear-gradient(145deg,#fff,#fbfcfb);box-shadow:0 8px 24px rgba(25,43,33,.035)}
.hero-value{background:radial-gradient(circle at 92% 0,rgba(106,145,70,.12),transparent 42%),#fff!important}
.hero-health strong{color:#527b2b}
.risk-chip{color:#527b2b!important;border-color:#c8d8bb;background:#f2f7ee}
.chart-hover{background:rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(24,39,30,.10)}
.decision-action>i{color:#fff;background:#527b2b}
.decision-panel>p{color:#66746c;display:block;-webkit-line-clamp:unset;-webkit-box-orient:initial;overflow:visible;white-space:normal;overflow-wrap:anywhere}
.decision-explanation{display:grid;gap:10px;color:#56665d;font-size:13px;line-height:1.85;overflow-wrap:anywhere}.decision-explanation p{margin:0}.decision-panel>.decision-explanation{max-height:360px;overflow:auto;padding-right:5px}.final-decision details .decision-explanation{margin-top:12px}
.primary-link{color:#243128;border-color:#cfd9d2;background:#f6f9f6}
.primary-link:hover{border-color:#95aa9c;background:#eff5ef}
.contribution-bar,.weight-bar,.score-line,.weight-history i{background:#e7ece8}
.month-strip>div{background:#f8faf8;border-color:#e2e8e3}
.empty i{background:#f5f8f5}
.loading i,.detail-loading i{border-color:#d6dfd8;border-top-color:#527b2b}
.loading b,.detail-loading b{color:#334138}
.range-tabs{background:#fff}
.range-tabs button{background:transparent;color:#718078}
.range-tabs button.active,.segmented button.active{background:#e8f0e3;color:#3e6521}
.segmented button{background:#f2f5f2;color:#65736b}
.heat-cell{color:#fff}
.empty-cell{background:#f3f6f3!important;color:#a2ada6!important}
.table-row span{color:#4c5a52}
.etf-table .table-row:hover,.order-table>a:hover,.contribution-row:hover{background:#f7faf7}
.page-intro p{color:#66746c}
.rebalance-card header>b{background:#fff8ec}
.score-line i{background:linear-gradient(90deg,#8eb59a,#527b2b)}
.sector-grid article{transition:.18s ease}
.sector-grid article:hover{border-color:#b8c7bd;transform:translateY(-1px);box-shadow:0 12px 28px rgba(25,43,33,.07)}
.workspace>footer{color:#88948d}
.up{color:#cf3f38!important}.down{color:#16865a!important}
.contribution-bar i{background:#cf3f38}.contribution-bar i.down{background:#16865a}
.heat-cell{background:rgba(207,63,56,var(--heat));color:#fff}
.heat-cell.down{background:rgba(22,134,90,var(--heat));color:#fff}

@media(max-width:680px){.rail{background:rgba(255,255,255,.96)}}
@media(max-width:980px){.rail nav span{display:block;font-size:10px;white-space:nowrap}.rail nav a{padding-left:2px;padding-right:2px}}
@media(max-width:680px){.rail nav span{font-size:10px}.rail nav a{min-width:62px}}
