:root{font-family:system-ui,sans-serif;color:#18304d;background:#f3f6fa;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:1.5rem}
main{width:min(100%,28rem);padding:2rem;border-radius:1rem;background:#fff;box-shadow:0 .5rem 2rem #18304d14}
.brand{font-weight:800;letter-spacing:.12em;color:#2768a7}
h1{font-size:1.6rem;line-height:1.2}
p{line-height:1.5}
form{display:grid;gap:.6rem;margin-top:1.5rem}
label{font-weight:600}
input,button{font:inherit;padding:.8rem;border:1px solid #7c8ea4;border-radius:.4rem}
input{margin-bottom:.5rem;width:100%}
button{cursor:pointer;background:#225c96;color:white;border-color:#225c96;font-weight:600}
button:disabled{opacity:.6;cursor:wait}
input:focus-visible,button:focus-visible{outline:3px solid #61a4e3;outline-offset:2px}
.session-actions{display:flex;gap:.75rem;flex-wrap:wrap}
[hidden]{display:none!important}
#status{min-height:1.5rem}
