:root{--navy: #0f172a;--navy-border: #1e293b;--page-bg: #eef2f7;--card-bg: #ffffff;--card-border: #cbd5e1;--card-shadow: 0 1px 0 0 #e2e8f0;--card-radius: 10px;--modal-radius: 16px;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-caption: #64748b;--primary: #2563eb;--primary-bg: #eff6ff;--primary-border: #bfdbfe;--primary-text: #1d4ed8;--success: #22c55e;--success-bg: #f0fdf4;--success-border: #bbf7d0;--success-text: #15803d;--warning: #f59e0b;--warning-bg: #fffbeb;--warning-border: #fde68a;--warning-text: #b45309;--danger: #dc2626;--danger-bg: #fef2f2;--danger-border: #fecaca;--danger-text: #dc2626;--ai-color: #4f46e5;--ai-bg: #f8faff;--ai-border: #818cf8;--nav-bg: #0f172a;--nav-icon: #e2e8f0;--nav-icon-size: 20px;--nav-label: #94a3b8;--nav-active: #60a5fa;--nav-active-bg: #1e3a5f;--btn-radius: 10px;--btn-height: 48px;--page-padding: 16px;--card-padding: 14px 16px;--gap-sm: 8px;--gap-md: 12px;--gap-lg: 16px;--safe-bottom: env(safe-area-inset-bottom, 34px);--safe-top: env(safe-area-inset-top, 0px)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#0f172a;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{overflow:hidden;height:100%;touch-action:pan-y;overscroll-behavior:none;-webkit-overflow-scrolling:touch;margin:0;padding:0;background-color:#f8fafc}*,*:before,*:after{box-sizing:border-box}body{overflow:hidden;height:100%;overscroll-behavior:none;touch-action:pan-y;-webkit-overflow-scrolling:touch;margin:0;padding:0}#root{height:100dvh;overflow-y:auto;overflow-x:hidden;position:relative}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f1f5f9;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@keyframes appIconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
