/* Eight games: newspaper columns on desktop, comfortable pairs on phones. */
html[data-theme="newspaper"] .cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:27px 20px}
html[data-theme="newspaper"] .card h3{font-size:25px}
html[data-theme="newspaper"] .card h3::before{font-size:11px;margin-right:7px}
html[data-theme="newspaper"] .card-title{padding:14px 13px}
html[data-theme="newspaper"] .card-bottom{padding:12px 11px;gap:8px}
html[data-theme="newspaper"] .card-bottom .play{font-size:15px}
html[data-theme="newspaper"] .card-stamp{width:111px}
html[data-theme="newspaper"] .card[data-status="played"] .card-status{font-size:10px;letter-spacing:.1px}
/* Scrapple: loose printed scraps and a single answer line. */
.scrapple-card-preview{display:grid;justify-items:center;gap:15px}
.scrapple-mini-word,.scrapple-mini-scraps{display:grid;grid-template-columns:repeat(5,23px);gap:4px}
.scrapple-card-preview i{display:grid;place-items:center;width:23px;height:26px;border:1px solid #a99e85;font:700 14px Georgia,serif;font-style:normal;background:#f4f0e3;color:#34332c}
.scrapple-mini-word i{background:#34332c;color:#f4f0e3;border-color:#34332c}
.scrapple-mini-scraps i:nth-child(3n){rotate:5deg}.scrapple-mini-scraps i:nth-child(3n+1){rotate:-4deg}
html[data-theme="newspaper"] .card-art>.meow-card-preview{width:124px;height:124px;display:block;flex:none;scale:1.15;background:#f4f0e3;border:2px solid #77766b}
.meow-card-preview path{fill:none;stroke:#77766b;stroke-width:2}
.meow-card-preview .strike-preview-bomb path{fill:#f4f0e3;stroke:none}
.meow-card-preview .strike-preview-bomb circle{fill:#f4f0e3;stroke:none}
.meow-card-preview .woof-preview-cross{stroke:#514f45;stroke-width:.7;stroke-linecap:round}
html[data-theme="newspaper"] #game-dialog .scrapple-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-width:340px;margin:32px auto 20px;padding:0;border:0;background:transparent}
html[data-theme="newspaper"] #game-dialog .scrapple-tile{display:grid;place-items:center;aspect-ratio:1;min-width:0;border:1px solid #887e68;border-bottom:3px double #887e68;background:#f4f0e3;color:#34332c;font:700 30px/1 Georgia,serif;cursor:pointer}
html[data-theme="newspaper"] #game-dialog .scrapple-tile:disabled{opacity:1;background:#e9e2d144;cursor:default}
.scrapple-rack{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-width:340px;margin:30px auto}
.scrapple-scrap{aspect-ratio:1;min-width:0;display:grid;place-items:center;background:#f4f0e3;border:1px solid #a99e85;box-shadow:2px 2px 0 #b1a58c55;color:#34332c;font:700 27px/1 Georgia,serif;cursor:pointer}
.scrapple-scrap:nth-child(3n){rotate:3deg}.scrapple-scrap:nth-child(3n+1){rotate:-3deg}
.scrapple-scrap:disabled{opacity:.25;cursor:default;box-shadow:none}
.scrapple-scrap:focus-visible,.scrapple-tile:focus-visible{outline:2px solid #514831;outline-offset:3px}
.scrapple-tools{gap:12px;flex-wrap:wrap;margin-top:26px}
.wordle-result-answer{text-align:center;font:14px Georgia,serif;margin:15px 0 22px;color:#72654c}
.wordle-result-answer strong{letter-spacing:2px;color:#34332c}
html[data-theme="newspaper"] #game-dialog .meow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0;padding:0;border:2px solid #77766b;background:#eeeadf;touch-action:manipulation}
html[data-theme="newspaper"] #game-dialog .meow-cell{display:grid;place-items:center;min-width:0;position:relative;background:#eeeadf var(--tile-pattern);background-size:12px 12px;border:0;border-right:1px solid #c8c4b7;border-bottom:1px solid #c8c4b7;color:#34332c;font:24px Georgia,serif}
html[data-theme="newspaper"] #game-dialog .meow-cell.meow-blocked{background-color:#dcd8cc}
html[data-theme="newspaper"] #game-dialog .meow-cell.meow-cat{background:#34332c;color:#f4f0e3}
html[data-theme="newspaper"] #game-dialog .meow-cell.selected{outline:2px solid #928064;outline-offset:-4px;z-index:1}
.bomb-icon{display:block;width:34px;height:32px;pointer-events:none}
.meow-modes{margin:18px 0}
@media(max-width:1150px){
 html[data-theme="newspaper"] .card h3{font-size:22px}
 html[data-theme="newspaper"] .card-bottom{display:grid;grid-template-columns:1fr;gap:9px}
 html[data-theme="newspaper"] .card-bottom .play{justify-self:end}
}
@media(max-width:1000px){html[data-theme="newspaper"] .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 20px}}
@media(max-width:540px){
 html[data-theme="newspaper"] .cards{gap:25px 14px}
 html[data-theme="newspaper"] .card h3{font-size:19px;letter-spacing:-.6px}
 html[data-theme="newspaper"] .card h3::before{font-size:9px;margin-right:5px}
 html[data-theme="newspaper"] .card-title{padding:12px 7px}
 html[data-theme="newspaper"] .card-bottom{padding:11px 9px}
 html[data-theme="newspaper"] .card-bottom .play{font-size:14px}
 html[data-theme="newspaper"] .card-stamp{width:112px}
 .scrapple-mini-word,.scrapple-mini-scraps{grid-template-columns:repeat(5,15px);gap:3px}
 .scrapple-card-preview i{width:15px;height:19px;font-size:10px}
 html[data-theme="newspaper"] .card-art>.meow-card-preview{width:88px;height:88px}
 .scrapple-rack{gap:9px}.scrapple-scrap{font-size:24px}
 html[data-theme="newspaper"] #game-dialog .scrapple-board{gap:6px;margin-top:25px}
 .bomb-icon{width:30px;height:28px}
 html[data-theme="newspaper"] #game-dialog .meow-modes{gap:6px}
 html[data-theme="newspaper"] #game-dialog .meow-modes button{padding:9px 10px;font-size:12px}
}
@media(max-width:360px){html[data-theme="newspaper"] .cards{grid-template-columns:1fr}html[data-theme="newspaper"] .card h3{font-size:24px}}

/* Shared SVG rules keep every region junction square and continuous. */
html[data-theme="newspaper"] #game-dialog .meow-grid{position:relative;isolation:isolate;border-width:3px}
html[data-theme="newspaper"] #game-dialog .meow-grid .meow-cell{border:0}
.air-grid-rules{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:hidden;fill:none;stroke-linecap:square;stroke-linejoin:miter}
.air-grid-rules .air-cell-rules{stroke:var(--puzzle-grid,#c8c4b7);stroke-width:1}
.air-grid-rules .air-region-rules{stroke:var(--puzzle-rule,#77766b);stroke-width:3}

.air-grid-rules .air-bomb-borders rect{fill:none;stroke:var(--puzzle-ink);stroke-width:3;stroke-linejoin:miter}

/* Air Strike uses a dimmed square without a selector outline. */
html[data-theme="newspaper"] #game-dialog .meow-grid .meow-cell:focus-visible{outline:none}
html[data-theme="newspaper"] #game-dialog .meow-grid .meow-cell:hover{box-shadow:none}
html[data-theme="newspaper"] #game-dialog .meow-grid .meow-cell:is(:hover,:focus-visible,.selected){outline:none;box-shadow:none}

/* Air Strike miniature: shared square junctions and solid occupied-square edges. */
.meow-card-preview .strike-preview-region{stroke-linecap:square;stroke-linejoin:miter}
.meow-card-preview .strike-preview-borders rect{fill:none;stroke:var(--puzzle-ink,#34332c);stroke-width:2;stroke-linejoin:miter}
html[data-theme="newspaper"] .card .card-art>.meow-card-preview>rect[stroke="none"]{stroke:none}

/* During the completion wave each tile carries a clipped copy of the grid rules. */
html[data-theme="newspaper"] #game-dialog .meow-grid.air-wave-running{border-color:transparent;background:transparent}
.meow-grid.air-wave-running>.air-grid-rules{visibility:hidden}
.meow-cell>.air-wave-rules{visibility:visible;overflow:hidden}
