:root{color-scheme:dark;--black:#000;--plate:#0b0c0e;--field:#07080a;--line:#363a40;--muted:#a1a6af;--text:#d8dbe0;--silver:#f1f3f6;--error:#ef7773;font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:0}
*{box-sizing:border-box;letter-spacing:0}
html,body{min-height:100%;margin:0;background:var(--black);color:var(--text)}
body{min-height:100svh;display:grid;grid-template-rows:1fr;font-size:15px;line-height:1.5}
[hidden]{display:none!important}
#horizon{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.stage{position:relative;z-index:1;align-self:center;width:min(392px,calc(100% - 32px));margin:64px 0 72px clamp(64px,8.9vw,144px)}
.brand-block{text-align:left;margin-bottom:28px}.brand,.brand-sub{margin:0}.brand{font-size:28px;font-weight:300;line-height:1;color:var(--silver)}.brand-sub{margin-top:8px;font:13px/1.3 "IBM Plex Mono",ui-monospace,monospace;color:var(--muted)}
.access{padding:20px 28px 24px;border:1px solid #24272c;border-radius:8px;background:#000c;box-shadow:inset 0 1px 0 #ffffff0d}.access h1{font-size:16px;font-weight:500;margin:0 0 12px;color:var(--silver)}
.modes{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #24272c;margin-bottom:20px}.modes button{position:relative;height:44px;padding:0 4px;border:0;background:none;color:var(--muted);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer}.modes button[aria-selected="true"]{color:var(--silver)}.modes button[aria-selected="true"]:after{content:"";position:absolute;bottom:-1px;left:12%;right:12%;height:2px;background:var(--silver)}
.field{display:grid;gap:6px;margin-bottom:12px;font-size:13px;color:var(--muted)}.field input{display:block;width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--silver);font-family:inherit;font-size:15px}.field input:hover{border-color:#5c626b}.field input[aria-invalid="true"]{border-color:var(--error)}.field-error{min-height:16px;color:var(--error);font-size:12px;line-height:1.3}.input-wrap{position:relative}.input-wrap input{padding-right:66px}.reveal{position:absolute;right:3px;top:3px;height:38px;min-width:58px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-family:inherit;font-size:12px;cursor:pointer}.reveal:hover{color:var(--silver)}
.submit{width:100%;height:44px;margin-top:4px;border:0;border-radius:6px;background:var(--silver);color:#000;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}.submit:hover{background:#fff}.submit:disabled{background:#41454c;color:#c9cdd2;cursor:wait}.form-error{margin-bottom:14px;padding:9px 11px;border:1px solid var(--error);border-radius:6px;color:#ffaaa7;font-size:13px}
button:focus-visible,input:focus-visible{outline:2px solid var(--silver);outline-offset:3px}
.context{position:fixed;right:16px;bottom:12px;z-index:2;display:flex;align-items:center;min-height:36px;font:12px/1.3 "IBM Plex Mono",ui-monospace,monospace;color:var(--muted)}.context span{padding:0 18px;border-right:1px solid #363a40;overflow-wrap:anywhere}.context span:first-child{padding-left:0}.context button{min-height:36px;padding:0 12px;border:1px solid #ffffff33;border-radius:4px;background:#0b0c0ecc;color:var(--text);font:inherit;cursor:pointer}
@media(max-width:760px){.stage{margin:28px auto 32px}.access{padding:16px 18px 20px}.context{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.context{display:none}}
@media(prefers-contrast:more){:root{--muted:#c2c6ce;--line:#727883}}
@media(forced-colors:active){#horizon{display:none}.access,.form-error{border:1px solid CanvasText}}
#horizon[data-mode="poster"]~.context,#horizon[data-mode="static"]~.context{display:none}
body,.field input,.submit{font-size:14px}.brand{font-size:28px}.field input,.submit{border-radius:4px}
.brand{text-shadow:0 0 14px #000}.brand-sub,.context{font-size:13px}
