@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.confirm-overlay[data-v-e721b7fe]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:99999;padding:1rem}.confirm-modal[data-v-e721b7fe]{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:2rem;max-width:400px;width:100%;text-align:center;animation:modalSlideIn-e721b7fe .2s ease-out}@keyframes modalSlideIn-e721b7fe{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-icon[data-v-e721b7fe]{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-size:1.75rem}.confirm-icon.danger[data-v-e721b7fe],.confirm-icon.error[data-v-e721b7fe]{background:#ef444426}.confirm-icon.warning[data-v-e721b7fe]{background:#f59e0b26}.confirm-icon.info[data-v-e721b7fe]{background:#6366f126}.confirm-icon.success[data-v-e721b7fe]{background:#22c55e26}.confirm-title[data-v-e721b7fe]{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.confirm-message[data-v-e721b7fe]{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:.75rem}.confirm-item-name[data-v-e721b7fe]{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;font-weight:600;color:var(--text-primary);font-size:1rem;word-break:break-word}.confirm-actions[data-v-e721b7fe]{display:flex;gap:.75rem;justify-content:center}.confirm-actions .btn[data-v-e721b7fe]{min-width:100px;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary[data-v-e721b7fe]{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary)}.btn-secondary[data-v-e721b7fe]:hover{background:var(--bg-hover)}.btn-danger[data-v-e721b7fe]{background:#ef4444;border:none;color:#fff}.btn-danger[data-v-e721b7fe]:hover{background:#dc2626}.btn-success[data-v-e721b7fe]{background:#22c55e;border:none;color:#fff}.btn-success[data-v-e721b7fe]:hover{background:#16a34a}.btn-warning[data-v-e721b7fe]{background:#f59e0b;border:none;color:#fff}.btn-warning[data-v-e721b7fe]:hover{background:#d97706}.btn-primary[data-v-e721b7fe]{background:var(--accent);border:none;color:#fff}.btn-primary[data-v-e721b7fe]:hover{filter:brightness(1.1)}.confirm-hint[data-v-e721b7fe]{margin-top:1rem;font-size:.75rem;color:var(--text-muted)}.confirm-hint kbd[data-v-e721b7fe]{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:3px;padding:.1rem .4rem;font-size:.7rem;font-family:inherit}.toast-container[data-v-d447e0ef]{position:fixed;top:1rem;right:1rem;z-index:99999;display:flex;flex-direction:column;gap:.75rem;max-width:400px;pointer-events:none}@media(max-width:480px){.toast-container[data-v-d447e0ef]{left:1rem;right:1rem;max-width:none}}.toast[data-v-d447e0ef]{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-radius:var(--radius-lg, 12px);background:var(--bg-card, #1a1a2e);border:1px solid var(--border, #2a2a3e);box-shadow:0 4px 12px #00000026,0 8px 24px #0000001a;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:toast-in-d447e0ef .3s ease-out}.toast-icon[data-v-d447e0ef]{flex-shrink:0;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center}.toast-content[data-v-d447e0ef]{flex:1;display:flex;flex-direction:column;gap:.5rem;min-width:0}.toast-message[data-v-d447e0ef]{font-size:.9rem;line-height:1.5;color:var(--text-primary, #fff);word-break:break-word}.toast-undo[data-v-d447e0ef]{align-self:flex-start;display:flex;align-items:center;gap:.4rem;background:#10b981;border:none;color:#fff;padding:.4rem .85rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #10b9814d}.toast-undo[data-v-d447e0ef]:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b98166}.toast.has-undo[data-v-d447e0ef]{padding-bottom:.75rem}.toast-close[data-v-d447e0ef]{flex-shrink:0;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted, #888);font-size:1.25rem;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:.5rem}.toast-close[data-v-d447e0ef]:hover{background:#ffffff1a;color:var(--text-primary, #fff)}.toast-success[data-v-d447e0ef]{border-left:4px solid #10b981}.toast-success .toast-icon[data-v-d447e0ef]{background:#10b98126;color:#10b981}.toast-error[data-v-d447e0ef]{border-left:4px solid #ef4444}.toast-error .toast-icon[data-v-d447e0ef]{background:#ef444426;color:#ef4444}.toast-warning[data-v-d447e0ef]{border-left:4px solid #f59e0b}.toast-warning .toast-icon[data-v-d447e0ef]{background:#f59e0b26;color:#f59e0b}.toast-info[data-v-d447e0ef]{border-left:4px solid #3b82f6}.toast-info .toast-icon[data-v-d447e0ef]{background:#3b82f626;color:#3b82f6}.toast-enter-active[data-v-d447e0ef]{animation:toast-in-d447e0ef .3s ease-out}.toast-leave-active[data-v-d447e0ef]{animation:toast-out-d447e0ef .25s ease-in forwards}.toast-move[data-v-d447e0ef]{transition:transform .3s ease}@keyframes toast-in-d447e0ef{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-out-d447e0ef{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}:root:not(.dark) .toast[data-v-d447e0ef],[data-theme=light] .toast[data-v-d447e0ef]{background:#fff;border-color:#e5e7eb;box-shadow:0 4px 12px #00000014,0 8px 24px #0000000d}:root:not(.dark) .toast-message[data-v-d447e0ef],[data-theme=light] .toast-message[data-v-d447e0ef]{color:#1f2937}:root:not(.dark) .toast-close[data-v-d447e0ef],[data-theme=light] .toast-close[data-v-d447e0ef]{color:#9ca3af}:root:not(.dark) .toast-close[data-v-d447e0ef]:hover,[data-theme=light] .toast-close[data-v-d447e0ef]:hover{background:#0000000d;color:#374151}:root:not(.dark) .toast-undo[data-v-d447e0ef],[data-theme=light] .toast-undo[data-v-d447e0ef]{background:#10b981;color:#fff}:root:not(.dark) .toast-undo[data-v-d447e0ef]:hover,[data-theme=light] .toast-undo[data-v-d447e0ef]:hover{background:#059669}.material-icon[data-v-d2eaa0f2]{font-family:Material Symbols Rounded;font-size:24px;line-height:1}.pwa-prompt[data-v-d2eaa0f2]{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);z-index:10000;width:calc(100% - 2rem);max-width:400px}.pwa-prompt-content[data-v-d2eaa0f2]{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl)}.pwa-prompt-icon[data-v-d2eaa0f2]{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);border-radius:var(--radius-md);color:var(--accent)}.pwa-prompt-text[data-v-d2eaa0f2]{flex:1;min-width:0}.pwa-prompt-title[data-v-d2eaa0f2]{font-weight:600;color:var(--text-primary);font-size:.9rem;margin:0}.pwa-prompt-description[data-v-d2eaa0f2]{font-size:.8rem;color:var(--text-secondary);margin:.25rem 0 0}.pwa-prompt-actions[data-v-d2eaa0f2]{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.slide-up-enter-active[data-v-d2eaa0f2],.slide-up-leave-active[data-v-d2eaa0f2]{transition:all .3s ease}.slide-up-enter-from[data-v-d2eaa0f2],.slide-up-leave-to[data-v-d2eaa0f2]{transform:translate(-50%) translateY(100%);opacity:0}@media(max-width:480px){.pwa-prompt-content[data-v-d2eaa0f2]{flex-wrap:wrap}.pwa-prompt-actions[data-v-d2eaa0f2]{flex-direction:row;width:100%;justify-content:flex-end;margin-top:.5rem}}.terms-overlay[data-v-bc1dd8b5]{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.terms-modal[data-v-bc1dd8b5]{background:var(--bg-primary);border-radius:var(--radius-xl);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px -12px #00000080;animation:modalEnter-bc1dd8b5 .3s ease-out}@keyframes modalEnter-bc1dd8b5{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.terms-header[data-v-bc1dd8b5]{padding:2rem 2rem 1.5rem;text-align:center;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.terms-icon[data-v-bc1dd8b5]{width:80px;height:80px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--brand-blue);box-shadow:0 8px 24px #00d9a54d}.terms-header h1[data-v-bc1dd8b5]{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.terms-header p[data-v-bc1dd8b5]{color:var(--text-secondary);font-size:.95rem}.terms-content[data-v-bc1dd8b5]{flex:1;overflow:hidden;padding:0}.terms-scroll[data-v-bc1dd8b5]{height:100%;max-height:400px;overflow-y:auto;padding:1.5rem 2rem}.terms-scroll[data-v-bc1dd8b5]::-webkit-scrollbar{width:6px}.terms-scroll[data-v-bc1dd8b5]::-webkit-scrollbar-track{background:transparent}.terms-scroll[data-v-bc1dd8b5]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.terms-scroll[data-v-bc1dd8b5]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.terms-scroll h2[data-v-bc1dd8b5]{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;color:var(--accent);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.terms-scroll section[data-v-bc1dd8b5]{margin-bottom:1.5rem}.terms-scroll h3[data-v-bc1dd8b5]{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.terms-scroll p[data-v-bc1dd8b5]{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.5rem}.terms-scroll ul[data-v-bc1dd8b5]{margin-left:1.25rem;margin-top:.5rem}.terms-scroll li[data-v-bc1dd8b5]{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.25rem}.terms-footer[data-v-bc1dd8b5]{padding:1.5rem 2rem;border-top:1px solid var(--border);background:var(--bg-secondary);display:flex;flex-direction:column;gap:1rem}.terms-checkbox[data-v-bc1dd8b5]{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.9rem;color:var(--text-primary)}.terms-checkbox input[data-v-bc1dd8b5]{display:none}.terms-checkbox .checkmark[data-v-bc1dd8b5]{width:22px;height:22px;border:2px solid var(--border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;color:transparent}.terms-checkbox input:checked+.checkmark[data-v-bc1dd8b5]{background:var(--accent);border-color:var(--accent);color:var(--brand-blue)}.terms-checkbox:hover .checkmark[data-v-bc1dd8b5]{border-color:var(--accent)}.btn-lg[data-v-bc1dd8b5]{padding:.875rem 1.5rem;font-size:1rem;font-weight:600}@media(max-width:640px){.terms-modal[data-v-bc1dd8b5]{max-height:100vh;border-radius:0}.terms-header[data-v-bc1dd8b5]{padding:1.5rem}.terms-scroll[data-v-bc1dd8b5]{padding:1rem 1.5rem;max-height:300px}.terms-footer[data-v-bc1dd8b5]{padding:1rem 1.5rem}}.tour-overlay[data-v-6376e177]{position:fixed;inset:0;background:linear-gradient(135deg,#0d1b2af2,#1a3655f2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.tour-modal[data-v-6376e177]{background:var(--bg-primary);border-radius:var(--radius-xl);max-width:520px;width:100%;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff1a;animation:modalEnter-6376e177 .4s ease-out}@keyframes modalEnter-6376e177{0%{opacity:0;transform:scale(.9) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}.skip-btn[data-v-6376e177]{position:absolute;top:1rem;right:1rem;background:var(--bg-tertiary);border:none;color:var(--text-secondary);width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.skip-btn[data-v-6376e177]:hover{background:var(--bg-hover);color:var(--text-primary)}.progress-bar[data-v-6376e177]{height:4px;background:var(--bg-tertiary);overflow:hidden}.progress-fill[data-v-6376e177]{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);transition:width .3s ease}.tour-content[data-v-6376e177]{padding:3rem 2.5rem 2rem;text-align:center;animation:contentFade-6376e177 .3s ease-out}@keyframes contentFade-6376e177{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.step-icon[data-v-6376e177]{width:100px;height:100px;background:linear-gradient(135deg,var(--step-color) 0%,color-mix(in srgb,var(--step-color) 80%,black) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:var(--brand-blue);box-shadow:0 12px 32px color-mix(in srgb,var(--step-color) 40%,transparent),0 0 0 8px color-mix(in srgb,var(--step-color) 15%,transparent);animation:iconPulse-6376e177 2s ease-in-out infinite}@keyframes iconPulse-6376e177{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.step-title[data-v-6376e177]{font-size:1.75rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary)}.step-description[data-v-6376e177]{font-size:1rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.features-list[data-v-6376e177]{text-align:left;list-style:none;padding:0;margin:0}.features-list li[data-v-6376e177]{display:flex;align-items:center;gap:.75rem;padding:.625rem 0;font-size:.95rem;color:var(--text-primary);animation:featureFade-6376e177 .3s ease-out backwards}@keyframes featureFade-6376e177{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.feature-bullet[data-v-6376e177]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.step-indicators[data-v-6376e177]{display:flex;justify-content:center;gap:.5rem;padding:0 2rem 1.5rem}.step-dot[data-v-6376e177]{width:10px;height:10px;border-radius:50%;border:2px solid var(--border);background:transparent;cursor:pointer;transition:all .2s ease;padding:0}.step-dot[data-v-6376e177]:hover{border-color:var(--step-color);transform:scale(1.2)}.step-dot.completed[data-v-6376e177]{background:var(--step-color);border-color:var(--step-color)}.step-dot.active[data-v-6376e177]{background:var(--step-color);border-color:var(--step-color);transform:scale(1.3);box-shadow:0 0 0 4px color-mix(in srgb,var(--step-color) 30%,transparent)}.tour-navigation[data-v-6376e177]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;border-top:1px solid var(--border);background:var(--bg-secondary)}.nav-btn[data-v-6376e177]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;border:none}.nav-prev[data-v-6376e177]{background:var(--bg-tertiary);color:var(--text-secondary)}.nav-prev[data-v-6376e177]:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.nav-prev[data-v-6376e177]:disabled{opacity:.4;cursor:not-allowed}.nav-next[data-v-6376e177]{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:var(--brand-blue)}.nav-next[data-v-6376e177]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d9a54d}.step-counter[data-v-6376e177]{font-size:.85rem;color:var(--text-muted);font-weight:500}@media(max-width:640px){.tour-modal[data-v-6376e177]{max-height:100vh;border-radius:0}.tour-content[data-v-6376e177]{padding:2rem 1.5rem 1.5rem}.step-icon[data-v-6376e177]{width:80px;height:80px}.step-icon svg[data-v-6376e177]{width:40px;height:40px}.step-title[data-v-6376e177]{font-size:1.5rem}.tour-navigation[data-v-6376e177]{padding:1rem 1.5rem}.nav-btn[data-v-6376e177]{padding:.625rem 1rem;font-size:.85rem}}.tour-overlay[data-v-b3701f91]{position:fixed;inset:0;z-index:10000;pointer-events:none}.tour-mask[data-v-b3701f91]{position:absolute;inset:0;pointer-events:auto;transition:all .3s ease}.spotlight-border[data-v-b3701f91]{position:absolute;border:3px solid var(--accent);border-radius:12px;box-shadow:0 0 0 4px #00d9a533,0 0 20px #00d9a54d;pointer-events:none;transition:all .3s ease;animation:spotlight-pulse-b3701f91 2s ease-in-out infinite}@keyframes spotlight-pulse-b3701f91{0%,to{box-shadow:0 0 0 4px #00d9a533,0 0 20px #00d9a54d}50%{box-shadow:0 0 0 8px #00d9a51a,0 0 30px #00d9a566}}.tour-tooltip[data-v-b3701f91]{position:absolute;width:340px;background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff1a;pointer-events:auto;overflow:hidden;z-index:10001}.tooltip-progress[data-v-b3701f91]{height:4px;background:var(--bg-tertiary)}.tooltip-progress .progress-fill[data-v-b3701f91]{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);transition:width .3s ease}.tooltip-close[data-v-b3701f91]{position:absolute;top:12px;right:12px;background:var(--bg-tertiary);border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.tooltip-close[data-v-b3701f91]:hover{background:var(--bg-hover);color:var(--text-primary)}.tooltip-content[data-v-b3701f91]{padding:1.5rem 1.5rem 1rem}.tooltip-title[data-v-b3701f91]{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;padding-right:2rem}.tooltip-text[data-v-b3701f91]{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.tooltip-footer[data-v-b3701f91]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--bg-secondary)}.step-counter[data-v-b3701f91]{font-size:.8rem;color:var(--text-muted);font-weight:500}.tooltip-actions[data-v-b3701f91]{display:flex;gap:.5rem}.btn-tour[data-v-b3701f91]{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border-radius:var(--radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease;border:none}.btn-prev[data-v-b3701f91]{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-prev[data-v-b3701f91]:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-next[data-v-b3701f91]{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:var(--brand-blue)}.btn-next[data-v-b3701f91]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d9a54d}.tooltip-fade-enter-active[data-v-b3701f91],.tooltip-fade-leave-active[data-v-b3701f91]{transition:all .3s ease}.tooltip-fade-enter-from[data-v-b3701f91],.tooltip-fade-leave-to[data-v-b3701f91]{opacity:0;transform:translateY(10px)}@media(max-width:640px){.tour-tooltip[data-v-b3701f91]{width:calc(100vw - 2rem);max-width:340px}.tooltip-content[data-v-b3701f91]{padding:1.25rem}.tooltip-footer[data-v-b3701f91]{padding:.875rem 1.25rem}}:root{--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--brand-green: #00D9A5;--brand-green-dark: #00B88A;--brand-blue: #1E3A5F;--brand-blue-light: #2D4A6F;--accent: #00D9A5;--accent-hover: #00C896;--accent-muted: rgba(0, 217, 165, .12);--accent-light: rgba(0, 217, 165, .08);--success: #22c55e;--success-muted: rgba(34, 197, 94, .12);--warning: #f59e0b;--warning-muted: rgba(245, 158, 11, .12);--danger: #ef4444;--danger-muted: rgba(239, 68, 68, .12);--info: #3b82f6;--info-muted: rgba(59, 130, 246, .12)}:root,[data-theme=dark]{--bg-primary: #0a0f14;--bg-secondary: #111920;--bg-tertiary: #1a2330;--bg-card: #151d27;--bg-hover: rgba(255, 255, 255, .06);--bg-active: rgba(255, 255, 255, .08);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--border: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .12);--border-focus: var(--accent);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 16px 32px rgba(0, 0, 0, .6);--shadow-glow: 0 0 24px rgba(0, 217, 165, .25);--scrollbar-track: #111920;--scrollbar-thumb: #2d3e50;--scrollbar-thumb-hover: #3d4e60}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-hover: rgba(30, 58, 95, .04);--bg-active: rgba(30, 58, 95, .06);--text-primary: #1e3a5f;--text-secondary: #475569;--text-muted: #94a3b8;--border: rgba(30, 58, 95, .1);--border-light: rgba(30, 58, 95, .15);--border-focus: var(--accent);--shadow-xs: 0 1px 2px rgba(30, 58, 95, .04);--shadow-sm: 0 2px 4px rgba(30, 58, 95, .06);--shadow-md: 0 4px 8px rgba(30, 58, 95, .08);--shadow-lg: 0 8px 16px rgba(30, 58, 95, .12);--shadow-xl: 0 16px 32px rgba(30, 58, 95, .16);--shadow-glow: 0 0 24px rgba(0, 217, 165, .2);--scrollbar-track: #f1f5f9;--scrollbar-thumb: #cbd5e1;--scrollbar-thumb-hover: #94a3b8}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}#app{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;letter-spacing:-.02em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}a{color:var(--accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;letter-spacing:.01em;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity var(--transition-fast)}.btn:hover:before{opacity:.08}.btn:active:before{opacity:.12}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:var(--brand-blue);font-weight:600;box-shadow:0 2px 8px #00d9a54d}.btn-primary:hover{box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-light)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:.5rem .875rem;font-size:.8125rem}.btn-lg{padding:.875rem 1.5rem;font-size:1rem}.btn-icon{padding:.625rem;width:40px;height:40px}.btn.loading,.btn:disabled{opacity:.7;cursor:not-allowed;pointer-events:none}.btn.loading{color:transparent!important}.btn.loading:after{content:"";position:absolute;width:18px;height:18px;border:2px solid currentColor;border-color:var(--brand-blue) transparent var(--brand-blue) transparent;border-radius:50%;animation:btn-spin .8s linear infinite}.btn-secondary.loading:after,.btn-ghost.loading:after{border-color:var(--text-secondary) transparent var(--text-secondary) transparent}.btn-danger.loading:after{border-color:white transparent white transparent}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-group{margin-bottom:1.25rem}.form-label{display:block;margin-bottom:.5rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);letter-spacing:.01em}.form-label.required:after,.form-group:has(input[required]) .form-label:after,.form-group:has(select[required]) .form-label:after,.form-group:has(textarea[required]) .form-label:after{content:" *";color:var(--danger);font-weight:600}.form-required-hint{font-size:.75rem;color:var(--text-muted);margin-bottom:1rem}.form-required-hint:before{content:"* ";color:var(--danger)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.9375rem;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--border-light)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.form-select option,select option{background:var(--bg-secondary);color:var(--text-primary);padding:.5rem}.form-select option:checked,select option:checked{background:var(--accent);color:var(--brand-blue)}.form-select option:disabled,select option:disabled{color:var(--text-muted)}[data-theme=light] .form-select option,[data-theme=light] select option{background:#fff;color:#1e3a5f}[data-theme=light] .form-select option:checked,[data-theme=light] select option:checked{background:#00d9a5;color:#1e3a5f}.form-input::placeholder{color:var(--text-muted)}.form-textarea{min-height:120px;resize:vertical}.form-checkbox{display:flex;align-items:center;gap:.75rem;cursor:pointer}.form-checkbox input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.form-switch{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.form-switch input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.switch-slider{position:relative;width:48px;height:26px;background:var(--bg-tertiary);border:2px solid var(--border);border-radius:26px;transition:all .3s ease;flex-shrink:0}.switch-slider:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--text-muted);border-radius:50%;transition:all .3s ease}.form-switch input[type=checkbox]:checked+.switch-slider{background:var(--accent);border-color:var(--accent)}.form-switch input[type=checkbox]:checked+.switch-slider:before{transform:translate(22px);background:#fff}.form-switch input[type=checkbox]:focus+.switch-slider{box-shadow:0 0 0 3px #00d4aa33}.switch-label{font-size:.95rem;color:var(--text-primary)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:all var(--transition-fast)}.card:hover{border-color:var(--border-light);box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.card-title{font-size:1rem;font-weight:600}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;border-radius:var(--radius-full)}.badge-success{background:var(--success-muted);color:var(--success)}.badge-warning{background:var(--warning-muted);color:var(--warning)}.badge-danger{background:var(--danger-muted);color:var(--danger)}.badge-info{background:var(--info-muted);color:var(--info)}.badge-muted{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-accent{background:var(--accent-muted);color:var(--accent)}.progress{height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-hover));border-radius:3px;transition:width var(--transition-normal)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius-lg)}.empty-state-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.6}.empty-state-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.empty-state-text{color:var(--text-secondary);margin-bottom:1.5rem;max-width:400px;line-height:1.6}.empty-state-tips{background:var(--accent-muted);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1.5rem;max-width:400px}.empty-state-tips .tip{font-size:.875rem;color:var(--text-secondary)}.empty-state-tips .tip strong{color:var(--accent)}.modal-overlay{position:fixed;inset:0;background:#0a0f14d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;animation:modalSlideUp .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xl)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-title{font-size:1.125rem;font-weight:600}.modal-close{background:var(--bg-hover);border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:8px;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.loading{display:flex;align-items:center;justify-content:center;padding:2rem}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:1.5rem;right:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem;box-shadow:var(--shadow-lg);z-index:11000;animation:toastSlideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.checkbox{position:relative;width:24px;height:24px;cursor:pointer;flex-shrink:0}.checkbox input{opacity:0;width:100%;height:100%;position:absolute;cursor:pointer}.checkbox .checkmark{position:absolute;inset:0;background:transparent;border:2px solid var(--border);border-radius:50%;transition:all .2s cubic-bezier(.4,0,.2,1)}.checkbox:hover .checkmark{border-color:var(--accent);background:var(--accent-muted)}.checkbox input:checked+.checkmark{background:var(--accent);border-color:var(--accent);animation:checkPop .3s cubic-bezier(.4,0,.2,1)}@keyframes checkPop{0%{transform:scale(.8)}50%{transform:scale(1.1)}to{transform:scale(1)}}.checkbox .checkmark:after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid white;border-width:0 2.5px 2.5px 0;transform:rotate(45deg);opacity:0;transition:opacity .15s ease}.checkbox input:checked+.checkmark:after{opacity:1}.page{padding:1.5rem 2rem;min-height:calc(100vh - 72px);max-width:1400px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header-actions{display:flex;align-items:center;gap:.75rem}.page-title{font-size:1.375rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.page-title svg{color:var(--accent);flex-shrink:0}.list{display:flex;flex-direction:column;gap:.5rem}.list-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.list-item:hover{border-color:var(--border-light);box-shadow:var(--shadow-xs)}.list-item-content{flex:1;min-width:0}.list-item-title{font-weight:500;margin-bottom:.15rem}.list-item-subtitle{font-size:.8125rem;color:var(--text-secondary)}.list-item-actions{display:flex;align-items:center;gap:.375rem}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.stat-label{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.5rem}.stat-value{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.stat-value.positive{color:var(--success)}.stat-value.negative{color:var(--danger)}.amount{font-variant-numeric:tabular-nums;font-weight:500}.amount.income{color:var(--success)}.amount.expense{color:var(--danger)}.divider{height:1px;background:var(--border);margin:1rem 0}.chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;background:var(--bg-tertiary);border-radius:var(--radius-full);color:var(--text-primary)}.chip-primary{background:var(--accent-muted);color:var(--accent)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-hover) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:var(--brand-blue);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9375rem;flex-shrink:0}.avatar-sm{width:32px;height:32px;font-size:.8125rem}.avatar-lg{width:56px;height:56px;font-size:1.25rem}[data-tooltip],[title]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:.5rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-primary);white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-fast);pointer-events:none;z-index:1000;box-shadow:var(--shadow-md)}[data-tooltip]:hover:after{opacity:1;visibility:visible}.btn-action{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--bg-tertiary);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;color:var(--text-secondary);transition:all var(--transition-fast)}.btn-action svg{width:16px;height:16px;stroke:currentColor}.btn-action:hover{background:var(--bg-hover);color:var(--text-primary);transform:scale(1.05)}.btn-action:active{transform:scale(.95)}.btn-action.danger:hover{background:var(--danger-muted);color:var(--danger)}.btn.loading{position:relative;color:transparent!important;pointer-events:none}.btn.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.page{padding:1rem;min-height:calc(100vh - 56px);max-width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1rem}.page-header-actions{width:100%;justify-content:space-between}.page-title{font-size:1.25rem}.btn{padding:.625rem 1rem;font-size:.875rem}.btn-lg{padding:.75rem 1.25rem}.card{padding:1rem;border-radius:var(--radius-md)}.stat-card{padding:1rem}.stat-value{font-size:1.25rem}.list-item{padding:.875rem 1rem;gap:.75rem}.list-item-actions{gap:.25rem}.modal{max-width:calc(100% - 1rem);margin:.5rem;border-radius:var(--radius-lg)}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-title{font-size:1rem}.form-input,.form-select,.form-textarea{padding:.625rem .875rem;font-size:1rem}.form-label{font-size:.8125rem}.toast{left:1rem;right:1rem;bottom:1rem}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4{font-size:1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:1rem}}@media(max-width:480px){.page{padding:.75rem;max-width:100%}.page-title{font-size:1.125rem}.btn{padding:.5rem .875rem;font-size:.8125rem}.card{padding:.875rem}.stat-value{font-size:1.125rem}.badge{padding:.2rem .5rem;font-size:.625rem}}@media(hover:none)and (pointer:coarse){.btn,.nav-link,.list-item,.dropdown-item{min-height:44px}.btn:before{display:none}.btn:active{transform:scale(.98)}.nav-link:active,.list-item:active{background:var(--bg-active)}}@supports (padding: max(0px)){.page{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom))}.modal{padding-bottom:env(safe-area-inset-bottom)}}@media(max-height:500px)and (orientation:landscape){.page{padding:.75rem}.modal{max-height:95vh}}@media print{.sidebar,.header,.btn,.modal-overlay{display:none!important}.main-area{margin-left:0!important}.page{padding:0}*{background:#fff!important;color:#000!important}}
