:root{--bg:#171019;--panel:#221823;--line:#3a2a3c;--text:#f4eaee;--mute:#ab97a3;--accent:#d9466f}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}
main{max-width:30rem;margin:0 auto;padding:2rem 1.25rem 4rem}
header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2.5rem;gap:1rem}
nav{display:flex;gap:1rem;align-items:baseline}
nav a,.link{color:var(--mute);background:none;border:0;padding:0;margin:0;font:inherit;text-decoration:none;cursor:pointer}
nav a:hover,.link:hover{color:var(--text)}
nav form{margin:0}
.logo{font:italic 1.6rem Georgia,"Times New Roman",serif;color:var(--text);text-decoration:none}
h1{font:400 2.4rem/1.15 Georgia,"Times New Roman",serif;margin:0 0 1rem}
h2{font:400 1.4rem Georgia,"Times New Roman",serif;margin:2rem 0 .6rem}
p{color:var(--mute);margin:0 0 1.5rem}
label{display:block;margin:1.1rem 0 .35rem;font-size:.95rem}
input,select{width:100%;padding:.8rem .9rem;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;font:inherit}
input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.check{display:flex;gap:.7rem;align-items:flex-start;margin:1.1rem 0 0;color:var(--mute);font-size:.9rem}
.check input{width:auto;margin-top:.25rem}
.btn,button.btn,form>button{display:inline-block;margin-top:1.8rem;padding:.9rem 1.6rem;background:var(--accent);color:#fff;border:0;border-radius:6px;font:600 1rem system-ui,sans-serif;text-decoration:none;cursor:pointer}
button.link{margin-top:0;padding:0;background:none;font-weight:400}
.err{background:#3a1520;border:1px solid #7a2a40;border-radius:6px;padding:.8rem 1rem;margin-bottom:1rem}
.err p{margin:.2rem 0;color:#ffd5df}
.ok{background:#16301f;border:1px solid #2c6a43;border-radius:6px;padding:.8rem 1rem;margin-bottom:1rem}
.thumb{display:block;width:100%;max-width:20rem;border-radius:8px;margin:0 0 .8rem}
.item{border-top:1px solid var(--line);padding:1.2rem 0}
.row{display:flex;gap:.8rem}
.row form{margin:0}
button.no{background:var(--panel);border:1px solid var(--line)}
small{color:var(--mute)}
