:root{--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-200: #bfdbfe;--color-primary-300: #93c5fd;--color-primary-400: #60a5fa;--color-primary-500: #3b82f6;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-primary-800: #1e40af;--color-primary-900: #1e3a8a;--color-success-50: #f0fdf4;--color-success-100: #dcfce7;--color-success-200: #bbf7d0;--color-success-300: #86efac;--color-success-400: #4ade80;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-700: #15803d;--color-success-800: #166534;--color-success-900: #14532d;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-200: #fde68a;--color-warning-300: #fcd34d;--color-warning-400: #fbbf24;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-warning-800: #92400e;--color-warning-900: #78350f;--color-error-50: #fef2f2;--color-error-100: #fee2e2;--color-error-200: #fecaca;--color-error-300: #fca5a5;--color-error-400: #f87171;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-error-800: #991b1b;--color-error-900: #7f1d1d;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--border-radius-2xl: 1rem;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out;--transition-slow: .5s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}.dark{--color-bg-primary: var(--color-gray-900);--color-bg-secondary: var(--color-gray-800);--color-bg-tertiary: var(--color-gray-700);--color-text-primary: var(--color-gray-100);--color-text-secondary: var(--color-gray-300);--color-text-tertiary: var(--color-gray-400);--color-border-primary: var(--color-gray-700);--color-border-secondary: var(--color-gray-600);--color-surface-primary: var(--color-gray-800);--color-surface-secondary: var(--color-gray-700);--color-surface-tertiary: var(--color-gray-600)}:root{--color-bg-primary: var(--color-gray-50);--color-bg-secondary: white;--color-bg-tertiary: var(--color-gray-100);--color-text-primary: var(--color-gray-900);--color-text-secondary: var(--color-gray-700);--color-text-tertiary: var(--color-gray-500);--color-border-primary: var(--color-gray-200);--color-border-secondary: var(--color-gray-300);--color-surface-primary: white;--color-surface-secondary: var(--color-gray-50);--color-surface-tertiary: var(--color-gray-100)}.theme-transition{transition:background-color var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal)}.bg-primary{background-color:var(--color-primary-500)}.bg-success{background-color:var(--color-success-500)}.bg-warning{background-color:var(--color-warning-500)}.bg-error{background-color:var(--color-error-500)}.text-primary{color:var(--color-primary-500)}.text-success{color:var(--color-success-500)}.text-warning{color:var(--color-warning-500)}.text-error{color:var(--color-error-500)}.border-primary{border-color:var(--color-primary-500)}.border-success{border-color:var(--color-success-500)}.border-warning{border-color:var(--color-warning-500)}.border-error{border-color:var(--color-error-500)}:root{--radius: 12px}.modal-backdrop{z-index:60}.toast{z-index:70}.button-focus:focus{outline:3px solid rgba(52,199,89,.18);outline-offset:2px}.safe-bottom{padding-bottom:calc(8px + env(safe-area-inset-bottom))}#bottomNav{transition:all .16s ease;z-index:80}#bottomNav .nav-item.bg-accent{transform:translateY(-2px)}#bottomNav .shadow-lg{box-shadow:0 8px 28px #0f172a1f}#bottomNav .nav-item{min-height:56px;min-width:64px}#bottomNav .nav-item i{line-height:1}@media (min-width: 768px){#bottomNav{padding:6px 8px}#bottomNav .nav-item{min-width:110px;padding:8px 12px;flex:0 0 auto}#bottomNav .nav-item span{font-size:.9rem}}@keyframes pulse-red{0%,to{transform:scale(1);box-shadow:0 0 #ef4444b3}50%{transform:scale(1.05);box-shadow:0 0 0 10px #ef444400}}.pulse-animation{animation:pulse-red 2s infinite}#toastRoot{position:fixed;right:1rem;bottom:6rem;z-index:9999;pointer-events:none}#toastRoot .toast{pointer-events:auto}.modal-backdrop{z-index:50}.modal-instance:nth-child(2) .modal-backdrop{z-index:60}.modal-instance:nth-child(3) .modal-backdrop{z-index:70}@keyframes slide-down{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-up{0%{transform:translateY(0);opacity:1}to{transform:translateY(-12px);opacity:0}}.toast-enter{animation:slide-down .2s ease-out}.toast-exit{animation:slide-up .18s ease-in}.spinner-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;opacity:0;transition:opacity .3s ease}.spinner-overlay.show{opacity:1}.spinner{border:4px solid rgba(255,255,255,.3);border-radius:50%;border-top:4px solid #fff;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
