:root{--bg:#F6F0E2;--card:#fffdf7;--ink:#1C2424;--soft:#55615F;--teal:#1B5E3B;--gold:#B98A2E;--line:#E6DCC4}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:1.08rem/1.55 "Source Serif 4",Georgia,"Times New Roman",serif}
a{color:var(--teal)}
header,main,footer{max-width:54rem;margin:0 auto;padding:0 1.3rem}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding-top:1.1rem;padding-bottom:.6rem}
header .brand{display:flex;align-items:center;gap:.7rem;color:inherit;text-decoration:none;font-weight:700}
header img{width:44px;height:44px;border-radius:10px}
header nav a{margin-left:1rem}
.eyebrow{color:var(--gold);letter-spacing:.12em;font-size:.82rem;text-transform:uppercase;margin:0 0 .4rem;font-weight:700}
h1{font-size:2.3rem;line-height:1.15;margin:0 0 .6rem}
h2{font-size:1.5rem;margin:2rem 0 .7rem}
.lead{font-size:1.2rem;color:var(--soft);max-width:40rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.1rem 1.2rem;margin:0 0 1rem}
.btn,.btn-soon{display:inline-block;padding:.8rem 1.2rem;border-radius:12px;text-decoration:none;font-weight:700;border:2px solid var(--teal)}
.btn{background:var(--teal);color:#fff}
.btn-soon{color:var(--teal);cursor:default}
.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.2rem 0}
.shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem}
.shots img{width:100%;height:auto;border-radius:18px;border:1px solid var(--line)}
table{border-collapse:collapse;width:100%}
td,th{border-bottom:1px solid var(--line);padding:.5rem .4rem;text-align:left;vertical-align:top}
details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;margin:0 0 .6rem}
summary{font-weight:700;cursor:pointer}
footer{color:var(--soft);font-size:.95rem;padding-top:1.5rem;padding-bottom:2rem}
.grid{display:inline-grid;gap:2px;background:var(--teal);padding:4px;border-radius:8px;user-select:none}
.grid span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--card);font-weight:700;cursor:pointer;font-size:1.05rem}
.grid span.on{background:#d5e8dc;color:var(--teal)}
.grid span.found{background:#1B5E3B;color:#fff}
.words{display:flex;flex-wrap:wrap;gap:.6rem 1.1rem;margin:1rem 0}
.words s{color:var(--soft)}
.notice{background:rgba(185,138,46,.12);border:1px solid rgba(185,138,46,.5);border-radius:12px;padding:.8rem 1rem;margin:1rem 0}
button{font:inherit;cursor:pointer}
.btn-ghost, .btn.btn-ghost{background:transparent;color:var(--teal)}
.muted{color:var(--soft);font-size:.98rem}
