/* Shared interface scale; loaded after feature styles. */
:root{--ui-space:20px;--ui-border:#e5e6ef;--ui-radius:20px;--muted:#73758e;--ui-surface:#fff;--ui-tint:#f5f5fa}
body{font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:inherit}button{line-height:1.4}button,a,input,textarea,select{touch-action:manipulation}
[hidden]{display:none!important}
.content{padding:28px 30px 44px}.page-heading{display:flex;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:24px}.page-heading h1{font-size:clamp(24px,2.3vw,30px);line-height:1.25;letter-spacing:-.7px;font-weight:750;margin:0 0 8px}.page-heading p{font-size:14px;line-height:1.65;max-width:70ch;margin:0}.eyebrow,.record-kicker{font-size:10px;line-height:1.5;letter-spacing:1.4px;font-weight:700}
h2,.panel-heading h2,.home-section-heading h2{font-size:18px;line-height:1.4;letter-spacing:-.3px}h3{font-size:16px;line-height:1.4}.panel p.muted{font-size:13px;line-height:1.75;max-width:76ch}.muted,.tiny,.inline-note{color:var(--muted)}.inline-note,.tiny{font-size:12px;line-height:1.65}.panel,.metric-card,.record-card{border-radius:var(--ui-radius);box-shadow:0 3px 16px rgba(51,52,88,.035)}.panel-pad,.chart-panel,.budget-panel,.table-panel{padding:22px}.panel-heading{gap:12px;margin-bottom:18px}.panel-heading h2{margin:0}.spaced{margin-top:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;font-size:13px;font-weight:650;border-radius:12px;white-space:normal;text-align:center}.btn-primary{background:#56518d;box-shadow:none}.btn-primary:hover{background:#494578}.btn-light{background:#f0f0f8;color:#53517d}.btn-outline{border:1px solid var(--ui-border)}.text-button{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;line-height:1.5}.ui-button-icon{width:16px;height:16px;flex:0 0 16px;stroke-width:1.7}.icon-button{min-width:42px;min-height:42px;border-radius:12px}.btn:focus-visible,.text-button:focus-visible,summary:focus-visible{outline:3px solid #8ca8d6;outline-offset:3px}
.form-field{gap:7px;margin:18px 0}.form-field label,.transaction-filter-field label{font-size:13px;line-height:1.4;font-weight:650}.form-field :is(input,select,textarea),.transaction-filter-field :is(input,select){font-size:14px;min-height:44px;padding:11px 13px;border:1px solid var(--ui-border);border-radius:12px;box-sizing:border-box}.form-field input[type=checkbox]{min-height:20px}.form-row{gap:18px}.custom-select-trigger{min-height:44px;border-radius:12px;padding:10px 13px;font-size:14px}.custom-select-option{min-height:42px;font-size:14px}.custom-select-menu{border-radius:14px;padding:6px;box-shadow:0 12px 35px #25243c24}.modal{width:min(600px,calc(100% - 32px));border-radius:24px;max-height:calc(100dvh - 32px)}.modal-inner{padding:28px}.modal-header{gap:18px;margin-bottom:24px}.modal-header h2{font-size:23px;letter-spacing:-.5px;line-height:1.3}.modal-header p{font-size:13px;line-height:1.7;margin-top:9px}.modal-close{width:38px;height:38px;flex:0 0 38px}.form-actions{padding-top:18px;margin-top:24px;gap:10px;border-top:1px solid var(--ui-border)}
.data-table{font-size:13px}.data-table th{font-size:10px;letter-spacing:.8px;font-weight:700;padding:13px 14px}.data-table td{font-size:13px;line-height:1.55;padding:15px 14px;vertical-align:middle}.tag,.status-chip,.status-pill{font-size:11px;padding:5px 9px;border-radius:8px}.transaction-wallet,.transaction-meta{font-size:11px;margin-top:4px}.metric-label{font-size:12px}.metric-value{font-size:clamp(22px,2.2vw,29px);letter-spacing:-.7px;line-height:1.3}.metric-grid{gap:16px}.record-grid{gap:18px}.record-amount{font-size:24px}.record-card{padding:22px}.record-bottom{flex-wrap:wrap;gap:10px}.record-icon,.feature-icon{width:38px;height:38px;border-radius:12px}.record-icon .icon{width:20px;height:20px}
.pots-overview h2{font-size:clamp(23px,2.5vw,31px)}.pots-grid{gap:16px}.pot-card{padding:20px;border-radius:18px;background:var(--ui-surface)}.pot-card h3{font-size:15px;margin:14px 0 8px}.pot-card>strong{font-size:25px;letter-spacing:-.5px}.pot-card p{font-size:12px}.pots-actions{gap:10px}.pots-heading{flex-wrap:wrap}.plan-row{padding:18px;border-color:var(--ui-border)}details.panel>summary{font-size:14px;cursor:pointer;font-weight:650;min-height:32px}details>summary{line-height:1.6}details[open]>summary{margin-bottom:14px}.finance-tabs{gap:8px;padding-bottom:4px}.finance-tabs .btn{min-height:40px;padding:9px 14px;font-size:13px}
.side-nav .nav-item{font-size:14px;min-height:46px}.subnav button{font-size:13px;min-height:44px}.nav-caption{font-size:10px}.profile-name,.breadcrumbs{font-size:13px}.date-chip{font-size:12px}.home-shortcut>span:last-child{font-size:13px}.home-greeting h1{font-size:clamp(27px,3.5vw,42px);line-height:1.25;letter-spacing:-1px}.home-greeting p{font-size:14px}.notification-setting{font-size:13px}.empty-state p{font-size:14px;line-height:1.7}.toast{font-size:13px;max-width:calc(100vw - 32px);text-align:center;border-radius:12px}
html[data-theme=dark]{--ui-surface:#25263b;--ui-tint:#303249;--ui-border:#45465d;--muted:#b8b6cf}html[data-theme=dark] :is(.main-column,.content){background:#1d1f30}html[data-theme=dark] :is(.metric-card,.record-card,.home-greeting,.home-panel,.date-chip,.plan-row){background:#292a40;color:#efedf9}html[data-theme=dark] :is(.page-heading p,.metric-label,.tiny,.inline-note,.breadcrumbs,.muted){color:#b8b6cf}html[data-theme=dark] .btn-light{background:#373850;color:#efedf9}html[data-theme=dark] .form-field :is(input,select,textarea){background:#303249;color:#efedf9;border-color:#55566e}html[data-theme=dark] .pot-card{background:#292a40}
@media(max-width:850px){.content{padding:22px 20px 105px}.panel-pad,.chart-panel,.budget-panel,.table-panel{padding:20px}.home-shortcut>span:last-child{font-size:12px}.btn,.text-button{min-height:44px}.home-greeting h1{font-size:30px}.side-nav .nav-item{min-height:46px}.subnav button{min-height:44px}}
@media(max-width:580px){.content{padding:18px 16px 105px}.panel-pad,.chart-panel,.budget-panel,.table-panel,.record-card{padding:18px}.page-heading h1{font-size:25px}.page-heading p{font-size:13px}.page-heading>.btn{width:100%}.modal{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:22px}.modal-inner{padding:22px 18px}.modal-header h2{font-size:21px}.form-field :is(input,select,textarea),.custom-select-trigger{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}.form-actions .btn{flex:1}.pots-actions .btn{width:auto;flex:1 1 135px}.pots-actions>.text-button{width:100%}.pot-card>strong{font-size:24px}.metric-value{font-size:24px}.metric-grid{gap:12px}.data-table td{padding:13px 12px}.finance-tabs{gap:6px}.finance-tabs .btn{flex:1}.modal .spending-option{font-size:14px}.home-greeting h1{font-size:28px}.calendar-head h2{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{min-width:0}.metric-value{overflow-wrap:anywhere}.ui-button-icon svg{width:100%;height:100%}.table-panel{min-width:0}.table-wrap{overflow-x:auto;max-width:100%}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.metric-grid{grid-template-columns:1fr}}

#financeSubnav button{display:flex;align-items:center;gap:10px}.ui-nav-icon{display:inline-flex;flex:0 0 16px;width:16px;height:16px;opacity:.75}.ui-nav-icon svg{width:16px;height:16px}

.tracker-list{display:grid;gap:16px}.tracker-card{padding:20px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);min-width:0}.tracker-title{display:flex;gap:12px;align-items:center}.tracker-title h3{margin:0;font-size:16px}.tracker-title p{margin:4px 0 0;font-size:12px}.tracker-bar{height:9px;background:var(--ui-tint);border-radius:20px;position:relative;margin:18px 0 12px}.tracker-bar>span{display:block;height:100%;border-radius:20px;background:#82acd8}.tracker-bar>i{position:absolute;top:-4px;width:3px;height:17px;background:#a3a4b0;border-radius:2px}.tracker-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px}.tracker-divider{border-top:1px dashed var(--ui-border);padding-top:16px;margin:16px 0}.tracker-total{font-size:26px}.tracker-card .pots-actions{margin-top:16px}.tracker-foot span{overflow-wrap:anywhere}@media(max-width:580px){.tracker-card{padding:16px}.tracker-total{font-size:23px}.tracker-foot{font-size:12px}.tracker-card .pots-actions{gap:12px}}
