/* Stats-only presentation; existing theme and other screens remain intact. */
.stats-studio{--stats-ink:#193d35;--stats-mint:#d5f5b0;--stats-flow-income:#337b68;--stats-flow-expense:#ba663c}
[data-theme=dark] .stats-studio{--stats-ink:#142822;--stats-mint:#d5f5b0;--stats-flow-income:#a2d9bc;--stats-flow-expense:#efac82}
@media(max-width:359px){#app[data-route=stats] .page-heading .month-control input{width:104px}}
#app[data-route=stats] .page-heading p{display:none}
.stats-studio{display:grid;gap:20px;min-width:0}
.stats-period{display:flex;justify-content:space-between;align-items:center;gap:20px}
.stats-period h2{font-size:22px;letter-spacing:-.7px;margin:6px 0}
.stats-period p{font-size:12px;color:var(--muted)}
.stats-period .stats-controls{margin:0;flex-wrap:wrap;justify-content:flex-end}
.stats-period label{min-width:0}
.stats-summary{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}
.stats-summary article{background:var(--surface);border:1px solid var(--border);padding:24px;border-radius:20px;display:flex;flex-direction:column;gap:12px;min-width:0}
.stats-summary .stats-summary-main{background:var(--brand-soft)}
.stats-number{display:block;font-size:30px;letter-spacing:-1.2px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.15}
.stats-summary-main .stats-number{font-size:38px}
.stats-summary p{font-size:12px;line-height:1.5}
.stats-summary small{font-size:11px;color:var(--muted);line-height:1.6}
#app[data-route=stats] .stats-studio .toolbar{margin:0;display:flex}
.stats-analysis-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
.stats-overview{display:grid;gap:20px;min-width:0}
.stats-distribution{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stats-studio .card{min-width:0}
.stats-studio .section-heading h2{font-size:17px}
.stats-studio .section-heading p{font-size:12px}
.stats-studio .eyebrow{font-size:10px;letter-spacing:1px}
.stats-cash-flow .trend-chart{height:180px}
.stats-inspector-wrap{align-self:stretch;min-width:0}
.stats-inspector{position:sticky;top:20px;padding:22px}
.stats-inspector:focus{outline:2px solid var(--control-border);outline-offset:3px}
.stats-inspector h2{font-size:23px;letter-spacing:-.6px;overflow-wrap:anywhere;margin:12px 0 8px}
.stats-inspector-heading{display:flex;justify-content:space-between;align-items:center}
.stats-inspector-empty{padding:35px 0}
.stats-inspector-empty>.icon{width:30px;height:30px;color:var(--muted)}
.stats-inspector-empty p{color:var(--muted);font-size:13px;line-height:1.7}
.stats-selected-amount{padding:20px 0;border-bottom:1px solid var(--border);display:grid;gap:8px}
.stats-selected-amount>span,.stats-insight-totals>div>span{font-size:11px;color:var(--muted)}
.stats-insight-totals{display:grid;gap:20px;padding:20px 0}
.stats-insight-totals>div{display:grid;gap:7px}
.stats-insight-totals .stats-number{font-size:25px}
.stats-insight-totals small{font-size:11px;color:var(--muted)}
.stats-merchant-history{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;border-bottom:1px solid var(--border);padding-bottom:16px}
.stats-merchant-history>div{display:grid;gap:6px;text-align:center;min-width:0}
.stats-merchant-history svg{height:72px;width:100%}
.stats-history-bar{fill:var(--control-border)}
.stats-merchant-history>div:last-child .stats-history-bar{fill:var(--brand)}
.stats-merchant-history span{font-size:9px;color:var(--muted)}
.stats-merchant-history small{font-size:10px;overflow-wrap:anywhere}
.stats-disclosure{font-size:11px;line-height:1.7;color:var(--muted);margin:16px 0}
.stats-view-record{width:100%;justify-content:space-between;font-size:12px}
.stats-ledger{grid-column:1/-1;min-width:0}
.stats-destination{display:flex;align-items:center;gap:10px;width:100%;padding:14px 0;border-bottom:1px solid var(--border);text-align:left}
.stats-destination>span:nth-child(2){flex:1;min-width:0;display:grid;gap:5px}
.stats-destination strong{font-size:12px;overflow-wrap:anywhere}
.stats-destination small{font-size:10px;color:var(--muted)}
.stats-destination .icon{width:12px;height:12px;flex:none}
.stats-rank{color:var(--muted);font-size:10px}
.stats-destination:hover{color:var(--link)}
.stats-jump{justify-self:end;display:inline-flex;align-items:center;gap:6px;font-size:12px}
.stats-jump .icon{width:14px;height:14px}
.stats-explanation{margin:16px 0;font-size:11px;color:var(--muted)}
.stats-explanation summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:6px}
.stats-explanation summary::after{content:"+";margin-left:auto}
.stats-explanation[open] summary::after{content:"−"}
.stats-explanation .stats-disclosure{margin-top:4px}
@media(max-width:1100px){
 .stats-analysis-layout{grid-template-columns:minmax(0,1fr) 280px}
 .stats-distribution{grid-template-columns:1fr}
 .stats-summary article{padding:18px}
 .stats-summary-main .stats-number{font-size:32px}
 .stats-number{font-size:27px}
}
@media(max-width:850px){
 .stats-analysis-layout{grid-template-columns:1fr}
 .stats-inspector{position:static}
 .stats-inspector-wrap:has(.stats-inspector:not(.has-selection)){display:none}
 .stats-distribution{grid-template-columns:1fr 1fr}
 .stats-insight-totals{grid-template-columns:1fr 1fr}
 .stats-merchant-history{max-width:440px}
 .stats-period{align-items:flex-start;flex-direction:column}
 .stats-period .stats-controls{justify-content:flex-start}
}
@media(max-width:599px){
 #app[data-route=stats] .page-heading{margin-bottom:12px;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}
 #app[data-route=stats] .page-heading>div:first-child{padding:8px 10px}
 #app[data-route=stats] .page-heading h1{font-size:21px;margin:0;letter-spacing:-.6px}
 #app[data-route=stats] .heading-actions{gap:0}
 #app[data-route=stats] .month-control{padding:6px 8px}
 #app[data-route=stats] .month-control input{width:128px;font-size:12px}
 .stats-studio{gap:16px}
 .stats-period h2{font-size:20px}
 .stats-summary{grid-template-columns:1fr 1fr;gap:10px}
 .stats-summary .stats-summary-main{grid-column:1/-1}
 .stats-summary article{padding:18px;border-radius:17px;gap:8px}
 .stats-summary .stats-number{font-size:clamp(18px,5.4vw,25px)}
 .stats-summary-main .stats-number{font-size:36px}
 .stats-distribution{grid-template-columns:1fr}
 .stats-studio .card{padding:18px}
 .stats-studio .toolbar{flex-wrap:wrap}
 .stats-studio .search{width:100%;flex-basis:100%}
 .stats-studio .sort-control{display:block;min-width:0;flex:1}
 .stats-studio .sort-control select{width:100%;min-width:0}
 .stats-studio .stats-controls{width:100%;gap:8px}
 #app[data-route=stats] .stats-controls input,#app[data-route=stats] .stats-controls select{min-width:0;max-width:100%}
 .stats-studio .trend-chart{height:150px}
 .stats-insight-totals{grid-template-columns:1fr}
 .stats-studio .ledger-head,.stats-studio .transaction-account,.stats-studio .transaction-date{display:none}
 .stats-studio .transaction{grid-template-columns:minmax(0,1fr) auto}
 .stats-studio .transaction-main{min-width:0}
 .stats-studio .transaction-main strong{white-space:normal;overflow-wrap:anywhere}
 .stats-studio .transaction-amount{font-size:13px}
 .stats-studio .mobile-date{display:inline}
 .stats-studio .filter-fields{grid-template-columns:1fr 1fr}
}
/* The hero is a Stats-specific material, with contrast protected from the artwork. */
.stats-summary{grid-template-columns:minmax(0,1fr) minmax(230px,.45fr);gap:14px}
.stats-summary .stats-summary-main{grid-row:span 2;display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:20px;padding:32px;position:relative;isolation:isolate;overflow:hidden;background:var(--stats-ink);color:#f7faef;border-color:rgba(255,255,255,.18)}
.stats-summary-main::before{content:"";position:absolute;z-index:-1;inset:-100px -100px auto auto;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(197,235,171,.2),transparent 68%);pointer-events:none}
.stats-hero-copy{display:grid;gap:18px;min-width:0}.stats-summary-main .eyebrow{color:#d2e4cd;letter-spacing:1.4px}.stats-summary-main .stats-number{font-size:clamp(32px,4vw,56px);font-weight:550;letter-spacing:-2px}.stats-summary-main small{color:#cad9cf;max-width:360px}.stats-summary-main .stats-comparison-pill{justify-self:start;border:1px solid rgba(222,244,208,.18);border-radius:999px;padding:7px 12px;font-size:11px;color:#e2efda;background:rgba(255,255,255,.06)}
.stats-ring{position:relative;aspect-ratio:1;max-width:210px;width:100%;display:grid;place-items:center}.stats-ring svg{position:absolute;width:100%;height:100%;overflow:visible}.stats-ring circle{fill:none;stroke-width:10}.stats-ring-track{stroke:rgba(224,243,213,.13)}.stats-ring-value{stroke:var(--stats-mint);stroke-linecap:butt;filter:drop-shadow(0 0 5px rgba(211,246,173,.18))}.stats-ring>div{text-align:center;max-width:120px;display:grid;gap:3px}.stats-ring strong{font-size:30px;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums}.stats-ring>div>span{font-size:10px;color:#cad9cf}
.stats-flow-switch{display:flex;gap:4px;width:fit-content;background:var(--subtle);padding:4px;border:1px solid var(--border);border-radius:999px;margin-bottom:18px}.stats-flow-switch button{padding:7px 14px;min-height:36px;border-radius:999px;font-size:11px;color:var(--muted)}.stats-flow-switch button[aria-pressed=true]{background:var(--brand);color:var(--on-brand);box-shadow:0 2px 8px rgba(0,0,0,.09)}
.stats-flow-caption,.stats-flow-dates{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.stats-flow-chart{display:block;width:100%;height:220px;margin:8px 0}.stats-flow-grid{stroke:var(--border);stroke-width:1;fill:none}.stats-flow-series polyline{stroke-width:2.5;fill:none;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.stats-flow-series.income polyline{stroke:var(--stats-flow-income)}.stats-flow-series.expense polyline{stroke:var(--stats-flow-expense);stroke-dasharray:5 4}.stats-flow-series.income circle,.stats-flow-stop.income{fill:var(--stats-flow-income);stop-color:var(--stats-flow-income)}.stats-flow-series.expense circle,.stats-flow-stop.expense{fill:var(--stats-flow-expense);stop-color:var(--stats-flow-expense)}.stats-flow-legend{display:flex;gap:16px;font-size:11px;margin:16px 0}.stats-flow-legend span{display:flex;align-items:center;gap:6px}.stats-flow-legend i{width:7px;height:7px;border-radius:50%;background:currentColor}.stats-flow-legend .income{color:var(--stats-flow-income)}.stats-flow-legend .expense{color:var(--stats-flow-expense)}.stats-flow-empty{font-size:12px;color:var(--muted);margin-top:10px}
.stats-studio .stats-inspector.has-selection{border-top:3px solid var(--stats-flow-expense)}.stats-selected-amount{background:var(--brand-soft);padding:18px;border-radius:14px;border:0;margin-top:18px}.stats-studio .stats-destination{border-radius:10px;padding-inline:8px;transition:background-color 160ms,transform 160ms}.stats-destination:hover{background:var(--brand-soft);transform:translateX(3px)}
@keyframes stats-hero-enter{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes stats-ring-enter{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
.stats-summary[data-stats-enter] .stats-summary-main{animation:stats-hero-enter 420ms cubic-bezier(.2,0,0,1) both}.stats-summary[data-stats-enter] .stats-ring{animation:stats-ring-enter 600ms cubic-bezier(.2,0,0,1) both}
@media(max-width:1100px){.stats-summary .stats-summary-main{padding:24px;grid-template-columns:minmax(0,1fr) 150px;gap:12px}.stats-ring strong{font-size:26px}}
@media(max-width:850px){.stats-summary{grid-template-columns:1fr 1fr}.stats-summary .stats-summary-main{grid-column:1/-1;grid-row:auto;grid-template-columns:minmax(0,1fr) 170px}.stats-summary-main .stats-number{font-size:44px}}
@media(max-width:599px){.stats-summary .stats-summary-main{grid-template-columns:minmax(0,1fr) 108px;padding:20px;gap:8px}.stats-summary-main .stats-number{font-size:clamp(27px,8vw,38px);letter-spacing:-1px}.stats-hero-copy{gap:12px}.stats-summary-main .stats-comparison-pill{border-radius:10px;font-size:10px;padding:6px 8px}.stats-summary-main small{font-size:10px;grid-column:1/-1}.stats-ring strong{font-size:22px}.stats-ring>div{max-width:75px}.stats-ring>div>span{font-size:9px}.stats-flow-chart{height:170px}.stats-flow-switch{width:100%}.stats-flow-switch button{flex:1}.stats-summary-main .eyebrow{font-size:9px;letter-spacing:.8px}}
@media(max-width:359px){.stats-summary .stats-summary-main{grid-template-columns:1fr 88px;padding:16px}.stats-ring strong{font-size:19px}.stats-hero-copy .stats-number{font-size:26px}}
@media(prefers-reduced-motion:reduce){.stats-summary[data-stats-enter] .stats-summary-main,.stats-summary[data-stats-enter] .stats-ring{animation:none}.stats-studio .stats-destination{transition:none}.stats-destination:hover{transform:none}}
