:root{color-scheme:light;--color-bg-solid:#f5f0e8;--glass-bg:rgba(255,255,255,0.92);--glass-bg-hover:#f5f0e8;--glass-bg-subtle:var(--taskbar-popover-bg);--glass-bg-subtle-hover:rgba(28,32,42,0.98);--glass-bg-taskbar:var(--taskbar-surface);--glass-blur:20px;--glass-border:var(--taskbar-border);--chip-border-light:#d4ccc0;--chip-border-strong:#bfb5a6;--chip-fill-viewed:#fffcf7;--color-text:#1e1e1e;--color-text-muted:#616161;--color-text-faint:#8a8a8a;--color-btn-fill:#0078d4;--color-btn-text:#ffffff;--color-btn-fill-hover:#106ebe;--color-highlight:rgba(0,120,212,0.22);--app-margin:8px;--taskbar-bottom:14px;--tab-gap:var(--app-margin);--tab-manager-inset:4px;--menu-bar-height:40px;--menu-brand-min-width:200px;--taskbar-height:52px;--taskbar-width:min(820px,calc(100% - var(--app-margin) * 2));--popover-width:var(--taskbar-width);--taskbar-radius:999px;--taskbar-center-bottom:calc(var(--taskbar-bottom) + var(--taskbar-height) / 2);--popover-radius-top:18px;--popover-compact-height:2.75rem;--tab-radius:8px;--taskbar-surface:rgba(4,8,16,0.72);--taskbar-border:rgba(255,255,255,0.1);--taskbar-text:#ffffff;--taskbar-text-muted:rgba(255,255,255,0.62);--taskbar-text-faint:rgba(255,255,255,0.38);--taskbar-btn-fill:#c8d0dc;--taskbar-btn-text:#121820;--taskbar-btn-fill-hover:#d8e0ea;--taskbar-popover-bg:rgba(12,16,24,0.94);--taskbar-popover-border:rgba(255,255,255,0.12);--taskbar-highlight:rgba(140,190,255,0.35);--workspace-bg:#fffcf7;--workspace-header-bg:#efe9e0;--workspace-tab-inactive:#e5ddd2;--workspace-surface:#fffcf7;--workspace-surface-hover:#ebe4d9;--workspace-border:#d9d0c4;--workspace-border-subtle:#e8e0d4;--workspace-radius:12px;--workspace-text:#2a2622;--workspace-text-muted:#6b6358;--workspace-text-faint:#9a9186;--workspace-accent:#5762d5;--workspace-accent-hover:#4a54be;--workspace-accent-subtle:rgba(87,98,213,0.12);--workspace-link:#5762d5;--workspace-focus-ring:rgba(87,98,213,0.35);--workspace-shadow:0 1px 3px rgba(42,32,18,0.08);--workspace-font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--chrome-bg:#fffcf7;--chrome-text:#2a2622;--edge-glint:linear-gradient(135deg,rgba(218,192,172,0.35),rgba(255,252,247,0.5) 40%,rgba(180,160,140,0.12) 70%,rgba(218,192,172,0.2));--font-sans:"Montserrat",system-ui,-apple-system,sans-serif}[data-theme=light]{color-scheme:light;--primary:#5762d5;--primary-hover:#4a54be;--primary-muted:#6e78dc;--primary-subtle:rgba(87,98,213,0.12);--primary-subtle-hover:rgba(87,98,213,0.18);--app-bg:#f6f9fc;--sidebar-shell-bg:#f6f9fc;--sidebar-bg:#ffffff;--sidebar-border:#e3e8ee;--sidebar-text:#1a1f36;--sidebar-text-muted:#4f566b;--sidebar-text-faint:#697386;--sidebar-hover:#f0f3f9;--sidebar-active-bg:var(--primary-subtle);--sidebar-active-text:var(--primary);--surface-bg:#ffffff;--surface-border:#e3e8ee;--surface-text:#1a1f36;--surface-text-muted:#4f566b;--surface-text-faint:#697386;--surface-hover:#f7fafc;--accent:var(--primary);--accent-hover:var(--primary-hover);--accent-subtle:var(--primary-subtle);--workspace-bg:#ffffff;--workspace-header-bg:#f6f9fc;--workspace-tab-inactive:#eef2f7;--workspace-surface:#ffffff;--workspace-surface-hover:#f0f3f9;--workspace-border:#e3e8ee;--workspace-border-subtle:#eef2f7;--workspace-text:#1a1f36;--workspace-text-muted:#4f566b;--workspace-text-faint:#697386;--workspace-accent:var(--primary);--workspace-accent-hover:var(--primary-hover);--workspace-accent-subtle:var(--primary-subtle);--workspace-link:var(--primary);--workspace-focus-ring:rgba(87,98,213,0.35);--workspace-shadow:0 1px 3px rgba(26,31,54,0.06),0 1px 2px rgba(26,31,54,0.04);--workspace-radius:12px;--content-gutter:24px;--page-title-size:1.25rem;--page-title-weight:550;--nav-label-weight:450;--nav-label-weight-active:500;--nav-icon-stroke:1.5;--color-bg-solid:#f6f9fc;--color-text:#1a1f36;--color-text-muted:#4f566b;--color-text-faint:#697386;--color-btn-fill:var(--primary);--color-btn-text:#ffffff;--color-btn-fill-hover:var(--primary-hover);--color-highlight:var(--primary-subtle);--glass-border:#e3e8ee;--edge-glint:none}[data-theme=dark]{color-scheme:dark;--primary:#5762d5;--primary-hover:#6e78dc;--primary-muted:#959de8;--primary-subtle:rgba(87,98,213,0.2);--primary-subtle-hover:rgba(87,98,213,0.28);--app-bg:#0a0d11;--sidebar-shell-bg:#0a0d11;--sidebar-bg:#13161c;--sidebar-border:#2a2f3a;--sidebar-text:#f7fafc;--sidebar-text-muted:#a3acba;--sidebar-text-faint:#6b7380;--sidebar-hover:#1a1f28;--sidebar-active-bg:var(--primary-subtle);--sidebar-active-text:var(--primary-muted);--surface-bg:#161b22;--surface-border:#2a2f3a;--surface-text:#f7fafc;--surface-text-muted:#a3acba;--surface-text-faint:#6b7380;--surface-hover:#1e2430;--accent:var(--primary-muted);--accent-hover:#a8aff0;--accent-subtle:var(--primary-subtle);--workspace-bg:#161b22;--workspace-header-bg:#13161c;--workspace-tab-inactive:#1e2430;--workspace-surface:#1a1f28;--workspace-surface-hover:#242b38;--workspace-border:#2a2f3a;--workspace-border-subtle:#232833;--workspace-text:#f7fafc;--workspace-text-muted:#a3acba;--workspace-text-faint:#6b7380;--workspace-accent:var(--primary-muted);--workspace-accent-hover:#a8aff0;--workspace-accent-subtle:var(--primary-subtle);--workspace-link:var(--primary-muted);--workspace-focus-ring:rgba(87,98,213,0.45);--workspace-shadow:0 1px 3px rgba(0,0,0,0.35);--workspace-radius:12px;--content-gutter:24px;--page-title-size:1.25rem;--page-title-weight:550;--nav-label-weight:450;--nav-label-weight-active:500;--nav-icon-stroke:1.5;--color-bg-solid:#0a0d11;--color-text:#f7fafc;--color-text-muted:#a3acba;--color-text-faint:#6b7380;--color-btn-fill:var(--primary);--color-btn-text:#ffffff;--color-btn-fill-hover:var(--primary-hover);--color-highlight:var(--primary-subtle);--glass-border:rgba(255,255,255,0.1);--edge-glint:none}.app-icon{display:block;flex:0 0 auto;flex-shrink:0;aspect-ratio:1/1;overflow:visible}.glass-surface{position:relative;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(1.05);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.05);border:1px solid var(--glass-border);box-shadow:var(--workspace-shadow)}.glass-surface--subtle{background:var(--glass-bg-subtle)}.glass-surface--subtle.is-hovered,.glass-surface--subtle:hover{background:var(--glass-bg-subtle-hover)}.glass-surface--taskbar{background:var(--glass-bg-taskbar);border-color:var(--taskbar-border);box-shadow:0 4px 24px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.08)}.glass-surface--glassy{background:#ffffff;backdrop-filter:blur(var(--glass-blur)) saturate(1.05);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.05);border-color:var(--glass-border);box-shadow:var(--workspace-shadow)}.glass-surface--glassy:before{opacity:.35}.glass-surface--chrome{background:var(--chrome-bg);backdrop-filter:blur(var(--glass-blur)) saturate(1.05);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.05);border-color:var(--glass-border);color:var(--chrome-text);box-shadow:var(--workspace-shadow)}.glass-surface--chrome:before{opacity:.2}.glass-surface:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--edge-glint);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.4}.glass-capsule{border-radius:999px}.glass-panel{border-radius:var(--tab-radius)}.glass-surface--no-glint:before{display:none}.animated-background{position:fixed;inset:0;z-index:0;background:var(--color-bg-solid)}*,:after,:before{box-sizing:border-box}body,html{height:100%;margin:0}body{font-family:var(--font-sans);color:var(--workspace-text);background:var(--app-bg);-webkit-font-smoothing:antialiased;overflow:hidden}button{cursor:pointer}button,input,textarea{font-family:inherit}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--app-bg)}.auth-card{width:100%;max-width:400px;padding:2rem;border-radius:var(--radius-lg,12px);background:var(--glass-bg,rgba(255,255,255,.08));border:1px solid var(--glass-border,rgba(255,255,255,.12))}.auth-card h1{margin:0 0 .5rem;font-size:1.5rem}.auth-card form{gap:1rem;margin-top:1.5rem}.auth-card form,.auth-card label{display:flex;flex-direction:column}.auth-card label{gap:.35rem;font-size:.875rem}.auth-card input{padding:.6rem .75rem;border-radius:8px;border:1px solid var(--glass-border);background:var(--workspace-panel-bg);color:inherit}.auth-card button[type=submit]{padding:.65rem 1rem;border-radius:8px;border:none;background:var(--accent,#4f6ef7);color:#fff;font-weight:600}.auth-card__footer{margin-top:1rem;font-size:.875rem;text-align:center}.auth-card__footer a{color:var(--accent,#4f6ef7)}.projects-page,.settings-page{padding:2rem;max-width:960px}.projects-page__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.5rem}.project-card{padding:1.25rem;border-radius:12px;border:1px solid var(--glass-border);background:var(--workspace-panel-bg);text-align:left;transition:border-color .15s}.project-card:hover{border-color:var(--accent,#4f6ef7)}.project-card h3{margin:0 0 .5rem;font-size:1rem}.project-card time{font-size:.75rem;opacity:.7}.settings-page__section{margin-bottom:2rem}.settings-page__section h2{font-size:1rem;margin:0 0 1rem}.settings-page__field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;max-width:320px}.settings-page__field input,.settings-page__field select{padding:.5rem .75rem;border-radius:8px;border:1px solid var(--glass-border);background:var(--workspace-panel-bg);color:inherit}.billing-page{padding:2rem;max-width:720px}.billing-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:1rem;gap:1rem;margin:1.5rem 0}.billing-plan{padding:1.25rem;border-radius:12px;border:1px solid var(--glass-border);background:var(--workspace-panel-bg)}.billing-plan--current{border-color:var(--accent,#4f6ef7)}.billing-plan button{margin-top:1rem;width:100%;padding:.5rem;border-radius:8px;border:none;background:var(--accent,#4f6ef7);color:#fff}*{scrollbar-width:none}::-webkit-scrollbar{display:none}@keyframes scroll-bounce-top{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.55,0,1,.45)}28%{transform:translateY(9px);animation-timing-function:cubic-bezier(.34,1.4,.64,1)}to{transform:translateY(0)}}@keyframes scroll-bounce-bottom{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.55,0,1,.45)}28%{transform:translateY(-9px);animation-timing-function:cubic-bezier(.34,1.4,.64,1)}to{transform:translateY(0)}}.scroll-bounce-bottom,.scroll-bounce-top{will-change:transform;animation-duration:.42s;animation-fill-mode:forwards}.scroll-bounce-top{animation-name:scroll-bounce-top}.scroll-bounce-bottom{animation-name:scroll-bounce-bottom}