@keyframes toastSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes toolResultIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes wizardFadeIn{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}:root{--exp-text-hero:clamp(32px,5vw,48px);--exp-text-display:clamp(24px,3.5vw,32px);--exp-text-heading:20px;--exp-text-subhead:18px;--exp-text-body:16px;--exp-text-small:14px;--exp-text-caption:12px;--exp-space-1:4px;--exp-space-2:8px;--exp-space-3:12px;--exp-space-4:16px;--exp-space-5:20px;--exp-space-6:24px;--exp-space-8:32px;--exp-space-10:40px;--exp-space-12:48px;--exp-space-16:64px;--exp-bg:#fff;--exp-surface:#f8fafc;--exp-surface-alt:#f1f5f9;--exp-border:#cbd5e1;--exp-border-hover:#cbd5e1;--exp-accent:#14b8a6;--exp-accent-light:#2dd4bf;--exp-accent-dark:#0d9488;--exp-accent-glow:rgba(20,184,166,.15);--exp-text:#0f172a;--exp-text-muted:#475569;--exp-text-dim:#64748b;--exp-danger:#f87171;--exp-danger-bg:hsla(0,91%,71%,.1);--exp-warning:#fbbf24;--exp-success:#34d399;--exp-shadow-sm:0 1px 2px rgba(0,0,0,.04);--exp-shadow-md:0 4px 8px rgba(0,0,0,.05);--exp-shadow-lg:0 8px 16px rgba(0,0,0,.06);--exp-shadow-glow:0 0 24px var(--exp-accent-glow);--exp-ease:cubic-bezier(0.22,1,0.36,1);--exp-transition-fast:120ms var(--exp-ease);--exp-transition-normal:200ms var(--exp-ease);--exp-radius-sm:8px;--exp-radius-md:12px;--exp-radius-lg:16px;--exp-radius-xl:20px;--exp-radius-full:8px}.expenseToolPage{background:var(--exp-bg);color:var(--exp-text);font-size:var(--exp-text-body);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}.layout__main.expenseTool{margin:0 auto;max-width:1200px;padding:0}.expenseToolMainContent{padding:var(--exp-space-6)}@media(max-width:767px){.expenseToolMainContent{padding:var(--exp-space-4)}}@keyframes heroFloat{0%,to{opacity:.3;transform:translate(0) scale(1)}50%{opacity:.4;transform:translate(10px,-10px) scale(1)}}.expenseTool__bookmarkHint{align-items:center;background:rgba(20,184,166,.12);border:1px solid rgba(20,184,166,.3);border-radius:var(--exp-radius-full);color:var(--exp-accent-light);cursor:pointer;display:inline-flex;font-size:var(--exp-text-small);font-weight:500;gap:var(--exp-space-2);margin-top:var(--exp-space-4);padding:var(--exp-space-2) var(--exp-space-4);transition:var(--exp-transition-normal);white-space:nowrap}.expenseTool__bookmarkHint:hover{background:rgba(20,184,166,.2);border-color:rgba(20,184,166,.5);box-shadow:0 4px 12px rgba(20,184,166,.2);transform:translateY(0)}.expenseTool__bookmarkHint:focus-visible{outline:2px solid var(--exp-accent-light);outline-offset:2px}.expenseTool__bookmarkHintIcon{align-items:center;animation:starPulse 2s infinite;color:#fbbf24;display:flex;height:18px;justify-content:center;width:18px}@keyframes starPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}.expenseTool__bookmarkHintText kbd{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;display:inline-block;font-family:inherit;font-size:var(--exp-text-caption);font-weight:600;margin:0 2px;padding:2px 6px}.expenseTool__sectionTitle{color:var(--exp-text);font-size:var(--exp-text-heading);font-weight:700;margin:0 0 var(--exp-space-5)}.expenseTool__summary{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__summaryGrid{display:grid;gap:var(--exp-space-4);grid-template-columns:repeat(4,1fr);margin-bottom:var(--exp-space-5)}@media(max-width:900px){.expenseTool__summaryGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.expenseTool__summaryGrid{grid-template-columns:1fr}}.expenseTool__summaryCard{align-items:flex-start;background:var(--exp-surface-alt);border:1px solid var(--exp-border);border-radius:var(--exp-radius-md);display:flex;gap:var(--exp-space-4);padding:var(--exp-space-4);transition:var(--exp-transition-fast)}.expenseTool__summaryCard:hover{border-color:var(--exp-border-hover)}.expenseTool__summaryIcon{align-items:center;border-radius:var(--exp-radius-sm);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.expenseTool__summaryIcon svg{height:22px;width:22px}.expenseTool__summaryCard_revenue .expenseTool__summaryIcon{background:rgba(34,197,94,.15);color:#22c55e}.expenseTool__summaryCard_expense .expenseTool__summaryIcon{background:rgba(239,68,68,.15);color:#ef4444}.expenseTool__summaryCard_profit .expenseTool__summaryIcon{background:rgba(20,184,166,.15);color:var(--exp-accent)}.expenseTool__summaryCard_margin .expenseTool__summaryIcon{background:rgba(99,102,241,.15);color:#6366f1}.expenseTool__summaryContent{display:flex;flex-direction:column;gap:var(--exp-space-1);min-width:0}.expenseTool__summaryLabel{color:var(--exp-text-dim);font-size:var(--exp-text-caption)}.expenseTool__summaryValue{color:var(--exp-text);font-size:var(--exp-text-subhead);font-variant-numeric:tabular-nums;font-weight:700}.expenseTool__summaryValue.expenseTool__summaryValue_positive{color:var(--exp-success)}.expenseTool__summaryValue.expenseTool__summaryValue_negative{color:var(--exp-danger)}.expenseTool__summaryHint{color:var(--exp-text-dim);font-size:10px}.expenseTool__revenueInput{border-top:1px solid var(--exp-border);padding-top:var(--exp-space-4)}.expenseTool__revenueLabel{color:var(--exp-text-muted);display:flex;flex-direction:column;font-size:var(--exp-text-small);font-weight:500;gap:var(--exp-space-2);margin-bottom:var(--exp-space-2)}.expenseTool__revenueHint{color:var(--exp-text-dim);font-size:var(--exp-text-caption);font-weight:400}.expenseTool__form{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__formGrid{display:grid;gap:var(--exp-space-4);grid-template-columns:repeat(3,1fr)}@media(max-width:900px){.expenseTool__formGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.expenseTool__formGrid{grid-template-columns:1fr}}.expenseTool__field{display:flex;flex-direction:column;gap:var(--exp-space-2)}.expenseTool__field.expenseTool__field_wide{grid-column:span 1}@media(min-width:901px){.expenseTool__field.expenseTool__field_wide{grid-column:span 3}}@media(max-width:900px)and (min-width:481px){.expenseTool__field.expenseTool__field_wide{grid-column:span 2}}.expenseTool__label{color:var(--exp-text-muted);font-size:var(--exp-text-small);font-weight:500}.expenseTool__required{background:rgba(251,191,36,.15);border:1px solid rgba(251,191,36,.3);border-radius:4px;color:var(--exp-warning);display:inline-block;font-size:10px;font-weight:600;letter-spacing:.04em;margin-left:var(--exp-space-2);padding:2px var(--exp-space-2);text-transform:uppercase}.expenseTool__input,.expenseTool__select{background:var(--exp-surface-alt);border:1px solid var(--exp-border);border-radius:var(--exp-radius-sm);color:var(--exp-text);font-size:var(--exp-text-body);min-height:48px;padding:var(--exp-space-3) var(--exp-space-4);transition:var(--exp-transition-fast);width:100%}.expenseTool__input::-moz-placeholder,.expenseTool__select::-moz-placeholder{color:var(--exp-text-dim)}.expenseTool__input::placeholder,.expenseTool__select::placeholder{color:var(--exp-text-dim)}.expenseTool__input:hover,.expenseTool__select:hover{border-color:var(--exp-border-hover)}.expenseTool__input:focus,.expenseTool__select:focus{border-color:var(--exp-accent);box-shadow:0 0 0 3px var(--exp-accent-glow);outline:none}@media(max-width:767px){.expenseTool__input,.expenseTool__select{font-size:16px}}.expenseTool__formActions{display:flex;gap:var(--exp-space-3);margin-top:var(--exp-space-5)}.expenseTool__submitBtn{align-items:center;background:var(--exp-accent);border:none;border-radius:var(--exp-radius-sm);color:var(--exp-bg);cursor:pointer;display:inline-flex;font-size:var(--exp-text-body);font-weight:600;gap:var(--exp-space-2);min-height:48px;padding:var(--exp-space-3) var(--exp-space-6);transition:var(--exp-transition-normal)}.expenseTool__submitBtn svg{flex-shrink:0}.expenseTool__submitBtn:hover{background:var(--exp-accent-light);box-shadow:var(--exp-shadow-md);transform:translateY(0)}.expenseTool__submitBtn:focus-visible{outline:2px solid #fff;outline-offset:2px}.expenseTool__cancelBtn{background:transparent;border:1px solid var(--exp-border);border-radius:var(--exp-radius-sm);color:var(--exp-text-muted);cursor:pointer;font-size:var(--exp-text-body);font-weight:500;min-height:48px;padding:var(--exp-space-3) var(--exp-space-6);transition:var(--exp-transition-fast)}.expenseTool__cancelBtn:hover{border-color:var(--exp-border-hover);color:var(--exp-text)}.expenseTool__cancelBtn:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}.expenseTool__list{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__listHeader{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--exp-space-4);justify-content:space-between;margin-bottom:var(--exp-space-4)}.expenseTool__listFilters{display:flex;flex-wrap:wrap;gap:var(--exp-space-3)}.expenseTool__filterGroup{align-items:center;display:flex;gap:var(--exp-space-2)}.expenseTool__filterLabel{color:var(--exp-text-dim);font-size:var(--exp-text-caption);white-space:nowrap}.expenseTool__filterSelect{background:var(--exp-surface-alt);border:1px solid var(--exp-border);border-radius:6px;color:var(--exp-text);font-size:var(--exp-text-small);min-height:36px;padding:var(--exp-space-2) var(--exp-space-3)}.expenseTool__filterSelect:focus{border-color:var(--exp-accent);outline:none}.expenseTool__listStats{align-items:center;background:var(--exp-surface-alt);border-radius:var(--exp-radius-sm);display:flex;gap:var(--exp-space-4);margin-bottom:var(--exp-space-4);padding:var(--exp-space-3) var(--exp-space-4)}.expenseTool__listStatsCount,.expenseTool__listStatsTotal{color:var(--exp-text-muted);font-size:var(--exp-text-small)}.expenseTool__listStatsTotal strong{color:var(--exp-accent);font-weight:700}.expenseTool__tableWrap{margin:0 calc(var(--exp-space-4)*-1);overflow-x:auto;padding:0 var(--exp-space-4);-webkit-overflow-scrolling:touch}.expenseTool__table{border-collapse:collapse;font-size:var(--exp-text-small);min-width:600px;width:100%}.expenseTool__table td,.expenseTool__table th{border-bottom:1px solid var(--exp-border);padding:var(--exp-space-3) var(--exp-space-3);text-align:left}.expenseTool__table th{color:var(--exp-text-muted);font-size:var(--exp-text-caption);font-weight:600;white-space:nowrap}.expenseTool__table thead{background:var(--exp-surface-alt)}.expenseTool__table tbody tr{transition:var(--exp-transition-fast)}.expenseTool__table tbody tr:hover{background:hsla(0,0%,100%,.02)}.expenseTool__colDate{width:10%}.expenseTool__colCategory{width:15%}.expenseTool__colAmount{text-align:right;width:15%}.expenseTool__colDescription{width:30%}.expenseTool__colReceipt{width:20%}.expenseTool__colActions{text-align:center;width:10%}.expenseTool__categoryBadge{background:color-mix(in srgb,var(--cat-color,var(--exp-accent)) 15%,transparent);border-radius:4px;color:var(--cat-color,var(--exp-accent));display:inline-block;font-size:var(--exp-text-caption);font-weight:500;padding:4px var(--exp-space-2);white-space:nowrap}.expenseTool__deleteBtn,.expenseTool__editBtn{align-items:center;background:transparent;border:1px solid var(--exp-border);border-radius:6px;color:var(--exp-text-muted);cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;transition:var(--exp-transition-fast);width:36px}.expenseTool__deleteBtn:hover,.expenseTool__editBtn:hover{border-color:var(--exp-border-hover);color:var(--exp-text)}.expenseTool__deleteBtn:focus-visible,.expenseTool__editBtn:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}.expenseTool__deleteBtn{border-color:hsla(0,91%,71%,.3);color:var(--exp-danger)}.expenseTool__deleteBtn:hover{background:var(--exp-danger-bg)}.expenseTool__noResults{color:var(--exp-text-dim);padding:var(--exp-space-8)!important;text-align:center}.expenseTool__emptyState{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--exp-space-12) var(--exp-space-6);text-align:center}.expenseTool__emptyStateIcon{color:var(--exp-accent);margin-bottom:var(--exp-space-4);opacity:.6}.expenseTool__emptyStateText{color:var(--exp-text);font-size:var(--exp-text-body);font-weight:500;margin:0 0 var(--exp-space-2)}.expenseTool__emptyStateHint{color:var(--exp-text-dim);font-size:var(--exp-text-small);margin:0}.expenseTool__chart{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__chartContainer{min-height:200px}.expenseTool__chartEmpty{align-items:center;color:var(--exp-text-dim);display:flex;font-size:var(--exp-text-small);justify-content:center;min-height:200px}.expenseTool__chartBars{align-items:flex-end;display:flex;gap:var(--exp-space-2);height:200px;justify-content:space-around;padding:0 var(--exp-space-4)}.expenseTool__chartBar{align-items:center;display:flex;flex:1;flex-direction:column;max-width:60px}.expenseTool__chartBarInner{background:var(--exp-accent);border-radius:var(--exp-radius-sm) var(--exp-radius-sm) 0 0;min-height:4px;position:relative;transition:var(--exp-transition-normal);width:100%}.expenseTool__chartBarInner:hover{background:var(--exp-accent-light)}.expenseTool__chartBarValue{background:var(--exp-surface-alt);border-radius:4px;bottom:100%;color:var(--exp-text);font-size:10px;font-weight:600;left:50%;margin-bottom:var(--exp-space-1);padding:var(--exp-space-1) var(--exp-space-2);position:absolute;transform:translateX(-50%);white-space:nowrap}.expenseTool__chartBarLabel{color:var(--exp-text-dim);font-size:var(--exp-text-caption);margin-top:var(--exp-space-2)}.expenseTool__chartLegend{border-top:1px solid var(--exp-border);display:flex;gap:var(--exp-space-6);justify-content:center;margin-top:var(--exp-space-4);padding-top:var(--exp-space-4)}.expenseTool__chartLegendItem{align-items:center;display:flex;gap:var(--exp-space-2)}.expenseTool__chartLegendColor{border-radius:3px;height:12px;width:12px}.expenseTool__chartLegendLabel{color:var(--exp-text-muted);font-size:var(--exp-text-caption)}.expenseTool__categories{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__categoryGrid{display:grid;gap:var(--exp-space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.expenseTool__categoryEmpty{color:var(--exp-text-dim);font-size:var(--exp-text-small);grid-column:1/-1;padding:var(--exp-space-8);text-align:center}.expenseTool__categoryCard{background:var(--exp-surface-alt);border:1px solid var(--exp-border);border-radius:var(--exp-radius-md);padding:var(--exp-space-4);transition:var(--exp-transition-fast)}.expenseTool__categoryCard:hover{border-color:var(--exp-border-hover)}.expenseTool__categoryHeader{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--exp-space-2)}.expenseTool__categoryName{color:var(--cat-color,var(--exp-accent));font-size:var(--exp-text-small);font-weight:500}.expenseTool__categoryPercent{color:var(--exp-text-dim);font-size:var(--exp-text-caption)}.expenseTool__categoryAmount{color:var(--exp-text);font-size:var(--exp-text-subhead);font-variant-numeric:tabular-nums;font-weight:700;margin-bottom:var(--exp-space-3)}.expenseTool__categoryBar{background:hsla(0,0%,100%,.1);border-radius:3px;height:6px;overflow:hidden}.expenseTool__categoryBarFill{border-radius:3px;height:100%;transition:width .5s var(--exp-ease)}.expenseTool__export{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-6)}.expenseTool__exportDesc{color:var(--exp-text-muted);font-size:var(--exp-text-small);margin:0 0 var(--exp-space-5)}.expenseTool__exportActions{display:flex;flex-wrap:wrap;gap:var(--exp-space-3)}.expenseTool__exportBtn{align-items:center;background:var(--exp-accent);border:none;border-radius:var(--exp-radius-sm);color:var(--exp-bg);cursor:pointer;display:inline-flex;font-size:var(--exp-text-small);font-weight:600;gap:var(--exp-space-2);min-height:44px;padding:var(--exp-space-3) var(--exp-space-5);transition:var(--exp-transition-normal)}.expenseTool__exportBtn svg{flex-shrink:0}.expenseTool__exportBtn:hover{background:var(--exp-accent-light);transform:translateY(0)}.expenseTool__exportBtn:focus-visible{outline:2px solid #fff;outline-offset:2px}.expenseTool__exportBtn.expenseTool__exportBtn_secondary{background:transparent;border:1px solid var(--exp-accent);color:var(--exp-accent)}.expenseTool__exportBtn.expenseTool__exportBtn_secondary:hover{background:rgba(20,184,166,.1)}.expenseTool__exportBtn.expenseTool__exportBtn_danger{background:transparent;border:1px solid hsla(0,91%,71%,.3);color:var(--exp-danger)}.expenseTool__exportBtn.expenseTool__exportBtn_danger:hover{background:var(--exp-danger-bg)}.expenseTool__exportBtn.expenseTool__exportBtn_danger:focus-visible{outline-color:var(--exp-danger)}.expenseTool__faq{background:var(--exp-surface);border-radius:var(--exp-radius-lg);margin-bottom:var(--exp-space-6);padding:var(--exp-space-12) var(--exp-space-6)}.expenseTool__faqInner{margin:0 auto;max-width:800px}.expenseTool__faqTitle{font-size:var(--exp-text-heading);font-weight:700;letter-spacing:-.01em;margin:0 0 var(--exp-space-8);text-align:center}.expenseTool__faqList{display:flex;flex-direction:column;gap:var(--exp-space-4)}.expenseTool__faqItem{background:var(--exp-surface-alt);border:1px solid var(--exp-border);border-radius:var(--exp-radius-md);padding:var(--exp-space-5);transition:var(--exp-transition-fast)}.expenseTool__faqItem:hover{border-color:var(--exp-border-hover)}.expenseTool__faqQ{color:var(--exp-text);font-size:var(--exp-text-body);font-weight:600;margin:0 0 var(--exp-space-3)}.expenseTool__faqA{color:var(--exp-text-muted);font-size:var(--exp-text-small);line-height:1.7;margin:0}.expenseTool__related{background:var(--exp-surface-alt);border-radius:var(--exp-radius-lg);padding:var(--exp-space-12) var(--exp-space-6)}.expenseTool__relatedInner{margin:0 auto;max-width:1000px}.expenseTool__relatedTitle{font-size:var(--exp-text-heading);font-weight:700;letter-spacing:-.01em;margin:0 0 var(--exp-space-2);text-align:center}.expenseTool__relatedDesc{color:var(--exp-text-muted);font-size:var(--exp-text-small);margin:0 0 var(--exp-space-8);text-align:center}.expenseTool__relatedGrid{display:grid;gap:var(--exp-space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.expenseTool__relatedCard{background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-md);color:inherit;display:flex;flex-direction:column;padding:var(--exp-space-5);text-decoration:none;transition:var(--exp-transition-fast)}.expenseTool__relatedCard:hover{border-color:var(--exp-border-hover);box-shadow:var(--exp-shadow-md);transform:translateY(0)}.expenseTool__relatedCard:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}.expenseTool__relatedCard.expenseTool__relatedCard_featured{background:linear-gradient(135deg,rgba(20,184,166,.05),transparent);border-color:rgba(20,184,166,.3)}.expenseTool__relatedCard.expenseTool__relatedCard_featured:hover{border-color:var(--exp-accent);box-shadow:0 8px 24px rgba(20,184,166,.15)}.expenseTool__relatedCardIcon{font-size:1.75rem;margin-bottom:var(--exp-space-3)}.expenseTool__relatedCardTitle{font-size:var(--exp-text-body);font-weight:600;margin:0 0 var(--exp-space-2)}.expenseTool__relatedCardDesc{color:var(--exp-text-muted);font-size:var(--exp-text-caption);line-height:1.5;margin:0}.expenseTool__toast{background:var(--exp-surface-alt);border:1px solid var(--exp-accent);border-radius:var(--exp-radius-sm);bottom:var(--exp-space-6);box-shadow:var(--exp-shadow-lg);color:var(--exp-text);font-size:var(--exp-text-small);left:50%;opacity:0;padding:var(--exp-space-3) var(--exp-space-6);position:fixed;transform:translateX(-50%) translateY(100px);transition:var(--exp-transition-normal);visibility:hidden;z-index:1000}.expenseTool__toast.expenseTool__toast_visible{opacity:1;transform:translateX(-50%) translateY(0);visibility:visible}.expenseTool__toast.expenseTool__toast_error{border-color:var(--exp-danger)}.expenseTool__toast.expenseTool__toast_warning{border-color:var(--exp-warning)}.expenseTool__toast.expenseTool__toast_success{border-color:var(--exp-success)}.expenseModal{align-items:center;display:flex;inset:0;justify-content:center;padding:var(--exp-space-5);position:fixed;z-index:1000}.expenseModal[hidden]{display:none}.expenseModal__backdrop{backdrop-filter:blur(4px);background:rgba(0,0,0,.7);inset:0;position:absolute}.expenseModal__content{animation:modalIn .2s var(--exp-ease);background:var(--exp-surface);border:1px solid var(--exp-border);border-radius:var(--exp-radius-lg);box-shadow:var(--exp-shadow-lg);max-width:400px;overflow:hidden;position:relative;width:100%}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.expenseModal__header{align-items:center;border-bottom:1px solid var(--exp-border);display:flex;justify-content:space-between;padding:var(--exp-space-4) var(--exp-space-5)}.expenseModal__title{color:var(--exp-text);font-size:var(--exp-text-body);font-weight:600;margin:0}.expenseModal__close{align-items:center;background:transparent;border:none;border-radius:var(--exp-radius-sm);color:var(--exp-text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;padding:0;transition:var(--exp-transition-fast);width:36px}.expenseModal__close:hover{background:hsla(0,0%,100%,.06);color:var(--exp-text)}.expenseModal__close:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}.expenseModal__body{padding:var(--exp-space-5)}.expenseModal__text{color:var(--exp-text);font-size:var(--exp-text-body);margin:0 0 var(--exp-space-3)}.expenseModal__detail{background:var(--exp-surface-alt);color:var(--exp-text-muted)}.expenseModal__detail,.expenseModal__warning{border-radius:var(--exp-radius-sm);font-size:var(--exp-text-small);margin:0;padding:var(--exp-space-3)}.expenseModal__warning{background:var(--exp-danger-bg);color:var(--exp-danger)}.expenseModal__actions{border-top:1px solid var(--exp-border);display:flex;gap:var(--exp-space-3);justify-content:flex-end;padding:var(--exp-space-4) var(--exp-space-5)}.expenseModal__btn{border-radius:var(--exp-radius-sm);cursor:pointer;font-size:var(--exp-text-small);font-weight:600;min-height:44px;padding:var(--exp-space-3) var(--exp-space-5);transition:var(--exp-transition-fast)}.expenseModal__btn.expenseModal__btn_cancel{background:transparent;border:1px solid var(--exp-border);color:var(--exp-text-muted)}.expenseModal__btn.expenseModal__btn_cancel:hover{border-color:var(--exp-border-hover);color:var(--exp-text)}.expenseModal__btn.expenseModal__btn_danger{background:var(--exp-danger);border:none;color:#fff}.expenseModal__btn.expenseModal__btn_danger:hover{background:#f87171}.expenseModal__btn:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}.expenseCrossSell{animation:crossSellIn .3s var(--exp-ease);bottom:100px;position:fixed;right:var(--exp-space-6);z-index:150}.expenseCrossSell[hidden]{display:none}@media(max-width:767px){.expenseCrossSell{bottom:120px;left:var(--exp-space-4);right:var(--exp-space-4)}}.expenseCrossSell__content{align-items:center;backdrop-filter:blur(8px);background:linear-gradient(135deg,rgba(99,102,241,.12),rgba(79,70,229,.08));border:1px solid rgba(99,102,241,.3);border-radius:var(--exp-radius-md);box-shadow:var(--exp-shadow-lg),0 0 24px rgba(99,102,241,.15);display:flex;gap:var(--exp-space-3);padding:var(--exp-space-4) var(--exp-space-5)}.expenseCrossSell__icon{flex-shrink:0;font-size:18px}.expenseCrossSell__text{color:var(--exp-text);font-size:var(--exp-text-small);font-weight:500}@media(max-width:480px){.expenseCrossSell__text{font-size:var(--exp-text-caption)}}.expenseCrossSell__link{align-items:center;background:linear-gradient(135deg,#818cf8,#6366f1);border-radius:var(--exp-radius-sm);color:#fff;display:inline-flex;font-size:var(--exp-text-small);font-weight:600;min-height:44px;padding:var(--exp-space-3) var(--exp-space-5);text-decoration:none;transition:var(--exp-transition-normal);white-space:nowrap}.expenseCrossSell__link:hover{box-shadow:0 6px 20px rgba(99,102,241,.3);transform:translateY(0)}.expenseCrossSell__link:focus-visible{outline:2px solid #fff;outline-offset:2px}.expenseCrossSell__close{align-items:center;background:transparent;border:none;border-radius:var(--exp-radius-sm);color:var(--exp-text-dim);cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;min-width:36px;transition:var(--exp-transition-fast);width:36px}.expenseCrossSell__close:hover{background:hsla(0,0%,100%,.1);color:var(--exp-text)}.expenseCrossSell__close:focus-visible{outline:2px solid var(--exp-accent);outline-offset:2px}@keyframes crossSellIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.adsSlot,.premiumAdSlot{margin-bottom:var(--exp-space-6)}.adsSlot{background:var(--exp-surface-alt);border:1px dashed var(--exp-border);border-radius:var(--exp-radius-sm);padding:var(--exp-space-4);text-align:center}.adsSlot__label{color:var(--exp-text-dim);font-size:10px;letter-spacing:.08em;margin:0 0 var(--exp-space-1);text-transform:uppercase}.adsSlot__placeholder{color:var(--exp-text-dim);font-size:var(--exp-text-caption);margin:0}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:768px){.expenseToolMainContent,.expenseTool__categories,.expenseTool__chart,.expenseTool__export,.expenseTool__form,.expenseTool__list,.expenseTool__summary{padding:var(--exp-space-4)}.expenseTool__listHeader{align-items:stretch;flex-direction:column}.expenseTool__listFilters{flex-wrap:wrap}.expenseTool__filterGroup{flex:1 1 auto}.expenseTool__filterSelect{flex:1}.expenseTool__tableWrap{margin:0 calc(var(--exp-space-4)*-1);padding:0 var(--exp-space-4)}.expenseTool__formActions{flex-direction:column}.expenseTool__cancelBtn,.expenseTool__submitBtn{justify-content:center;width:100%}.expenseTool__exportActions{flex-direction:column}.expenseTool__exportBtn{justify-content:center;width:100%}.expenseTool__faq,.expenseTool__related{padding:var(--exp-space-8) var(--exp-space-4)}.expenseTool__relatedGrid{grid-template-columns:repeat(2,1fr)}.expenseCrossSell{left:var(--exp-space-4);right:var(--exp-space-4)}.expenseCrossSell__content{flex-wrap:wrap;gap:var(--exp-space-2)}.expenseCrossSell__text{flex:1 1 100%;text-align:center}.expenseCrossSell__link{flex:1;justify-content:center}}@media(max-width:480px){:root{--exp-text-hero:clamp(1.25rem,6vw,1.75rem);--exp-text-display:clamp(1rem,5vw,1.5rem)}.expenseToolMainContent{padding:var(--exp-space-3)}.expenseTool__bookmarkHint{font-size:var(--exp-text-caption);padding:var(--exp-space-2) var(--exp-space-3)}.expenseTool__categories,.expenseTool__chart,.expenseTool__export,.expenseTool__form,.expenseTool__list,.expenseTool__summary{border-radius:var(--exp-radius-md);padding:var(--exp-space-3)}.expenseTool__summaryGrid{grid-template-columns:1fr}.expenseTool__summaryCard{padding:var(--exp-space-3)}.expenseTool__summaryIcon{height:36px;width:36px}.expenseTool__summaryIcon svg{height:18px;width:18px}.expenseTool__summaryValue{font-size:var(--exp-text-body)}.expenseTool__formGrid{gap:var(--exp-space-3)}.expenseTool__input,.expenseTool__select{padding:var(--exp-space-3)}.expenseTool__categoryGrid{grid-template-columns:1fr}.expenseTool__faq{border-radius:var(--exp-radius-md);padding:var(--exp-space-6) var(--exp-space-3)}.expenseTool__faqTitle{font-size:var(--exp-text-subhead);margin-bottom:var(--exp-space-5)}.expenseTool__faqItem{padding:var(--exp-space-4)}.expenseTool__faqQ{font-size:var(--exp-text-small)}.expenseTool__faqA{font-size:var(--exp-text-caption)}.expenseTool__related{border-radius:var(--exp-radius-md);padding:var(--exp-space-6) var(--exp-space-3)}.expenseTool__relatedTitle{font-size:var(--exp-text-subhead)}.expenseTool__relatedGrid{grid-template-columns:1fr}.expenseTool__relatedCard{padding:var(--exp-space-4)}.expenseTool__relatedCardTitle{font-size:var(--exp-text-small)}.expenseTool__toast{left:var(--exp-space-3);right:var(--exp-space-3);text-align:center;transform:translateY(100px)}.expenseTool__toast.expenseTool__toast_visible{transform:translateY(0)}.expenseModal{padding:0}.expenseModal__content{border-radius:0;max-height:100%;max-width:100%}.expenseCrossSell{bottom:80px;left:var(--exp-space-3);right:var(--exp-space-3)}.expenseCrossSell__content{padding:var(--exp-space-3)}.expenseCrossSell__text{font-size:var(--exp-text-caption)}.expenseCrossSell__link{flex:0 0 100%;justify-content:center;width:100%}}