:root,[data-theme=dark]{--bg:#0b0c0e;--surface:#141619;--surface-2:#1b1e22;--border:#2a2e35;--text:#e6e8eb;--text-dim:#9aa1ab;--accent:#6ea8fe;--danger:#ef6b6b;--ok:#5fcf80;--radius:8px;--landing-bg:#0a0807;--landing-text:#f3e8d8;--landing-text-dim:#a8947e;--landing-accent:#e8b060;--landing-accent-hover:#f0c47a;--landing-accent-soft:#c4783a;--landing-accent-muted:#e8b0601f;--landing-border:#e8b06024;--landing-border-strong:#e8b06047;--landing-surface:#1c1410b8;--landing-header-bg:#0a0807d1;--landing-glow:#c4783a38;--landing-glow-2:#e8b0601a;--landing-ascii:#e8b0608c;--landing-ascii-dim:#a8947e47;--landing-terminal-bg:#0e0a09eb;--landing-shadow:#0000008c;--landing-grain:#ffdcb40a}[data-theme=light]{--bg:#f4f6f9;--surface:#fff;--surface-2:#eef1f6;--border:#d8dee8;--text:#14171c;--text-dim:#5c6573;--accent:#3b7ddd;--danger:#d64545;--ok:#2f9e5a;--landing-bg:#f6efe6;--landing-text:#1a120e;--landing-text-dim:#6b5a4a;--landing-accent:#b8732e;--landing-accent-hover:#9a5f24;--landing-accent-soft:#d4a05a;--landing-accent-muted:#b8732e1f;--landing-border:#5a3e2629;--landing-border-strong:#5a3e2647;--landing-surface:#fffcf7d1;--landing-header-bg:#f6efe6e0;--landing-glow:#d4a05a33;--landing-glow-2:#b8732e14;--landing-ascii:#784820a6;--landing-ascii-dim:#6b5a4a38;--landing-terminal-bg:#fffaf4f2;--landing-shadow:#3c28141f;--landing-grain:#5032140d}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}button{font:inherit;cursor:pointer}.app{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:4px;padding:20px 14px;display:flex}.brand{letter-spacing:.02em;padding:6px 10px 16px;font-size:16px;font-weight:600}.brand span{color:var(--accent)}.navlink{color:var(--text-dim);border-radius:6px;padding:8px 10px;display:block}.navlink:hover,.navlink.active{background:var(--surface-2);color:var(--text)}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding-top:12px}.main{max-width:960px;padding:28px 36px}.page-title{margin:0 0 4px;font-size:20px;font-weight:600}.page-sub{color:var(--text-dim);margin:0 0 24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:24px;display:grid}.stat-value{font-size:28px;font-weight:600}.stat-label{color:var(--text-dim);font-size:13px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}td{font-variant-numeric:tabular-nums}.empty{color:var(--text-dim);text-align:center;padding:28px 0}.btn{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 14px}.btn:hover{border-color:var(--accent)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#0b0c0e;font-weight:600}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}input[type=text]{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;min-width:220px;padding:8px 12px}input[type=text]:focus{border-color:var(--accent);outline:none}.row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.badge{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.badge.ok{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 40%, transparent)}.badge.revoked{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, transparent)}.code{background:var(--bg);border:1px solid var(--border);word-break:break-all;border-radius:6px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.notice{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:var(--radius);margin-bottom:16px;padding:14px}.error{color:var(--danger);margin-bottom:14px}.center{place-items:center;min-height:100vh;display:grid}.login-card{text-align:center;width:340px}.landing{--font-serif:var(--font-landing-serif), Georgia, "Times New Roman", serif;--font-mono:var(--font-landing-mono), ui-monospace, Menlo, monospace;min-height:100vh;color:var(--landing-text);background:var(--landing-bg);position:relative;overflow-x:hidden}.landing-bg{pointer-events:none;z-index:0;position:absolute;inset:0}.landing-bg-warmth{background:radial-gradient(ellipse 90% 60% at 50% -5%, var(--landing-glow), transparent 58%), radial-gradient(ellipse 55% 45% at 0% 60%, var(--landing-glow-2), transparent 55%), radial-gradient(ellipse 45% 40% at 100% 75%, var(--landing-accent-muted), transparent 50%), linear-gradient(180deg, #120e0c 0%, var(--landing-bg) 42%, #0d0a09 100%);position:absolute;inset:0}[data-theme=light] .landing-bg-warmth{background:radial-gradient(ellipse 90% 60% at 50% -5%, var(--landing-glow), transparent 58%), radial-gradient(ellipse 55% 45% at 0% 60%, var(--landing-glow-2), transparent 55%), linear-gradient(180deg, #fff9f2 0%, var(--landing-bg) 50%, #efe4d6 100%)}.landing-ascii-backdrop{font-family:var(--font-mono);color:var(--landing-ascii);white-space:pre;-webkit-user-select:none;user-select:none;width:100%;height:100%;margin:0;padding:0;font-size:11px;line-height:1.35;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(70% 55% at 50% 8%,#00000059 0%,#0003 40%,#0000 80%);mask-image:radial-gradient(70% 55% at 50% 8%,#00000059 0%,#0003 40%,#0000 80%)}.landing-bg-grain{opacity:.55;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:absolute;inset:0}.landing-bg-scanlines{background:repeating-linear-gradient(0deg, transparent, transparent 2px, var(--landing-grain) 2px, var(--landing-grain) 3px);opacity:.35;pointer-events:none;position:absolute;inset:0}.landing-header{z-index:20;background:linear-gradient(180deg, color-mix(in srgb, var(--landing-header-bg) 8%, transparent) 0%, transparent 70%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:sticky;top:0}.landing-header-inner{justify-content:space-between;align-items:center;max-width:1140px;margin:0 auto;padding:18px 32px;display:flex}.landing-shell{z-index:1;max-width:1140px;margin:0 auto;padding:0 32px 120px;position:relative}.landing-brand{font-family:var(--font-serif);letter-spacing:.01em;color:var(--landing-text);align-items:center;gap:10px;font-size:22px;font-weight:400;text-decoration:none;display:inline-flex}.landing-brand-mark{color:var(--landing-accent);font-size:14px;line-height:1}.landing-header-actions{align-items:center;gap:10px;display:flex}.landing-link{font-family:var(--font-mono);letter-spacing:.04em;text-transform:lowercase;color:var(--landing-text-dim);padding:8px 14px;font-size:12px;text-decoration:none;transition:color .2s}.landing-link:hover{color:var(--landing-accent)}.landing-theme-toggle{border:1px solid var(--landing-border);width:36px;height:36px;color:var(--landing-text-dim);background:0 0;border-radius:999px;place-items:center;transition:color .2s,border-color .2s;display:grid}.landing-theme-toggle:hover{color:var(--landing-accent);border-color:var(--landing-border-strong)}.landing-btn{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:11px 20px;font-size:12px;font-weight:500;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.landing-btn-signup{color:var(--landing-bg);background:var(--landing-accent);border-color:var(--landing-accent)}.landing-btn-signup:hover{background:var(--landing-accent-hover);border-color:var(--landing-accent-hover)}.landing-btn-cta{color:var(--landing-bg);background:linear-gradient(135deg, var(--landing-accent), var(--landing-accent-soft));box-shadow:0 12px 40px color-mix(in srgb, var(--landing-accent) 35%, transparent);border-color:#0000;padding:15px 30px;font-size:12px}.landing-btn-cta:hover{box-shadow:0 18px 48px color-mix(in srgb, var(--landing-accent) 45%, transparent);transform:translateY(-2px)}.landing-btn-full{width:100%}.landing-main{flex-direction:column;gap:128px;padding-top:56px;display:flex}.landing-hero{text-align:center;flex-direction:column;align-items:center;gap:48px;display:flex}.landing-ascii-hero{flex-direction:column;align-items:center;max-width:100%;padding:12px 0 0;display:flex;position:relative}.landing-ascii-hero-glow{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--landing-accent) 24%, transparent), transparent 68%);filter:blur(28px);pointer-events:none;position:absolute;inset:-10% 5%}.landing-ascii-hero-art{font-family:var(--font-mono);color:var(--landing-ascii);text-shadow:0 0 24px color-mix(in srgb, var(--landing-accent) 40%, transparent);white-space:pre;text-align:left;margin:0;font-size:clamp(10px,1.5vw,15px);line-height:1.35;animation:12s ease-in-out infinite alternate landing-ascii-drift;position:relative}@keyframes landing-ascii-drift{0%{opacity:.92;transform:translateY(0)}to{opacity:1;transform:translateY(-4px)}}.landing-ascii-hero-caption{font-family:var(--font-mono);color:var(--landing-text-dim);margin-top:16px;font-size:12px}.landing-ascii-prompt{color:var(--landing-accent)}.landing-ascii-path{color:var(--landing-text-dim)}.landing-ascii-cursor{color:var(--landing-accent);opacity:0;margin-left:2px}.landing-ascii-cursor.on{opacity:1}.landing-hero-copy{max-width:680px;margin:0 auto}.landing-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--landing-accent-soft);margin:0 0 18px;font-size:11px}.landing-headline{font-family:var(--font-serif);letter-spacing:-.02em;margin:0 0 22px;font-size:clamp(2.5rem,6.5vw,4.5rem);font-weight:400;line-height:1.02}.landing-headline em,.landing-section-title em{color:var(--landing-accent);font-style:italic}.landing-lead{max-width:540px;color:var(--landing-text-dim);margin:0 auto 36px;font-size:18px;line-height:1.75}.landing-hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.landing-cta-note{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--landing-text-dim);font-size:11px}.landing-instructions{flex-direction:column;align-items:center;gap:36px;display:flex}.landing-instructions-intro{text-align:center;max-width:620px}.landing-section-title{font-family:var(--font-serif);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(2rem,4.5vw,3rem);font-weight:400;line-height:1.1}.landing-section-sub{color:var(--landing-text-dim);margin:0;font-size:17px;line-height:1.75}.landing-ascii-terminal{border:1px solid var(--landing-border-strong);background:var(--landing-terminal-bg);width:100%;max-width:720px;box-shadow:0 24px 64px var(--landing-shadow);border-radius:8px;position:relative;overflow:hidden}.landing-terminal-bar{border-bottom:1px solid var(--landing-border);background:color-mix(in srgb, var(--landing-accent) 6%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.landing-terminal-bar-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--landing-text-dim);font-size:11px}.landing-terminal-tabs{gap:0;display:flex}.landing-terminal-tab{font-family:var(--font-mono);letter-spacing:.06em;text-transform:lowercase;color:var(--landing-text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 18px;font-size:12px;transition:color .2s,border-color .2s}.landing-terminal-tab:hover{color:var(--landing-accent)}.landing-terminal-tab.active{color:var(--landing-accent);border-bottom-color:var(--landing-accent)}.landing-terminal-window{background:var(--landing-terminal-bg)}.landing-terminal-body{text-align:left;padding:22px 24px 26px;transition:opacity .22s;overflow-x:auto}.landing-terminal-body.fading{opacity:0}.landing-terminal-prompt{font-family:var(--font-mono);margin-bottom:16px;font-size:12px}.terminal-code{font-family:var(--font-mono);font-size:13px;line-height:1.8}.terminal-line{white-space:pre}.tok-comment{color:var(--landing-text-dim)}.tok-cmd{color:var(--landing-text)}.tok-flag{color:var(--landing-accent-soft)}.tok-str{color:#d4a574}[data-theme=light] .tok-str{color:#8b5a2b}.glass-panel{background:var(--landing-surface);border:1px solid var(--landing-border-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:4px}.landing-auth{--font-serif:var(--font-landing-serif), Georgia, serif;--font-mono:var(--font-landing-mono), ui-monospace, Menlo, monospace;min-height:100vh;color:var(--landing-text);background:var(--landing-bg);flex-direction:column;display:flex}.landing-auth .landing-bg{pointer-events:none;z-index:0;position:fixed;inset:0}.landing-auth .landing-bg-warmth{background:radial-gradient(ellipse 80% 50% at 50% -10%, var(--landing-glow), transparent 55%), linear-gradient(180deg, #120e0c 0%, var(--landing-bg) 100%);position:absolute;inset:0}.landing-auth-top{z-index:1;justify-content:space-between;align-items:center;width:100%;max-width:1140px;margin:0 auto;padding:18px 32px;display:flex;position:relative}.landing-auth-center{z-index:1;flex:1;place-items:center;padding:24px;display:grid;position:relative}.landing-auth-card{text-align:center;width:min(420px,100%);box-shadow:0 32px 64px var(--landing-shadow);padding:44px 40px}.landing-auth-title{font-family:var(--font-serif);letter-spacing:-.02em;margin:0 0 12px;font-size:32px;font-weight:400}.landing-auth-footer{font-family:var(--font-mono);color:var(--landing-text-dim);margin:24px 0 0;font-size:12px}.landing-auth-footer a{color:var(--landing-accent);text-decoration:none}.landing-auth-footer a:hover{text-decoration:underline}.landing-traffic{width:100%;max-width:860px;font-family:var(--font-mono);flex-direction:column;gap:0;margin:0 auto;font-size:12px;line-height:1.85;display:flex;overflow:hidden}.landing-traffic-row{white-space:nowrap;align-items:baseline;width:100%;display:flex;overflow:hidden}@keyframes traffic-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.landing-traffic-row-enter{animation:.22s ease-out both traffic-enter}.landing-traffic-row-fallback{opacity:.5}.landing-traffic-fill{color:var(--landing-ascii);letter-spacing:.02em;-webkit-user-select:none;user-select:none;flex:1;overflow:hidden}.landing-traffic-core{color:var(--landing-text);flex-shrink:0;padding:0 12px}.landing-traffic-method{letter-spacing:.06em}.landing-traffic-bar{color:var(--landing-accent);letter-spacing:.05em}.landing-traffic-bar-dim{color:var(--landing-ascii);letter-spacing:.05em}.landing-traffic-ms{color:var(--landing-text-dim)}.traffic-get{color:var(--landing-accent)}.traffic-delete{color:var(--landing-accent-soft)}.traffic-mutate{color:var(--landing-text)}.traffic-other{color:var(--landing-ascii)}@media (max-width:720px){.landing-header-inner,.landing-shell,.landing-auth-top{padding-left:20px;padding-right:20px}.landing-main{gap:96px;padding-top:32px}.landing-header-actions .landing-link{display:none}.landing-ascii-hero-art{font-size:9px}.landing-terminal-body{padding:16px 14px 22px}.terminal-code{font-size:11px}}
