:root{--color-bg:oklch(98% 0 0);--color-bg-elevated:oklch(96% 0 0);--color-bg-card:oklch(100% 0 0);--color-bg-hover:oklch(94% 0 0);--color-surface:oklch(15% 0 0/.04);--color-surface-hover:oklch(15% 0 0/.08);--color-border:oklch(15% 0 0/.2);--color-border-strong:oklch(15% 0 0/.4);--color-text:oklch(13% 0 0);--color-text-secondary:oklch(30% 0 0);--color-text-muted:oklch(42% 0 0);--color-primary:oklch(52% .2 290);--color-primary-hover:oklch(45% .22 290);--color-primary-muted:oklch(52% .2 290/.12);--color-primary-text:oklch(98% 0 0);--color-accent:oklch(55% .22 290);--color-accent-hover:oklch(48% .24 290);--color-success:oklch(45% .17 145);--color-success-muted:oklch(45% .17 145/.15);--color-warning:oklch(52% .15 85);--color-warning-muted:oklch(52% .15 85/.15);--color-error:oklch(48% .2 25);--color-error-muted:oklch(48% .2 25/.12);--color-info:oklch(55% 0 0);--color-overlay:oklch(0% 0 0/.5);--color-bg-translucent:oklch(from var(--color-bg) l c h / .85);--font-sans:"Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-display:"Unbounded", "Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-heading:"Golos Text", "Geist", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;--text-2xs:.75rem;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--leading-none:1;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tighter:-.02em;--tracking-tight:-.01em;--tracking-normal:0;--tracking-wide:.01em;--tracking-wider:.05em;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px oklch(0% 0 0/.06);--shadow-md:0 2px 8px oklch(0% 0 0/.08);--shadow-lg:0 8px 24px oklch(0% 0 0/.12);--shadow-xl:0 16px 48px oklch(0% 0 0/.16);--transition-fast:.1s ease-out;--transition-base:.15s ease-out;--transition-slow:.25s ease-out;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-toast:400}[data-theme=dark]{--color-bg:oklch(17% .01 290);--color-bg-elevated:oklch(21% .01 290);--color-bg-card:oklch(24% .01 290);--color-bg-hover:oklch(28% .01 290);--color-surface:oklch(98% 0 0/.06);--color-surface-hover:oklch(98% 0 0/.12);--color-border:oklch(98% 0 0/.2);--color-border-strong:oklch(98% 0 0/.4);--color-text:oklch(95% 0 0);--color-text-secondary:oklch(78% 0 0);--color-text-muted:oklch(65% 0 0);--color-primary:oklch(72% .18 290);--color-primary-hover:oklch(65% .2 290);--color-primary-muted:oklch(72% .18 290/.18);--color-primary-text:oklch(8% 0 0);--color-accent:oklch(68% .2 290);--color-accent-hover:oklch(60% .22 290);--color-success:oklch(75% .17 145);--color-success-muted:oklch(75% .17 145/.18);--color-warning:oklch(85% .15 85);--color-warning-muted:oklch(85% .15 85/.18);--color-error:oklch(70% .18 25);--color-error-muted:oklch(70% .18 25/.15);--color-info:oklch(75% 0 0);--color-overlay:oklch(0% 0 0/.6);--shadow-sm:0 1px 2px oklch(0% 0 0/.4);--shadow-md:0 2px 8px oklch(0% 0 0/.4);--shadow-lg:0 8px 24px oklch(0% 0 0/.5);--shadow-xl:0 16px 48px oklch(0% 0 0/.6)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1, "calt" 1;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-normal);line-height:var(--leading-normal);letter-spacing:var(--tracking-normal);color:var(--color-text);background-color:var(--color-bg);min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text);text-wrap:balance}h1{font-size:var(--text-5xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tighter)}h2{font-size:var(--text-4xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tighter)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{color:var(--color-text-secondary);line-height:var(--leading-relaxed)}small{font-size:var(--text-sm);color:var(--color-text-muted)}strong{font-weight:var(--weight-semibold);color:var(--color-text)}a{color:var(--color-text);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-text)}.logo-text{font-family:var(--font-heading);letter-spacing:var(--tracking-tight)}:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}::selection{background-color:var(--color-surface-hover);color:var(--color-text)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-elevated)}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.container{width:100%;max-width:1200px;padding:0 var(--space-6);margin:0 auto}.text-accent{color:var(--color-accent)}.card{background:var(--color-bg-card);border-radius:var(--radius-xl);padding:var(--space-6);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-sm)}.card-glass{background:var(--color-bg-card);border-radius:var(--radius-xl);padding:var(--space-6)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-none);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-text);color:var(--color-bg);box-shadow:0 1px 2px oklch(0% 0 0/.1)}.btn-primary:hover:not(:disabled){background:var(--color-text-secondary);color:var(--color-bg);box-shadow:0 2px 8px oklch(0% 0 0/.15)}.btn-accent{background:var(--color-text);color:var(--color-bg)}.btn-accent:hover:not(:disabled){background:var(--color-text-secondary);color:var(--color-bg)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-strong);color:var(--color-text)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-surface);color:var(--color-text)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base);border-radius:var(--radius-xl)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.input::placeholder{color:var(--color-text-muted)}.input:hover{border-color:var(--color-border-strong)}.input:focus{border-color:var(--color-text);box-shadow:0 0 0 3px var(--color-surface-hover);outline:none}.input-group{gap:var(--space-2);flex-direction:column;display:flex}.label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.badge{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-full);background:var(--color-surface-hover);color:var(--color-text);align-items:center;display:inline-flex}.badge-success{background:oklch(45% .17 145/.15);background:oklch(from var(--color-success) l c h / .15);color:var(--color-success)}.badge-warning{background:oklch(55% .15 85/.15);background:oklch(from var(--color-warning) l c h / .15);color:var(--color-warning)}.badge-error{background:oklch(48% .2 25/.15);background:oklch(from var(--color-error) l c h / .15);color:var(--color-error)}.empty-state{text-align:center;padding:var(--space-16) var(--space-8);color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{width:64px;height:64px;margin-bottom:var(--space-6);opacity:.4}.empty-state h3{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.empty-state p{font-size:var(--text-sm);max-width:280px}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-text);border-radius:var(--radius-full);width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.table{border-collapse:collapse;width:100%}.table th,.table td{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}.table th{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.table tbody tr:hover{background:var(--color-surface)}.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}.auth-page{min-height:100vh;padding:var(--space-6);background:radial-gradient(ellipse 80% 50% at 50% 0%, oklch(52% .12 290/.08) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 100%, oklch(45% .08 200/.04) 0%, transparent 50%), var(--color-bg);justify-content:center;align-items:center;display:flex}[data-theme=dark] .auth-page{background:radial-gradient(ellipse 80% 50% at 50% 0%, oklch(52% .15 290/.15) 0%, transparent 55%), radial-gradient(ellipse 60% 40% at 80% 100%, oklch(45% .1 200/.06) 0%, transparent 50%), var(--color-bg)}.auth-container{width:100%;max-width:380px}.auth-logo,.auth-card,.auth-links{animation:.5s cubic-bezier(.16,1,.3,1) both enter;animation-delay:calc(var(--delay) * 80ms)}@keyframes enter{0%{opacity:0;transform:translateY(10px)}}.auth-logo{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-10);text-decoration:none;display:flex}.auth-card{background:var(--color-bg-card);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-lg)}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-header h1{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-2)}.auth-header p{font-size:var(--text-sm);color:var(--color-text-muted)}.auth-error{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-error-muted);border:1px solid oklch(from var(--color-error) l c h / .2);border-radius:var(--radius-lg);color:var(--color-error);font-size:var(--text-sm);line-height:var(--leading-snug);margin-bottom:var(--space-6);animation:.35s shake;display:flex}.auth-error svg{flex-shrink:0;margin-top:1px}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.auth-links{text-align:center;margin-top:var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}@media (width<=768px){:root{--text-6xl:2.5rem;--text-5xl:2rem;--text-4xl:1.75rem;--text-3xl:1.5rem}.container{padding:0 var(--space-4)}}
