@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-400.woff2) format('woff2')}@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-600.woff2) format('woff2')}
:root{--void:#05070E;--panel:#0B1220;--phos:#2CE8FF;--pale:#CDE7F5;--dim:#123247;--muted:#8FB2C6;--alarm:#FF4D4D;--cursor:#EAF6FF;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--void);color:var(--pale);font:17px/1.55 'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;-webkit-text-size-adjust:100%}
body{margin:0;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
main{width:100%;max-width:36rem;border:4px solid var(--phos);box-shadow:10px 10px 0 var(--dim);padding:28px 24px;background:var(--panel)}
h1{color:var(--phos);font-size:1.6rem;margin:0 0 12px;letter-spacing:.02em;font-weight:600;text-shadow:0 0 6px rgba(0,255,65,.45)}
p{margin:0 0 14px}.k{color:var(--phos);font-size:.8em;letter-spacing:.1em}
.cur::after{content:"";display:inline-block;width:.5em;height:.9em;background:var(--cursor);margin-left:.3em;vertical-align:-.1em;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.cur::after{animation:none}}
.nojs form{display:none}form{margin:22px 0 0}.row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 16px}
label{color:var(--phos);font-weight:600;letter-spacing:.08em;min-width:9.5ch}
input{flex:1 1 12ch;min-width:0;background:var(--void);color:var(--cursor);border:2px solid var(--dim);border-radius:0;padding:10px 12px;font:inherit;caret-color:var(--phos)}
input:focus{outline:2px solid var(--phos);outline-offset:0;border-color:var(--phos)}
button{display:inline-block;margin-top:6px;padding:12px 22px;background:var(--phos);color:var(--void);border:0;border-radius:0;font:inherit;font-weight:700;letter-spacing:.06em;cursor:pointer;box-shadow:6px 6px 0 var(--dim)}
button:hover,button:focus-visible{background:var(--cursor);outline:none}button:active{transform:translate(2px,2px);box-shadow:4px 4px 0 var(--dim)}
.status{min-height:1.55em;margin:0;letter-spacing:.04em}.status--err{color:var(--alarm);font-weight:600}.status--ok{color:var(--phos)}
::selection{background:var(--phos);color:var(--void)}
@media (forced-colors:active){main,input,button{border-color:CanvasText;box-shadow:none}}
