:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--radius-card:1rem;--motion-fast:160ms;--motion-enter:360ms;--motion-chart:1000ms;--ease-out:cubic-bezier(.22,1,.36,1)}
.ds-stack{display:grid;gap:var(--space-6)}.ds-panel,.ds-metric{padding:var(--space-6);background:#fff;border:1px solid #dfe6eb;border-radius:var(--radius-card)}.ds-panel h2{margin:0 0 1rem}.ds-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.ds-metric>div{display:flex;justify-content:space-between;gap:1rem}.ds-metric strong{display:block;font:800 2rem Manrope,sans-serif;margin-top:1rem}.ds-metric p{margin-bottom:0;color:#526676}.ds-status{background:#e7f7f1;color:#087855;padding:.25rem .6rem;border-radius:1rem}.ds-form{display:grid;gap:.75rem;max-width:720px}.ds-form input,.ds-form textarea{font:inherit;border:1px solid #aabac5;border-radius:.5rem;padding:.75rem;background:#fff;width:100%}.ds-actions{display:flex;gap:1rem;flex-wrap:wrap}.ds-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;background:var(--brand-primary,#2579f5);border:1px solid transparent;border-radius:.6rem;color:#fff;text-decoration:none;font:600 1rem inherit;cursor:pointer}.ds-secondary{background:#fff;border-color:#adbdc7;color:var(--ink)}.ds-banner{background:#edf4ff;border-left:3px solid var(--brand-primary,#2579f5);padding:1rem;border-radius:.5rem}.ds-empty{border:1px dashed #b8c6d0;padding:2rem;text-align:center;border-radius:.75rem;color:#526676}.ds-progress{height:8px;border-radius:8px;background:#e8eef2;overflow:hidden}.ds-progress span{display:block;height:100%;width:var(--progress);background:var(--brand-accent,#38e8cb);transform-origin:left;animation:ds-grow var(--motion-chart) var(--ease-out)}.field-validation-error,.validation-summary-errors{color:#b42640}.brand-logo{width:160px;height:auto;object-fit:contain}.sidebar .brand img{filter:none;background:#fff;padding:6px;border-radius:6px}.template-note{font-size:.75rem;color:#526676;margin:1rem 0}.finance-app .brand{flex-direction:column;align-items:flex-start}
@keyframes ds-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.chart-area{opacity:1!important}.chart-line,.liq-line{stroke-dashoffset:0!important}.budget-donut .commit-ring{stroke-dashoffset:-166!important}}

.nav-item{text-decoration:none}.ledger-table>button[hidden]{display:none}.command-palette button{min-height:44px}.ds-panel{animation:viewIn var(--motion-enter) var(--ease-out)}
@keyframes ds-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ds-panel{animation:ds-enter var(--motion-enter) var(--ease-out)}
@media(prefers-reduced-motion:reduce){.ds-panel{animation:none!important}}
