:root{color-scheme:light;--color-accent: #4f46e5;--color-accent-hover: #4338ca;--color-accent-light: #eef2ff;--color-accent-border: #c7d2fe;--color-ink: #0f172a;--color-ink-muted: #475569;--color-ink-faint: #94a3b8;--color-surface: #ffffff;--color-surface-alt: #f8fafc;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-success: #059669;--color-success-bg: #d1fae5;--color-warning: #b45309;--color-warning-bg: #fef3c7;--color-danger: #dc2626;--color-danger-bg: #fee2e2;--color-cta-bg: var(--color-ink);--color-cta-ink: #ffffff;--color-cta-ink-muted: #cbd5e1;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 12px 32px rgba(15, 23, 42, .12);--shadow-accent: 0 8px 20px rgba(79, 70, 229, .28);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif}:root[data-theme=dark]{color-scheme:dark;--color-accent: #6366f1;--color-accent-hover: #818cf8;--color-accent-light: rgba(99, 102, 241, .18);--color-accent-border: #4338ca;--color-ink: #f1f5f9;--color-ink-muted: #94a3b8;--color-ink-faint: #64748b;--color-surface: #161d2e;--color-surface-alt: #0b1120;--color-border: #232f45;--color-border-strong: #334155;--color-success: #34d399;--color-success-bg: rgba(16, 185, 129, .16);--color-warning: #fbbf24;--color-warning-bg: rgba(217, 119, 6, .2);--color-danger: #f87171;--color-danger-bg: rgba(220, 38, 38, .2);--color-cta-bg: var(--color-accent);--color-cta-ink: #ffffff;--color-cta-ink-muted: rgba(255, 255, 255, .75);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .55);--shadow-accent: 0 8px 24px rgba(99, 102, 241, .45)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--color-surface-alt);color:var(--color-ink);-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}h1,h2,h3{color:var(--color-ink);font-weight:700;letter-spacing:-.02em}a{color:var(--color-accent)}.container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.container-narrow{max-width:480px;margin:0 auto;padding:3rem 1.5rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2rem}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;color:var(--color-accent);margin:0 0 .5rem}.section-title{font-size:1.75rem;margin:0 0 .5rem}.lede{font-size:1.05rem;color:var(--color-ink-muted);line-height:1.6;margin:0}.btn,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.5rem;border:none;padding:.65rem 1.15rem;border-radius:var(--radius-md);font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .05s;font-family:inherit}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn{background:var(--color-accent);color:#fff;box-shadow:var(--shadow-sm)}.btn:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-accent)}.btn:active{transform:translateY(1px);box-shadow:var(--shadow-sm)}.btn:disabled{background:var(--color-ink-faint);cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-alt);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary:active{transform:translateY(1px)}.btn-ghost{background:transparent;color:var(--color-ink-muted);padding:.5rem .75rem}.btn-ghost:hover{background:var(--color-surface-alt);color:var(--color-ink)}.btn-lg{padding:.85rem 1.6rem;font-size:1.05rem}.btn-icon{width:1.1em;height:1.1em;flex-shrink:0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:background-color .2s ease,border-color .2s ease,box-shadow .15s,transform .1s}.field{display:flex;flex-direction:column;gap:.4rem;font-size:.88rem;font-weight:600;color:var(--color-ink-muted)}.input{padding:.65rem .8rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;color:var(--color-ink);background:var(--color-surface);transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}textarea.input{font-family:inherit;resize:vertical}.chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:.3rem .7rem;font-size:.85rem;color:var(--color-ink-muted)}.badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.02em}.badge-neutral{background:var(--color-border);color:var(--color-ink-muted)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.empty{color:var(--color-ink-muted)}.error{background:var(--color-danger-bg);color:var(--color-danger);padding:.65rem .9rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500}.auth-page{position:relative;overflow:hidden;min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem}.auth-card,.code-card{position:relative;z-index:1;width:100%;max-width:400px;display:flex;flex-direction:column;gap:1.1rem;padding:2.25rem 2rem;box-shadow:var(--shadow-md)}.auth-mark{display:inline-flex;width:2.6rem;height:2.6rem;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-accent);color:#fff;margin-bottom:.25rem}.auth-mark svg{width:1.5rem;height:1.5rem}.auth-card h1,.code-card h1{margin:0;font-size:1.5rem}.auth-subtitle{margin:-.6rem 0 0;color:var(--color-ink-muted);font-size:.92rem}.auth-card button[type=submit],.code-card button[type=submit]{margin-top:.4rem;width:100%}.switch{font-size:.87rem;text-align:center;color:var(--color-ink-muted);margin:0}.switch a{font-weight:600;text-decoration:none}.skeleton{background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface-alt) 37%,var(--color-border) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite;border-radius:var(--radius-md)}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}[dir=rtl] .btn-icon{transform:scaleX(-1)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-fade-up{animation:fade-in-up .55s cubic-bezier(.16,1,.3,1) both}.animate-pop{animation:pop-in .4s cubic-bezier(.16,1,.3,1) both}.card-interactive{transition:background-color .2s ease,border-color .2s ease,box-shadow .15s,transform .15s}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.btn:hover,.btn-secondary:hover,.card-interactive:hover{transform:none}}
