:root { color-scheme: dark; }
body { background:#0d1724; color:#e7eef8; margin:0; font-family:system-ui,sans-serif; }
main { max-width:760px; margin:50px auto; padding:0 24px; }
.brand { color:#45c6d9; text-decoration:none; letter-spacing:.1em; }
.eyebrow { color:#45c6d9; margin-top:36px; } h1 { font-size:clamp(30px,5vw,48px); line-height:1.15; }
p { line-height:1.6; } form { padding:24px; background:#152234; border:1px solid #334a64; border-radius:12px; }
label { display:flex; flex-direction:column; gap:8px; margin:18px 0; } input,select,textarea { box-sizing:border-box; width:100%; color:#e7eef8; background:#0d1724; border:1px solid #45617b; border-radius:5px; padding:12px; font:inherit; }
textarea { resize:vertical; } .pair { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.hint { font-size:14px; color:#a9bbce; } button { background:#11685f; border:1px solid #29c7ae; color:#fff; border-radius:5px; padding:14px 24px; font:inherit; cursor:pointer; }
button:disabled { background:#262c33; border-color:#414850; color:#818991; cursor:wait; }
:focus-visible { outline:2px solid #45c6d9; outline-offset:3px; }
.consent { flex-direction:row; align-items:center; gap:12px; }
.consent input { appearance:none; flex:0 0 40px; width:40px; height:24px; padding:2px; border-radius:14px; background:#334454; position:relative; cursor:pointer; }
.consent input:before { content:''; position:absolute; width:16px; height:16px; top:3px; left:3px; border-radius:50%; background:#afc3d5; transition:transform .15s; }
.consent input:checked { background:#11685f; border-color:#29c7ae; }.consent input:checked:before { transform:translateX(16px); }
#result[data-state=error] { color:#ffc0b8; } #result[data-state=success] { color:#67d6c4; }
@media(max-width:550px) { main{margin:24px auto;padding:0 14px} form{padding:16px}.pair{grid-template-columns:1fr;gap:0} }
