@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;600;700&display=swap');

*{box-sizing:border-box}
body{
 margin:0;background:radial-gradient(ellipse at top,#20243a,#090b10 65%);
 color:#f1f3f8;font-family:'Space Grotesk',sans-serif;min-height:100vh
}
.container{max-width:850px;margin:auto;padding:30px 22px}
nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #293040;padding-bottom:20px}
.logo{font-weight:700;letter-spacing:2px}
.logo span{color:#9affc8}
.status,.eyebrow,label,.panel-top,footer,.hint{
 font-family:'DM Mono',monospace;font-size:11px;letter-spacing:1px
}
.status,.eyebrow{color:#9affc8}
header{text-align:center;padding:65px 0 35px}
h1{font-size:clamp(38px,7vw,65px);margin:15px 0;letter-spacing:-3px}
h1 em{color:#b9a4ff;font-style:normal}
header p:last-child{color:#929bad}
.panel{background:#121722;border:1px solid #2b3444;border-radius:12px;padding:23px;margin-bottom:20px}
.panel-top{color:#9ba7b9;border-bottom:1px solid #293040;padding-bottom:18px;margin-bottom:20px}
.panel-top span{float:right;color:#9affc8}
label{display:block;color:#b6c0cf;margin:18px 0 9px}
select,input,textarea{
 width:100%;padding:13px;background:#090d15;color:white;
 border:1px solid #303a4c;border-radius:6px;font:13px 'DM Mono',monospace
}
textarea{height:145px;resize:vertical;line-height:1.6}
select:focus,input:focus,textarea:focus{outline:1px solid #9affc8}
button{
 margin-top:20px;width:100%;padding:15px;border:0;border-radius:6px;
 background:#9affc8;color:#07120d;font-weight:700;cursor:pointer;
 font-family:'DM Mono',monospace;letter-spacing:1px
}
button:disabled{opacity:.5;cursor:wait}
.hint{color:#8994a7;font-size:10px;letter-spacing:0;line-height:1.6}
h2{color:#9affc8;font:14px 'DM Mono',monospace}
#answer{white-space:pre-wrap;line-height:1.8;color:#dce2ed;font-size:14px}
.hidden{display:none}
footer{text-align:center;color:#687387;margin:35px 0;font-size:10px}
@media(max-width:550px){
 .container{padding:18px 13px}
 header{padding:45px 0 25px}
 .panel{padding:16px}
 .logo{font-size:12px}
 .status{font-size:9px}
}