@import url('https://fonts.googleapis.com/css2?family=Old+Standard+TT:ital,wght@0,400;0,700;1,400&display=swap');
:root{--paper:#E3E2DD;--paper-light:#ECEBE7;--paper-shadow:#D5D4CF;--ink:#181714;--ink-heavy:#11110F;--ink-secondary:#57544D;--rule:#6F6E69;--rule-light:rgba(111,110,105,.48);--font-news:"Old Standard TT",Georgia,serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper-shadow);color:var(--ink);font-family:var(--font-news)}body{background-image:radial-gradient(ellipse at 18% 12%,rgba(255,255,255,.13),transparent 32%),repeating-linear-gradient(0deg,rgba(17,17,15,.011) 0,rgba(17,17,15,.011) 1px,transparent 1px,transparent 5px)}.section-page-shell{width:min(calc(100% - 32px),1280px);margin:0 auto;background:var(--paper);min-height:100vh;padding:12px 32px 48px}.section-page-header{border-top:1px solid var(--ink-heavy);border-bottom:5px double var(--ink-heavy)}.section-page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:18px 0 14px}.section-page-heading .eyebrow{margin:0 0 4px;font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:1.6px}.section-page-heading h1{margin:.05em 0;font-size:clamp(46px,7vw,84px);line-height:.88;letter-spacing:-.04em}.section-page-heading .deck{max-width:760px;margin:7px 0 0;color:var(--ink-secondary);font-size:15px;line-height:1.35}.scaffold-status{align-self:center;padding:7px 10px;border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:1px;color:var(--ink-secondary)}.section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;border-top:1px solid var(--rule)}.section-slot{padding:18px 0 22px;border-bottom:1px solid var(--rule-light)}.section-slot+.section-slot{border-left:1px solid var(--rule-light);padding-left:20px}.section-slot:nth-child(3n+1){border-left:0;padding-left:0}.section-slot h2{margin:0 0 8px;font-size:28px;line-height:.98}.section-slot p{margin:0 0 8px;font-size:14px;line-height:1.4}.credit-line,.slot-meta{font:10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.55px;color:var(--ink-secondary)}.placeholder-surface{min-height:150px;display:flex;align-items:center;justify-content:center;margin-top:12px;border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);background:var(--paper-light);color:var(--ink-secondary);font-style:italic;text-align:center;padding:18px}
/* Live puzzle desk */.puzzle-desk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding-top:18px}.puzzle-feature{border-top:3px double var(--ink-heavy);padding-top:10px}.puzzle-feature h2{font-size:32px;line-height:.95;margin:3px 0 8px}.puzzle-feature>p{margin:0 0 12px;line-height:1.35}.puzzle-feature:first-child{grid-row:span 2}.word-play-feature{grid-column:1/-1}.puzzle-actions{display:flex;gap:8px;margin-top:12px}.puzzle-actions button{border:1px solid var(--ink);background:transparent;font:700 11px var(--font-news);text-transform:uppercase;padding:6px 10px;cursor:pointer}.puzzle-actions button:hover{background:var(--paper-light)}.puzzle-status{min-height:1.3em;margin-top:7px!important;color:var(--ink-secondary);font-size:12px}.sudoku-grid{display:grid;grid-template-columns:repeat(9,1fr);width:min(100%,460px);aspect-ratio:1;border:2px solid var(--ink-heavy);background:var(--ink-heavy);gap:1px}.sudoku-grid>span,.sudoku-cell{display:grid;place-items:center;background:var(--paper-light);min-width:0}.sudoku-grid>span,.sudoku-cell input{font:700 clamp(16px,2vw,25px) var(--font-news);text-align:center}.sudoku-cell input{width:100%;height:100%;border:0;background:var(--paper);color:var(--ink);outline:none}.sudoku-cell input:focus{box-shadow:inset 0 0 0 2px var(--ink)}.sudoku-cell input.wrong,.anagram-list input.wrong{background:#ead7d2}.anagram-list input.correct{background:#dce5d8}.sudoku-grid>*:nth-child(3n):not(:nth-child(9n)){border-right:2px solid var(--ink-heavy)}.sudoku-grid>*:nth-child(n+19):nth-child(-n+27),.sudoku-grid>*:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid var(--ink-heavy)}.word-search-layout{display:grid;grid-template-columns:minmax(0,1fr) 145px;gap:18px;align-items:start}.word-search-grid{display:grid;grid-template-columns:repeat(var(--word-search-size,15),1fr);width:min(100%,520px);aspect-ratio:1;border:1px solid var(--ink);background:var(--paper-light)}.word-search-grid span{display:grid;place-items:center;font:700 clamp(10px,1.2vw,16px) Georgia,serif}.word-search-grid .word-found{background:var(--paper-shadow);outline:1px solid var(--ink-secondary)}.word-bank{columns:1;margin:0;padding-left:18px;font-size:13px}.word-bank li{margin-bottom:4px}.anagram-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;list-style-position:inside;padding:0}.anagram-list li{border-top:1px solid var(--rule);padding-top:8px}.anagram-list b{display:block;letter-spacing:.12em;margin-bottom:5px}.anagram-list input{width:100%;border:1px solid var(--rule);background:var(--paper-light);font:16px var(--font-news);padding:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.section-page-shell{width:calc(100% - 16px);padding:10px 22px 40px}.section-page-heading{grid-template-columns:1fr}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-slot:nth-child(3n+1){border-left:1px solid var(--rule-light);padding-left:20px}.section-slot:nth-child(2n+1){border-left:0;padding-left:0}.puzzle-desk{grid-template-columns:1fr}.puzzle-feature:first-child{grid-row:auto}.word-play-feature{grid-column:auto}.anagram-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){body{background:var(--paper)}.section-page-shell{width:100%;padding:8px 12px 32px}.section-page-heading h1{font-size:46px}.section-grid{display:block}.section-slot,.section-slot+.section-slot,.section-slot:nth-child(3n+1),.section-slot:nth-child(2n+1){border-left:0;padding-left:0}.word-search-layout{grid-template-columns:1fr}.word-bank{columns:2}.anagram-list{grid-template-columns:1fr 1fr}}

.crossword-feature{grid-column:1/-1}
.crossword-layout{display:grid;grid-template-columns:minmax(360px,520px) minmax(260px,1fr);gap:22px;align-items:start}
.crossword-grid{display:grid;grid-template-columns:repeat(var(--crossword-size,11),1fr);width:min(100%,520px);aspect-ratio:1;border:2px solid var(--ink-heavy);background:var(--ink-heavy);gap:1px}
.crossword-cell{position:relative;display:grid;place-items:center;background:var(--paper-light);min-width:0}
.crossword-cell.block{background:var(--ink-heavy)}
.crossword-cell input{width:100%;height:100%;border:0;background:var(--paper);color:var(--ink);font:700 clamp(15px,2vw,24px) var(--font-news);text-align:center;text-transform:uppercase;outline:none}
.crossword-cell input:focus{box-shadow:inset 0 0 0 2px var(--ink-heavy)}
.crossword-cell input.wrong{background:#DCCECB}
.crossword-number{position:absolute;left:2px;top:1px;z-index:2;font:700 8px Arial,sans-serif;color:var(--ink-secondary);pointer-events:none}
.crossword-clues{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.crossword-clues h3{margin:0 0 6px;border-bottom:2px solid var(--ink-heavy);font-size:20px}
.crossword-clues ol{list-style:none;padding:0;margin:0}
.crossword-clues li{margin:0 0 7px;font-size:13px;line-height:1.25}
.crossword-clues b{display:inline-block;min-width:1.5em}
@media(max-width:900px){.crossword-layout{grid-template-columns:1fr}.crossword-clues{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.crossword-clues{grid-template-columns:1fr}.crossword-grid{width:100%}}

.feature-status{margin:14px 0 8px;padding:7px 0;border-bottom:1px solid var(--rule);font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.8px;color:var(--ink-secondary)}
.comic-desk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 22px;padding:16px 0 24px}
.comic-entry{border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);padding:10px 0 14px;min-width:0}
.comic-entry.comic-featured{grid-column:1/-1}
.comic-entry h2{font-size:clamp(26px,3vw,38px);line-height:.95;margin:3px 0 7px}
.comic-entry figure{margin:12px 0 8px;text-align:center;background:#F3F3F1;border:1px solid var(--rule-light);padding:12px}
.comic-entry img{display:block;max-width:100%;height:auto;margin:0 auto;filter:grayscale(.12) contrast(.98)}
.comic-entry figcaption{margin-top:8px;font-size:12px;line-height:1.35;text-align:left;color:var(--ink-secondary)}
.comic-license{display:flex;gap:8px 14px;flex-wrap:wrap;font:700 10px Arial,sans-serif;text-transform:uppercase}
.comic-license a{color:inherit}
.comic-source-note{border-top:4px double var(--ink-heavy);padding:10px 0 0;font-size:13px;line-height:1.4;color:var(--ink-secondary)}
@media(max-width:750px){.comic-desk{grid-template-columns:1fr}.comic-entry.comic-featured{grid-column:auto}}

.comic-controls{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;align-items:end;border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);padding:10px 0}
.comic-controls label,.comic-controls legend{font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px}
.comic-controls select,.comic-controls button{width:100%;border:1px solid var(--rule);background:var(--paper-light);color:var(--ink);padding:7px 8px;font:12px var(--font-news)}
.comic-controls button{font-weight:700;text-transform:uppercase;cursor:pointer}
#comicSources{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;border:0;padding:0;margin:0}
#comicSources legend{width:auto;margin-right:4px}
#comicSources label{display:flex;gap:4px;align-items:center}
#comicSources small{font-weight:400;color:var(--ink-secondary)}
@media(max-width:850px){.comic-controls{grid-template-columns:1fr}.comic-controls button{width:auto}}

.puzzle-preferences{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;align-items:end;border-top:3px double var(--ink-heavy);border-bottom:1px solid var(--rule);padding:10px 0;margin-top:12px}
.puzzle-preferences label,.puzzle-preferences legend{font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px}
.puzzle-preferences select,.puzzle-preferences button{border:1px solid var(--rule);background:var(--paper-light);color:var(--ink);padding:7px 8px;font:12px var(--font-news)}
.puzzle-preferences button{font-weight:700;text-transform:uppercase;cursor:pointer}
#puzzleVisibility{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap;border:0;padding:0;margin:0}
#puzzleVisibility legend{margin-right:5px}
#puzzleVisibility label{display:flex;align-items:center;gap:4px}
.crossword-clues em{font:700 8px Arial,sans-serif;text-transform:uppercase;color:var(--ink-secondary);letter-spacing:.5px}
.cryptogram-text{border:1px solid var(--rule);background:var(--paper-light);padding:18px;font:700 clamp(18px,2.2vw,28px) var(--font-news);letter-spacing:.08em;line-height:1.45;margin:10px 0}
.cryptogram-answer{display:block}
.cryptogram-answer span{display:block;font:700 10px Arial,sans-serif;text-transform:uppercase;margin-bottom:4px}
.cryptogram-answer textarea{width:100%;border:1px solid var(--rule);background:var(--paper);font:18px var(--font-news);padding:8px;resize:vertical}
@media(max-width:900px){.puzzle-preferences{grid-template-columns:1fr}.puzzle-preferences button{width:max-content}}
