/* PERERYV / Private collection. A shared material language for all sixty games. */
:root{color-scheme:dark;--paper:#f2efe8;--muted:#92949c;--line:#ffffff12;--surface:#1a1c21;--amber:#eea768;--accent:#eea768;--accent-rgb:238,167,104;--world-image:url("assets/world-table.9c75b1beabd2.webp")}
body{background:#101114;color:var(--paper);font-size:14px;background-image:radial-gradient(ellipse at 70% 0,#33281d24,transparent 36%)}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--amber);outline-offset:5px}
button{color:inherit}a,button{transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}
.header,main,#player{max-width:1440px;padding-left:64px;padding-right:64px}
.header{height:96px;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:22px;font-weight:800;letter-spacing:-.7px;gap:12px}.brand-icon{width:34px;height:36px;border:0;border-radius:0;background:transparent;gap:6px;transform:skew(-10deg)}.brand-icon i{display:block;width:9px;height:29px;background:var(--amber);border-radius:2px}.brand-dot{color:#71747e;font-size:10px;margin-left:-5px}.header nav{gap:36px}.header nav a,.header nav button{font-size:12px;font-weight:600;color:#babcc3}.header nav a:hover,.header nav button:hover{color:white}.header nav span{font:10px Manrope;color:#737781}.local-label{color:#8d9098;font-size:11px;gap:9px}.local-label i{width:5px;height:5px;background:#d6aa79;box-shadow:0 0 10px #e6ac6150}
.hero{min-height:570px;display:flex;align-items:center;gap:0;padding:52px 0 72px;isolation:isolate;border-bottom:1px solid var(--line)}
#hero-art{position:absolute;inset:0 -64px 0 29%;height:auto;border:0;border-radius:0;margin:0;background:#101114;transform:none;z-index:-1;overflow:hidden}
#hero-art img{object-position:60% 53%;width:100%;height:100%;object-fit:cover;opacity:.95}
#hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101114 0%,#101114b8 17%,transparent 46%),linear-gradient(0deg,#101114 0%,transparent 25%,transparent 86%,#101114 100%)}
.hero-copy{position:relative;z-index:1;width:62%;pointer-events:none}.hero-copy a,.hero-copy button{pointer-events:auto}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;color:#a3a5ad}.eyebrow-line{display:inline-block;vertical-align:middle;width:24px;height:1px;background:var(--amber);margin-right:12px}.hero h1{font-size:clamp(48px,5.2vw,74px);font-weight:500;letter-spacing:-4.2px;line-height:1.08;margin:29px 0 24px}.hero h1>span{color:#e6b58b}.hero-copy>p{font-size:14px;line-height:1.85;color:#a1a4ae;margin:0}.hero-actions{gap:28px;margin-top:32px}.button{font-size:12px;letter-spacing:.1px;font-weight:700;padding:15px 22px;border:1px solid #ffffff1f;border-radius:6px;background:#202227;color:#eeece6;box-shadow:none}.button:hover{background:#2b2e34;border-color:#ffffff38}.button.primary{background:#eab07e;border-color:#eab07e;color:#21170f;box-shadow:0 5px 24px #d6965020}.button.primary:hover{background:#f5c297;border-color:#f5c297;box-shadow:0 8px 30px #d6965036}.button.primary span{color:#3d2819;font-size:20px}.text-link{font-size:11px;font-weight:600;color:#c0c0c4}.hero-facts{gap:20px;margin-top:29px;color:#767b85;font-size:9px}.hero-facts span:before{content:'';display:inline-block;width:3px;height:3px;border-radius:50%;background:#8c7460;vertical-align:middle;margin-right:7px}.hero-edition{position:absolute;bottom:43px;right:0;text-align:right}.hero-edition>span{color:#c6b6a8;font-size:8px;letter-spacing:3px}.hero-edition>div{display:flex;align-items:center;gap:17px;margin-top:12px}.hero-edition strong{font-size:54px;font-weight:400;line-height:1;letter-spacing:-3px}.hero-edition p{font-size:10px;line-height:1.7;color:#a2a1a5;text-align:left}.hero-sticker{display:none}
.featured-section{padding:42px 0 36px;border-bottom:1px solid var(--line)}.editorial-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.editorial-heading h2{font-size:23px;font-weight:500;letter-spacing:-.7px;margin:8px 0 0}.editorial-note{color:#6f737d;font-size:10px}.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.featured-card{border:1px solid #ffffff12;border-radius:10px;overflow:hidden;position:relative;height:205px;padding:0;text-align:left;background:#1a1d23;isolation:isolate}.featured-card .cover-scene{position:absolute;inset:0}.featured-card .cover-world{opacity:.85;object-position:center 57%}.featured-card .cover-symbol{opacity:.4;left:25%;width:85%;top:4%;height:95%;transform:rotate(-5deg)}.featured-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#080b11ef,transparent 100%);z-index:-1}.featured-card .cover-shade{background:linear-gradient(90deg,#0b0d18a0,transparent)}.featured-copy{position:absolute;bottom:23px;left:24px;right:24px}.featured-copy>span{font-size:8px;font-weight:600;letter-spacing:1.6px;color:#cdc0b8}.featured-copy h3{font-size:23px;letter-spacing:-.8px;font-weight:600;margin:9px 0}.featured-copy p{font-size:10px;color:#aaaeb8;margin:0}.featured-arrow{position:absolute;bottom:28px;right:25px;font-size:24px;font-weight:400;color:#ebc39d}.featured-card:hover{transform:translateY(-3px);border-color:#d7aa7750}.featured-card:hover .cover-world{transform:scale(1.05)}
.catalog{padding-top:46px}.section-heading{align-items:center}.section-heading .eyebrow{font-size:9px;color:#7e828c;letter-spacing:1.8px}.section-heading h2{font-size:31px;letter-spacing:-1px;font-weight:500;margin:10px 0 25px}.section-heading h2 span{font-size:12px;border-color:#ffffff18;color:#999da6;border-radius:4px;margin-left:10px;padding:4px 8px;font-weight:400}.search{background:#191b20;border-color:#ffffff12;width:300px;padding:13px 15px;gap:10px;border-radius:6px}.search svg{width:17px;height:17px;stroke:#8a8f9a;fill:none;stroke-width:1.5;flex-shrink:0}.search input{font-size:11px;color:#e1e1e4}.search input::placeholder{color:#737985}.search kbd{border-color:#373b44;color:#7d818c;font-family:Manrope;padding:1px 6px}.filter-bar{margin:0 0 27px;gap:20px}.filters{gap:7px}.filters button{font-weight:500;color:#9298a3;border:1px solid transparent;border-radius:5px;padding:10px 16px;font-size:11px}.filters button.active{background:#e9e4db;color:#242321;border-color:#e9e4db}.filters button:hover:not(.active){background:#20232a;color:#d8dbe0;border-color:#ffffff0a}.filters small{font-size:9px;margin-left:5px;opacity:.6}#shown-count{color:#737882;font-size:10px}.game-grid{gap:28px 20px;grid-template-columns:repeat(4,minmax(0,1fr))}.game-card{background:linear-gradient(145deg,#1c1f26,#17191e);border:1px solid #ffffff0c;border-radius:9px;box-shadow:0 4px 12px #00000018}.game-card:hover{transform:translateY(-5px);border-color:#e6b28448;box-shadow:0 14px 35px #0004}.card-art{height:auto;aspect-ratio:1.65;isolation:isolate;background:#101720}.cover-scene{display:block;width:100%;height:100%;overflow:hidden;position:relative;isolation:isolate}.cover-world{width:100%;height:100%;object-fit:cover;opacity:.55;display:block;transition:transform .6s;filter:saturate(.9)}.cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,#11151e70,#11151e00 50%),linear-gradient(90deg,#080b1040,transparent)}.cover-symbol{position:absolute;inset:2% 0;width:100%;height:96%;filter:drop-shadow(0 12px 10px #0009);transform:translateY(6px);opacity:.97}.card-art svg{transition:transform .45s;width:100%;height:100%}.game-card:hover .cover-symbol{transform:translateY(2px) scale(1.04)}.game-card:hover .cover-world{transform:scale(1.07)}.cover-index{position:absolute;bottom:12px;left:14px;font-size:8px;letter-spacing:2px;color:#ccd4e58c;font-variant-numeric:tabular-nums}.cover-type{position:absolute;bottom:12px;right:14px;color:#e6d9ca80;font-size:7px;letter-spacing:1.5px}.card-tag{left:12px;top:12px;border:1px solid #ffffff22;border-radius:3px;background:#121821b3;color:#d5d8dd;font-weight:500;font-size:7px;letter-spacing:1px;backdrop-filter:blur(8px)}.favorite{top:10px;right:10px;width:30px;height:30px;background:#0c111a80;color:#b7c1d3;border:1px solid #ffffff20;font-size:20px;backdrop-filter:blur(8px)}.favorite:hover{background:#1e283d;color:#fff}.favorite.selected{background:#d9aa7830;color:#ffc78e;border-color:#ffc78e50}.card-body{padding:18px 18px 14px}.card-body h3{font-size:14px;font-weight:600;letter-spacing:-.3px;margin-bottom:9px;line-height:1.4;min-height:20px}.card-body p{font-size:10px;color:#8e95a2;line-height:1.7;min-height:34px}.card-foot{border-color:#ffffff0a;margin-top:14px;padding-top:11px;font-size:9px;gap:8px;color:#777e8b}.card-foot .card-category{font-weight:500;color:#b1aba6}.card-arrow{color:#d8ac81;font-size:18px}.record-dot{bottom:49px;right:13px;color:#f0bc86;font-size:8px;background:#17191e;padding:3px 4px;border-radius:3px}.empty{color:#b0b5bf}.empty>span{color:#b89a7d}.empty h3{font-weight:500}
.bottom-banner{padding:36px 38px;background:radial-gradient(ellipse at right,#45302430,transparent),#17191d;border:1px solid #ffffff0d;border-radius:9px;gap:26px;margin:64px 0 27px}.asterisk{font-size:58px;font-weight:300;color:#c79c71}.bottom-banner .eyebrow{font-size:8px;color:#8e7969;letter-spacing:2px;margin-bottom:12px}.bottom-banner h3{font-size:25px;font-weight:500;letter-spacing:-.7px;margin-bottom:10px}.bottom-banner p{font-size:11px;color:#868b96;line-height:1.7}.bottom-banner .button{background:#22242a;border-color:#ffffff1a}.bottom-banner .button:hover{background:#30323b}footer{border-top:1px solid var(--line);padding:26px 0 34px;color:#626772;font-size:9px;gap:20px}footer .small{color:#b2b3b9;font-size:15px;letter-spacing:-.5px}footer>span:last-child{font-size:8px;letter-spacing:1.8px}
#player{padding-top:28px;padding-bottom:50px;--accent:#eea768}.player-bar{gap:24px;margin-bottom:26px}.player-bar .back{padding:11px 17px;background:transparent;color:#a8adb8;border-color:#ffffff18;font-size:11px}.player-title>span{color:#848b98;font-size:8px;letter-spacing:1.8px}.player-title h1{font-weight:500;font-size:24px;letter-spacing:-.65px;margin:6px 0}.player-tools{gap:8px}.icon-button{background:#1f2229;border:1px solid #ffffff0e;border-radius:6px;width:39px;height:39px;font-size:20px;color:#b1b7c4}.icon-button:hover{background:#2e333e;color:#fff}.icon-button[aria-pressed="true"]{background:rgba(var(--accent-rgb),.18);color:var(--accent);border-color:rgba(var(--accent-rgb),.3)}.play-layout{grid-template-columns:minmax(0,1fr) 248px;gap:24px}.game-column{border-radius:10px}.scorebar{background:linear-gradient(110deg,#242832,#1b1f27);border:1px solid #ffffff10;border-bottom:0;padding:16px 22px;border-radius:10px 10px 0 0;min-height:65px}.scorebar span{color:#8c94a5;font-size:8px;letter-spacing:1.5px;font-weight:500}.scorebar strong{color:#f0e7d9;font-size:24px;font-weight:500;font-variant-numeric:tabular-nums}.scorebar>div:last-child strong{color:var(--accent)}#game-status{font-size:10px;color:#a1a9b8;line-height:1.5}#stage{background:#0b111a;border:1px solid #ffffff13;border-top:0;border-radius:0 0 10px 10px;box-shadow:0 18px 65px #0003}#stage:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;box-shadow:inset 0 0 80px #0002}canvas{background:#0c111b}
#board{background:radial-gradient(ellipse at 50% -20%,rgba(var(--accent-rgb),.10),transparent 70%),linear-gradient(135deg,#18212c,#0e151f);color:#e5e8ed;position:relative;z-index:1}
.overlay{background:linear-gradient(90deg,#090e18eb,#0a101acc),var(--world-image) center/cover;backdrop-filter:blur(5px);padding:28px;color:#f0eee9}.overlay-card{max-width:430px;gap:14px}.overlay-symbol{width:70px;height:70px;background:rgba(var(--accent-rgb),.08);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.3);box-shadow:inset 0 1px #ffffff14,0 5px 25px #0004;border-radius:16px;font-family:Georgia,serif;font-size:38px;transform:none;margin-bottom:6px}.overlay .eyebrow{color:var(--accent);font-size:8px;letter-spacing:2px}.overlay h2{font-weight:500;font-size:34px;letter-spacing:-1px;line-height:1.2}.overlay p{color:#a9b3c5;font-size:12px;line-height:1.9;margin-bottom:8px}.overlay .primary{background:var(--accent);color:#101721;border:1px solid #ffffff20;border-radius:6px;min-width:180px;box-shadow:0 5px 28px rgba(var(--accent-rgb),.13)}.overlay .primary:hover{filter:brightness(1.1)}.overlay .text-link{color:#a7adba;font-size:11px}.instruction-card{padding:24px 22px;background:linear-gradient(145deg,#1c2028,#16191f);border-color:#ffffff0d;border-radius:9px}.instruction-card .eyebrow{color:#929baa;font-size:8px;letter-spacing:2px}.instruction-card h2{font-size:19px;font-weight:500;letter-spacing:-.4px;line-height:1.5;margin:16px 0}.instruction-card>p{color:#929cab;font-size:11px;line-height:1.9}.key-row{border-color:#ffffff0b;padding:12px 0;color:#7e889a;font-size:10px;gap:7px}.key-row kbd{color:#c1c8d4;font-size:10px;font-weight:600}.goal-box>span{color:var(--accent);font-size:8px;font-weight:500;letter-spacing:1.8px}.goal-box p{color:#aeb5c1;font-size:11px;line-height:1.8}.aside-note{color:#796c61;font-size:30px;padding:24px 12px}.aside-note p{color:#676f7d;font-size:10px}.game-caption{margin-top:17px;color:#677182;font-size:9px}.game-caption .text-link{color:#a6acb7;font-size:10px}.control-button{color:#d9e0eb;background:linear-gradient(#2c3443,#202733);border:1px solid #ffffff19;border-bottom-color:#ffffff09;border-radius:7px;box-shadow:0 3px 0 #070b12,inset 0 1px #ffffff0a;min-height:45px;font-size:14px;font-weight:600}.control-button:active,.control-button.pressed{background:rgba(var(--accent-rgb),.3);border-color:rgba(var(--accent-rgb),.55);color:#fff;box-shadow:0 1px 0 #070b12}
/* Tactile board pieces: metal edges, a soft key light and explicit states. */
.tile{background:linear-gradient(145deg,#334051,#24303f);border:1px solid #ffffff12;box-shadow:inset 0 1px #ffffff09,0 3px 6px #0002;border-radius:8px;color:#e1e6ed;font-weight:600;text-shadow:0 1px 2px #0003;position:relative}.tile:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(140deg,#ffffff0a,transparent 55%,#00000010);box-shadow:inset 0 1px #ffffff0c}.tile:hover:not(:disabled){filter:brightness(1.14);border-color:#ffffff33}.tile.selected{outline:2px solid var(--accent)!important;outline-offset:-2px!important;box-shadow:0 0 18px rgba(var(--accent-rgb),.15)}.board-note{color:#9ba6b7;font-size:11px;font-weight:400;line-height:1.5}.board-action{background:linear-gradient(135deg,#344054,#252f40);border:1px solid #ffffff15;color:#cdd5e1;font-size:11px;border-radius:5px;box-shadow:0 2px 4px #0002}.board-action:hover{background:#43516b}.board-action.active{background:var(--accent);border-color:var(--accent);color:#142031}.extra-grid .tile{background:#283545;color:#dfe4ec;border-radius:6px}.extra-grid .tile.conflict{background:#934d5d;color:#fff}.extra-grid .tile.done{opacity:.08}.swatch{border-color:#ffffff38;box-shadow:inset 0 2px #ffffff45,inset 0 -3px #0002,0 3px 8px #0003;border-radius:50%}.grid-slide .tile{background:linear-gradient(135deg,#d7c1a2,#988169);color:#241f1a;border:1px solid #e9ddc34a;text-shadow:0 1px #fff3;box-shadow:inset 0 1px #fff4,0 3px 5px #0004}.grid-slide .tile.blank{background:#080e1640;border:1px solid #ffffff05;box-shadow:inset 0 2px 5px #0003}.grid-memory .tile{background:linear-gradient(135deg,#414a61,#2b3448);border-color:#5d678c60;color:#c7ab8f;font-size:30px}.grid-memory .tile:not(.open):not(.matched){background-image:repeating-linear-gradient(45deg,transparent,transparent 8px,#ffffff04 8px,#ffffff04 9px),linear-gradient(135deg,#414a61,#2b3448)}.grid-memory .tile.open{background:#e4d8c4}.grid-memory .tile.matched{background:#598f7e;opacity:.65}.grid-mines .tile{background:linear-gradient(135deg,#3b4a61,#2b3549);border-radius:4px}.grid-mines .tile.revealed{background:#151e2b;color:#ddbda0;box-shadow:inset 0 2px 4px #0002}.grid-mines .tile.mine{background:#a74b63}.grid-tic .tile{background:linear-gradient(140deg,#293547,#1b2534);color:#dec29c;box-shadow:inset 0 1px #ffffff12,0 4px 12px #0003;font-weight:400}.grid-connect{background:linear-gradient(135deg,#354663,#223047);border:1px solid #ffffff12;box-shadow:0 15px 30px #0004}.grid-connect .tile{background:#111a29;box-shadow:inset 0 5px 8px #0006;border-color:#ffffff0b}.grid-connect .tile.yellow{background:radial-gradient(circle at 35% 25%,#ffe5a5,#c49740);box-shadow:inset 0 -5px #0003,0 2px 6px #0006}.grid-connect .tile.pink{background:radial-gradient(circle at 35% 25%,#e6adc2,#a25479);box-shadow:inset 0 -5px #0003,0 2px 6px #0006}.grid-lights .tile{background:#17222e;color:#35475e;box-shadow:inset 0 2px 6px #0004}.grid-lights .tile.on{background:radial-gradient(circle at 40% 20%,#eecb8f,#a87c3b);color:#fff0cb;box-shadow:0 0 25px #efb76725,inset 0 1px #fff5}.letter{background:linear-gradient(135deg,#d4bfa0,#ac9270);color:#211c16;border:1px solid #ffffff35;box-shadow:0 3px 0 #614f3c;font-weight:600}.word-answer .letter{background:linear-gradient(135deg,#a7b4d5,#6e7ea9);color:#101c37;box-shadow:0 3px 0 #3a4967}.word-clue{font-weight:500;color:#e5d7c3}.reaction-zone{border:1px solid #b87b8740;background:radial-gradient(ellipse at top,#72394e,#341d2e);color:#e7c9d3;box-shadow:inset 0 0 70px #0003}.reaction-zone.ready{background:radial-gradient(ellipse at top,#b9ddb6,#498c78);color:#0c3024}.reaction-zone strong{font-weight:500}.simon-pad{border-radius:19px;border:1px solid #ffffff40;box-shadow:inset 0 2px #fff5,inset 0 -8px #0003,0 7px 20px #0004;background-image:linear-gradient(135deg,#fff4,transparent 70%)}.simon-pad.lit{box-shadow:0 0 38px #ffffff40,inset 0 1px #fff8}.grid-flood .tile{border-radius:2px;box-shadow:inset 0 1px #fff3;border:0}.grid-sokoban .wall,.grid-maze .wall{background:linear-gradient(135deg,#485065,#2a3344);border-color:#737d9520;box-shadow:inset 0 1px #fff1,0 3px 4px #0004}.grid-sokoban .tile:not(.wall){background:#151f2a;color:#d6b183}.grid-sokoban .goal{background:#466959!important}.grid-maze .tile{background:#111a24;box-shadow:none;color:#e6c08b}.grid-maze .trail{background:#31534e}.grid-nonogram .filled{background:linear-gradient(145deg,#c8b18b,#8c785c);border-color:#dbc6a748;box-shadow:0 0 12px #c6a46c13}.clue{color:#a9b4c7;font-weight:500}.grid-sudoku .tile{color:#eccb9b}.grid-sudoku .fixed{background:#161f2a;color:#8390a4}.grid-sudoku .tile:nth-child(4n+2){border-right-color:#9e8567}.grid-sudoku .tile:nth-child(n+5):nth-child(-n+8){border-bottom-color:#9e8567}.grid-match .jelly{background:radial-gradient(circle at 35% 15%,#ffffff55,transparent 65%),var(--swatch);border-color:#ffffff55;box-shadow:inset 0 -4px #0003,0 3px 5px #0004;border-radius:11px}.grid-reversi .light{background:radial-gradient(circle at 35% 25%,#fff7e4,#b6ac99);box-shadow:inset 0 -5px #0003,0 3px 8px #0005}.grid-reversi .dark{background:radial-gradient(circle at 35% 25%,#465064,#0f1620);border:1px solid #6b748770;box-shadow:inset 0 -4px #0005,0 3px 8px #0005}.code-guess>b,.code-row>b{box-shadow:inset 0 2px #ffffff35,inset 0 -3px #0002,0 3px 6px #0002;border:1px solid #ffffff19}.code-feedback{color:#b6bbc7}.code-row{color:#768295}.pipe svg{stroke:#4c627c;fill:#4c627c;filter:drop-shadow(0 3px 2px #0004)}.pipe.flowing svg{stroke:#92d1be;fill:#92d1be;filter:drop-shadow(0 0 4px #7de0c540)}.grid-moles .tile{background:radial-gradient(ellipse at 50% 60%,#101a1d 35%,#344b46 70%,#456056);box-shadow:inset 0 8px 12px #0007;border-color:#69897b20}.math-problem{font-weight:500;letter-spacing:-1px;color:#f1dec4}.math-answers button{font-weight:500}.grid-wordsearch .found{background:#497566;color:#fff0ca}.word-found{color:#98c2ae}.grid-queens .tile{background:#8c867b;color:#f5e2b7;text-shadow:0 3px 4px #0005}.grid-queens .checker{background:#2c3543}.grid-knight .visited{background:#1b2836;color:#738394}.grid-knight .available{background:linear-gradient(145deg,#6e9a8b,#43685d);color:#d9eadb}.grid-peg .tile{background:radial-gradient(circle at 35% 30%,#384c5a,#1e2a35);color:#d7c393;border-color:#7d899540;box-shadow:inset 0 3px 5px #0004}.hanoi-pole{background:linear-gradient(180deg,#ffffff00,#ffffff06);border:1px solid #ffffff07}.hanoi-pole.selected{outline-color:var(--accent)}.hanoi-rod{background:linear-gradient(90deg,#515665,#aeb7c4,#515665);box-shadow:2px 0 7px #0004}.hanoi-disks b{border:1px solid #ffffff55;box-shadow:inset 0 2px #fff4,inset 0 -4px #0002,0 4px 8px #0003}.nim-pile span{color:#d0b182;text-shadow:2px 3px #0005}.grid-ships .tile{background:radial-gradient(circle at top,#304c62,#1c3044);border-color:#608aad20}.grid-ships .hit{background:radial-gradient(circle at top,#ce846e,#784450);color:#ffe7c4;box-shadow:0 0 16px #df754e15}.binary-readout b{color:#e5bd8b;font-weight:500}.binary-switches button{border-radius:7px}.binary-switches button.active{background:linear-gradient(135deg,#b9ac88,#7d7766);color:#111b25}.grid-rows .tile{background:linear-gradient(135deg,#b0bed5,#6f83a6);color:#172335;font-weight:500}.grid-odd .tile{background:linear-gradient(135deg,#35455a,#243346);color:#e5c9a0}.rescue-lives{color:#d49886}.hangman-keyboard button{border-radius:4px}.box-edge.yours{background:#b9cd9f}.box-edge.theirs{background:#b49fd2}.box-owner.yours{color:#c7d8b2}.box-owner.theirs{color:#c4b1dd}#toast{background:#ded4c5;color:#211b16;border:1px solid #ffffff70;box-shadow:0 10px 30px #0005;font-size:12px;border-radius:7px}
@media(min-width:1500px){.hero h1{font-size:78px}.card-art{height:auto}}
@media(max-width:1150px){.header,main,#player{padding-left:34px;padding-right:34px}#hero-art{right:-34px;left:24%}.hero{min-height:530px}.hero h1{font-size:62px;letter-spacing:-3.2px}.hero-copy{width:69%}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.play-layout{grid-template-columns:minmax(0,1fr) 218px;gap:18px}.instruction-card{padding:20px 18px}.featured-grid{gap:15px}.featured-copy{left:19px;right:19px}.featured-copy h3{font-size:20px}.featured-copy p{font-size:9px}.featured-arrow{right:18px}.filters button{padding:9px 13px}}
@media(max-width:800px){.header{height:80px}.header nav{gap:22px}.hero{min-height:520px}.hero h1{font-size:58px}.hero-copy{width:80%}.hero-copy>p{font-size:13px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}#hero-art{left:15%}#hero-art img{opacity:.7}.hero-edition{bottom:30px}.hero-edition strong{font-size:43px}.hero-edition p{font-size:9px}.hero-facts{font-size:9px;gap:15px}.featured-grid{gap:12px}.featured-card{height:185px}.featured-copy{left:15px;bottom:18px}.featured-copy h3{font-size:17px;margin:9px 0}.featured-copy p{max-width:90%;line-height:1.7}.featured-copy>span{font-size:7px;letter-spacing:1px}.featured-arrow{display:none}.editorial-note{display:none}.game-grid{gap:20px 15px}.card-body{padding:15px 14px 12px}.card-body h3{font-size:13px}.card-body p{font-size:10px}.card-foot{gap:6px}.play-layout{grid-template-columns:1fr}.play-layout aside{display:block}.instruction-card{padding:22px}.key-row{margin-right:22px}.aside-note{display:none}.section-heading h2{font-size:28px}.search{width:250px}.bottom-banner{padding:28px}.bottom-banner h3{font-size:22px}.bottom-banner .button{font-size:10px}.filter-bar{display:block}#shown-count{display:block;margin-top:15px}.grid-memory .tile{font-size:30px}}
@media(max-width:580px){.header,main,#player{padding-left:20px;padding-right:20px}.header{height:75px;gap:12px}.brand{font-size:18px;letter-spacing:-.6px;gap:8px}.brand-icon{width:25px;height:29px;gap:5px}.brand-icon i{width:7px;height:24px}.brand-dot{font-size:8px}.header nav{gap:17px}.header nav a,.header nav button{font-size:10px}.header nav span{display:none}.hero{display:block;min-height:660px;padding:39px 0 220px;margin-bottom:0}.hero-copy{width:100%}.hero h1{font-size:clamp(43px,12vw,65px);letter-spacing:-2.7px;line-height:1.06;margin:23px 0 21px}.hero .eyebrow{font-size:7px;letter-spacing:1.6px}.eyebrow-line{width:16px;margin-right:8px}.hero-copy>p{font-size:12px;line-height:1.8}.hero-actions{gap:22px;margin-top:24px}.hero-actions .button{font-size:10px;padding:14px 17px;gap:20px}.hero-actions .text-link{font-size:10px}.hero-facts{font-size:8px;gap:12px;margin-top:24px}#hero-art{inset:220px -20px 0 -20px;height:auto;transform:none;margin:0}#hero-art img{opacity:1;object-position:63% 50%;object-fit:cover}#hero-art:after{background:linear-gradient(180deg,#101114 0%,#101114aa 14%,transparent 44%,transparent 72%,#101114 100%),linear-gradient(90deg,#10111466,transparent 45%)}.hero-edition{right:0;bottom:23px;display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px}.hero-edition>span{font-size:7px;letter-spacing:2px;color:#999084}.hero-edition>div{margin:0;gap:11px}.hero-edition strong{font-size:39px}.hero-edition p{font-size:8px;margin:0}.featured-section{padding:31px 0}.editorial-heading{margin-bottom:20px}.editorial-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.editorial-heading h2{font-size:23px;margin-top:8px}.featured-grid{grid-template-columns:1fr;gap:12px}.featured-card{height:150px;border-radius:8px}.featured-card .cover-world{object-position:50% 56%;opacity:.8}.featured-card .cover-symbol{left:48%;width:50%;height:135%;top:-17%;opacity:.55}.featured-copy{left:21px;bottom:22px;right:20px}.featured-copy h3{font-size:23px;margin:9px 0}.featured-copy p{font-size:10px}.featured-copy>span{font-size:7px;letter-spacing:1.4px}.featured-arrow{display:block;right:22px;bottom:24px}.catalog{padding-top:32px}.section-heading h2{font-size:29px;margin:10px 0 23px}.section-heading .eyebrow{font-size:8px}.section-heading{display:block}.search{width:100%;padding:13px 14px;margin-bottom:21px}.search input{font-size:11px}.filters{gap:5px}.filters button{padding:9px 11px;font-size:10px}.filters small{font-size:8px;margin-left:3px}#shown-count{font-size:9px;margin-top:17px}.filter-bar{margin-bottom:21px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.game-card{border-radius:7px}.card-art{height:auto;aspect-ratio:1.27}.cover-symbol{inset:9% -12%;width:124%!important;height:86%!important;transform:translateY(5px)}.cover-world{object-position:64% 50%;opacity:.65}.cover-index{bottom:9px;left:10px;font-size:7px;letter-spacing:1px}.cover-type{display:none}.card-tag{font-size:6px;padding:3px 4px;top:10px;left:9px;letter-spacing:.7px}.favorite{width:27px;height:27px;font-size:18px;top:8px;right:8px}.card-body{padding:13px 12px 10px}.card-body h3{font-size:12px;font-weight:600;line-height:1.5;min-height:36px;letter-spacing:-.25px;margin-bottom:7px}.card-body p{font-size:9px;line-height:1.65;min-height:45px;color:#969caa}.card-foot{gap:5px;font-size:8px;margin-top:9px;padding-top:9px;flex-wrap:wrap}.card-arrow{font-size:14px}.card-foot>span:nth-child(2){display:none}.card-foot>span:nth-child(3){margin-left:auto}.card-foot .card-arrow{display:none}.bottom-banner{margin:42px 0 23px;padding:25px 22px;gap:15px;display:block}.asterisk{display:none}.bottom-banner .eyebrow{font-size:7px;margin-bottom:11px}.bottom-banner h3{font-size:24px;max-width:250px;line-height:1.25;margin-bottom:12px}.bottom-banner p{font-size:10px;line-height:1.8}.bottom-banner .button{margin:22px 0 0;padding:13px 15px;white-space:normal;font-size:10px}.bottom-banner>div{flex:none}footer{padding:22px 0 28px;gap:16px;font-size:8px}footer .small{font-size:13px}#player{padding-top:22px}.player-bar{gap:13px;margin-bottom:20px;flex-wrap:wrap}.player-bar .back{font-size:10px;padding:9px 12px;order:0}.player-title{order:2;flex:1 0 100%}.player-title h1{font-size:26px;margin-top:7px}.player-title>span{font-size:7px;letter-spacing:1.6px}.player-tools{order:1;margin-left:auto;gap:6px}.icon-button{width:34px;height:34px;font-size:19px}.scorebar{padding:13px 13px;min-height:68px;gap:8px}.scorebar span{font-size:7px}.scorebar strong{font-size:22px}.scorebar>div:not(#game-status){gap:3px}#game-status{font-size:9px;max-width:57%;line-height:1.6}#stage{aspect-ratio:4/4.7}#stage:after{box-shadow:inset 0 0 35px #0002}.overlay{padding:22px 18px}.overlay-card{gap:13px}.overlay-symbol{width:55px;height:55px;font-size:30px;border-radius:12px;margin-bottom:4px}.overlay h2{font-size:29px;line-height:1.2}.overlay p{font-size:11px;line-height:1.9;margin-bottom:4px}.overlay .eyebrow{font-size:7px;letter-spacing:1.5px}.overlay .primary{font-size:11px;padding:13px 20px;min-width:165px}.game-caption{font-size:8px;gap:8px;margin-top:15px}.game-caption .text-link{font-size:9px}.touch-controls{gap:8px;margin-top:15px;flex-wrap:wrap}.control-button{padding:10px 14px;min-width:46px;min-height:47px;font-size:13px}.instruction-card{margin-top:7px;padding:22px}.instruction-card h2{font-size:21px}.instruction-card>p{font-size:11px}.key-row{margin-right:18px}.goal-box p{font-size:11px}#board{padding:12px;gap:9px}.board-note{font-size:10px}.grid-memory .tile{font-size:23px}.tile{border-radius:6px}.grid-match .jelly{border-radius:7px}.board-action{font-size:10px}.grid-peg .tile{line-height:1;min-height:0}.grid-mines .tile{font-size:13px}.grid-queens .tile{font-size:25px}.grid-sokoban .tile:not(.wall){font-size:23px}.grid-maze .tile{font-size:13px}.simon-pad{border-radius:17px}.word-clue{font-size:16px}.math-problem{font-size:34px}.math-answers button{font-size:23px}.stroop-answers button{font-size:9px;padding:16px 5px}}
@media(max-width:350px){.header,main,#player{padding-left:16px;padding-right:16px}.header nav{gap:12px}.brand{font-size:16px}.hero{min-height:630px}.hero h1{font-size:43px}.hero-actions{gap:15px}.hero-actions .button{padding:13px 14px;gap:13px}.hero-facts{gap:9px;font-size:7px}.hero-edition>span{font-size:6px;letter-spacing:1.3px}.game-grid{gap:17px 10px}.card-body{padding:12px 10px 9px}.card-body h3{font-size:11px}.card-body p{font-size:8px}.card-foot{font-size:7px}.filters button{padding:9px 10px}.featured-copy h3{font-size:21px}.player-title h1{font-size:24px}.overlay h2{font-size:25px}.overlay p{font-size:10px}.overlay-card{gap:11px}.overlay-symbol{width:45px;height:45px;font-size:25px}.overlay{padding:19px 15px}.scorebar{padding:12px 10px}.control-button{padding:9px 12px}}
@media(min-width:801px) and (min-height:740px){#stage{max-height:min(620px,calc(100svh - 330px));min-height:440px}canvas{object-fit:contain}}
@media(max-width:350px){#hero-art{left:-16px;right:-16px}}
.featured-card .cover-index,.featured-card .cover-type{display:none}
#stage[data-game="mines"] .grid-mines{max-height:calc(100% - 55px);height:min(410px,calc(100% - 55px));width:auto;max-width:100%;grid-template-rows:repeat(9,minmax(0,1fr));flex-shrink:0}
@media(min-width:801px){.card-body h3{font-size:15px}.card-body p{font-size:11px;min-height:38px}.card-foot{font-size:10px}.instruction-card>p,.goal-box p{font-size:12px}.key-row{font-size:11px}.board-note{font-size:11px}}
.game-card .cover-scene[data-world="table"] .cover-world{width:210%;height:210%;position:absolute;left:0;top:-55%;opacity:.28;object-fit:cover}
.game-card[data-game="queens"] .cover-world,.game-card[data-game="knight"] .cover-world{width:100%!important;height:100%!important;left:0!important;top:0!important;opacity:.45!important}
.cover-scene[data-world="table"] .cover-shade{background:radial-gradient(ellipse at 50% 55%,#cba77c14,transparent 70%)}
.cover-scene[data-world="pulse"] .cover-shade{background:radial-gradient(ellipse at 50% 55%,#fda68310,transparent 70%)}
.game-card .cover-painting .cover-world{position:static!important;width:100%!important;height:100%!important;opacity:.9!important;object-position:center 47%}
.game-card .cover-painting .cover-shade{background:linear-gradient(0deg,#070d17a0,transparent 38%)}
.featured-card .cover-painting .cover-world{opacity:.8}.featured-card .cover-painting .cover-shade{background:linear-gradient(0deg,#080d17ef,transparent 95%)}
#board{background:radial-gradient(ellipse at 50% -10%,rgba(var(--accent-rgb),.12),transparent 65%),linear-gradient(135deg,#18212c,#0c141f)}
#board:before{content:'';position:absolute;inset:14px;border:1px solid #ffffff04;border-radius:8px;pointer-events:none}
.grid-maze .tile.wall{background:linear-gradient(135deg,#566477,#394659);border-color:#8fa0b42b;box-shadow:inset 0 1px #ffffff16,0 2px 3px #0004}
.grid-maze .tile:not(.wall){background:#111b27;border-color:#ffffff04;box-shadow:none}
.grid-maze .tile.trail{background:#32564f;color:#e8d09f}
.grid-reversi .tile,.grid-peg .tile{border-radius:50%}
.grid-moles .tile{border-radius:45%}
.grid-match .jelly,.grid-flood .tile{color:#192d3d;text-shadow:0 1px #ffffff35}
#stage{width:100%}
.grid-maze .tile.maze-player{color:#c6e9a1;text-shadow:0 0 8px #b0e79255}
.grid-maze .tile.maze-exit{color:#f2c585;text-shadow:0 0 9px #edb57044}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.game-card:hover,.featured-card:hover{transform:none}}
