@import url(https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap);:root{color-scheme:light}body{font-family:"Manrope","Segoe UI",sans-serif;background:#f3f7fb;color:#101828}#root{min-height:100vh}button,input,select{font:inherit}:root{--bg:#f4f5fb;--surface:#fff;--surface-soft:#f7f6fb;--sidebar-bg:#1e1b36;--primary:#7665e8;--accent:#e8a7c7;--success:#36a879;--warning:#f3ae3f;--danger:#d85a67;--text:#222038;--muted:#6f7182;--border:#e8e4ef;--radius:22px;--shadow:0 24px 70px rgba(37,35,51,0.08)}body[data-theme=dark]{--bg:#101124;--surface:#161a34;--surface-soft:#1f2248;--sidebar-bg:#11122b;--text:#eef1ff;--muted:#9ca2cc;--border:hsla(0,0%,100%,0.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(118,101,232,.12),transparent 24%),var(--bg);color:var(--text);font-family:"Manrope",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;transition:background .18s ease,color .18s ease}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr;grid-gap:24px;gap:24px;padding:24px}.app-main{grid-gap:20px;gap:20px}.app-main,.sidebar{display:flex;flex-direction:column}.sidebar{position:sticky;top:24px;height:calc(100vh - 48px);padding:28px;grid-gap:28px;gap:28px;border-radius:28px;background:linear-gradient(180deg,var(--sidebar-bg),rgba(30,27,54,.95));color:#fff;box-shadow:0 32px 85px rgba(16,16,36,.18)}.sidebar-brand{display:flex;grid-gap:16px;gap:16px;align-items:center}.brand-mark{width:46px;height:46px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-weight:800}.brand-title{margin:0;font-size:1rem;font-weight:700}.brand-subtitle{margin:6px 0 0;font-size:.94rem;color:hsla(0,0%,100%,.8);max-width:180px}.sidebar-nav{display:grid;grid-gap:10px;gap:10px}.nav-btn{width:100%;display:flex;align-items:center;grid-gap:12px;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid transparent;background:hsla(0,0%,100%,.05);color:hsla(0,0%,100%,.92);font-weight:600;cursor:pointer;transition:background .18s ease,border-color .18s ease}.nav-btn:focus-visible,.nav-btn:hover{background:hsla(0,0%,100%,.12);outline:none}.nav-btn.active{background:rgba(118,101,232,.2);border-color:hsla(0,0%,100%,.16)}.nav-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center}.sidebar-note{margin-top:auto;line-height:1.8;font-size:.94rem;color:hsla(0,0%,100%,.78)}.top-header{display:flex;align-items:center;justify-content:space-between;grid-gap:20px;gap:20px;padding:28px;border-radius:28px;background:hsla(0,0%,100%,.9);border:1px solid rgba(118,101,232,.16);box-shadow:var(--shadow)}.header-left{display:flex;flex-direction:column;grid-gap:8px;gap:8px}.header-title-group h1{margin:0;font-size:1.9rem}.header-subtitle{margin:0;color:var(--muted);font-size:.96rem}.header-actions{display:flex;align-items:center;grid-gap:12px;gap:12px;flex-wrap:wrap}.header-select{display:grid;grid-gap:6px;gap:6px;font-size:.9rem;color:var(--muted)}.header-select select{min-width:150px;border:1px solid rgba(118,101,232,.16);border-radius:16px;background:#fff;padding:12px 14px;color:var(--text)}.btn,.theme-toggle{min-height:46px;border-radius:16px;border:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.theme-toggle{padding:0 16px;background:rgba(118,101,232,.08);color:var(--text);border:1px solid rgba(118,101,232,.2)}.theme-toggle:hover{background:rgba(118,101,232,.14)}.btn{padding:0 22px;font-weight:700}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;box-shadow:0 18px 34px rgba(118,101,232,.16)}.btn-ghost{background:#fff;color:var(--text);border:1px solid rgba(118,101,232,.16)}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px}.stat-card{background:var(--surface);border-radius:28px;border:1px solid rgba(118,101,232,.08);padding:24px;box-shadow:0 18px 32px rgba(118,101,232,.08);display:flex;flex-direction:column;grid-gap:18px;gap:18px}.stat-card.emphasized{background:linear-gradient(180deg,rgba(118,101,232,.08),rgba(232,167,199,.08))}.stat-card-head{display:flex;align-items:baseline;justify-content:space-between;grid-gap:14px;gap:14px}.summary-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.summary-value{margin-top:6px;font-size:1.6rem;font-weight:700;color:var(--text)}.summary-accent{display:block;color:var(--primary);font-size:.92rem;font-weight:600;margin-top:6px}.chart-grid{display:grid;grid-template-columns:1.8fr 1.2fr;grid-gap:18px;gap:18px}.chart-panel{padding:20px}.pie-panel{display:flex}.panel{background:var(--surface);border:1px solid rgba(232,228,237,.95);border-radius:28px;box-shadow:var(--shadow);padding:22px}.panel-header{display:flex;justify-content:space-between;grid-gap:16px;gap:16px;align-items:flex-start;margin-bottom:18px}.panel-header h3{margin:0;font-size:1rem}.panel-header p{margin:8px 0 0;color:var(--muted);font-size:.95rem;line-height:1.6}.budget-panel{padding:24px}.budget-summary{display:grid;grid-gap:20px;gap:20px}.budget-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.progress-track{width:100%;height:12px;background:rgba(118,101,232,.08);border-radius:999px;overflow:hidden}.progress-fill{display:block;height:100%;transition:width .4s ease}.progress-fill.safe{background:var(--success)}.progress-fill.caution{background:var(--warning)}.progress-fill.warning{background:var(--danger)}.budget-caption{margin:0;color:var(--muted);font-size:.95rem}.transaction-toolbar{display:flex;flex-wrap:wrap;grid-gap:16px;gap:16px;align-items:center;justify-content:space-between}.toolbar-filters{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));grid-gap:14px;gap:14px;flex:1 1}.toolbar-field{display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-size:.88rem}.toolbar-field input,.toolbar-field select{min-width:0;border:1px solid rgba(232,228,237,.95);border-radius:16px;background:var(--surface);padding:12px 14px;color:var(--text)}.toolbar-date-range{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:10px;gap:10px;align-items:center}.toolbar-date-range span{color:var(--muted);justify-self:center}.toolbar-actions{display:flex;grid-gap:12px;gap:12px;align-items:center}.table-wrap{overflow:auto}.expense-table{width:100%;border-collapse:collapse;min-width:700px}.expense-table td,.expense-table th{padding:16px 14px;border-bottom:1px solid rgba(232,228,237,.95);text-align:left}.expense-table th{font-size:.79rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.expense-table td{color:var(--text)}.expense-table tbody tr:hover td{background:rgba(118,101,232,.04)}.category-badge{display:inline-flex;align-items:center;grid-gap:8px;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(118,101,232,.1);color:var(--primary);font-weight:700;font-size:.85rem}.currency{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.row-actions{display:flex;grid-gap:10px;gap:10px;justify-content:flex-end}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid transparent;background:rgba(118,101,232,.08);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease,background .18s ease}.icon-btn:hover{background:rgba(118,101,232,.16);transform:translateY(-1px)}.icon-btn.danger{background:rgba(216,90,103,.14);color:var(--danger)}.insight-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px}.insight-list li{background:var(--surface-soft);border:1px solid rgba(232,228,237,.95);border-radius:18px;padding:16px}.insight-list strong{display:block;margin-bottom:8px;font-size:.92rem}.insight-list p{margin:0;color:var(--text);line-height:1.6}.loading-state,.status-card{background:var(--surface);border:1px solid rgba(232,228,237,.95);border-radius:24px;box-shadow:var(--shadow);padding:24px}.loading-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.loading-card{min-height:140px;border-radius:22px;background:rgba(118,101,232,.05);padding:20px}.loading-skeleton{display:block;border-radius:999px;background:linear-gradient(90deg,hsla(0,0%,100%,.7),rgba(118,101,232,.16),hsla(0,0%,100%,.7));background-size:200% 100%;animation:shimmer 1.6s ease-in-out infinite}.skeleton-heading,.skeleton-line,.skeleton-paragraph,.skeleton-title{height:14px;width:100%}.skeleton-heading{width:60%;height:18px}.skeleton-line.short{width:60%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.65);display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.modal-shell{width:100%;max-width:580px}.modal-panel{padding:28px;border-radius:28px;background:var(--surface);border:1px solid rgba(232,228,237,.95);box-shadow:0 24px 70px rgba(37,35,51,.12)}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.modal-content p{color:var(--text);line-height:1.75}.delete-preview{margin-top:18px;padding:18px;border-radius:20px;background:rgba(118,101,232,.08);border:1px solid rgba(118,101,232,.12)}.modal-actions{display:flex;justify-content:flex-end;grid-gap:14px;gap:14px;margin-top:24px}.app-footer{font-size:.92rem;color:var(--muted);text-align:center;padding:12px 0 8px}@media (max-width:1080px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.top-header{flex-direction:column;align-items:stretch}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid,.toolbar-filters{grid-template-columns:1fr}.expense-table{min-width:unset}}@media (max-width:720px){.app-shell{padding:16px}.summary-grid{grid-template-columns:1fr}.sidebar,.top-header{padding:20px}.chart-grid{grid-template-columns:1fr}.transaction-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions{justify-content:stretch}.expense-table thead{display:none}.expense-table tbody tr{display:block;margin-bottom:16px;background:var(--surface);border-radius:24px;box-shadow:0 18px 40px rgba(118,101,232,.08)}.expense-table td{display:flex;justify-content:space-between;grid-gap:10px;gap:10px;padding:16px;border-top:none}.expense-table td[data-label]:before{content:attr(data-label);display:block;font-size:.78rem;color:var(--muted);margin-bottom:6px}.expense-table td:last-child{justify-content:flex-end}}
/*# sourceMappingURL=main.14a5c4db.chunk.css.map */