:root{color-scheme:dark;--bg:#171815;--panel:#22231e;--ink:#f8f3e6;--dim:#c9c4b3;--line:#464438;--gold:#eec872;--dark:#211803;font-family:system-ui,sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}
body{margin:0}
.shell{width:min(1040px,calc(100% - 34px));margin-inline:auto}
.top,.head,.controls{display:flex;align-items:center;justify-content:space-between;gap:10px}
.top{height:67px;border-bottom:1px solid var(--line)}
a{color:var(--gold)}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;color:var(--ink)}
.brand span{background:var(--gold);color:var(--dark);font-size:.75rem;padding:8px;border-radius:6px}
.intro{padding:48px 0 31px}
.eyebrow{color:var(--gold);font-size:.75rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;margin:0 0 8px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.8rem,8.3vw,6.4rem);letter-spacing:-.083em;line-height:.92;margin-bottom:18px}
h2{font-size:clamp(1.45rem,4vw,2.1rem);letter-spacing:-.04em;margin-bottom:9px}
h3{font-size:1rem;margin-bottom:8px}
p,dd{line-height:1.52}
.intro p:last-child{max-width:53ch;color:var(--dim)}
.card{padding:clamp(15px,3.4vw,29px);border:1px solid var(--line);border-radius:16px;background:var(--panel);margin-bottom:15px}
.head{margin-bottom:10px}
label,legend{font-size:.88rem;font-weight:720}
textarea,select,button,input{font:inherit}
textarea,input:not([type=checkbox]),select{border:1px solid var(--line);border-radius:8px;padding:8px;background:#1c1d19;color:var(--ink)}
textarea{display:block;width:100%;margin:5px 0 8px;resize:vertical;font-family:ui-monospace,monospace}
button{border:1px solid var(--line);border-radius:8px;padding:8px 11px;color:var(--ink);background:#2b2b24;font-weight:720;font-size:.86rem;cursor:pointer}
button.primary{border-color:var(--gold);background:var(--gold);color:var(--dark)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
fieldset{padding:9px 10px;border:1px solid var(--line);border-radius:8px;margin:0 0 11px}
.choices,.controls{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-start}
input[type=checkbox]{accent-color:var(--gold)}
.muted,#notice,#progress,.guide dd{color:var(--dim);font-size:.88rem}
#notice{margin:9px 0 0}
.group{margin:13px 0 4px;padding:10px 12px;border:1px solid var(--line);border-radius:9px}
.shot{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(135px,1fr);gap:7px;padding:7px 0;border-top:1px solid var(--line);align-items:center}
.shot input:not([type=checkbox]){width:100%;font-size:.83rem}
.shot label{display:flex;gap:8px;align-items:start;overflow-wrap:anywhere}
.guide dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0}
.guide dt{font-weight:740}
.guide dd{margin:4px 0 0}
footer{border-top:1px solid var(--line);padding:15px 0 24px;color:var(--dim);font-size:.84rem}
@media(max-width:640px){.shot,.guide dl{grid-template-columns:1fr}.head{align-items:flex-start;flex-wrap:wrap}.intro{padding-top:32px}}
