@font-face{font-family:"Saira Condensed";font-weight:700;font-display:swap;src:url(/static/fonts/saira-condensed-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Saira Condensed";font-weight:700;font-display:swap;src:url(/static/fonts/saira-condensed-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Barlow";font-weight:400;font-display:swap;src:url(/static/fonts/barlow-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Barlow";font-weight:400;font-display:swap;src:url(/static/fonts/barlow-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Barlow";font-weight:600;font-display:swap;src:url(/static/fonts/barlow-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Barlow";font-weight:600;font-display:swap;src:url(/static/fonts/barlow-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--gl-bg:#0a0a0a;--gl-surface:#141414;--gl-deep:#050505;--gl-accent:#e01b24;--gl-glow:#ff2d2d;--gl-silver:#c7ccd1;
--gl-text:#f2f2f2;--gl-muted:#9aa0a6;--gl-line:#c7ccd124;--gl-accent-soft:#e01b2459;--gl-ok:#6fcf8e;
--font-display:"Saira Condensed","Arial Narrow",sans-serif;--font-body:"Barlow",system-ui,sans-serif;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box;margin:0}
html{scrollbar-gutter:stable}
body{min-height:100svh;display:flex;flex-direction:column;background:var(--gl-bg);color:var(--gl-text);font-family:var(--font-body);
font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;
background-image:radial-gradient(circle at 50% -20%,#e01b2421,#0000 34rem),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='162' viewBox='0 0 140 162'%3E%3Cpath d='M35 1h70l34 40v80l-34 40H35L1 121V41zM35 1l35 40-35 40M105 1L70 41l35 40M1 121l69-40 69 40' fill='none' stroke='%23e01b24' stroke-opacity='.11'/%3E%3C/svg%3E");background-size:auto,140px 162px;background-attachment:fixed}
a{color:var(--gl-silver);text-decoration-color:var(--gl-accent);text-underline-offset:3px}
a:hover{color:var(--gl-text)}
::selection{background:var(--gl-accent);color:var(--gl-text)}
:focus-visible{outline:2px solid var(--gl-glow);outline-offset:3px}
h1,h2{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.01em;line-height:.95;text-wrap:balance}
h1{font-size:clamp(2.2rem,7vw,3rem)}
h2{font-size:1.45rem;letter-spacing:.03em}

.topbar{display:flex;align-items:center;gap:1rem;padding:.75rem clamp(1rem,5vw,4rem)}
.brand{display:flex;align-items:center;gap:.55rem;text-decoration:none}
.brand img{width:28px;height:28px}
.brand-name{font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:.05em;text-transform:uppercase;color:var(--gl-silver)}
.brand-name b{color:var(--gl-accent)}
.topbar .btn{margin-left:auto}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.9em 1.8em;border:1px solid #0000;
font:600 1rem/1.2 var(--font-body);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;
clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));transition:transform .18s,box-shadow .18s,background-color .18s,border-color .18s,color .18s}
.btn:disabled{opacity:.55;cursor:progress}
.btn-block{display:flex;width:100%}
.btn-small{padding:.48em .95em;font-size:.74rem;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.btn-primary{background:var(--gl-accent);color:#fff}
.btn-primary:hover:not(:disabled){background:var(--gl-glow);box-shadow:0 6px 32px var(--gl-accent-soft);transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--gl-line);color:var(--gl-silver)}
.btn-ghost:hover:not(:disabled){border-color:var(--gl-accent);color:var(--gl-text)}
.btn-discord{background:#5865f2;color:#fff}
.btn-discord:hover{background:#6d78f5;box-shadow:0 6px 32px #5865f259;transform:translateY(-2px)}
.btn svg{width:1.3em;height:1.3em;flex:none}
.btn-danger{background:transparent;border-color:var(--gl-accent-soft);color:#ff8a8f}
.btn-danger:hover:not(:disabled){background:var(--gl-accent);border-color:var(--gl-accent);color:#fff}

main{flex:1;width:100%;padding:clamp(1.5rem,6vw,4.5rem) clamp(1rem,5vw,4rem) 3rem}
.panel{position:relative;background:#1414148c;border:1px solid var(--gl-line);box-shadow:inset 0 1px #c7ccd114;
-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}
.panel::before{content:"";position:absolute;inset:0 auto auto 0;width:3rem;height:3px;background:var(--gl-accent)}

.auth{width:min(100%,29rem);margin:0 auto;padding:clamp(1.6rem,6vw,2.6rem)}
.auth-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.6rem}
.auth-head p{color:var(--gl-muted);font-size:.95rem;margin-top:.35rem;line-height:1.4}
.sigil{flex:none;width:3.4rem;color:var(--gl-accent)}
.sigil svg{display:block;width:100%;height:auto;overflow:visible}
.divider{display:flex;align-items:center;gap:.9rem;margin:1.5rem 0;color:var(--gl-muted);font-size:.9rem}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--gl-line)}
.switch{margin-top:1.4rem;color:var(--gl-muted);font-size:.95rem}

form{display:grid;gap:1rem}
label{display:grid;gap:.4rem;font-weight:600;font-size:.95rem;color:var(--gl-silver)}
.hint{font-weight:400;font-size:.85rem;color:var(--gl-muted)}
input{width:100%;padding:.8rem .9rem;background:var(--gl-deep);border:1px solid #c7ccd13d;color:var(--gl-text);font:400 1rem var(--font-body);
border-radius:0;transition:border-color .15s,box-shadow .15s}
input:hover{border-color:#c7ccd166}
input:focus{outline:none;border-color:var(--gl-accent);box-shadow:0 0 0 3px #e01b2433}
.warning{margin-top:1.1rem;padding:.7rem .9rem;border-left:3px solid var(--gl-accent);background:#e01b2414;font-size:.92rem;color:var(--gl-silver)}
.message:empty{margin:0}
.message{margin-top:1rem;font-size:.95rem;color:#ff8a8f}
.message.ok{color:var(--gl-ok)}

.account{display:grid;gap:1.5rem;width:min(100%,62rem);margin:0 auto;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.account{grid-template-columns:19rem minmax(0,1fr);align-items:start}}
.identity{padding:2rem 1.6rem;text-align:center}
@media (min-width:860px){.identity{position:sticky;top:1.5rem}}
.badge{position:relative;width:9rem;margin:0 auto 1.2rem;color:var(--gl-accent)}
.badge svg{display:block;width:100%;height:auto;filter:drop-shadow(0 0 22px #e01b2440)}
.badge span{position:absolute;inset:0;display:grid;place-items:center;font:700 3.6rem/1 var(--font-display);text-transform:uppercase;color:var(--gl-text)}
.identity h1{font-size:clamp(2rem,5vw,2.4rem);word-break:break-word}
.identity .since{margin-top:.4rem;color:var(--gl-muted);font-size:.9rem}
.methods{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:.5rem;text-align:left}
.methods li{display:flex;align-items:center;gap:.6rem;padding:.55rem .8rem;border:1px solid var(--gl-line);font-size:.95rem}
.methods li::before{content:"";width:.55rem;height:.55rem;flex:none;background:var(--gl-muted);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.methods li.on::before{background:var(--gl-ok)}
.methods li b{margin-left:auto;font-weight:600;font-size:.85rem;color:var(--gl-muted)}
.methods li.on b{color:var(--gl-ok)}

.sections{display:grid;gap:1.25rem}
.section{padding:1.6rem clamp(1.2rem,4vw,2rem)}
.section p:not(.hint):not(.message){color:var(--gl-muted);font-size:.95rem;margin:.5rem 0 1.1rem;max-width:62ch}
.section h3{font:700 1.05rem/1.1 var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--gl-silver);margin-top:1.1rem}
.block+.block{margin-top:1.5rem;padding-top:.4rem;border-top:1px solid var(--gl-line)}
.section form{max-width:26rem}
.row{display:flex;flex-wrap:wrap;gap:.75rem}
.verified{color:var(--gl-ok)!important}
.danger-zone{border-color:#e01b2440}
.danger-zone::before{width:100%}
[hidden]{display:none!important}

dialog{margin:auto;width:min(92vw,25rem);padding:1.8rem;background:var(--gl-surface);color:var(--gl-text);border:1px solid var(--gl-line);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
dialog::backdrop{background:#050505cc;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
dialog h2{margin-bottom:.6rem}
dialog p{color:var(--gl-muted);font-size:.95rem;margin-bottom:1.1rem}
dialog .row{margin-top:.4rem}

.footer{padding:1.5rem clamp(1rem,5vw,4rem);border-top:1px solid var(--gl-line);color:var(--gl-muted);font-size:.85rem;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between}
.footer a{color:var(--gl-muted)}

@media (max-width:520px){.btn-block{padding:.95em 1rem}.auth-head{align-items:flex-start}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}