:root{--paper:#f3f0e7;--surface:#fffcf5;--ink:#243435;--muted:#536260;--accent:#245e61;--line:#bac4bd;--gold:#a58243}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 "Segoe UI","Microsoft YaHei",sans-serif}header{min-height:86px;padding:16px 32px;background:#121a1d;color:#e9efef;display:flex;align-items:center;gap:18px}header img{width:62px;height:48px;object-fit:contain}header strong{font-size:20px;font-weight:600;display:block;letter-spacing:.04em}header span{font-size:11px;color:#acb8b8;display:block}header button{margin-left:auto;background:#243435;color:#e9efef;border:0;white-space:nowrap;min-width:72px}main{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 144px)}section{padding:48px 64px}.intro{display:flex;flex-direction:column}.paper{background:var(--surface);border-left:1px solid var(--line)}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:600;color:var(--gold);margin-bottom:22px}.paper .eyebrow{color:var(--accent)}h1{font-size:clamp(36px,4.3vw,62px);line-height:1.18;letter-spacing:-.035em;font-weight:600;margin:0 0 20px}h2{font-size:30px;line-height:1.3;font-weight:600;margin:0 0 14px}p{color:var(--muted);margin:0 0 26px}ol.modules{list-style:none;padding:0;margin:16px 0 48px;display:grid;gap:20px}.modules li{display:flex;gap:20px;align-items:center;line-height:1.3}.modules li>span{color:var(--gold);font-size:14px}.modules small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.edition{margin-top:auto;letter-spacing:.09em;font-size:11px;color:var(--muted)}form{display:flex;flex-direction:column;gap:9px}label{font-size:14px;font-weight:600;margin-top:8px}input,select,button{font:inherit;border-radius:6px}input,select{width:100%;min-height:48px;border:1px solid #7f9089;padding:10px 14px;background:var(--surface);color:var(--ink)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button{min-height:46px;border:1px solid var(--line);padding:10px 20px;background:var(--surface);color:var(--ink);cursor:pointer}button:hover{background:#dbeae4}.primary{background:var(--accent);border-color:var(--accent);color:var(--surface);font-weight:600;font-size:17px;margin-top:8px;min-height:54px}.primary:hover{background:#194d51}button:disabled{opacity:.55;cursor:wait}.consent{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:13px;margin:14px 0 0}.consent input{width:20px;min-height:20px;height:20px;margin:2px 0;accent-color:var(--accent);flex-shrink:0}.privacy{font-size:12px;line-height:1.6;margin:9px 0;color:var(--muted)}#error{font-size:14px;color:#9d4545;margin:4px 0 0;min-height:22px}.entry-code{font-size:52px;font-variant-numeric:tabular-nums;letter-spacing:.17em;color:var(--accent);border:1px solid var(--line);background:var(--paper);padding:20px 12px;margin:24px 0;text-align:center;border-radius:8px}#expiration{font-size:13px;margin:18px 0 28px}.instructions{padding-left:22px;line-height:1.7}.instructions li{padding-left:6px;margin:12px 0}#another{margin-top:24px}footer{font-size:11px;min-height:58px;padding:18px 32px;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);color:var(--muted)}a{color:var(--accent);text-decoration:none}[hidden]{display:none!important}.booth{display:block;text-align:center;padding:64px 24px}.booth img.qr{max-width:360px;width:70vw}.booth h1{margin-top:20px}.booth .edition{margin-top:24px}@media(max-width:900px){section{padding:36px 28px}header{padding:14px 20px}header strong{font-size:18px}}@media(max-width:640px){header{gap:10px;min-height:76px;padding:12px 16px}header img{width:38px;height:36px}header strong{font-size:16px}header span{font-size:8px;max-width:200px}header button{padding:8px;min-width:60px;font-size:12px}main{display:flex;flex-direction:column}.intro{padding:30px 24px 26px}.intro h1{font-size:38px;line-height:1.18}.intro p{margin:0;font-size:14px}.intro .eyebrow{margin-bottom:14px}.modules,.intro .edition{display:none!important}.paper{border-left:0;border-top:1px solid var(--line);padding:30px 24px 36px}h2{font-size:26px}.paper p{font-size:14px}.entry-code{font-size:43px;letter-spacing:.14em}footer{font-size:9px;padding:16px 24px}.paper .privacy{font-size:12px}.paper #error{font-size:14px}}@media(prefers-reduced-motion:no-preference){main{animation:arrive .45s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
header button:hover{background:#3c4f50}
