.account-page-wrapper{display:flex;flex-direction:column;min-height:100%;margin:-16px -16px 0;padding-bottom:24px}.account-hero-header{position:relative;background:var(--bg-app);padding:16px 18px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.account-top-navbar{width:100%;display:flex;align-items:center;justify-content:space-between}.account-nav-btn{width:36px;height:36px;border-radius:50%;background:var(--accent-subtle);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-primary);text-decoration:none;cursor:pointer;transition:all .2s ease}.account-nav-btn:hover{background:var(--accent-subtle-hover);transform:scale(1.05)}.account-navbar-title{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.account-profile-summary{display:flex;flex-direction:column;align-items:center;gap:8px}.account-avatar-wrapper{position:relative;margin-bottom:4px}.account-avatar-circle{width:78px;height:78px;border-radius:50%;background:var(--bg-card);border:3px solid var(--border-medium);display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:var(--shadow-card);overflow:hidden;transition:transform .2s ease,border-color .2s ease}.account-avatar-circle:hover{transform:scale(1.03);border-color:var(--border-active)}.account-avatar-badge{position:absolute;bottom:0;right:0;width:24px;height:24px;border-radius:50%;background:var(--accent-gray-700);border:2px solid var(--bg-app);display:flex;align-items:center;justify-content:center;color:#ffffff;box-shadow:0 2px 5px rgba(0,0,0,.3)}.account-fullname{font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px;line-height:1.2}.account-email{font-size:12px;color:var(--text-muted);letter-spacing:.1px}.account-sheet-body{background:var(--bg-mobile);border-top-left-radius:28px;border-top-right-radius:28px;padding:20px 16px;display:flex;flex-direction:column;gap:14px;flex:1 1;box-shadow:0 -4px 20px rgba(0,0,0,.15);border-top:1px solid var(--border-subtle)}[data-theme=cloud] .account-sheet-body,[data-theme=light] .account-sheet-body{background:#ffffff}.account-card-group{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.account-menu-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;text-decoration:none;color:inherit;border-bottom:1px solid var(--border-subtle);transition:background-color .18s ease;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.account-menu-row:last-child{border-bottom:none}.account-menu-row:hover{background:var(--bg-card-hover)}.account-menu-row:active{background:var(--accent-subtle)}.account-menu-left{display:flex;align-items:center;gap:13px;flex:1 1;min-width:0}.account-icon-bubble{width:32px;height:32px;border-radius:10px;background:var(--accent-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-primary);flex-shrink:0;transition:transform .15s ease}.account-menu-row:hover .account-icon-bubble{transform:scale(1.06)}.account-menu-label{font-size:13.5px;font-weight:600;color:var(--text-primary);letter-spacing:-.1px}.account-menu-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s ease,color .15s ease}.account-menu-row:hover .account-menu-chevron{color:var(--text-primary);transform:translateX(2px)}.account-menu-row.danger{color:#ef4444}.account-menu-row.danger .account-icon-bubble{background:rgba(239,68,68,.1);color:#ef4444}.account-menu-row.danger .account-menu-label{color:#ef4444}.account-menu-row.danger .account-menu-chevron{color:rgba(239,68,68,.6)}.settings-container{display:flex;flex-direction:column;gap:18px;padding-bottom:28px}.settings-subpage-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:8px}.subpage-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:12px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s ease}.subpage-back-btn:hover{background:var(--bg-card-hover);border-color:var(--border-medium);transform:translateX(-2px)}.subpage-header-title{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.settings-section-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card);transition:background-color .25s ease,border-color .25s ease}.settings-section-header{display:flex;align-items:center;justify-content:space-between}.settings-section-title-wrap{display:flex;align-items:center;gap:10px}.settings-section-icon{width:32px;height:32px;border-radius:var(--radius-md);background:var(--accent-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.settings-section-title{font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.settings-section-desc{font-size:11px;color:var(--text-muted);margin-top:1px}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--border-subtle);gap:12px}.settings-row:last-child{border-bottom:none;padding-bottom:0}.settings-row-info{display:flex;flex-direction:column;gap:3px;flex:1 1}.settings-row-label{font-size:13px;font-weight:600;color:var(--text-primary)}.settings-row-sub{font-size:11px;color:var(--text-muted);line-height:1.35}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:480px){.form-grid-2{grid-template-columns:1fr}}.form-label{font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between}.form-input,.form-select{width:100%;padding:11px 14px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;outline:none;font-family:inherit;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.form-input:focus,.form-select:focus{border-color:var(--border-active);background:var(--bg-input-focus);box-shadow:0 0 0 2px var(--accent-subtle)}.form-input::placeholder{color:var(--text-muted)}.form-input-amount{font-family:var(--font-mono);font-size:14px;font-weight:600}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--accent-gray-700);border-radius:24px;border:1px solid var(--border-subtle)}.toggle-slider,.toggle-slider:before{position:absolute;transition:.25s cubic-bezier(.4,0,.2,1)}.toggle-slider:before{content:"";height:18px;width:18px;left:2px;bottom:2px;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.3)}.toggle-slider:before,.toggle-switch input:checked+.toggle-slider{background-color:var(--text-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px);background-color:var(--text-inverse)}.theme-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.theme-option-btn{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.theme-option-btn span{line-height:1.25;text-align:center}.theme-option-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.theme-option-btn.active{background:var(--island-tab-active-bg);color:var(--island-tab-active-color);border-color:var(--border-active);box-shadow:var(--shadow-white-sm)}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 18px;background:var(--text-primary);color:var(--text-inverse);border:1px solid var(--border-active);border-radius:var(--radius-md);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease}.btn-primary:hover{opacity:.92;transform:translateY(-1px)}.btn-primary.btn-saved{background:var(--accent-green-muted);color:#ffffff;border-color:var(--accent-green-muted)}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-medium)}.btn-danger{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;background:rgba(239,68,68,.1);color:#f87171;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-danger:hover{background:rgba(239,68,68,.18);border-color:rgba(239,68,68,.4)}.action-row-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}@media (max-width:480px){.action-row-buttons{grid-template-columns:1fr}}.profile-toast{position:fixed;bottom:84px;left:50%;transform:translateX(-50%);background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--radius-full);padding:10px 18px;display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:13px;font-weight:600;box-shadow:var(--shadow-elevated);z-index:100;animation:slideUpFade .25s ease-out}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.faq-accordion-item{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-input)}.faq-accordion-header{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13px;font-weight:600;color:var(--text-primary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.faq-accordion-body{font-size:12px;color:var(--text-secondary);line-height:1.5;border-top:1px solid var(--border-subtle);padding:10px 14px 12px}.app-meta-footer{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:16px 0 6px}.app-version-badge{font-size:11px;color:var(--text-muted);font-family:var(--font-mono)}.budget-month-nav-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:14px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-card)}.budget-month-nav-header{display:flex;align-items:center;justify-content:space-between}.budget-month-picker{display:flex;align-items:center;gap:8px}.budget-nav-arrow-btn{width:32px;height:32px;border-radius:50%;background:var(--bg-input);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.budget-nav-arrow-btn:hover{background:var(--bg-card-hover);border-color:var(--border-active);transform:scale(1.05)}.budget-nav-arrow-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.budget-current-month-label{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;min-width:140px;text-align:center}.budget-month-nav-actions{display:flex;align-items:center;gap:8px}.budget-today-btn{padding:5px 10px;border-radius:var(--radius-md);background:var(--accent-subtle);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:11px;font-weight:700;cursor:pointer;transition:all .2s ease}.budget-today-btn:hover{background:var(--accent-subtle-hover);border-color:var(--border-active)}.budget-status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:20px;font-size:11px;font-weight:600;align-self:flex-start}.budget-status-pill.custom{background:rgba(34,197,94,.12);color:#22c55e;border:1px solid rgba(34,197,94,.3)}.budget-status-pill.default{background:rgba(148,163,184,.12);color:var(--text-muted);border:1px solid var(--border-subtle)}.budget-copy-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(59,130,246,.08);border:1px dashed rgba(59,130,246,.35);border-radius:var(--radius-lg);padding:12px 14px}.budget-copy-info{display:flex;align-items:center;gap:10px;flex:1 1}.budget-copy-icon{width:28px;height:28px;border-radius:50%;background:rgba(59,130,246,.15);color:#3b82f6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.budget-copy-text-wrap{display:flex;flex-direction:column;gap:2px}.budget-copy-title{font-size:12px;font-weight:700;color:var(--text-primary)}.budget-copy-sub{font-size:11px;color:var(--text-muted);line-height:1.3}.budget-copy-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--radius-md);background:#3b82f6;color:#ffffff;border:none;font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .2s ease;flex-shrink:0}.budget-copy-btn:hover{background:#2563eb;transform:scale(1.02)}.budget-hero-card{display:flex;flex-direction:column;gap:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px;transition:border-color .2s ease}.budget-hero-card:focus-within{border-color:var(--border-active)}.budget-hero-input-row{display:flex;align-items:center;gap:10px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 14px;transition:border-color .2s ease,box-shadow .2s ease}.budget-hero-input-row:focus-within{border-color:var(--border-active);box-shadow:0 0 0 2px var(--accent-subtle)}.budget-currency-tag{font-size:16px;font-weight:700;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.budget-hero-input{flex:1 1;background:transparent;border:none;outline:none;font-size:24px;font-weight:800;font-family:var(--font-mono);color:var(--text-primary);letter-spacing:-.5px;width:100%}.budget-hero-dual-preview{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted)}.budget-hero-dual-preview span.val{color:var(--text-secondary)}.compact-allocation-card{display:flex;flex-direction:column;gap:10px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:14px}.compact-allocation-track{width:100%;height:8px;border-radius:9999px;background:var(--border-subtle);overflow:hidden;position:relative}.compact-allocation-fill{height:100%;border-radius:9999px;transition:width .3s cubic-bezier(.4,0,.2,1),background-color .3s ease}.compact-allocation-status-row{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:600}.compact-allocation-status-left{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.compact-allocation-status-right{font-family:var(--font-mono);font-weight:700}.smart-tools-minimal-row{display:flex;align-items:center;gap:8px;margin-top:4px}.smart-tool-minimal-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:11.5px;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.smart-tool-minimal-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-active)}.cat-budget-row,.category-budget-list{display:flex;flex-direction:column;gap:8px}.cat-budget-row{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 14px;transition:border-color .2s ease,background-color .2s ease}.cat-budget-row:focus-within,.cat-budget-row:hover{border-color:var(--border-active);background:var(--bg-card)}.cat-row-main{justify-content:space-between}.cat-row-info,.cat-row-main{display:flex;align-items:center;gap:10px}.cat-row-info{min-width:0;flex:1 1}.cat-row-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cat-row-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-row-inputs{display:flex;align-items:center;gap:8px;flex-shrink:0}.cat-row-amount-input{width:120px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-primary);font-family:var(--font-mono);font-size:13px;font-weight:700;text-align:right;outline:none;transition:border-color .2s ease}.cat-row-amount-input:focus{border-color:var(--border-active);box-shadow:0 0 0 2px var(--accent-subtle)}.cat-row-pct-pill{min-width:42px;text-align:center;font-size:11px;font-weight:700;font-family:var(--font-mono);padding:3px 6px;border-radius:8px;background:var(--accent-subtle);color:var(--text-primary);border:1px solid var(--border-subtle)}.cat-row-bar-track{width:100%;height:3px;border-radius:2px;background:var(--border-subtle);overflow:hidden}.cat-row-bar-fill{height:100%;border-radius:2px;transition:width .25s ease}.budget-warning-alert{display:flex;align-items:flex-start;gap:10px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:10px 12px;color:#ef4444;font-size:11.5px;line-height:1.4}.budget-warning-icon{flex-shrink:0;margin-top:1px}.schedule-container{display:flex;flex-direction:column;gap:14px;width:100%;padding-bottom:30px;animation:fadeIn .22s ease-out forwards}.schedule-top-bar{display:flex;justify-content:space-between;padding:4px 0 8px;width:100%;margin:0}.month-selector,.schedule-top-bar{align-items:center;box-sizing:border-box}.month-selector{display:inline-flex;gap:2px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:9999px;padding:3px 5px;height:36px;box-shadow:var(--shadow-card);transition:background-color .25s ease,border-color .25s ease}.month-title{font-size:13.5px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;padding:0 6px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .25s ease}.month-nav-btn{width:28px;height:28px;border-radius:50%;background:transparent;border:none;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease;cursor:pointer;padding:0}.month-nav-btn:hover{background:var(--accent-subtle);color:var(--text-primary)}.month-nav-btn:active{transform:scale(.92)}.floating-month-selector-wrap{position:-webkit-sticky;position:sticky;top:10px;z-index:45;height:0;margin-bottom:-14px;display:flex;justify-content:center;pointer-events:none}.floating-month-selector{pointer-events:auto;background:color-mix(in srgb,var(--bg-input) 88%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow-elevated);animation:floatingMonthSelectorIn .22s cubic-bezier(.16,1,.3,1)}@keyframes floatingMonthSelectorIn{0%{opacity:0;transform:translateY(-14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.schedule-actions{display:flex;align-items:center;gap:8px}.btn-today-pill{height:36px;font-size:12px;font-weight:700;padding:0 14px;border-radius:9999px;background:var(--island-tab-active-bg);color:var(--island-tab-active-color);border:none;box-shadow:var(--shadow-white-sm);display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);white-space:nowrap}.btn-today-pill:hover{opacity:.92;transform:translateY(-1px)}.btn-today-pill:active{transform:scale(.96)}.btn-add-event-circle{width:36px;height:36px;border-radius:50%;background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease;padding:0}.btn-add-event-circle:hover{background:var(--bg-card-hover);border-color:var(--border-medium);transform:scale(1.06)}.btn-add-event-circle:active{transform:scale(.94)}.timeline-scroll-container{flex-direction:column;margin:0}.timeline-day-card,.timeline-scroll-container{display:flex;gap:12px;width:100%;box-sizing:border-box}.timeline-day-card{position:relative;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:20px;padding:18px 16px 18px 14px;align-items:flex-start;min-height:120px;max-width:100%;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;cursor:pointer}.timeline-day-card:hover{background:var(--bg-card-hover);border-color:var(--border-medium)}.timeline-day-card.is-today{background:var(--bg-elevated);border:1px solid var(--border-active);box-shadow:var(--shadow-card)}[data-theme=cloud] .timeline-day-card{border:1px solid rgba(15,23,42,.08)}[data-theme=cloud] .timeline-day-card.is-today{border:1px solid rgba(15,23,42,.28)}.day-num-column{width:68px;min-width:68px;max-width:68px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;align-self:flex-start;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;padding-left:2px;margin-right:8px}.day-big-number{font-size:64px;line-height:.85;letter-spacing:-2.5px;font-weight:300;color:var(--text-muted);font-family:var(--font-sans);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:block;text-align:left;margin-top:-2px;transition:color .25s ease}.day-big-number.bold-today{font-weight:800;color:var(--text-primary);letter-spacing:-2px}.day-name-label{font-size:13px;font-weight:600;color:var(--text-muted);margin-top:6px;text-transform:capitalize;letter-spacing:-.2px;transition:color .25s ease}.day-name-label.bold-today{color:var(--text-primary);font-weight:700}.day-events-column{flex:1 1;min-width:0;display:flex;flex-direction:column;justify-content:flex-start;padding-top:2px}.no-events-box{display:flex;align-items:center;gap:12px;padding:12px 0}.no-events-dot{width:13px;height:13px;border-radius:50%;background-color:var(--accent-subtle-hover);flex-shrink:0}.no-events-label{font-size:14.5px;font-weight:500;color:var(--text-muted);letter-spacing:-.2px}.special-event-box{display:flex;align-items:center;gap:14px;cursor:pointer;padding:12px 0;min-width:0}.special-event-dot{width:15px;height:15px;border-radius:50%;flex-shrink:0;box-shadow:0 0 10px rgba(220,38,38,.45)}.special-event-title{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px;line-height:1.25;white-space:pre-line}.events-stack-list{display:flex;flex-direction:column;gap:8px;width:100%;min-width:0}.event-pill-card{display:flex;align-items:center;justify-content:space-between;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:12px;padding:10px 14px;gap:10px;width:100%;box-sizing:border-box;min-width:0;transition:background .15s ease,border-color .15s ease;cursor:pointer}.event-pill-card:hover{background:var(--bg-card-hover);border-color:var(--border-medium)}.event-pill-card.completed{opacity:.55}.event-pill-left{display:flex;align-items:center;gap:8px}.event-pill-left,.event-title-text{min-width:0;flex:1 1;overflow:hidden}.event-title-text{font-size:13.5px;font-weight:500;color:var(--text-primary);letter-spacing:-.1px;white-space:nowrap;text-overflow:ellipsis;transition:color .25s ease}.event-pill-card.completed .event-title-text{text-decoration:line-through}.event-time-text{font-size:12.5px;font-weight:400;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;margin-left:auto;text-align:right;transition:color .25s ease}.day-quick-add-btn{opacity:0;width:26px;height:26px;border-radius:50%;background:var(--accent-subtle);border:1px solid var(--border-subtle);color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,background .15s ease;flex-shrink:0;margin-left:-4px}.timeline-day-card:hover .day-quick-add-btn{opacity:1}.day-quick-add-btn:hover{background:var(--island-tab-active-bg);color:var(--island-tab-active-color)}.bottom-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.bottom-sheet-title{color:var(--text-primary);font-size:17px;font-weight:750;letter-spacing:-.35px;line-height:1.25}.icon-btn-round{width:34px;height:34px;border:1px solid var(--border-subtle);border-radius:50%;background:var(--bg-input);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-btn-round:hover{background:var(--bg-card-hover);border-color:var(--border-medium);color:var(--text-primary)}.schedule-modal-content{display:flex;flex-direction:column;gap:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.form-input{width:100%;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:12px;padding:12px 14px;color:var(--text-primary);font-size:14px;box-sizing:border-box;transition:all .15s ease}.form-input:focus{border-color:var(--border-active);background:var(--bg-input-focus)}.icon-category-picker{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.icon-picker-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 6px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:12px;font-size:11px;font-weight:600;color:var(--text-secondary);transition:all .18s ease;cursor:pointer}.icon-picker-item.active,.icon-picker-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.icon-picker-item.active{border-color:var(--border-active);box-shadow:var(--shadow-white-sm)}.modal-primary-btn{width:100%;padding:13px;background:var(--island-tab-active-bg);color:var(--island-tab-active-color);border:none;border-radius:12px;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;margin-top:6px;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.modal-primary-btn:hover{opacity:.92}.schedule-filter-tabs{display:flex;align-items:center;gap:6px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:14px;padding:3px;width:100%;box-sizing:border-box}.filter-tab-btn{flex:1 1;padding:7px 10px;border-radius:11px;background:transparent;border:none;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .18s ease}.filter-tab-btn.active{background:var(--island-tab-active-bg);color:var(--island-tab-active-color);box-shadow:var(--shadow-card)}.month-spending-summary{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:12px 16px;box-shadow:var(--shadow-card)}.month-summary-label{font-size:12px;font-weight:600;color:var(--text-secondary)}.month-summary-amount{font-size:16px;font-weight:800;color:var(--text-primary);letter-spacing:-.3px}.day-total-summary-row{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:4px;width:100%;box-sizing:border-box}.day-total-label{font-size:11.5px;font-weight:600;color:var(--text-secondary);letter-spacing:-.1px}.day-total-amount{font-size:12.5px;font-weight:400;color:#ff0000;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:normal}.spending-pill-card{display:flex;align-items:center;justify-content:space-between;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:14px;padding:10px 12px;gap:8px;width:100%;box-sizing:border-box;transition:all .15s ease;cursor:pointer}.spending-pill-card:hover{background:var(--bg-card-hover);border-color:var(--border-medium);transform:translateY(-1px)}.spending-pill-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1;overflow:hidden}.spending-pill-details{display:flex;flex-direction:column;min-width:0;flex:1 1}.spending-pill-title{font-size:13.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spending-pill-meta{display:flex;align-items:center;gap:5px;font-size:10.5px;color:var(--text-muted)}.source-badge-ai{font-size:9.5px;font-weight:700;padding:1px 4px;border-radius:4px;background:rgba(139,92,246,.15);color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.spending-pill-right{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.spending-pill-amount{font-size:12.5px;font-weight:400;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:normal}.spending-pill-amount.expense{color:#ff0000}.spending-pill-amount.income{color:#34d399}.spending-pill-method{font-size:10px;font-weight:600;color:var(--text-muted)}.detail-section-heading{display:flex;align-items:center;gap:7px;font-size:10.5px;font-weight:700;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.65px;font-family:var(--font-sans)}.detail-section-count{min-width:20px;height:20px;padding:0 6px;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--bg-input);color:var(--text-muted);font-size:10px;letter-spacing:0;display:inline-flex;align-items:center;justify-content:center}.activity-detail-sheet{max-height:min(88dvh,760px);padding:12px 18px max(20px,env(safe-area-inset-bottom));gap:0;overflow:hidden}.activity-detail-sheet .sheet-handle{margin-bottom:14px}.activity-detail-header{padding:0 2px 15px;border-bottom:1px solid var(--border-subtle)}.activity-detail-heading{min-width:0;flex:1 1}.activity-detail-eyebrow{display:block;margin-bottom:3px;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.7px;line-height:1.2;text-transform:uppercase}.activity-detail-header .bottom-sheet-title{font-size:20px;letter-spacing:-.55px}.activity-total-row{display:flex;align-items:center;gap:6px;margin-top:5px;color:var(--text-secondary);font-size:12px}.activity-total-row strong{color:var(--accent-red-muted);font-size:12.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.activity-detail-content{min-height:0;padding:16px 2px;gap:20px;overflow-y:auto;overscroll-behavior:contain}.activity-card-list,.activity-detail-content,.activity-detail-section{display:flex;flex-direction:column}.activity-card-list,.activity-detail-section{gap:9px}.modal-spending-item-card{display:flex;flex-direction:column;gap:10px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px;font-family:var(--font-sans)}.activity-transaction-actions,.activity-transaction-header,.activity-transaction-main,.activity-transaction-meta,.modal-receipt-heading{display:flex;align-items:center}.activity-transaction-header{justify-content:space-between;align-items:flex-start;gap:10px}.activity-transaction-main{gap:9px;min-width:0;flex:1 1}.activity-category-icon,.activity-event-icon{width:32px;height:32px;border:1px solid var(--border-subtle);border-radius:10px;background:var(--bg-card);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.activity-event-copy,.activity-transaction-copy{min-width:0;display:flex;flex-direction:column}.activity-transaction-title{color:var(--text-primary);font-size:13.5px;font-weight:700;letter-spacing:-.2px;line-height:1.25}.activity-transaction-meta{flex-wrap:wrap;gap:5px;margin-top:3px;color:var(--text-muted);font-size:10.5px}.activity-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);opacity:.7}.activity-transaction-actions{gap:7px;flex-shrink:0}.activity-transaction-amount{color:var(--accent-red-muted);font-size:13px;font-weight:750;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.activity-delete-btn{width:28px;height:28px;border:1px solid var(--border-subtle);border-radius:50%;background:transparent;color:var(--accent-red-muted);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.activity-delete-btn:hover{border-color:rgba(248,113,113,.25);background:rgba(248,113,113,.08);opacity:1}.modal-receipt-items-list{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:6px;font-family:var(--font-sans)}.modal-receipt-heading{gap:5px;padding-bottom:2px;color:var(--text-muted);font-size:9.5px;font-weight:700;letter-spacing:.45px;text-transform:uppercase}.modal-receipt-heading span:last-child{margin-left:auto;color:var(--text-muted);font-weight:600}.modal-receipt-item-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:10.5px;color:var(--text-secondary);font-family:var(--font-sans)}.modal-receipt-item-row>span:last-child{color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.modal-receipt-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-receipt-qty{margin-right:5px;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.activity-transaction-note{padding:0 2px;color:var(--text-secondary);font-size:11px;font-style:italic;line-height:1.4}.activity-event-card{min-height:54px;padding:10px 11px;border-radius:var(--radius-md)}.activity-event-card .event-pill-left{gap:9px}.activity-event-copy{flex:1 1}.activity-event-time{margin-top:2px;color:var(--text-muted);font-size:10.5px}.schedule-activity-empty-state{min-height:52px;padding:10px 12px;border:1px dashed var(--border-medium);border-radius:var(--radius-md)}.schedule-activity-empty-state .no-events-dot{width:9px;height:9px}.schedule-activity-empty-state .no-events-label{font-size:12px}.activity-detail-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;padding:12px 2px 0;border-top:1px solid var(--border-subtle)}.activity-detail-actions .modal-primary-btn{min-height:44px;margin:0;padding:10px 8px;font-size:12px}.activity-action-secondary{border:1px solid var(--border-medium);background:var(--bg-input);color:var(--text-primary)}@media (max-width:359px){.activity-detail-actions{grid-template-columns:1fr}.activity-transaction-header{flex-direction:column}.activity-transaction-actions{width:100%;justify-content:space-between;padding-left:41px}}.bottom-sheet,.bottom-sheet-header,.bottom-sheet-title,.detail-section-heading,.event-pill-card,.event-title-text,.modal-primary-btn,.modal-receipt-item-row,.modal-receipt-items-list,.modal-scrollable-content,.modal-scrollable-content *,.modal-spending-item-card,.no-events-label{font-family:var(--font-sans)}.modal-scrollable-content{scrollbar-width:none!important;-ms-overflow-style:none!important}.modal-scrollable-content::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}.timeline-day-card.is-skeleton{cursor:default;pointer-events:none}.timeline-day-card.is-skeleton:hover{background:var(--bg-card);border-color:var(--border-subtle)}.event-pill-card.is-skeleton,.spending-pill-card.is-skeleton{cursor:default;pointer-events:none}.event-pill-card.is-skeleton:hover,.spending-pill-card.is-skeleton:hover{background:var(--bg-input);border-color:var(--border-subtle);transform:none}.schedule-skeleton-day-num{width:44px;height:50px;border-radius:10px}.schedule-skeleton-day-name{width:48px;height:12px;border-radius:4px;margin-top:6px}.schedule-skeleton-icon{width:28px;height:28px;border-radius:8px;flex-shrink:0}.stats-container{display:flex;flex-direction:column;gap:16px;width:100%;padding-bottom:115px;animation:fadeIn .22s ease-out forwards;font-family:var(--font-sans)}.app-content.stats-app-content,.app-content:has(.stats-container){padding-top:0}.stats-custom-navbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;width:calc(100% + 36px);margin:0 -18px 2px;padding:14px 18px 10px;display:flex;flex-direction:column;background:var(--bg-mobile);background:color-mix(in srgb,var(--bg-mobile) 84%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);box-shadow:0 4px 20px -2px rgba(0,0,0,.25);box-sizing:border-box;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease}[data-theme=cloud] .stats-custom-navbar,[data-theme=light] .stats-custom-navbar{box-shadow:0 4px 20px -2px rgba(15,23,42,.05)}@supports (padding-top:env(safe-area-inset-top)){.app-content.stats-app-content .stats-custom-navbar,.app-content:has(.stats-container) .stats-custom-navbar{padding-top:calc(14px + env(safe-area-inset-top, 0px))}}.stats-navbar-top{display:flex;align-items:center;justify-content:space-between;width:100%}.stats-navbar-brand{display:flex;align-items:center;gap:8px}.stats-navbar-title{font-size:19px;font-weight:800;color:var(--text-primary);letter-spacing:-.5px;line-height:1.1;font-family:inherit}.stats-navbar-actions{display:flex;align-items:center;gap:6px}.stats-navbar-action-btn,.stats-navbar-back-btn{width:34px;height:34px;border-radius:50%;background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-white-sm);text-decoration:none}.stats-navbar-action-btn:hover,.stats-navbar-back-btn:hover{color:var(--text-primary);border-color:var(--border-medium);background:var(--bg-card-hover)}.stats-top-controls-row{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box}.stats-month-picker{display:inline-flex;align-items:center;gap:2px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:9999px;padding:3px 6px;height:38px;box-sizing:border-box;box-shadow:var(--shadow-card);flex-shrink:0}.stats-month-title{font-family:inherit;font-size:12px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;padding:0 4px;white-space:nowrap}.stats-month-btn{width:24px;height:24px;border-radius:50%;background:transparent;border:none;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.stats-month-btn:hover{background:var(--accent-subtle);color:var(--text-primary)}.stats-period-tabs{display:flex;background:var(--bg-card);border:1px solid var(--border-subtle);padding:3px;gap:2px;height:38px;box-sizing:border-box;box-shadow:var(--shadow-card);min-width:0}.stats-period-tab,.stats-period-tabs{align-items:center;border-radius:9999px;flex:1 1}.stats-period-tab{height:30px;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:11.5px;font-weight:600;letter-spacing:-.1px;cursor:pointer;display:inline-flex;justify-content:center;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:0 4px}.stats-period-tab:hover{color:var(--text-primary);background:var(--accent-subtle)}.stats-period-tab.active{background:var(--island-tab-active-bg);color:var(--island-tab-active-color);font-weight:700;box-shadow:var(--shadow-white-sm)}.stats-hero-section{position:relative;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;box-shadow:var(--shadow-card);padding:22px 20px 20px;align-items:stretch;overflow:hidden;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.stats-hero-header,.stats-hero-section{width:100%;display:flex;flex-direction:column}.stats-hero-header{align-items:flex-start;text-align:left}.stats-hero-subtitle{font-size:13.5px;font-weight:500;color:var(--text-secondary);letter-spacing:-.1px;margin-bottom:3px}.stats-hero-amount,.stats-hero-subtitle{text-align:left;transition:color .25s ease}.stats-hero-amount{font-size:38px;font-weight:800;color:var(--text-primary);letter-spacing:-1.2px;line-height:1.15;margin:3px 0 6px;font-family:var(--font-sans)}.stats-hero-trend-row{display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:-.1px;margin-bottom:14px;flex-wrap:wrap}.stats-hero-trend-label{font-weight:500;color:var(--text-secondary)}.stats-hero-trend-val{font-weight:700;display:inline-flex;align-items:center;gap:3px}.stats-hero-chart-card{--stats-chart-height:160px;position:relative;width:100%;min-width:0;background:transparent;border:none;border-radius:0;padding:0;margin:6px 0 16px;display:flex;flex-direction:column;box-sizing:border-box}.stats-hero-chart-card .income{--stats-chart-series:var(--accent-green-muted)}.stats-hero-chart-card .expense{--stats-chart-series:var(--accent-red-muted)}.stats-chart-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-bottom:4px}.stats-chart-trend-label{color:var(--text-muted);font-size:9px;font-weight:500}.stats-chart-trend-note{margin-top:4px;color:var(--text-muted);font-size:9px;line-height:1.5}.stats-chart-layout{display:flex;flex-direction:column;direction:ltr}.stats-hero-chart-container{position:relative;width:100%;min-width:0;height:var(--stats-chart-height);overflow:visible}.stats-hero-chart-svg{width:100%;height:100%;overflow:visible;display:block;border-radius:4px;touch-action:pan-y;cursor:crosshair}.stats-hero-chart-svg:focus-visible{outline:2px solid var(--accent-color);outline-offset:4px}.stats-chart-cursor,.stats-chart-line{vector-effect:non-scaling-stroke}.stats-chart-cursor{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 4;opacity:.65}.stats-chart-line{fill:none;stroke:var(--stats-chart-series);stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;transition:stroke .25s ease}[data-theme=dark] .stats-chart-line{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--stats-chart-series) 22%,transparent))}.stats-chart-marker{position:absolute;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-sizing:border-box;z-index:2;background:var(--bg-card);border:2px solid var(--stats-chart-series);box-shadow:0 0 0 3px color-mix(in srgb,var(--stats-chart-series) 10%,transparent);transition:left .1s ease-out,top .1s ease-out,box-shadow .25s ease,background-color .25s ease}[data-theme=dark] .stats-chart-marker{background:var(--text-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--stats-chart-series) 14%,transparent),0 0 12px color-mix(in srgb,var(--stats-chart-series) 55%,transparent)}.stats-chart-days-row{position:relative;width:100%;height:24px;margin-top:4px;font-size:10px;font-weight:500;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats-chart-day-tick{position:absolute;top:0;min-height:24px;padding:0 2px;border:none;border-radius:4px;background:transparent;color:inherit;font:inherit;transition:color .15s ease,font-weight .15s ease;cursor:pointer;white-space:nowrap}.stats-chart-day-tick:focus-visible,.stats-chart-day-tick:hover{color:var(--text-primary)}.stats-chart-day-tick:focus-visible{outline:2px solid var(--accent-color);outline-offset:1px}.stats-chart-day-tick.active{color:var(--text-primary);font-weight:700}.stats-chart-tooltip-floating{position:absolute;top:8px;left:50%;width:max-content;max-width:calc(100% - 12px);transform:translateX(-50%);background:var(--bg-card);border:1px solid var(--border-medium);border-radius:10px;padding:8px 10px;pointer-events:none;z-index:10;box-shadow:var(--shadow-elevated);font-family:var(--font-sans);display:flex;flex-direction:column;gap:4px;align-items:center;overflow-wrap:anywhere;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stats-tooltip-floating-header{font-size:9.5px;font-weight:600;color:var(--text-muted);letter-spacing:.2px}.stats-tooltip-floating-caption{font-size:9px;font-weight:400;color:var(--text-muted)}.stats-tooltip-floating-body{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats-tooltip-floating-inc{color:var(--accent-green-muted)}.stats-tooltip-floating-exp{color:var(--accent-red-muted)}.stats-chart-legend-row{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px 16px;min-width:0;font-size:10.5px;font-weight:500;color:var(--text-secondary)}.stats-chart-legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.stats-chart-legend-dot{width:16px;height:3px;flex-shrink:0;border-radius:9999px;background:var(--stats-chart-series)}@media (max-width:360px){.stats-hero-chart-card{--stats-chart-height:144px}.stats-chart-days-row,.stats-chart-legend-row{font-size:9px}}@media (prefers-reduced-motion:reduce){.stats-chart-marker{transition:none}}.stats-hero-bottom-cards{display:flex;align-items:stretch;gap:10px;width:100%}.stats-hero-subcard{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:18px;padding:12px 13px;display:flex;box-sizing:border-box;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.stats-hero-subcard:hover{border-color:var(--border-medium)}.stats-hero-subcard-left{flex:1.12 1;flex-direction:column;justify-content:center;gap:4px;min-width:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;perspective:400px;transition:border-color .18s ease,box-shadow .18s ease}.stats-hero-subcard-left:hover{border-color:var(--border-medium)}.stats-hero-subcard-left:active{transform:scale(.98)}.stats-subcard-flipper{display:inline-block;transform-origin:center center;transition:transform .14s cubic-bezier(.4,0,.2,1),opacity .14s ease;will-change:transform,opacity}.stats-subcard-flipper.flipping{transform:rotateX(90deg) translateY(-2px);opacity:0}.stats-subcard-label-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:4px}.stats-subcard-swap-icon{color:var(--text-muted);opacity:.65;transition:transform .3s cubic-bezier(.16,1,.3,1),color .2s ease,opacity .2s ease;flex-shrink:0}.stats-subcard-swap-icon.spinning{transform:rotate(180deg)}.stats-hero-subcard-left:hover .stats-subcard-swap-icon,.stats-subcard-swap-icon.spinning{color:var(--text-primary);opacity:1}.stats-hero-subcard-right{flex:1.25 1;justify-content:space-between;align-items:center;gap:8px;min-width:0}.stats-subcard-info{display:flex;flex-direction:column;gap:3px;min-width:0}.stats-subcard-label{font-size:11px;font-weight:500;color:var(--text-secondary);letter-spacing:-.1px;white-space:nowrap}.stats-subcard-val{font-size:clamp(12px,3.2vw,15px);font-weight:800;color:var(--text-primary);letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease}.stats-gauge-wrapper{position:relative;width:64px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stats-gauge-svg{width:100%;height:100%;overflow:visible}.stats-gauge-progress{transition:stroke-dashoffset .85s cubic-bezier(.16,1,.3,1)}.stats-gauge-text{font-size:11.5px;font-weight:800;fill:var(--text-primary);font-family:var(--font-sans)}.stats-kpi-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.stats-kpi-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:22px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-card);transition:transform .2s cubic-bezier(.16,1,.3,1),border-color .2s ease,box-shadow .2s ease,background .25s ease}.stats-kpi-card:hover{border-color:var(--border-medium);transform:translateY(-2px);box-shadow:var(--shadow-elevated)}.stats-kpi-header{display:flex;align-items:center;justify-content:flex-start;gap:5px}.stats-kpi-title{font-size:11.5px;font-weight:600;color:var(--text-secondary);letter-spacing:-.1px}.stats-kpi-main-val{font-size:17.5px;font-weight:800;color:var(--text-primary);letter-spacing:-.4px;line-height:1.2}.stats-kpi-subtext{font-size:11.5px;font-weight:400;color:var(--text-secondary);line-height:1.25;letter-spacing:-.1px}.stats-pie-section{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:18px 18px 20px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-card);transition:background-color .25s ease,border-color .25s ease}.stats-pie-header{display:flex;align-items:center;justify-content:space-between}.stats-section-title{font-size:15.5px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px;display:flex;align-items:center;gap:7px}.pie-view-toggle{display:inline-flex;align-items:center;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:9999px;padding:2px;gap:2px}.pie-view-btn{padding:4px 10px;border-radius:9999px;border:none;background:transparent;font-family:inherit;font-size:11.5px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .18s ease}.pie-view-btn.active{background:var(--island-tab-active-bg);color:var(--island-tab-active-color);font-weight:700;box-shadow:var(--shadow-white-sm)}.pie-side-by-side-layout{display:flex;align-items:center;gap:12px;width:100%}.pie-chart-viewport-side{position:relative;width:146px;height:146px;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin:0 auto}.pie-svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible;animation:donutSvgSpinIn .85s cubic-bezier(.16,1,.3,1) forwards;transform-origin:center}@keyframes donutSvgSpinIn{0%{transform:rotate(-160deg) scale(.92);opacity:.6}to{transform:rotate(-90deg) scale(1);opacity:1}}.pie-ring-track{fill:none;stroke:var(--border-subtle);stroke-width:26;transition:stroke .25s ease}.pie-donut-segment{fill:none;stroke-width:26;cursor:pointer;transition:stroke-dasharray .9s cubic-bezier(.16,1,.3,1),stroke-dashoffset .9s cubic-bezier(.16,1,.3,1),stroke-width .28s cubic-bezier(.34,1.56,.64,1),opacity .25s ease,filter .25s ease;transform-origin:center}.pie-donut-segment.selected,.pie-donut-segment:hover{stroke-width:32;filter:drop-shadow(0 0 10px rgba(255,255,255,.4))}[data-theme=cloud] .pie-donut-segment.selected,[data-theme=cloud] .pie-donut-segment:hover,[data-theme=light] .pie-donut-segment.selected,[data-theme=light] .pie-donut-segment:hover{filter:drop-shadow(0 4px 12px rgba(15,23,42,.22))}.pie-center-content-side{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:6px;animation:pieCenterPop .35s cubic-bezier(.34,1.4,.64,1) forwards}@keyframes pieCenterPop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.pie-center-side-label{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted)}.pie-center-side-val{font-size:11.5px;font-weight:800;color:var(--text-primary);letter-spacing:-.3px;line-height:1.15;margin:1px 0;max-width:82px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pie-center-side-sub{font-size:8.5px;font-weight:600;color:var(--text-secondary)}.pie-center-side-cat{font-size:8px;font-weight:700;color:var(--text-secondary);max-width:76px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.3px}.pie-center-side-pct{font-size:11.5px;font-weight:800;letter-spacing:-.3px;margin-top:1px}.pie-legend-list-side{display:flex;flex-direction:column;gap:5px;flex:1 1;min-width:0;max-height:143px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.pie-legend-list-side::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.pie-legend-side-item{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:32px;min-height:32px;flex-shrink:0;box-sizing:border-box;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid transparent;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);min-width:0}.pie-legend-side-item.selected,.pie-legend-side-item:hover{background:var(--bg-card-hover);border-color:var(--border-medium);transform:translateX(2px)}.pie-legend-side-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1}.pie-legend-side-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.pie-legend-side-name{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pie-legend-side-right{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:6px}.pie-legend-side-pill{font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:5px;background:var(--accent-subtle);color:var(--text-secondary);flex-shrink:0}.pie-chart-viewport{position:relative;width:230px;height:230px;margin:6px auto 2px}.pie-center-content,.pie-chart-viewport{display:flex;align-items:center;justify-content:center}.pie-center-content{position:absolute;inset:0;flex-direction:column;text-align:center;pointer-events:none;padding:16px;animation:pieCenterPop .4s cubic-bezier(.34,1.4,.64,1) forwards}.pie-center-category{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pie-center-amount{font-size:21px;font-weight:800;color:var(--text-primary);letter-spacing:-.6px;line-height:1.2;margin:2px 0 3px}.pie-center-percent{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:9999px;background:var(--accent-subtle);color:var(--text-primary);border:1px solid var(--border-subtle)}.pie-legend-list{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--border-subtle)}.pie-legend-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid transparent;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1)}.pie-legend-item.selected,.pie-legend-item:hover{background:var(--bg-card-hover);border-color:var(--border-medium);transform:translateX(2px)}.pie-legend-left{display:flex;align-items:center;gap:10px}.pie-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px rgba(0,0,0,.15)}.pie-legend-name{font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:-.1px}.pie-legend-right{display:flex;align-items:center;gap:8px}.pie-legend-amount{font-size:13.5px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.pie-legend-pct-pill{font-size:11px;font-weight:700;padding:2px 7px;border-radius:6px;background:var(--accent-subtle);color:var(--text-secondary)}.category-breakdown-card,.stats-category-section{display:flex;flex-direction:column;gap:10px}.category-breakdown-card{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px 14px;transition:all .2s ease;cursor:pointer}.category-breakdown-card:hover{border-color:var(--border-medium);background:var(--bg-card-hover)}.cat-breakdown-row{display:flex;align-items:center;justify-content:space-between}.cat-breakdown-info{display:flex;align-items:center;gap:10px}.cat-icon-bubble{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cat-title-text{font-size:13.5px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;line-height:1.2}.cat-sub-text{font-size:11px;color:var(--text-secondary)}.cat-amount-info{text-align:right;display:flex;flex-direction:column;gap:1px}.cat-spent-val{font-size:14px;font-weight:800;color:var(--text-primary);letter-spacing:-.2px}.cat-budget-val{font-size:10.5px;color:var(--text-muted)}.cat-progress-track{width:100%;height:6px;background:var(--bg-card);border-radius:9999px;overflow:hidden;position:relative}.cat-progress-bar{height:100%;border-radius:9999px;transition:width .4s cubic-bezier(.16,1,.3,1)}.payment-methods-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-card)}.payment-stacked-bar{width:100%;height:12px;border-radius:9999px;background:var(--bg-input);display:flex;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.payment-stacked-segment{height:100%;transition:width .3s ease}.payment-grid-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;width:100%}.payment-pill-card{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:16px;padding:12px 13px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-width:0;box-sizing:border-box;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.payment-pill-card:hover{border-color:var(--border-medium);transform:translateY(-1px)}.payment-pill-header{justify-content:space-between;gap:6px;width:100%}.payment-pill-header,.payment-pill-left{display:flex;align-items:center;min-width:0}.payment-pill-left{gap:7px}.payment-color-badge{width:8px;height:8px;border-radius:50%;flex-shrink:0}.payment-method-name{font-size:12.5px;font-weight:600;color:var(--text-primary);letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payment-pill-pct-badge{font-size:11px;font-weight:700;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-subtle);padding:2px 6px;border-radius:6px;flex-shrink:0;line-height:1.2}.payment-pill-value{display:flex;align-items:baseline;width:100%;min-width:0}.payment-pill-amt{font-size:clamp(12.5px,3.2vw,14.5px);font-weight:800;color:var(--text-primary);letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payment-pill-card.payment-pill-card-full{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 14px}.payment-pill-card.payment-pill-card-full .payment-pill-header{width:auto;gap:12px}.payment-pill-card.payment-pill-card-full .payment-pill-value{width:auto;display:flex;align-items:center;gap:8px}.rhythm-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-card)}.rhythm-bars-row{display:flex;align-items:flex-end;justify-content:space-between;height:185px;padding:12px 6px 4px;gap:8px}.rhythm-col{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;justify-content:flex-end}.rhythm-bar-track{width:100%;max-width:26px;height:145px;background:var(--bg-input);border-radius:8px;display:flex;align-items:flex-end;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.12)}.rhythm-bar-fill{width:100%;background:rgba(255,255,255,.28);border-radius:8px;transition:height .8s cubic-bezier(.16,1,.3,1),background .25s ease;transform-origin:bottom;animation:rhythmBarGrow .75s cubic-bezier(.16,1,.3,1) forwards}@keyframes rhythmBarGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.rhythm-bar-fill.highlight{background:#ffffff;box-shadow:0 4px 16px rgba(255,255,255,.35)}[data-theme=cloud] .rhythm-bar-fill{background:rgba(21,134,213,.38)}[data-theme=cloud] .rhythm-bar-fill.highlight{background:#1586D5;box-shadow:0 4px 14px rgba(21,134,213,.45)}[data-theme=light] .rhythm-bar-fill{background:rgba(15,23,42,.22)}[data-theme=light] .rhythm-bar-fill.highlight{background:#0f172a;box-shadow:0 4px 14px rgba(15,23,42,.25)}.rhythm-day-label{font-size:12px;font-weight:600;color:var(--text-secondary)}.rhythm-day-label.today{color:var(--text-primary);font-weight:800}.top-expenses-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-card)}.top-expense-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-input);border:1px solid transparent;cursor:pointer;transition:all .18s ease;gap:12px}.top-expense-row:hover{border-color:var(--border-medium);background:var(--bg-card-hover);transform:translateX(2px)}.top-expense-left{display:flex;align-items:center;gap:10px;flex:1 1;min-width:0}.top-expense-info{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.top-expense-rank{font-size:13.5px;font-weight:800;color:var(--text-muted);min-width:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;letter-spacing:-.2px}.top-expense-row:first-child .top-expense-rank{color:#f59e0b}.top-expense-row:nth-child(2) .top-expense-rank{color:#94a3b8}.top-expense-row:nth-child(3) .top-expense-rank{color:#d97706}.top-expense-title{font-size:13px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;line-height:1.25}.top-expense-meta,.top-expense-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-expense-meta{font-size:11px;color:var(--text-secondary)}.top-expense-amount{font-size:13.5px;font-weight:800;color:var(--text-primary);letter-spacing:-.3px;white-space:nowrap;flex-shrink:0;text-align:right}.period-transactions-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-card)}.period-transactions-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.period-transactions-count{flex-shrink:0;padding:4px 8px;border-radius:9999px;background:var(--bg-input);color:var(--text-secondary);font-size:10.5px;font-weight:700}.period-transactions-list{display:flex;flex-direction:column;gap:8px}.period-transaction-row{width:100%;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid transparent;border-radius:var(--radius-md);background:var(--bg-input);color:inherit;font-family:inherit;text-align:left;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.period-transaction-row:hover{border-color:var(--border-medium);background:var(--bg-card-hover);transform:translateX(2px)}.period-transaction-main{min-width:0;display:flex;align-items:center;gap:10px}.period-transaction-icon{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px}.period-transaction-info{min-width:0;display:flex;flex-direction:column;gap:3px}.period-transaction-title{color:var(--text-primary);font-size:13px;font-weight:700;line-height:1.25}.period-transaction-meta,.period-transaction-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.period-transaction-meta{color:var(--text-secondary);font-size:10.5px;line-height:1.3}.period-transaction-amount{flex-shrink:0;font-size:13px;font-weight:800;letter-spacing:-.25px;white-space:nowrap}.period-transaction-amount.expense{color:#ef4444}.period-transaction-amount.income{color:#22c55e}.period-transactions-empty{padding:26px 16px;color:var(--text-secondary);font-size:13px;text-align:center}.custom-range-presets-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.preset-chip-btn{padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s ease}.preset-chip-btn:hover{background:var(--bg-card-hover);border-color:var(--border-medium);color:var(--text-primary)}.preset-chip-btn:active{transform:scale(.98)}.custom-range-inputs-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.custom-range-error{margin-top:8px;color:var(--accent-red-muted);font-size:12px;font-weight:600;line-height:1.4}.modal-primary-btn:disabled{opacity:.5;cursor:not-allowed}.stats-bottom-island-wrapper{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;align-items:center;z-index:50;pointer-events:none;padding:0 12px calc(env(safe-area-inset-bottom, 0px))}.stats-filter-dock{pointer-events:auto;display:flex;background:var(--island-bg);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid var(--island-border);padding:6px 7px;gap:6px;box-shadow:var(--shadow-dock);width:100%;max-width:420px;box-sizing:border-box}.stats-dock-month-picker,.stats-filter-dock{align-items:center;justify-content:space-between;border-radius:9999px}.stats-dock-month-picker{display:inline-flex;gap:2px;background:var(--island-tab-inactive-bg);padding:2px 7px;height:42px;flex-shrink:0}.stats-dock-month-btn{width:28px;height:28px;border-radius:50%;background:transparent;border:none;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0}.stats-dock-month-btn:hover{background:var(--accent-subtle-hover);color:var(--text-primary)}.stats-dock-month-title{font-size:12.5px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px;padding:0 4px;white-space:nowrap}.stats-dock-divider{width:1px;height:26px;background:var(--border-subtle);flex-shrink:0}.stats-dock-period-tabs{display:flex;align-items:center;gap:3px;flex:1 1;justify-content:space-between;min-width:0}.stats-dock-tab{flex:1 1;min-width:0;height:42px;border-radius:9999px;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:12.5px;font-weight:600;letter-spacing:-.2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.stats-dock-tab:hover{color:var(--text-primary);background:transparent}.stats-dock-tab:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.stats-dock-tab.active{background:transparent;color:var(--text-primary);font-weight:800;box-shadow:none}[data-theme=cloud] .stats-filter-dock{background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.1);box-shadow:0 16px 36px -6px rgba(15,23,42,.12),0 0 1px 1px rgba(15,23,42,.05)}[data-theme=cloud] .stats-dock-month-picker{background:rgba(15,23,42,.05)}[data-theme=cloud] .stats-dock-tab.active{background:transparent!important;color:#1586D5!important;border-color:transparent;box-shadow:none!important}[data-theme=cloud] .stats-dock-tab:hover:not(.active){background:transparent;color:#1586D5}[data-theme=light] .stats-filter-dock{background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.1);box-shadow:0 16px 36px -6px rgba(15,23,42,.12),0 0 1px 1px rgba(15,23,42,.05)}[data-theme=light] .stats-dock-month-picker{background:rgba(15,23,42,.05)}[data-theme=light] .stats-dock-tab.active{background:transparent!important;color:#0f172a!important;box-shadow:none!important}[data-theme=dark] .stats-dock-tab.active{background:transparent!important;color:#ffffff!important;box-shadow:none!important}.stats-container .skeleton{animation-duration:1.8s;animation-timing-function:cubic-bezier(.4,0,.2,1)}.stats-skeleton-line{height:14px;border-radius:4px}.stats-skeleton-chart-placeholder{width:100%;height:calc(var(--stats-chart-height) + 48px);border-radius:var(--radius-md,14px)}.stats-skeleton-donut{width:156px;height:156px;border-radius:50%!important;border:18px solid rgba(255,255,255,.05);box-sizing:border-box}[data-theme=light] .stats-skeleton-donut{border-color:rgba(0,0,0,.06)}[data-theme=cloud] .stats-skeleton-donut{border-color:rgba(148,163,184,.2)}.stats-skeleton-subcard{min-height:86px;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:12px 14px}.stats-hero-chart-card.is-skeleton,.stats-hero-subcard.is-skeleton,.stats-kpi-card.is-skeleton{pointer-events:none;cursor:default}.period-transaction-icon.skeleton{width:32px;height:32px;border-radius:10px;flex-shrink:0}