:root{--paper:#f4f0e7;--ink:#1d1b19;--muted:#68635d;--line:#aaa39a;--red:#9b1c1c;--green:#5c755e;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}body{background:#dfdbd3;color:var(--ink);margin:0;font-family:var(--serif)}button,input,a{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--red);outline-offset:3px}[hidden]{display:none!important}
.paper{max-width:1400px;width:calc(100% - 36px);margin:18px auto;background:var(--paper);min-height:calc(100vh - 36px);padding:24px 35px 22px;box-shadow:0 7px 40px rgba(33,30,26,.07)}.mast{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.mast-side{font:700 10px var(--sans);letter-spacing:.1em}.mast-brand{text-align:center;white-space:nowrap;font:700 clamp(39px,5vw,70px)/1 var(--serif);letter-spacing:-.062em;text-decoration:none}.mast-nav{display:flex;gap:15px;justify-content:flex-end}.mast-nav a{font:700 11px var(--sans);text-decoration:none;text-transform:uppercase;letter-spacing:.06em}.mast-nav a:hover,.text-link:hover{text-decoration:underline}.double-rule{height:7px;border-top:3px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:15px}.dateline{display:flex;justify-content:center;gap:18px;align-items:center;padding:13px 0;text-align:center;font:700 11px var(--sans);letter-spacing:.075em}.dateline-dot{color:var(--red)}.main-rule{border:0;border-top:2px solid var(--ink);margin:0}.thin-rule{border:0;border-top:1px solid var(--line);margin:19px 0}
.lead-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;padding:19px 0 24px;align-items:start}.playing{min-width:0}.side{border-left:1px solid var(--line);padding-left:22px}.side h2{font-size:25px;line-height:1.07;margin:2px 0 10px}.side p{font-size:16px;line-height:1.52}.side h3{font:700 12px var(--sans);letter-spacing:.09em}.micro{font:12px/1.55 var(--sans)!important;color:var(--muted)}.kicker{font:700 11px var(--sans);letter-spacing:.1em;color:var(--red);text-transform:uppercase}.game-name{font:700 clamp(32px,4.1vw,49px)/1.05 var(--serif);letter-spacing:-.04em;margin:7px 0 20px}.game-host{min-height:410px;max-width:700px;scroll-margin-top:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;font:700 12px var(--sans);letter-spacing:.02em;text-decoration:none;border:1px solid var(--ink);border-radius:0;background:none;color:var(--ink);min-height:43px}.btn-dark{background:var(--ink);color:var(--paper)}.btn:hover{filter:contrast(.7)}.text-btn{font:14px var(--serif);border:0;text-decoration:underline;text-underline-offset:3px;background:none;padding:4px 0}.text-link{text-decoration:underline;text-underline-offset:3px}.feedback{font:12px var(--sans);min-height:1.4em;color:var(--muted)}.result-panel{border-top:2px solid var(--ink);margin-top:16px;padding:15px 0}.result-panel h3{font:700 25px var(--serif);margin:0 0 9px}.result-panel p{font:15px/1.45 var(--serif);margin:7px 0}.result-panel .actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 4px}.result-panel .share-grid{font:17px/1.25 var(--sans);white-space:pre-line;letter-spacing:4px;margin:8px 0}.saved-intro{font:13px var(--sans);color:var(--muted)}
.game-note{font:13px/1.5 var(--sans);color:var(--muted);margin:0 0 14px}.guess-grid{display:grid;grid-template-columns:repeat(5,minmax(0,61px));gap:6px;margin:0 0 16px}.tile{display:flex;justify-content:center;align-items:center;width:100%;aspect-ratio:1;border:1px solid #b4aea5;background:rgba(255,255,255,.24);font:700 28px var(--sans);text-transform:uppercase}.tile.typed{border-color:#696159}.tile.correct{background:#536c56;border-color:#536c56;color:#fff}.tile.elsewhere{background:#bca365;border-color:#bca365;color:#fff}.tile.absent{background:#7b7975;border-color:#7b7975;color:#fff}.keyboard{max-width:350px;margin:10px 0 12px;display:grid;gap:5px}.keyboard-row{display:flex;gap:4px;justify-content:center}.key{flex:1;min-width:0;padding:10px 2px;border:1px solid #a4a098;background:#ebe6db;font:700 12px var(--sans);text-align:center;min-height:40px;border-radius:0}.key.wide{flex:1.5;font-size:10px}.key.correct{background:#536c56;color:#fff;border-color:#536c56}.key.elsewhere{background:#bca365;color:#fff;border-color:#bca365}.key.absent{background:#7b7975;color:#fff;border-color:#7b7975}.game-status{min-height:24px;font:13px/1.4 var(--sans);color:var(--muted);margin-top:8px}.game-status.error{color:var(--red)}
.ladder-head{display:flex;gap:15px;align-items:center;margin-bottom:16px}.ladder-endpoint{min-width:115px;border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:9px 5px;text-align:center;font:700 32px var(--serif);letter-spacing:.08em}.ladder-label{text-align:center;font:700 10px var(--sans);color:var(--muted);margin-bottom:5px;letter-spacing:.1em}.ladder-arrow{font:20px var(--serif)}.ladder-progress{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:40px;margin-bottom:16px}.rung{display:inline-block;border:1px solid var(--line);padding:8px;font:700 17px var(--sans);letter-spacing:.07em}.rung.current{border:2px solid var(--green);padding:7px}.ladder-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ladder-form input{border:1px solid #a9a29a;border-radius:0;background:#fffdf7;width:165px;padding:10px 12px;text-transform:uppercase;letter-spacing:.16em;font:700 19px var(--sans)}.ladder-form button{min-width:112px}.ladder-rule{font:13px/1.5 var(--sans);color:var(--muted);margin:0 0 18px}
.routine-shortlist{list-style:decimal;padding-left:20px}.routine-shortlist li{margin:12px 0}.routine-shortlist a{font:700 17px var(--serif)}.routine-shortlist .played{text-decoration:line-through;color:var(--muted)}.below{border-top:2px solid var(--ink);padding-top:13px}.below h2{font:700 14px var(--sans);letter-spacing:.1em}.discovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.discover-card{display:block;width:100%;text-align:left;background:transparent;border:1px solid var(--line);padding:16px;min-height:92px}.discover-card strong{display:block;font:700 20px var(--serif);margin:4px 0}.discover-card small{font:12px var(--sans);color:var(--muted)}.discover-card:hover{background:#e8e3d9}footer{border-top:2px solid var(--ink);padding:16px 0;margin-top:24px;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font:10px var(--sans);letter-spacing:.05em}footer a{text-decoration:none}
.editor-intro,.edition-intro{margin:23px 0}.editor-intro h1,.edition-intro h1{font:700 clamp(34px,4.5vw,53px)/1.05 var(--serif);letter-spacing:-.045em;margin:7px 0}.editor-intro p,.edition-intro p{font:17px/1.5 var(--serif);max-width:730px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:27px;border-top:2px solid var(--ink);padding-top:20px}.editor-grid h2{font:700 23px var(--serif);margin:0 0 12px}.editor-side{border-left:1px solid var(--line);padding-left:23px}.available-games{display:grid;grid-template-columns:1fr;gap:12px}.available-card{border:1px solid var(--line);padding:18px;display:flex;gap:15px;align-items:center;justify-content:space-between}.available-card h3{font:700 23px var(--serif);margin:2px 0 6px}.available-card p{font:13px var(--sans);color:var(--muted);margin:0}.editor-order{padding-left:24px}.editor-order li{border-bottom:1px solid var(--line);padding:9px 0;display:flex;align-items:center;gap:8px}.editor-order li .entry-name{flex:1;font:17px var(--serif)}.editor-order li button{background:transparent;border:0;font:17px var(--sans);padding:5px}.saved-confirm{padding:16px;border-top:2px solid var(--green);margin-top:15px}.saved-confirm strong{font-size:20px}.saved-confirm p{font:14px/1.5 var(--serif)}.no-edition{padding:30px 0}.edition-order{list-style:none;margin:15px 0;padding:0}.edition-order li{border-bottom:1px solid var(--line);padding:9px 0;display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:6px;align-items:center;font:16px var(--serif)}.edition-order li.current{font-weight:700}.edition-order li.complete{text-decoration:line-through;color:var(--muted)}.edition-order button{padding:0;background:none;border:0;text-align:left;text-decoration:underline}.edition-order small{font:10px var(--sans);letter-spacing:.02em}.progress-line{height:5px;background:#ded7ce}.progress-line>div{background:var(--green);width:0;height:100%;transition:width .3s}.transition-note{min-height:23px;font:700 13px var(--sans);color:var(--green)}.edition-controls{border-top:1px solid var(--line);padding-top:9px;display:flex;gap:20px;align-items:center;justify-content:space-between}.no-edition{padding:28px 0}
@media(max-width:1020px){.mast{grid-template-columns:1fr}.mast-side{display:none}.mast-nav{justify-content:center}.lead-grid{grid-template-columns:minmax(0,1fr) 245px;gap:16px}.side{padding-left:14px}.paper{padding:24px}}
@media(max-width:740px){body{background:var(--paper)}.paper{width:100%;margin:0;padding:12px 16px;box-shadow:none}.mast-brand{font-size:clamp(40px,9vw,60px)}.dateline{font-size:10px;gap:7px;line-height:1.4}.lead-grid,.editor-grid{display:block}.side,.editor-side{border:0;border-top:2px solid var(--ink);padding:17px 0 0;margin-top:20px}.game-name{font-size:38px}.game-host{min-height:400px}.discovery{display:block}.discover-card{margin:8px 0}.editor-intro,.edition-intro{margin:17px 0}.ladder-head{gap:8px}.ladder-endpoint{font-size:24px;min-width:95px}.available-card{padding:13px}}
@media(max-width:400px){.paper{padding:12px 10px}.guess-grid{grid-template-columns:repeat(5,minmax(0,53px));gap:4px}.tile{font-size:24px}.keyboard{max-width:100%}.key{font-size:11px;padding:9px 2px}.ladder-endpoint{font-size:22px;min-width:88px}.ladder-form input{width:145px}}

.game-host.is-ladder{min-height:292px}
.ladder-form input{letter-spacing:.055em;font-size:17px}
@media(max-width:740px){.game-host.is-ladder{min-height:286px}}
@media(max-width:400px){.ladder-form input{width:155px;font-size:16px;letter-spacing:.035em}}

.edition-controls .text-btn{white-space:nowrap;flex-shrink:0}
@media(max-width:740px){.edition-controls{flex-wrap:wrap;gap:8px}.edition-controls .micro{flex:1;min-width:175px}}
