@font-face{font-family:Inter;src:url(/assets/fonts/inter-latin.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--bg:#111318;--fg:#f2f4f8;--muted:#a1a9b8;--border:#272b33;--card:#1a1e25;--primary:#0ea5e9;--graph:120, 175, 210;--btn-tint:#92c1d4cc}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.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}.backdrop{pointer-events:none;background:var(--bg);position:fixed;inset:0}.backdrop>*{position:absolute;inset:0}.backdrop canvas{width:100%;height:100%;display:block}.backdrop .dim{background:color-mix(in srgb, var(--bg) 70%, transparent)}.backdrop .tint{mix-blend-mode:screen;background:radial-gradient(130% 100% at 40% 33%,#406eaa42 0%,#1c3a661f 45%,#0a162e00 78%)}.backdrop .soften{-webkit-backdrop-filter:blur(.75px);backdrop-filter:blur(.75px)}.page{min-height:100svh;position:relative;overflow:hidden}main{z-index:10;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100svh;padding:64px 24px;display:flex;position:relative}.stack{flex-direction:column;align-items:center;gap:40px;width:100%;display:flex}.brand{flex-direction:column;align-items:center;gap:12px;display:flex}.logo{width:440px;max-width:80vw;height:auto;margin:0 auto;animation:.4s .12s both reveal;display:block}.badge{border:1px solid color-mix(in srgb, var(--border) 60%, transparent);background:color-mix(in srgb, var(--card) 80%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);border-radius:12px;padding:4px 12px;font-size:11px;font-weight:600;animation:.35s .3s both reveal;box-shadow:0 1px 2px #0000000d}.actions{flex-direction:column;align-items:stretch;gap:12px;width:max-content;max-width:100%;margin:0 auto;animation:.35s .48s both reveal;display:flex;position:relative}.glass-btn{font:inherit;letter-spacing:.01em;color:var(--fg);background-color:rgba(var(--graph), .2);border:1px solid color-mix(in srgb, var(--fg) 42%, var(--border));cursor:pointer;box-shadow:inset 0 1px 0 #ffffff4d, inset 0 -1px 0 #00000040, 0 10px 28px -10px color-mix(in srgb, var(--btn-tint) 55%, transparent), 2px 1px 2px #0006;border-radius:12px;justify-content:center;align-items:center;padding:12px 24px;font-size:16px;font-weight:600;text-decoration:none;transition:border-color .18s,box-shadow .18s;display:inline-flex;position:relative;overflow:hidden}.glass-btn:after{content:"";pointer-events:none;background:linear-gradient(110deg, transparent 25%, color-mix(in srgb, var(--fg) 16%, transparent) 50%, transparent 75%);position:absolute;inset:0;transform:translate(-130%)}.glass-btn:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--btn-tint) 80%, transparent);outline:none}.glass-btn:focus-visible:after{animation:.55s ease-out sheen}@media (hover:hover) and (pointer:fine){.glass-btn:hover{border-color:var(--primary);background-color:rgba(var(--graph), .5);box-shadow:0 0 5px rgba(var(--graph), .8), 0 0 5px rgba(var(--graph), .8), 0 0 5px rgba(var(--graph), .8)}.glass-btn:hover:after{animation:.55s ease-out sheen}}.provenance{pointer-events:none;z-index:10;border:1px solid color-mix(in srgb, var(--border) 60%, transparent);background:color-mix(in srgb, var(--card) 80%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--fg);letter-spacing:.03em;text-wrap:pretty;border-radius:12px;max-width:calc(100% - 24px);margin:0;padding:4px 10px;font-size:11px;line-height:1.6;position:absolute;bottom:12px;left:12px;box-shadow:0 1px 2px #0000000d}@media (min-width:501px){.provenance{max-width:calc(100% - 48px);font-size:12px}}@media (min-width:640px){.provenance{padding:6px 12px;bottom:20px;left:24px}}@media (max-width:500px){.stack{gap:32px}}dialog.login{width:100%;max-width:none;height:100%;max-height:none;color:var(--fg);background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:16px;display:none;position:fixed;inset:0;overflow-y:auto}dialog.login[open]{display:flex}dialog.login::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:0 0;animation:.35s both veil-in}.login-panel{width:100%;max-width:min(420px,90vw);padding:0 16px;animation:.35s fade-up}@media (min-width:640px){.login-panel{padding:0}}.login-card{border:1px solid var(--border);background:color-mix(in srgb, var(--card) 95%, transparent);border-radius:16px;box-shadow:0 10px 40px -10px #0009}.login-head{align-items:center;gap:12px;padding:24px 24px 8px;display:flex}.login-icon{border:1px solid var(--border);background:color-mix(in srgb, var(--card) 80%, transparent);border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.login-icon img{border-radius:9px;width:40px;height:40px}.login-head h2{letter-spacing:-.025em;margin:0;font-size:18px;font-weight:600;line-height:28px}.login-head p{color:var(--muted);margin:0;font-size:12px;line-height:16px}.login-rule{background:linear-gradient(to right, transparent, var(--border), transparent);height:1px;margin:16px 24px 0}.login-form{flex-direction:column;gap:16px;padding:24px;display:flex}.login-form label:not(.login-remember){color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:500;line-height:16px;display:block}.login-form input:not([type=checkbox]){border:1px solid var(--border);background:color-mix(in srgb, var(--card) 60%, transparent);width:100%;font:inherit;color:var(--fg);border-radius:12px;outline:none;padding:10px 12px;font-size:14px;line-height:20px;transition:box-shadow .15s}.login-form input::placeholder{color:var(--muted)}.login-form input:focus{box-shadow:0 0 0 2px var(--primary)}.login-row{justify-content:space-between;align-items:center;padding-top:4px;display:flex}.login-remember{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.login-remember input{width:16px;height:16px;accent-color:var(--primary);margin:0}.login-link{cursor:pointer;font:inherit;color:var(--primary);background:0 0;border:0;padding:0;font-size:12px;transition:color .15s}.login-link:hover{color:color-mix(in srgb, var(--primary) 80%, transparent)}.login-link:disabled{cursor:not-allowed;opacity:.5}.login-link:disabled:hover{color:var(--primary)}.login-submit{width:100%;margin-top:8px;font-size:14px}.login-status{height:128px;overflow-y:auto}@media (min-width:640px){.login-status{height:80px}}.login-foot{color:var(--muted);justify-content:space-between;align-items:center;margin-top:24px;font-size:11px;display:flex}.login-foot>div{gap:16px;display:flex}.login-foot span{cursor:not-allowed;opacity:.5}.login-back{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:0;transition:color .15s}.login-back:hover{color:var(--primary)}@media (max-width:767px){.login-form input:not([type=checkbox]){font-size:16px}}@keyframes veil-in{0%{opacity:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes sheen{to{transform:translate(130%)}}@media (prefers-reduced-motion:reduce){.logo,.badge,.actions,.glass-btn:after,.login-panel,dialog.login::backdrop{animation:none!important}.glass-btn{transition:none}}
