@font-face{font-family:Coolvetica;src:url("/fonts/Coolvetica Rg.otf")format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--font-sans:var(--font-display),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-flex:var(--font-display),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:var(--font-mono-geist),"JetBrains Mono","Fira Code",monospace;--font-brand:"Coolvetica",var(--font-sans);--sidebar-width:260px;--transition-fast:.15s ease;--transition-normal:.2s ease;--accent-primary:#3b82f6;--accent-primary-hover:#2563eb;--accent-secondary:#22c55e;--accent-warning:#f59e0b;--accent-danger:#ef4444;--accent-danger-hover:#dc2626}:root,[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#111;--bg-tertiary:#171717;--bg-elevated:#1a1a1a;--bg-hover:#262626;--border-subtle:#262626;--border-default:#333;--border-strong:#404040;--text-primary:#fafafa;--text-secondary:#a3a3a3;--text-tertiary:#737373;--text-muted:#525252;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-elevated:#fff;--bg-hover:#3b82f614;--border-subtle:#e2e8f0;--border-default:#cbd5e1;--border-strong:#94a3b8;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#64748b;--text-muted:#94a3b8;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--accent-primary:#2563eb;--accent-primary-hover:#1d4ed8}[data-theme=light] .modal-overlay{background:#0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;overflow-x:hidden}a{color:var(--accent-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-primary-hover)}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:16px}code,pre{font-family:var(--font-mono)}.landing-light{color:#1d1d1f;background:#fafbfc;min-height:100vh}.landing-section{padding-top:5rem;padding-bottom:5rem;scroll-margin-top:72px}@media (max-width:768px){.landing-section{padding-top:3.5rem;padding-bottom:3.5rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px;transition:background .15s}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::-webkit-scrollbar-thumb:active{background:var(--text-tertiary)}::-webkit-scrollbar-corner{background:var(--bg-secondary)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong)var(--bg-secondary)}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.scrollbar-hidden::-webkit-scrollbar{display:none}.scrollbar-hidden{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-auto{overflow:auto}.scrollbar-auto::-webkit-scrollbar-thumb{background:0 0}.scrollbar-auto:hover::-webkit-scrollbar-thumb{background:var(--border-strong)}.scrollbar-auto:hover::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.hidden{display:none!important}.btn{transition:all var(--transition-fast);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;display:inline-flex}.btn svg{flex-shrink:0;width:16px;height:16px}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-default)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-danger{background:var(--accent-danger);color:#fff}.btn-danger:hover{background:var(--accent-danger-hover)}.btn-full{width:100%}.btn-icon{width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-fast);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-icon svg{width:18px;height:18px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{background:var(--bg-tertiary);border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:all var(--transition-fast);border-radius:8px;padding:12px 14px;font-size:16px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #3b82f626}.form-hint{color:var(--text-tertiary);margin-top:6px;font-size:12px;display:block}.checkbox-label{cursor:pointer;color:var(--text-secondary);transition:color var(--transition-fast);align-items:center;gap:10px;font-size:14px;display:flex}.checkbox-label:hover{color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border:1px solid var(--border-default);-webkit-overflow-scrolling:touch;border-radius:16px;width:100%;max-width:440px;max-height:calc(100vh - 32px);animation:.3s modalSlideUp;overflow-y:auto}.modal.modal-lg{max-width:640px}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{background:var(--bg-secondary);z-index:10;justify-content:space-between;align-items:center;gap:16px;padding:20px 20px 0;display:flex;position:sticky;top:0}.modal-header h2{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:18px;font-weight:600;overflow:hidden}.modal-close{width:32px;height:32px;color:var(--text-tertiary);transition:all var(--transition-fast);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:24px;display:flex}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:20px}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-secondary);justify-content:space-between;gap:12px;padding:16px 20px;display:flex;position:sticky;bottom:0}.empty-state{text-align:center;padding:60px 20px}.empty-icon{background:var(--bg-tertiary);border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 20px;display:flex}.empty-icon svg{width:36px;height:36px;color:var(--text-tertiary)}.empty-state h2{margin-bottom:8px;font-size:18px;font-weight:600}.empty-state p{color:var(--text-secondary);max-width:300px;margin-bottom:24px;margin-left:auto;margin-right:auto;font-size:14px}.spinner{border:2px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10000;background:var(--accent-primary);color:#fff;border-radius:0 0 8px 8px;padding:12px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:16px}.skip-link:focus{top:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:768px){:root{--sidebar-width:0}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:16px 16px 0 0;max-width:100%;max-height:90vh;animation:.3s modalSlideUpMobile}@keyframes modalSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}@media (max-width:480px){.modal-header{padding:16px 16px 0}.modal-header h2{font-size:16px}.modal-body,.modal-footer{padding:16px}.empty-state{padding:40px 16px}.empty-icon{width:64px;height:64px}.empty-icon svg{width:32px;height:32px}.btn{padding:12px 16px}}
