:root{--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-secondary:#0f766e;--color-secondary-hover:#0d5c56;--color-tertiary:#dbeafe;--color-background:#f7f9fb;--color-surface:#fff;--color-surface-dim:#d8dadc;--color-surface-container:#eceef0;--color-surface-container-low:#f2f4f6;--color-surface-container-lowest:#fff;--color-surface-container-high:#e6e8ea;--color-surface-container-highest:#e0e3e5;--color-border:#e2e8f0;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-on-primary:#fff;--color-success:#16a34a;--color-success-bg:#16a34a1a;--color-error:#dc2626;--color-error-bg:#dc26261a;--color-warning:#f59e0b;--color-warning-bg:#f59e0b1a;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--spacing-xxxl:64px;--radius-sm:4px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0px 4px 12px #0f172a0d;--shadow-md:0px 8px 24px #0f172a1a;--transition-fast:.2s ease-in-out;--transition-normal:.3s ease-in-out}.dark-theme{--color-background:#0f172a;--color-surface:#1e293b;--color-surface-dim:#0f172a;--color-surface-container:#334155;--color-surface-container-low:#1e293b;--color-surface-container-lowest:#0f172a;--color-surface-container-high:#475569;--color-surface-container-highest:#64748b;--color-border:#334155;--color-text-primary:#f8fafc;--color-text-secondary:#94a3b8;--color-primary:#60a5fa;--color-primary-hover:#93c5fd;--color-secondary:#8b5cf6;--color-secondary-hover:#a78bfa;--color-tertiary:#60a5fa26}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0;padding:0}ul[role=list],ol[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}a:not([class]){-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background-color:var(--color-background);color:var(--color-text-primary);transition:background-color var(--transition-fast), color var(--transition-fast);font-family:Inter,system-ui,-apple-system,sans-serif}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-surface-dim);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.card-elevation{box-shadow:var(--shadow-sm);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast)}.card-elevation:hover{box-shadow:var(--shadow-md)}.glass-effect{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffc;border:1px solid #fff6}.dark-theme .glass-effect{background:#1e293bcc;border:1px solid #ffffff1a}.app-container{width:100%;min-height:100vh;display:flex}.main-content{background-color:var(--color-background);flex:1;padding:32px;overflow-x:hidden}@media (width<=768px){.sidebar-container{display:none!important}.mobile-nav,.mobile-nav button[aria-label=Add\ Expense]{display:flex!important}.main-content{padding:16px 16px 80px}}.table-row-hover:hover{background-color:var(--color-tertiary)!important}button{transition:all var(--transition-fast)}button:active{transform:scale(.98)}input,select,textarea{color:var(--color-text-primary);background-color:var(--color-surface-container);border:1px solid var(--color-border);transition:border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast)}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 2px var(--color-tertiary);border-color:var(--color-primary)!important}input::placeholder,textarea::placeholder{color:var(--color-text-secondary);opacity:.7}select option{background-color:var(--color-surface);color:var(--color-text-primary)}.dark-theme input,.dark-theme select,.dark-theme textarea{color:var(--color-text-primary)!important;background-color:var(--color-surface-container)!important;border-color:var(--color-border)!important}.dark-theme select option{background-color:var(--color-surface)!important;color:var(--color-text-primary)!important}
