@font-face{font-family:Display;src:url("/fonts/grenze-gotisch-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Body;src:url("/fonts/recursive-latin-full-normal.woff2") format("woff2");font-weight:300 1000;font-display:swap}
:root{color-scheme:dark;--bg:#10141f;--plate:#202e37;--fg:#e7d5b3;--dim:#b7b7ad;--accent:#de9e41;--error:#f2a492;--gutter:clamp(1.25rem,5vw,4rem);--measure:34rem;--step--1:clamp(.8rem,.76rem + .2vw,.9rem);--step-0:clamp(1rem,.95rem + .25vw,1.125rem);--step-1:clamp(1.3rem,1.1rem + .8vw,1.7rem);--step-2:clamp(1.8rem,1.3rem + 2vw,2.8rem);--step-h1:clamp(3.2rem,2.3rem + 4vw,5rem)}
*{box-sizing:border-box}html{background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%}
body{margin:0;padding:0 var(--gutter);font-family:Body,system-ui,sans-serif;font-variation-settings:"CASL" 1;line-height:1.6;font-size:var(--step-0)}
h1,h2,h3,p{margin:0}h1,h2{font-family:Display,serif;font-weight:550;line-height:1.05}
h1{font-size:var(--step-h1);margin-bottom:2rem}h2{font-size:var(--step-2)}
button,input,select,textarea{font:inherit;color:inherit;border:0;outline:0;border-radius:0;box-shadow:none;background:none;max-width:100%}
input:where(:not([type=checkbox]):not([type=range])),select,textarea{display:block;width:100%;min-height:3rem;margin-top:.5rem;padding:.75rem 1rem;font-size:var(--step-0);background:var(--plate);border-bottom:1px solid transparent;text-decoration:none}
input::placeholder,textarea::placeholder{color:var(--dim);opacity:1}
label{display:block;color:var(--dim);font-size:var(--step--1)}
label+label{margin-top:1.5rem}label:focus-within{color:var(--accent)}input:focus,textarea:focus,select:focus{border-bottom-color:var(--accent);color:var(--fg)}
input[type=checkbox]:focus-visible,input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
button{cursor:pointer;min-height:44px;padding:.5rem 0;color:var(--accent);font-weight:600;text-align:left}
button:hover,button:focus-visible,a:focus-visible,summary:focus-visible{text-decoration:underline;text-underline-offset:.3em}
button:disabled{cursor:wait;color:var(--dim)}
form>button{margin-top:1.5rem}#error,[role=alert]{color:var(--error);font-size:var(--step--1)}
[role=alert]:empty{display:none}#error:not(:empty){margin-top:1.5rem}
::selection{background:var(--accent);color:var(--bg)}
.login{max-width:24rem;margin:clamp(5rem,18vh,11rem) auto 4rem}
.login button[type=submit]{display:block;width:100%;min-height:3rem;padding:.75rem 1rem;background:var(--accent);color:var(--bg);text-align:center}
.login button[type=submit]:hover,.login button[type=submit]:focus-visible{background:var(--fg)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
