:root{--bg:#120d0c;--ink:#f1ece6;--mute:#a79f97;--accent:#e0694a;--line:#6b5a55;--field:#1b1514;color-scheme:dark}
*{box-sizing:border-box}
html{background:#07090c}
body{margin:0;min-height:100vh;color:var(--ink);font:17px/1.5 "Helvetica Neue",Arial,sans-serif;accent-color:var(--accent);
background:radial-gradient(120% 60% at 50% 0%,rgba(224,105,74,.22) 0%,rgba(224,105,74,0) 60%),linear-gradient(180deg,#07090c 0%,#120d0c 50%,#2a1812 100%);background-repeat:no-repeat}
main{max-width:30rem;margin:0 auto;padding:max(2rem,env(safe-area-inset-top)) 1.25rem 3rem}
.cover{display:block;width:100%;max-width:20rem;height:auto;margin:0 auto 1.5rem;border-radius:8px;box-shadow:0 24px 60px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.06)}
h1{font-size:2rem;line-height:1.15;margin:1rem 0 .5rem;letter-spacing:-.02em}
p{color:var(--mute);margin:.25rem 0 1rem}
label{display:block;margin:1rem 0 .3rem;font-weight:600;font-size:.95rem}
input[type=text],input[type=email],input[type=tel],input[type=file],input[type=password]{width:100%;padding:.75rem;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:4px;font:inherit}
input:focus,button:focus-visible{outline:3px solid var(--accent);outline-offset:1px}
.check{display:flex;gap:.6rem;font-weight:400;font-size:.88rem;color:var(--mute);margin-top:1.25rem}
.check input{margin-top:.25rem}
button{margin-top:1.5rem;width:100%;padding:.9rem;background:var(--accent);color:var(--bg);border:0;border-radius:4px;font:inherit;font-weight:700;cursor:pointer}
button:hover:not(:disabled){filter:brightness(1.1)}
button:disabled{opacity:.5}
.msg{margin-top:1rem;font-weight:600}.err{color:#ff8f7d}
audio{width:100%;margin-top:1.5rem}
a{color:var(--accent)}
