.games-main{min-height:calc(100svh - 82px);background:radial-gradient(circle at 85% 4%,#d4ece9,transparent 33%),radial-gradient(circle at 6% 70%,#fce6d4,transparent 30%),var(--cream);padding:clamp(32px,5vw,70px) 0 90px}.games-inner{width:min(calc(100% - 44px),1200px);margin:auto}.game-kicker{margin:0 0 14px;color:var(--teal);font-size:14px;font-weight:700;letter-spacing:.15em}.games-main h1{font:400 clamp(44px,6vw,76px)/1.02 S20Interior,S20Text,sans-serif;color:var(--navy-deep);margin:0}.game-hero,.arcade-intro{max-width:950px}.game-hero>p:not(.game-kicker),.arcade-intro>p:not(.game-kicker),.play-heading>p:not(.game-kicker){font-size:clamp(18px,2vw,23px);line-height:1.48;max-width:800px}.hero-stats,.arcade-rules{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 38px}.hero-stats span,.arcade-rules span{border-radius:100px;background:#e5f2ef;color:var(--teal);padding:10px 17px;font-weight:700}.game-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:38px 0}.game-card{display:flex;flex-direction:column;min-height:360px;border-radius:25px;padding:30px;text-decoration:none;color:#fff;background:#0a3154;box-shadow:0 15px 40px #0b315527;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.game-card:hover{transform:translateY(-5px);box-shadow:0 22px 48px #0b315536}.game-card:nth-child(2){background:#184961}.game-card:nth-child(3){background:#283457}.card-art{display:grid;place-items:center;min-height:130px;font:700 76px/1 S20Interior,S20Text,sans-serif;color:#ffb66c;text-shadow:0 0 26px #ff9c5488;letter-spacing:.08em}.game-card h2{font:400 32px/1.1 S20Interior,S20Text,sans-serif;margin:10px 0}.game-card p{font-size:18px;line-height:1.4;margin:0}.game-card strong{margin-top:auto;padding-top:24px;color:#ffd39c}.book-promo{margin-top:42px;padding:26px 30px;border:2px solid #bad9d6;background:#e9f5f1;border-radius:20px;display:flex;align-items:center;gap:20px;justify-content:space-between}.book-promo p{font-size:20px;font-weight:700;margin:0}.book-promo a,.game-next a{color:var(--teal);font-weight:700;font-size:19px;text-underline-offset:5px}.level-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 20px}.level-tabs button,.quiet-button,.text-button{cursor:pointer;border:1.5px solid #9bbfc3;color:var(--teal);background:#fffefa;border-radius:100px;min-height:44px;padding:9px 16px;text-decoration:none;font-weight:700}.level-tabs button.active{background:var(--teal);color:#fff}.puzzle-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.puzzle-card{display:flex;align-items:center;text-align:left;gap:15px;min-height:98px;padding:17px;border:1.5px solid #c4d9d7;border-radius:17px;background:#fffefa;color:var(--navy);cursor:pointer;transition:transform .15s,border-color .15s}.puzzle-card:hover{transform:translateY(-2px);border-color:var(--orange)}.puzzle-card[hidden]{display:none}.puzzle-num{font:400 27px S20Interior,S20Text,sans-serif;color:var(--orange)}.puzzle-card b{display:block;font-size:18px}.puzzle-card small{display:block;margin-top:4px;color:#4e6b75;font-size:14px}.puzzle-status{margin-left:auto;color:var(--teal);font-size:23px}.play-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:35px;color:var(--teal);font-weight:700}.text-button{border:0;background:none;padding:4px}.play-heading{margin-bottom:24px}.play-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:22px;align-items:start}.board-panel,.clue-panel{min-width:0;padding:22px;border-radius:20px;background:#fffefa;border:1px solid #c9d9dc;box-shadow:0 10px 30px #0a31540e}.board-scroll{overflow:auto;max-height:70vh;padding:5px}.crossword-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:2px;width:max-content;max-width:none;margin:auto;background:#dce6e6;padding:2px;border-radius:8px}.cw-cell,.cw-blank{width:clamp(27px,3.1vw,39px);height:clamp(27px,3.1vw,39px)}.cw-cell{position:relative;padding:0;border:1px solid #a9bcc2;background:#fff;color:var(--navy);font:700 clamp(17px,2vw,24px) S20Text,sans-serif;cursor:pointer}.cw-cell sup{position:absolute;top:1px;left:2px;font:700 9px S20Text,sans-serif;color:#4d6778}.cw-cell span{display:block;line-height:1.5}.cw-cell.in-word{background:#e6f2f0}.cw-cell.selected{background:#ffe3b8;box-shadow:inset 0 0 0 2px var(--orange)}.cw-cell.wrong{box-shadow:inset 0 0 0 2px #d95143}.cw-cell.right{color:#126049}.cw-blank{display:block}.type-label{display:block;margin:18px 0 12px;font-weight:700;color:var(--teal)}.type-label input{display:block;width:100%;height:48px;border:2px solid #a7c4c8;border-radius:9px;margin-top:7px;padding:8px 12px;font-size:22px;text-transform:uppercase}.crossword-actions{display:flex;gap:8px;flex-wrap:wrap}.game-button{border:0;border-radius:11px;background:var(--orange);color:#092b53;min-height:48px;padding:10px 18px;font-weight:700;cursor:pointer}.game-button:hover{background:#ff984e}.game-button.large{font-size:21px;min-height:58px;padding:13px 24px}.crossword-actions .quiet-button{border-radius:11px}.game-feedback{min-height:27px;font-size:17px;font-weight:700;color:var(--teal)}.clue-panel h2{font:400 29px S20Interior,S20Text,sans-serif;color:var(--navy);margin:22px 0 8px}.active-clue{padding:17px;border-radius:12px;background:#e5f2ef;color:var(--navy);font-size:18px;font-weight:700;line-height:1.3}.clue-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.clue{display:block;width:100%;text-align:left;border:0;border-radius:10px;background:transparent;padding:9px;font-size:16px;color:var(--ink);line-height:1.35;cursor:pointer}.clue:hover,.clue.selected{background:#fff0dd}.clue b{color:var(--teal)}.clue small{color:#617984}.game-next{margin:26px 0}.arcade-intro{padding:40px 0 60px}.arcade-shell{overflow:hidden;border:4px solid #0f5870;border-radius:25px;background:#061d38;color:#e6f8f5;box-shadow:0 20px 50px #0b315533}.arcade-hud{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:20px 24px;color:#a9f5e8;font-size:15px;font-weight:700;letter-spacing:.08em}.arcade-progress{height:5px;background:#1b5670}.arcade-progress i{display:block;height:100%;background:var(--orange);transition:width .3s}.arcade-field{position:relative;isolation:isolate;min-height:510px;padding:36px clamp(18px,4vw,70px);background:linear-gradient(transparent 95%,#194c6366 95%),linear-gradient(90deg,transparent 95%,#194c6366 95%);background-size:35px 35px}.arcade-orbit{position:absolute;z-index:-1;border:1px solid #3ec9c344;border-radius:50%;pointer-events:none}.orbit-a{width:460px;height:460px;top:-210px;right:-100px;box-shadow:0 0 55px #19a6aa44}.orbit-b{width:240px;height:240px;bottom:-130px;left:-80px}.arcade-label{color:#a9f5e8;letter-spacing:.2em;font-size:14px;font-weight:700}.mission-card{display:flex;align-items:center;gap:23px;max-width:700px;margin:25px auto 36px;padding:22px 28px;border:2px solid #74c7c2;border-radius:20px;background:#0c3553;box-shadow:0 0 40px #19b6ac36;animation:rise .35s ease-out}.mission-icon{font-size:52px;color:#ffb66c}.mission-card small{color:#a9f5e8;letter-spacing:.1em;font-weight:700}.mission-card h2{font:400 clamp(24px,3vw,40px)/1.1 S20Interior,S20Text,sans-serif;margin:7px 0}.mission-card p{margin:7px 0 0;font-size:18px}.arcade-options{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.arcade-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:136px;padding:12px 8px;border:2px solid #3f8193;border-radius:16px;background:#123e5a;color:#fff;cursor:pointer;font-size:17px;font-weight:700;transition:transform .18s,background .18s}.arcade-option:hover{transform:translateY(-5px);background:#1d5874}.arcade-option.correct{background:#126b5c;border-color:#8df5c4}.arcade-option.wrong{background:#7d3546;border-color:#ff9d9d}.arcade-option:disabled{cursor:default}.option-glyph{font-size:41px;line-height:1;min-height:48px;color:#ffd39c}.arcade-option small{color:#a9f5e8}.arcade-feedback{color:#a9f5e8;text-align:center;margin:26px 0 0}.arcade-footer{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px 24px;color:#a9c8ca}.arcade-footer .text-button{color:#a9f5e8}.arcade-end{text-align:center;padding:55px 20px;border-radius:25px;background:#061d38;color:#e6f8f5}.arcade-end h1{color:#fff}.end-spark{font-size:80px;color:#ffb66c;text-shadow:0 0 50px #ffb66c}.end-score{display:grid;margin:28px auto;padding:20px;width:min(250px,100%);border:2px solid #74c7c2;border-radius:20px}.end-score b{font:400 60px S20Interior,S20Text,sans-serif;color:#ffb66c}.end-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:25px}.end-actions .quiet-button{display:inline-flex;align-items:center}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.game-cards,.puzzle-list{grid-template-columns:repeat(2,minmax(0,1fr))}.play-layout{grid-template-columns:1fr}.board-scroll{max-height:none}.clue-columns{grid-template-columns:1fr 1fr}}@media(max-width:600px){.games-main{padding:30px 0 70px}.games-inner{width:calc(100% - 32px)}.game-cards,.puzzle-list,.clue-columns{grid-template-columns:1fr}.game-card{min-height:285px}.card-art{min-height:90px;font-size:65px}.book-promo{display:block;padding:22px}.book-promo a{display:inline-block;margin-top:15px}.board-panel,.clue-panel{padding:13px}.cw-cell,.cw-blank{width:32px;height:32px}.arcade-options{grid-template-columns:repeat(2,1fr)}.arcade-option{min-height:120px}.arcade-hud{font-size:12px}.arcade-field{min-height:620px;padding:22px 14px}.mission-card{padding:16px;gap:12px}.arcade-footer{font-size:13px}.games-main h1{font-size:clamp(40px,11vw,57px)}}@media(prefers-reduced-motion:reduce){.game-card,.puzzle-card,.arcade-option,.mission-card{animation:none;transition:none}}
/* Crossword completion celebration */
.victory-overlay,.circuit-victory{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,20,37,.74);backdrop-filter:blur(9px);animation:overlay-in .35s ease-out}.victory-card,.circuit-victory-card{position:relative;z-index:2;width:min(100%,560px);padding:clamp(28px,5vw,52px);border:2px solid #a6e8dc;border-radius:26px;background:radial-gradient(circle at 50% 0,#235e72,#082b4b 62%,#061d38);color:#fff;text-align:center;box-shadow:0 0 0 7px #d7fcf017,0 30px 100px #0008,0 0 75px #5ce3cf59;animation:victory-rise .65s cubic-bezier(.2,1.4,.35,1)}.victory-card .game-kicker,.circuit-victory-card .game-kicker{color:#b9f1e7}.victory-card h2,.circuit-victory-card h2{font:400 clamp(38px,6vw,64px)/1.03 S20Interior,S20Text,sans-serif;margin:6px 0 20px;color:#fff}.victory-card p:not(.game-kicker),.circuit-victory-card p:not(.game-kicker){font-size:20px;line-height:1.4}.victory-emblem{display:grid;place-items:center;width:100px;height:100px;margin:0 auto 20px;border:3px solid #ffc581;border-radius:50%;font-size:62px;color:#ffc581;box-shadow:0 0 40px #ffb66c96,inset 0 0 24px #ffb66c48;animation:emblem-pop .7s .15s backwards}.victory-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:30px 0 14px}.victory-actions .quiet-button{background:transparent;color:#e4f8f4;border-color:#88cfc6}.victory-progress{color:#b9f1e7;font-weight:700;letter-spacing:.15em}.victory-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.victory-confetti i{position:absolute;left:var(--x);top:-5%;width:8px;height:16px;background:hsl(var(--h) 90% 68%);border-radius:2px;animation:confetti-fall 3.2s var(--delay) ease-in forwards;transform:rotate(calc(var(--i)*37deg))}@keyframes overlay-in{from{opacity:0}to{opacity:1}}@keyframes victory-rise{from{opacity:0;transform:translateY(34px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes emblem-pop{from{opacity:0;transform:scale(.3) rotate(-60deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes confetti-fall{to{top:115%;transform:translateX(calc((var(--i) - 18)*4px)) rotate(780deg);opacity:0}}
/* Original route-building arcade */
.circuit-intro{position:relative;overflow:hidden;padding:clamp(30px,5vw,60px);border-radius:27px;background:radial-gradient(circle at 75% 25%,#246782,#092b53 50%,#061d38);color:#eafaf5;box-shadow:0 25px 65px #092b5338}.circuit-intro h1{color:#fff}.circuit-intro>p:not(.game-kicker){max-width:690px;font-size:clamp(18px,2vw,23px);line-height:1.48}.circuit-intro .game-kicker{color:#a9f5e8}.circuit-intro .arcade-rules span{background:#b1f3e72a;color:#d9fbf5;border:1px solid #a9f5e85a}.circuit-intro-art{position:relative;display:flex;align-items:center;justify-content:center;width:min(100%,520px);height:150px;margin:4px auto 32px}.art-node{position:relative;z-index:1;display:grid;place-items:center;width:105px;height:105px;border:3px solid #a9f5e8;border-radius:23px;background:#14445e;color:#ffbb71;font-size:60px;box-shadow:0 0 30px #74d9cb88}.art-wire{height:10px;width:220px;background:linear-gradient(90deg,#f9ab62,#9bece0);box-shadow:0 0 25px #8ce5d7;position:relative}.art-wire:after{content:'';position:absolute;left:0;top:-9px;width:28px;height:28px;border-radius:50%;background:#fff6bc;box-shadow:0 0 27px #fff6bc;animation:signal-travel 2.2s linear infinite}.circuit-intro-art>i{position:absolute;width:6px;height:6px;border-radius:50%;background:#a9f5e8;box-shadow:0 0 18px #a9f5e8}.circuit-intro-art>i:nth-last-child(1){top:8%;left:35%}.circuit-intro-art>i:nth-last-child(2){bottom:8%;right:28%}.circuit-intro-art>i:nth-last-child(3){top:24%;right:15%}@keyframes signal-travel{to{left:100%}}
.circuit-game{overflow:hidden;border:4px solid #1a6479;border-radius:27px;background:#061d38;color:#ebfbf5;box-shadow:0 22px 65px #0b31553d}.circuit-hud{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:15px 24px;color:#b6f0e8;font-size:15px;font-weight:700;letter-spacing:.1em}.circuit-sound{border:1px solid #74b7bd;border-radius:100px;background:transparent;color:#b6f0e8;padding:7px 13px;cursor:pointer}.circuit-sound[aria-pressed=true]{background:#1b5a65}.circuit-progress{height:5px;background:#1a5167}.circuit-progress i{display:block;height:100%;background:linear-gradient(90deg,#ff9b52,#ffe29b);transition:width .4s}.circuit-mission{display:flex;align-items:center;gap:20px;padding:25px clamp(18px,4vw,50px);background:linear-gradient(100deg,#103d5b,#0b2f4e)}.mission-marker{flex:none;display:grid;place-items:center;width:82px;height:82px;border:2px solid #f6b274;border-radius:19px;color:#ffd099;font-size:49px;text-shadow:0 0 22px #ffab65;box-shadow:inset 0 0 19px #ffab6530}.circuit-mission small{color:#a9f5e8;letter-spacing:.15em;font-weight:700}.circuit-mission h2{font:400 clamp(24px,3.2vw,42px)/1.1 S20Interior,S20Text,sans-serif;margin:6px 0}.circuit-mission p{margin:0;color:#f7d7ae;font-weight:700;font-size:18px}.circuit-frame{position:relative;isolation:isolate;overflow:auto;padding:clamp(15px,3vw,36px) 10px;background:radial-gradient(circle at 50% 50%,#174d66,#082741 60%,#061d38);transition:box-shadow .25s}.circuit-frame:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#27647a27 1px,transparent 1px),linear-gradient(90deg,#27647a27 1px,transparent 1px);background-size:28px 28px}.circuit-frame.frame-win{box-shadow:inset 0 0 80px #5becb57a}.circuit-frame.frame-error{animation:frame-flash .5s ease-out}@keyframes frame-flash{50%{box-shadow:inset 0 0 60px #ff9b5270}}.circuit-board{width:max-content;margin:auto;padding:16px 6px;border:1px solid #75c6c552;border-radius:22px;background:#082b47c9;box-shadow:0 0 55px #69d8c934}.circuit-row{display:grid;grid-template-columns:50px repeat(var(--size),var(--tile-size)) 50px;gap:5px;align-items:center;margin:5px 0;--tile-size:clamp(44px,5.9vw,72px)}.circuit-side{display:grid;place-items:center;width:50px;height:var(--tile-size)}.spark-source,.receiver{display:grid;place-items:center;width:42px;height:42px;border:2px solid #72aeba;border-radius:13px;background:#144962;color:#a6d6d4;font-size:29px}.spark-source{color:#ffc780;border-color:#ffc780;box-shadow:0 0 22px #ffb970a0;animation:spark-pulse 1.6s ease-in-out infinite}.receiver.goal{color:#ffc780;border-color:#ffc780;box-shadow:0 0 25px #ffbb7991;animation:goal-pulse 2s ease-in-out infinite}@keyframes spark-pulse{50%{transform:scale(1.1);box-shadow:0 0 37px #ffb970}}@keyframes goal-pulse{50%{box-shadow:0 0 40px #ffbb79;transform:scale(1.07)}}.circuit-tile{position:relative;width:var(--tile-size);height:var(--tile-size);padding:3px;border:2px solid #3a8497;border-radius:12px;background:linear-gradient(145deg,#16445f,#0a314e);cursor:pointer;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s}.circuit-tile:hover{transform:scale(1.07);border-color:#b6eadd;z-index:2}.circuit-tile svg{display:block;width:100%;height:100%;overflow:visible}.tile-line{fill:none;stroke:#65c9cc;stroke-width:12;stroke-linecap:round;filter:drop-shadow(0 0 7px #5fd4ce)}.tile-core{fill:#ffe2a3;filter:drop-shadow(0 0 8px #ffc780)}.tile-halo{fill:#63d9d31c}.circuit-tile.powered{background:#1c746f;border-color:#b4ffd9;box-shadow:0 0 25px #70ffe091;animation:tile-signal .65s var(--pulse-delay) both}.circuit-tile.powered .tile-line{stroke:#c8ffe9}.circuit-tile.misfire{border-color:#ffb97c;animation:tile-signal .55s var(--pulse-delay) both}.circuit-tile.hinted{box-shadow:0 0 25px 8px #ffe09b}.circuit-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:25px 18px 8px}.circuit-controls .quiet-button{background:transparent;color:#d1f5eb;border-color:#6babb2;border-radius:11px;min-height:50px}.circuit-controls .text-button{color:#a9d6d5}.circuit-status{min-height:55px;padding:0 18px 15px;text-align:center;color:#b6f0e8;font-size:18px;font-weight:700}@keyframes tile-signal{50%{filter:brightness(2);transform:scale(1.07)}}.circuit-victory-card .circuit-reward{font:400 48px S20Interior,S20Text,sans-serif;color:#ffcb83;margin:20px 0}.circuit-reward small{display:block;font:700 14px S20Text,sans-serif;letter-spacing:.15em}.circuit-victory-card .game-button{margin-top:10px}
@media(max-width:700px){.circuit-hud{padding:13px 12px;font-size:12px}.circuit-mission{padding:17px;gap:14px}.mission-marker{width:64px;height:64px;font-size:38px}.circuit-mission h2{font-size:26px}.circuit-board{padding:8px 3px}.circuit-row{--tile-size:clamp(36px,9.2vw,52px);grid-template-columns:34px repeat(var(--size),var(--tile-size)) 34px;gap:2px;margin:2px 0}.circuit-side{width:34px}.spark-source,.receiver{width:30px;height:30px;font-size:21px;border-radius:9px}.circuit-tile{border-radius:8px}.circuit-controls{display:grid;grid-template-columns:1fr 1fr}.circuit-controls .game-button{grid-column:1/-1}.circuit-controls .text-button{grid-column:1/-1}.circuit-status{font-size:16px}.circuit-intro{padding:28px 20px}.art-node{width:70px;height:70px;font-size:42px}.circuit-intro-art{height:110px}.art-wire{width:120px}.victory-card,.circuit-victory-card{padding:27px 22px}.victory-card h2,.circuit-victory-card h2{font-size:40px}}
@media(max-width:370px){.circuit-row{--tile-size:34px;grid-template-columns:29px repeat(var(--size),var(--tile-size)) 29px;gap:1px}.circuit-side{width:29px}.spark-source,.receiver{width:26px;height:26px;font-size:18px}.circuit-frame{padding-inline:3px}}
@media(prefers-reduced-motion:reduce){.victory-overlay,.victory-card,.victory-emblem,.victory-confetti i,.circuit-tile,.spark-source,.receiver.goal,.art-wire:after{animation:none!important;transition:none!important}}

/* All possible destinations look equal until the player makes the connection. */
.circuit-game .receiver{color:#c4ece6;border-color:#79bcc1;box-shadow:0 0 13px #67c7ca58;animation:none}
.circuit-game .receiver.matched{color:#ffc780;border-color:#ffc780;box-shadow:0 0 30px #ffc780;animation:goal-pulse 1s ease-in-out 2}
@media(prefers-reduced-motion:reduce){.circuit-game .receiver.matched{animation:none}}
.circuit-edge-row{margin:0}.circuit-edge-row .circuit-side{height:clamp(38px,5vw,52px)}.circuit-edge-row .receiver{width:42px;height:42px}@media(max-width:700px){.circuit-edge-row .circuit-side{height:32px}.circuit-edge-row .receiver{width:30px;height:30px}}@media(max-width:370px){.circuit-edge-row .receiver{width:26px;height:26px}}

.circuit-controls .quiet-button:disabled{opacity:.48;cursor:default}

.receiver .symbol-art{display:block;width:27px;height:27px;stroke:currentColor;filter:drop-shadow(0 0 5px #8bdad4)}@media(max-width:700px){.receiver .symbol-art{width:21px;height:21px}}@media(max-width:370px){.receiver .symbol-art{width:18px;height:18px}}
.mc-hub-card{border-color:#3a99a4!important;background:linear-gradient(145deg,#083555,#0b233e)!important;color:#fff!important}.mc-hub-card h2{color:#fff!important}.mc-hub-card p{color:#d4edf0!important}.mc-hub-card strong{color:#ffcd8c!important}.mc-hub-art{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;height:180px;margin:-1px -1px 20px;border-radius:16px;background:radial-gradient(circle at 80% 0,#1d8e9d,transparent 45%),linear-gradient(135deg,#0c4162,#0b203d);overflow:hidden}.mc-hub-art:before,.mc-hub-art:after{content:"";position:absolute;width:230px;height:230px;border:1px solid #88e5db65;border-radius:50%}.mc-hub-art:after{width:150px;height:150px}.mc-hub-art span{position:relative;z-index:1;display:grid;place-items:center;width:84px;height:80px;border:2px solid #9deee5;border-radius:22px;background:#f4f1e9;color:#208a9a;font-size:46px;transform:rotate(-9deg);box-shadow:8px 11px 22px #061a35aa}.mc-hub-art .chat{width:90px;height:60px;border-color:#ffc98d;background:#2b8992;color:#fff;font-size:18px;letter-spacing:3px;transform:translateY(30px) rotate(9deg)}/* Transparent arcade key art for the game menu. */
.game-cards .game-card{min-height:420px;padding:24px 26px 28px;isolation:isolate;border:1px solid #66c4c052;background:radial-gradient(circle at 48% 18%,#1d7890 0,#0a3154 58%,#092844 100%);box-shadow:0 16px 38px #082b5040, inset 0 1px #a0f4ed22}
.game-cards .game-card:nth-child(2){background:radial-gradient(circle at 50% 18%,#1b778e 0,#123b59 62%,#0b304e 100%)}
.game-cards .game-card:nth-child(3){background:radial-gradient(circle at 50% 18%,#475474 0,#263454 63%,#1a294a 100%)}
.game-cards .game-card:nth-child(4){background:radial-gradient(circle at 50% 18%,#257b89 0,#103b5b 60%,#092a48 100%)}
.game-cards .game-card::before{content:"";position:absolute;z-index:-1;width:240px;height:240px;top:5px;left:50%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#79e9df4c,transparent 67%);filter:blur(9px)}
.game-cards .card-art{height:205px;min-height:205px;margin:-5px -7px 8px;display:grid;place-items:center}
.game-cards .card-art img{display:block;width:min(100%,245px);height:205px;object-fit:contain;filter:drop-shadow(0 16px 18px #00172d8c);transition:transform .32s ease,filter .32s ease}
.game-cards .game-card:hover{transform:translateY(-7px);box-shadow:0 24px 50px #082b5066}
.game-cards .game-card:hover .card-art img{transform:translateY(-8px) scale(1.08) rotate(-2deg);filter:drop-shadow(0 22px 20px #00172dbb)}
.game-cards .game-card h2{margin:0 0 10px;font-size:30px}
.game-cards .game-card p{color:#d9ecf1;font-size:17px}
.game-cards .game-card strong{color:#ffd599}
@media(max-width:600px){.game-cards .game-card{min-height:345px}.game-cards .card-art{height:175px;min-height:175px}.game-cards .card-art img{height:175px;width:min(100%,210px)}}
@media(prefers-reduced-motion:reduce){.game-cards .card-art img{transition:none}}
/* Four games form a balanced arcade selection wall. */
.game-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media(max-width:600px){.game-cards{grid-template-columns:1fr}}
/* Crossword entry stays next to the active clue, especially on touch screens. */
.cw-entry{position:relative;z-index:2;margin-bottom:12px;padding:12px;border:1px solid #b7d5d5;border-radius:14px;background:#eef7f4}
.cw-entry .active-clue{padding:10px 12px;font-size:16px;line-height:1.35}
.cw-entry .type-label{margin:10px 0 6px;color:#244d5c;font-size:14px}
.cw-entry-controls{display:flex;gap:8px;align-items:stretch}
.cw-entry-controls input{display:block;min-width:0;flex:1;height:50px;border:2px solid #80aeb7;border-radius:10px;background:#fff;color:var(--navy);padding:8px 12px;font-size:18px;text-transform:uppercase}
.cw-entry-controls input:focus{outline:3px solid #ffbd77;outline-offset:2px}
.cw-entry-controls .quiet-button{flex:0 0 auto;border-radius:10px;font-size:15px}
.cw-pan-hint{display:none;margin:4px 0 9px;color:#486975;font-size:13px}
.board-scroll{max-width:100%;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
@media(max-width:600px){
 .play-layout{gap:14px}.board-panel,.clue-panel{padding:10px}
 .cw-entry{position:sticky;top:6px;margin-bottom:8px;padding:9px;box-shadow:0 5px 16px #0c35501c}
 .cw-entry .active-clue{font-size:15px}.cw-entry-controls input{font-size:16px}
 .cw-entry-controls .quiet-button{padding:8px 11px;font-size:14px}
 .cw-pan-hint{display:block}
 .board-scroll{width:100%;max-height:55svh;min-height:120px;padding:4px;border:1px solid #d1e0e0;border-radius:8px}
 .crossword-grid{margin:0 auto}.cw-cell,.cw-blank{width:34px;height:34px}
 .crossword-actions{margin-top:12px}.crossword-actions button{flex:1 1 145px}
 .clue-panel h2{margin-top:10px}
}
/* Desktop players type directly after selecting a crossword square. */
@media(min-width:901px) and (pointer:fine){.cw-entry .type-label,.cw-entry-controls{display:none}.cw-entry{padding:10px}.cw-entry .active-clue{margin:0}}
@media(pointer:fine){.cw-entry .type-label,.cw-entry-controls{display:none}}

.game-cards .scam-hub-card{grid-column:1/-1;min-height:295px;display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,.55fr);gap:28px;align-items:center;background:radial-gradient(circle at 21% 50%,#237c7c,#10495c 42%,#0b304e 100%);padding:24px 36px}
.game-cards .scam-hub-card::before{left:19%;top:24px;width:300px;height:250px}
.game-cards .scam-hub-card .card-art{height:250px;min-height:250px;margin:0}
.game-cards .scam-hub-card .card-art img{height:250px;width:min(100%,340px)}
.game-cards .scam-hub-card .scam-hub-kicker{font-size:13px;color:#f6c99b;letter-spacing:.15em;font-weight:800;margin:0 0 11px}
.game-cards .scam-hub-card h2{font-size:clamp(32px,4vw,52px)}
.game-cards .scam-hub-card strong{display:block;margin-top:14px;padding:0}
@media(max-width:600px){.game-cards .scam-hub-card{grid-template-columns:1fr;gap:5px;padding:22px}.game-cards .scam-hub-card .card-art{height:185px;min-height:185px}.game-cards .scam-hub-card .card-art img{height:185px}}

/* Keep the two book routes readable in the games hub. */
.book-promo-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 22px}
@media(max-width:700px){.book-promo-links{justify-content:flex-start;gap:0 20px}}
