.app{width:100%;height:100%;min-height:100dvh;color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.app.adhd-mode{--bg-primary:var(--adhd-bg-primary);--bg-secondary:var(--adhd-bg-secondary);--primary:var(--adhd-primary);--text-primary:var(--adhd-text-primary);--border-light:var(--adhd-border)}.app.adhd-mode *{line-height:1.45}.app.adhd-mode .main-layout{filter:none;background-color:var(--adhd-bg-primary)}@media (width<=768px){.app{overflow:hidden auto}}.app:focus-within .focus-indicator{opacity:1}.focus-indicator{background:linear-gradient(90deg, var(--brand-accent), var(--primary));opacity:0;z-index:1000;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}@media (prefers-contrast:high){:root{--border-light:#000;--border-medium:#000;--text-secondary:#000;--bg-secondary:#fff}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100%}:root{--brand-start:#8d7cff;--brand-end:#5d3ff2;--brand-accent:#30d8c6;--primary:#8d7cff;--primary-dark:#6f5bf6;--accent:#30d8c6;--success:#22c995;--warning:#f5b85b;--error:#ff6b7a;--bg-app:linear-gradient(145deg, #090915 0%, #15112c 36%, #0c1924 72%, #090a12 100%);--bg-primary:#111423;--bg-secondary:#171b2d;--bg-tertiary:#ffffff0b;--surface:#121626d1;--surface-strong:#171c2ef0;--bg-elevated:#ffffff12;--text-primary:#f7f8ff;--text-secondary:#b9c1d8;--text-muted:#7f89a6;--border-light:#ffffff1b;--border-medium:#ffffff2e;--border:#ffffff21;--shadow-sm:0 1px 2px #0000002e;--shadow-md:0 18px 45px -26px #000000d6;--shadow-lg:0 30px 80px -36px #000000eb;--glass-bg:#121626a8;--glass-border:#ffffff24;--glass-shadow:0 18px 50px #00000057;--glass-blur:blur(22px) saturate(135%);--chip-bg:#8d7cff29;--chip-fg:#d7d1ff;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--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;--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.35s;--duration-slower:.5s;--ease-out:cubic-bezier(.25, .46, .45, .94);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-spring-gentle:cubic-bezier(.34, 1.3, .64, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--stagger:60ms;--stagger-fast:30ms;--adhd-bg-primary:#101525;--adhd-bg-secondary:#171d31;--adhd-primary:#30d8c6;--adhd-text-primary:#f7f8ff;--adhd-border:#ffffff21}:root[data-theme=dark]{--bg-app:linear-gradient(145deg, #090915 0%, #15112c 36%, #0c1924 72%, #090a12 100%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg-app:linear-gradient(145deg, #f7f9ff 0%, #edf2ff 42%, #eefdfb 100%);--bg-primary:#fff;--bg-secondary:#f3f6fb;--bg-tertiary:#0f172a0e;--surface:#ffffffdb;--surface-strong:#fffffff5;--bg-elevated:#0f172a0e;--text-primary:#111827;--text-secondary:#334155;--text-muted:#64748b;--border-light:#0f172a1f;--border-medium:#0f172a33;--border:#0f172a29;--glass-bg:#ffffffb8;--glass-border:#0f172a1f;--glass-shadow:0 18px 50px #0f172a1f;--chip-bg:#5d3ff21f;--chip-fg:#432dd8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-contrast=high]{--primary:#4f46e5;--primary-dark:#312e81;--accent:#008575;--text-primary:#fff;--text-secondary:#f8fafc;--text-muted:#e2e8f0;--bg-primary:#000;--bg-secondary:#0f172a;--surface:#000000f0;--surface-strong:#000;--border-light:#fff;--border-medium:#fff;--border:#fff}:root[data-theme=light][data-contrast=high]{--bg-app:#fff;--bg-primary:#fff;--bg-secondary:#fff;--surface:#fff;--surface-strong:#fff;--text-primary:#000;--text-secondary:#000;--text-muted:#111827;--border-light:#000;--border-medium:#000;--border:#000}:root[data-text=large]{font-size:112.5%}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body{font-family:var(--font-family);color:var(--text-primary);background:var(--bg-app);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;line-height:1.6;overflow-x:hidden}#root{width:100%;height:100%;min-height:100dvh;overflow:hidden}.card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow)}.pill-btn{border:1px solid var(--glass-border);color:#fff;transition:transform var(--duration-fast) var(--ease-spring-gentle), background var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out);background:#ffffff14;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.pill-btn:hover{border-color:#fff3;transform:translateY(-1px)}.pill-btn:active{transform:translateY(0)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-lg)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.loading-screen{background:var(--bg-app);flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:100dvh;display:flex}.loading-spinner{border:4px solid var(--border-light);border-top:4px solid var(--primary);width:40px;height:40px;animation:spin var(--duration-slower) linear infinite;margin-bottom:var(--space-lg);border-radius:50%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.skip-link{z-index:10000;background:var(--primary);color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-sm);box-shadow:var(--shadow-md);transition:top var(--duration-fast) var(--ease-out);padding:10px 18px;font-weight:600;text-decoration:none;position:absolute;top:-100%;left:16px}.skip-link:focus{outline-offset:2px;outline:2px solid #fff;top:12px}:focus-visible,button:focus-visible,[role=button]:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:2px;transition:outline var(--duration-normal) var(--ease-out), outline-offset var(--duration-normal) var(--ease-out)}button:focus-visible,[role=button]:focus-visible{border-radius:inherit}:root[data-contrast=high] :focus-visible,:root[data-contrast=high] button:focus-visible,:root[data-contrast=high] [role=button]:focus-visible,:root[data-contrast=high] a:focus-visible,:root[data-contrast=high] input:focus-visible,:root[data-contrast=high] select:focus-visible,:root[data-contrast=high] textarea:focus-visible,:root[data-contrast=high] [tabindex]:focus-visible{outline-offset:3px;outline-width:3px}@media (prefers-reduced-motion:reduce){:focus-visible,button:focus-visible,[role=button]:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{transition-duration:.01ms!important}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}
