:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--ink: #17202a;--muted: #617084;--line: #d9e1ea;--paper: #fbfcf8;--panel: #ffffff;--accent: #0f766e;--accent-strong: #134e4a;--amber: #d97706;--rose: #be123c;--shadow: 0 18px 48px rgba(25, 34, 46, .12);background:var(--paper);color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh;overflow-x:clip;background:linear-gradient(135deg,rgba(15,118,110,.08),transparent 34%),linear-gradient(315deg,rgba(217,119,6,.1),transparent 30%),var(--paper)}body.is-game-immersive{overflow:hidden;overscroll-behavior:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.site-shell{display:flex;flex-direction:column;gap:26px;min-height:100vh;min-width:0;padding:18px clamp(16px,4vw,42px) 42px}.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr minmax(220px,320px);gap:18px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#ffffffe6;padding:12px;box-shadow:0 12px 34px #17202a14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar,.home-hero,.about-page,.game-page,.now-playing,.discovery-row,.runner,.runner__stage{min-width:0}.brand--button{border:0;background:transparent;color:var(--ink);padding:0;text-align:left}.brand--button strong,.brand--button small{display:block}.brand--button small{color:var(--muted);font-size:.78rem;font-weight:750}.main-nav{display:flex;align-items:center;justify-content:center;gap:8px}.main-nav>button,.category-menu__trigger,.section-heading button,.hero-actions button{min-height:38px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);font-weight:850;padding:0 12px}.main-nav>button:hover,.main-nav>button.is-active,.category-menu:hover .category-menu__trigger,.category-menu:focus-within .category-menu__trigger,.section-heading button:hover,.hero-actions button:hover{border-color:var(--line);background:#fff}.category-menu{position:relative}.category-menu__trigger{display:flex;align-items:center;gap:4px;cursor:pointer}.category-menu__panel{position:absolute;top:calc(100% + 10px);left:50%;display:none;grid-template-columns:repeat(2,minmax(150px,1fr));width:min(420px,calc(100vw - 32px));gap:6px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;box-shadow:var(--shadow);transform:translate(-50%)}.category-menu:hover .category-menu__panel,.category-menu:focus-within .category-menu__panel{display:grid}.category-menu__panel button{display:flex;align-items:center;justify-content:space-between;min-height:42px;border:1px solid transparent;border-radius:8px;background:#f8fafc;color:var(--ink);padding:0 10px;font-weight:850}.category-menu__panel button:hover:not(:disabled){border-color:var(--accent);background:#e7f4f1}.category-menu__panel button.is-empty{color:#9aa5b1}.category-menu__panel small{color:var(--muted);font-size:.72rem;font-weight:800}.nav-search{min-width:0}.home-hero,.about-page,.game-page,.now-playing,.discovery-row{width:min(1180px,100%);margin:0 auto;scroll-margin-top:92px}.home-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px;align-items:stretch;border:1px solid var(--line);border-radius:8px;background:#ffffffad;padding:clamp(18px,4vw,34px)}.home-hero__copy{display:grid;align-content:center;gap:16px}.home-hero__copy p{max-width:620px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-actions button:first-child{border-color:var(--accent);background:var(--accent);color:#fff}.spotlight-game{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;text-align:left;box-shadow:0 16px 40px #17202a1a}.spotlight-game img{width:112px;height:112px;border-radius:8px;object-fit:cover}.spotlight-game span{display:grid;gap:7px}.spotlight-game small,.spotlight-game em{color:var(--muted);font-style:normal;line-height:1.35}.spotlight-game strong{font-size:1.35rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.section-heading span{color:var(--muted);font-weight:800}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px}.empty-state{display:grid;gap:10px;border:1px dashed var(--line);border-radius:8px;background:#ffffffb8;padding:18px}.empty-state strong{font-size:1.05rem}.empty-state span{max-width:620px;color:var(--muted);line-height:1.45}.empty-state div{display:flex;flex-wrap:wrap;gap:8px}.empty-state button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:850;padding:0 12px}.empty-state button:hover{border-color:var(--accent);color:var(--accent-strong)}.now-playing{display:grid;gap:14px}.game-page{display:grid;gap:16px}.game-page__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;border:1px solid var(--line);border-radius:8px;background:#ffffffbd;padding:clamp(18px,4vw,30px)}.game-page__header p:not(.workspace__eyebrow){max-width:780px;margin:10px 0 0;color:var(--muted);line-height:1.6}.game-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.game-details__panel{display:grid;align-content:start;gap:10px;border:1px solid var(--line);border-radius:8px;background:#ffffffbd;padding:18px}.game-details__panel h2{margin:0;font-size:1rem}.game-details__panel ul{display:grid;gap:8px;margin:0;padding-left:18px;color:var(--muted);line-height:1.45}.about-page{display:grid;gap:18px;border:1px solid var(--line);border-radius:8px;background:#ffffffc7;padding:clamp(18px,4vw,38px)}.not-found-page{display:grid;width:min(860px,100%);gap:16px;margin:0 auto;border:1px solid var(--line);border-radius:8px;background:#ffffffc7;padding:clamp(18px,4vw,38px)}.not-found-page p:not(.workspace__eyebrow){max-width:720px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.6}.not-found-page__actions{display:flex;flex-wrap:wrap;gap:10px}.not-found-page__actions button{min-height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:850;padding:0 12px}.not-found-page__actions button:first-child{border-color:var(--accent);background:var(--accent);color:#fff}.about-page>p:not(.workspace__eyebrow){max-width:840px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.65}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.about-grid div{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.about-grid span{color:var(--muted);line-height:1.45}.shell{display:grid;grid-template-columns:minmax(280px,390px) 1fr;min-height:100vh}.library{display:flex;flex-direction:column;gap:18px;border-right:1px solid var(--line);background:#ffffffc7;padding:24px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand,.workspace__header,.runner__topbar,.runner__actions,.runner__stats,.control-pad,.number-row,.workspace__summary{display:flex;align-items:center}.brand{gap:12px}.brand__logo{width:52px;height:52px;border-radius:8px;object-fit:cover;box-shadow:0 10px 24px #b4530933}.brand p,.workspace__eyebrow,.runner__eyebrow{margin:0;font-weight:800}.brand span,.workspace__eyebrow,.runner__eyebrow{color:var(--muted);font-size:.82rem}.search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:11px 12px}.search input{width:100%;border:0;outline:0;background:transparent}.tabs{display:flex;flex-wrap:wrap;gap:8px}.tabs button,.control-pad button,.number-row button,.letter-grid button{min-height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:750}.tabs button{padding:0 12px}.tabs button.is-active,.control-pad button:hover,.number-row button:hover,.letter-grid button:hover:not(:disabled){border-color:var(--accent);background:#e7f4f1;color:var(--accent-strong)}.game-list{display:grid;gap:10px;overflow:auto;padding-right:2px}.game-card{display:grid;grid-template-columns:64px 1fr 22px;gap:12px;align-items:center;width:100%;border:1px solid transparent;border-radius:8px;background:transparent;padding:10px;text-align:left}.game-card.is-selected,.game-card:hover{border-color:var(--line);background:#fff;box-shadow:0 10px 28px #17202a14}.game-thumb{position:relative;display:grid;width:64px;height:64px;place-items:center;overflow:hidden;border-radius:8px;color:#fff;font-weight:900}.game-thumb img{width:100%;height:100%;object-fit:cover}.tone-blue{background:linear-gradient(135deg,#2563eb,#22c55e)}.tone-green{background:linear-gradient(135deg,#15803d,#84cc16)}.tone-mint{background:linear-gradient(135deg,#0f766e,#14b8a6)}.tone-coral{background:linear-gradient(135deg,#be123c,#fb7185)}.tone-stone{background:linear-gradient(135deg,#475569,#94a3b8)}.tone-gold{background:linear-gradient(135deg,#b45309,#facc15)}.game-card__body{display:grid;gap:4px;min-width:0}.game-card__kicker,.game-card__tags{color:var(--muted);font-size:.72rem;font-weight:750;text-transform:uppercase}.game-card__title{font-size:1rem;font-weight:900}.game-card__description{color:var(--muted);font-size:.84rem;line-height:1.35}.game-card__title,.game-card__description,.game-card__tags{overflow-wrap:anywhere}.workspace{display:flex;flex-direction:column;gap:22px;min-width:0;padding:28px}.workspace__header{justify-content:space-between;gap:20px}h1,h2{margin:0;letter-spacing:0}h1{max-width:760px;font-size:clamp(2rem,4vw,4.5rem);line-height:.96}h2{font-size:1.35rem}.workspace__summary,.runner__stats{gap:8px;flex-wrap:wrap}.workspace__summary span,.runner__stats span{border:1px solid var(--line);border-radius:8px;background:#ffffffb8;padding:8px 10px;color:var(--muted);font-weight:750;font-size:.82rem}.runner{display:flex;flex:1;flex-direction:column;gap:14px;min-height:620px;border:1px solid var(--line);border-radius:8px;background:#ffffffdb;box-shadow:var(--shadow);padding:18px}.runner.is-immersive{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;width:100vw;min-height:100dvh;margin:0;border-radius:0;border:0;background:#fbfcf8fa;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.runner__topbar{justify-content:space-between;gap:16px}.runner__meta{margin:6px 0 0;color:var(--muted);font-size:.86rem;font-weight:750;line-height:1.4}.runner__actions{gap:8px}.icon-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.icon-button:hover{border-color:var(--accent);color:var(--accent-strong)}.runner__stage{position:relative;display:grid;flex:1;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:linear-gradient(90deg,rgba(15,118,110,.05) 1px,transparent 1px),linear-gradient(rgba(15,118,110,.05) 1px,transparent 1px),#f6faf7;background-size:28px 28px;padding:18px;overscroll-behavior:contain}.runner__stage:focus{outline:3px solid rgba(15,118,110,.34);outline-offset:3px}.runner__summary-panel{position:absolute;right:18px;bottom:18px;display:grid;gap:10px;width:min(380px,calc(100% - 36px));border-radius:8px;background:var(--ink);color:#fff;padding:16px;font-weight:800}.runner__summary-panel strong{font-size:1rem}.runner__summary-panel span{color:#ffffffd1;font-weight:700;line-height:1.4}.runner__summary-actions{display:flex;flex-wrap:wrap;gap:8px}.runner__summary-actions button{min-height:38px;border:0;border-radius:8px;background:#fff;color:var(--ink);font-weight:900;padding:0 12px}.runner__summary-actions button.is-secondary{background:#ffffff1f;color:#fff;box-shadow:inset 0 0 0 1px #fff3}.loader{border:1px solid var(--line);border-radius:8px;background:#ffffffdb;padding:14px 16px;color:var(--muted);font-weight:850}.load-error{display:grid;max-width:360px;gap:10px;border:1px solid rgba(190,18,60,.32);border-radius:8px;background:#fff1f2;padding:18px;color:#881337;text-align:center}.load-error span{color:var(--muted)}.load-error button{min-height:38px;border:0;border-radius:8px;background:var(--rose);color:#fff;font-weight:850}.mini-game,.word-game,.mine-game{position:relative;display:grid;gap:16px;justify-items:center}.game-hint{margin:0;color:var(--muted);font-weight:800;text-align:center}.mini-game__overlay{position:absolute;inset:auto 18px 18px;display:grid;gap:10px;width:min(320px,calc(100% - 36px));border-radius:8px;background:#10251ff0;color:#fff;padding:16px;text-align:center;box-shadow:0 18px 38px #10251f47}.mini-game__overlay strong{font-size:1.05rem}.mini-game__overlay span{color:#ffffffd1;font-weight:700;line-height:1.4}.mini-game__overlay button{min-height:38px;border:0;border-radius:8px;background:#bef264;color:#10251f;font-weight:900}.game-2048{display:grid;width:min(100%,520px);gap:16px}.game-2048__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.game-2048__eyebrow{margin:0 0 6px;color:#7a6f63;font-size:.9rem;font-weight:900;text-transform:uppercase}.game-2048 h3{margin:0;color:#62594f;font-size:1.15rem;line-height:1.25}.game-2048__controls{display:grid;min-width:184px;gap:10px}.game-2048__scoreboard{display:grid;grid-template-columns:repeat(2,minmax(72px,1fr));gap:8px}.game-2048__scoreboard span{display:grid;gap:4px;border-radius:6px;background:#8f7a66;padding:10px 12px;color:#f9f6f2;font-size:.72rem;font-weight:900;text-align:center;text-transform:uppercase}.game-2048__scoreboard strong{font-size:1.35rem;line-height:1}.game-2048__new{min-height:42px;border:0;border-radius:6px;background:#8f7a66;color:#f9f6f2;font-weight:900;cursor:pointer}.game-2048__new:hover{background:#7f6a58}.game-2048__hint{margin:0;color:#7a6f63;font-weight:800;text-align:center}.game-2048__overlay{position:absolute;inset:var(--tile-gap);z-index:2;display:grid;place-content:center;gap:10px;border-radius:8px;background:#f9f6f2e0;color:#62594f;padding:18px;text-align:center}.game-2048__overlay strong{font-size:1.45rem}.game-2048__overlay span{font-weight:800}.game-2048__overlay button,.hint-button{min-height:38px;border:0;border-radius:8px;background:var(--accent);color:#fff;font-weight:900;padding:0 14px}.hint-button:disabled{background:#d9e1ea;color:var(--muted)}.grid-2048,.sudoku-board,.memory-board,.mine-board{display:grid;width:min(72vw,430px);aspect-ratio:1;gap:6px}.grid-2048{--tile-gap: 10px;--tile-size: calc((100% - (var(--tile-gap) * 3)) / 4);position:relative;overflow:hidden;border-radius:8px;background:#a39183;padding:var(--tile-gap);box-shadow:inset 0 0 0 1px #473c321a;touch-action:none;-webkit-user-select:none;user-select:none}.grid-2048__cells{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--tile-gap);position:absolute;inset:var(--tile-gap)}.grid-2048__cell{border-radius:6px;background:#eee4da5c}.grid-2048__tiles{position:absolute;inset:var(--tile-gap)}.tile-2048-piece{position:absolute;top:0;left:0;display:grid;width:var(--tile-size);aspect-ratio:1;place-items:center;border-radius:6px;background:#eee4da;color:#776e65;font-size:2rem;font-weight:900;line-height:1;text-align:center;box-shadow:0 3px #473c3214;transition:transform .16s ease,background-color .16s ease,color .16s ease;will-change:transform}.tile-2048-piece.is-new{animation:tile-pop .14s ease-out}.tile-2048-piece.is-merged{animation:tile-merge .18s ease-out}.tile-2048-piece.tile-4{background:#ede0c8}.tile-2048-piece.tile-8{background:#f2b179;color:#f9f6f2}.tile-2048-piece.tile-16{background:#f59563;color:#f9f6f2}.tile-2048-piece.tile-32{background:#f67c5f;color:#f9f6f2}.tile-2048-piece.tile-64{background:#f65e3b;color:#f9f6f2}.tile-2048-piece.tile-128,.tile-2048-piece.tile-256,.tile-2048-piece.tile-512{background:#edcf72;color:#f9f6f2;font-size:1.65rem}.tile-2048-piece.tile-1024,.tile-2048-piece.tile-2048{background:#edc22e;color:#f9f6f2;font-size:1.35rem}@keyframes tile-pop{0%{opacity:0;scale:.76}to{opacity:1;scale:1}}@keyframes tile-merge{0%{scale:1}55%{scale:1.12}to{scale:1}}@keyframes sudoku-error{0%,to{transform:translate(0)}35%{transform:translate(-2px)}70%{transform:translate(2px)}}@keyframes memory-flip{0%{transform:scaleX(.2)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.tile-2048-piece{transition:none}.tile-2048-piece.is-new,.tile-2048-piece.is-merged,.sudoku-board button.conflict,.memory-board button.shown{animation:none}}.tile,.sudoku-board button,.memory-board button,.mine-board button,.snake-board span,.word-row span{display:grid;place-items:center;border-radius:6px;font-weight:900}.tile{background:#eee6db;font-size:clamp(1.1rem,4vw,2.3rem)}.tile-2,.tile-4{color:#5b4636}.tile-8,.tile-16,.tile-32,.tile-64,.tile-128,.tile-256,.tile-512,.tile-1024,.tile-2048{background:var(--amber);color:#fff}.control-pad,.number-row{justify-content:center;gap:8px;flex-wrap:wrap}.game-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.game-toolbar span,.game-toolbar button{min-height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 10px;font-weight:850}.game-toolbar span{display:grid;place-items:center;color:var(--muted)}.game-toolbar button.is-active{border-color:var(--accent);background:#e7f4f1;color:var(--accent-strong)}.segmented-controls{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:6px}.segmented-controls button{min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 10px;font-weight:850}.segmented-controls button.is-active{border-color:var(--accent);background:#e7f4f1;color:var(--accent-strong)}.control-pad button{width:72px}.snake-board{display:block;width:min(72vw,430px);max-width:430px;aspect-ratio:1;border-radius:8px;background:#10251f;border:8px solid #10251f;box-shadow:inset 0 0 0 1px #ffffff1f;touch-action:none;-webkit-user-select:none;user-select:none}.snake-countdown{position:absolute;top:min(34vw,190px);left:50%;display:grid;width:88px;height:88px;place-items:center;border:3px solid rgba(190,242,100,.9);border-radius:999px;background:#10251fdb;color:#bef264;font-size:2.8rem;font-weight:950;line-height:1;transform:translate(-50%,-50%);box-shadow:0 14px 34px #10251f4d;pointer-events:none}.sudoku-board{grid-template-columns:repeat(9,1fr);gap:2px;padding:6px;background:var(--ink)}.sudoku-board button{border:0;background:#fff;color:var(--ink);font-size:clamp(.95rem,2.4vw,1.45rem)}.sudoku-notes{display:grid;grid-template-columns:repeat(3,1fr);width:80%;gap:1px;color:var(--muted);font-size:clamp(.46rem,1.2vw,.72rem);font-weight:800;line-height:1;letter-spacing:0}.sudoku-board button.locked{background:#dbeafe}.sudoku-board button.related{background:#eef6ff}.sudoku-board button.match{background:#dcfce7;color:#166534}.sudoku-board button.active{outline:3px solid var(--accent)}.sudoku-board button.conflict{background:#ffe4e6;color:var(--rose);animation:sudoku-error .18s ease-in-out 2}.number-row button{width:42px}.memory-game{display:grid;gap:14px;justify-items:center}.memory-toolbar{display:flex;align-items:end;justify-content:center;gap:10px;flex-wrap:wrap}.memory-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}.memory-toolbar select,.memory-levels button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:850;padding:0 10px}.memory-levels{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.memory-levels button.is-active{border-color:var(--accent);background:#e7f4f1;color:var(--accent-strong)}.memory-board{grid-template-columns:repeat(4,1fr);grid-template-columns:repeat(var(--memory-columns, 4),1fr)}.memory-board button{border:0;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 42%),#0f766e;color:transparent;font-size:2rem;box-shadow:inset 0 0 0 2px #ffffff1f;transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease}.memory-board button.shown{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 2px var(--accent);animation:memory-flip .18s ease-out}.memory-board button.matched{background:#dcfce7;box-shadow:inset 0 0 0 2px #16a34a}.memory-card-image{display:block;width:86%;aspect-ratio:1;border-radius:8px;background-image:url(/game-assets/memory-match/memory-match-arcade-sheet.png);background-size:400% 200%;background-repeat:no-repeat}.mine-board{grid-template-columns:repeat(var(--mine-size, 7),1fr);width:min(78vw,460px);max-width:460px}.mine-board button{border:1px solid #94a3b8;background:#cbd5e1;color:var(--ink);font-size:1rem}.mine-board button.open{background:#fff}.mine-board button.flagged{background:#ffe4e6;color:var(--rose)}.mine-board button.mine{background:#1f2937;color:#fff}.mine-board button.bad-mine{background:#be123c;color:#fff}.mine-board button.wrong-flag{background:#fff1f2;color:#be123c;box-shadow:inset 0 0 0 2px #fb7185}.hangman-figure{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;width:min(320px,76vw)}.hangman-figure span{height:12px;border-radius:999px;background:#d9e1ea}.hangman-figure span.missed{background:var(--rose)}.word-toolbar{display:flex;align-items:end;justify-content:center;gap:10px;flex-wrap:wrap}.word-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}.word-toolbar select{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:850;padding:0 10px}.word-row,.letter-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.word-row span{width:50px;height:58px;border-bottom:4px solid var(--ink);background:#fff;font-size:1.8rem}.word-row span.revealed{border-color:var(--rose);background:#fff1f2;color:var(--rose)}.letter-grid{max-width:560px}.letter-grid button{width:44px}.letter-grid button:disabled{opacity:.35}.letter-grid button.is-hit{border-color:#15803d;background:#dcfce7;color:#14532d}.letter-grid button.is-miss{border-color:#fda4af;background:#fff1f2;color:#9f1239}@media(max-width:980px){.topbar{grid-template-columns:1fr}.main-nav{justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.category-menu__panel{left:0;transform:none}.home-hero,.about-grid,.shell{grid-template-columns:1fr}.library{border-right:0;border-bottom:1px solid var(--line)}.game-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-height:none}.workspace__header,.runner__topbar,.game-page__header{align-items:flex-start;grid-template-columns:1fr;flex-direction:column}.game-details{grid-template-columns:1fr}.runner{min-height:560px}}@media(max-width:620px){.site-shell{padding:12px 12px 28px}.topbar{gap:12px}.main-nav{margin-right:-12px;padding-right:12px}.category-menu__panel{grid-template-columns:1fr}.spotlight-game{grid-template-columns:78px 1fr}.spotlight-game img{width:78px;height:78px}.card-grid{grid-template-columns:1fr}.library,.workspace{padding:16px}h1{font-size:2.2rem}.runner__actions{width:100%;justify-content:space-between}.runner.is-immersive .runner__topbar{gap:12px}.runner.is-immersive .runner__stage{padding:12px}.runner__summary-panel,.mini-game__overlay{right:12px;bottom:12px;width:calc(100% - 24px)}.game-2048__intro{flex-direction:column}.game-2048__controls{width:100%}.grid-2048,.snake-board,.sudoku-board,.memory-board,.mine-board{width:min(100%,430px)}.game-card{grid-template-columns:54px 1fr 18px}.game-thumb{width:54px;height:54px}}.connect-four-game,.falling-blocks-game,.quiz-game,.typing-game,.nonogram-game,.spelling-hive-game,.daily-number-game,.brick-breaker-game,.puzzle-escape-game,.jigsaw-game,.difference-game,.hidden-object-game,.mahjong-game{display:grid;gap:16px;justify-items:center;width:min(100%,560px)}.falling-blocks-controls button,.daily-number-grid button,.brick-breaker-controls button,.escape-code-entry button,.jigsaw-grid button,.difference-board button,.hidden-object-target,.mahjong-grid button{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:850}.falling-blocks-controls,.brick-breaker-controls{display:flex;gap:10px}.falling-blocks-grid{display:grid;grid-template-columns:repeat(8,32px);gap:6px;padding:14px;border-radius:18px;background:#1f2937}.falling-blocks-cell{width:32px;height:32px;border-radius:8px;background:#ffffff14}.falling-blocks-cell.is-filled{background:#f59e0b}.falling-blocks-cell.is-active{background:#fcd34d;box-shadow:0 0 0 2px #ffffff4d inset}.connect-four-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;width:min(100%,430px);padding:12px;border-radius:16px;background:#881337}.connect-four-drop{min-height:34px;border:0;border-radius:999px;background:#fff1f2;color:#881337;font-weight:900}.connect-four-cell{aspect-ratio:1;border-radius:999px;background:#fecdd3;box-shadow:inset 0 0 0 6px #8813371f}.connect-four-cell.is-player{background:#fb7185}.connect-four-cell.is-cpu{background:#0f172a}.quiz-card,.typing-card{display:grid;gap:12px;width:min(100%,560px);border:1px solid var(--line);border-radius:16px;background:#fff;padding:20px}.quiz-card__eyebrow,.typing-card__eyebrow{margin:0;color:var(--muted);font-size:.8rem;font-weight:850;text-transform:uppercase}.quiz-card h3,.typing-card strong{margin:0;font-size:1.35rem}.quiz-options{display:grid;gap:10px}.quiz-options button,.typing-form button,.spelling-hive-actions button{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:850;padding:0 12px}.quiz-options button.is-correct{border-color:#16a34a;background:#dcfce7;color:#166534}.quiz-options button.is-wrong{border-color:#fb7185;background:#fff1f2;color:#9f1239}.typing-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:min(100%,560px)}.typing-form input{min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 14px}.typing-word-bank,.spelling-hive-found{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.typing-word-bank span,.spelling-hive-found span{border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 12px;color:var(--muted);font-weight:800}.daily-number-grid{display:grid;grid-template-columns:repeat(3,minmax(0,92px));gap:12px}.daily-number-grid button{min-height:74px;font-size:1.35rem}.daily-number-grid button.is-selected{border-color:#0284c7;background:#e0f2fe;color:#075985}.nonogram-layout{display:grid;gap:10px}.nonogram-top-clues{display:grid;grid-template-columns:72px repeat(5,54px);gap:6px;align-items:end}.nonogram-body{display:grid;gap:6px}.nonogram-row{display:grid;grid-template-columns:72px repeat(5,54px);gap:6px}.nonogram-clue-row,.nonogram-clue-column{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-weight:900}.nonogram-clue-column{flex-direction:column}.nonogram-cell{width:54px;height:54px;border:1px solid var(--line);border-radius:10px;background:#fff}.nonogram-cell.is-filled{background:#1e293b}.nonogram-cell.is-marked{background:#fff1f2;box-shadow:inset 0 0 0 2px #fb7185}.hive-wheel{display:grid;grid-template-columns:repeat(3,84px);gap:10px;place-items:center}.hive-wheel button{width:84px;height:84px;border:0;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%);background:#fde68a;color:#78350f;font-size:1.8rem;font-weight:900}.hive-wheel button.is-center{background:#facc15}.spelling-hive-entry{display:grid;gap:12px;justify-items:center}.spelling-hive-entry strong{min-width:180px;border-bottom:3px solid var(--ink);font-size:2rem;letter-spacing:.14em;text-align:center}.spelling-hive-actions{display:flex;gap:8px}.brick-breaker-canvas{width:min(100%,360px);max-width:100%;border:1px solid var(--line);border-radius:18px;background:#f8fafc}.escape-room-scene{position:relative;width:min(100%,540px);min-height:300px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#dbeafe,#f8fafc 38%,#e5e7eb 38%,#e5e7eb);overflow:hidden}.escape-hotspot{position:absolute;min-width:84px;min-height:42px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:#ffffffdb;font-weight:850}.escape-hotspot.is-note{left:16%;top:58%}.escape-hotspot.is-lamp{left:24%;top:18%}.escape-hotspot.is-plant{right:12%;bottom:12%}.escape-door{position:absolute;right:14%;bottom:0;width:120px;height:190px;display:grid;place-items:center;border-radius:18px 18px 0 0;background:#7c2d12;color:#fff7ed;font-weight:900}.escape-door.is-open{background:#16a34a}.escape-panel,.escape-clues,.escape-code-entry{display:grid;gap:10px;width:min(100%,540px)}.escape-clues span{border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;color:var(--muted)}.escape-code-entry{grid-template-columns:minmax(0,1fr) auto}.escape-code-entry input{min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 14px}.jigsaw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,108px));gap:10px}.jigsaw-grid button{min-height:108px;border:0;color:#0f172a;font-size:1.6rem}.jigsaw-grid button.is-selected{box-shadow:0 0 0 3px #0f172a inset}.difference-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(100%,560px)}.difference-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.scene-tile{min-height:68px;display:grid;place-items:center;border-radius:14px;text-transform:capitalize}.difference-board button.scene-tile.is-found{box-shadow:0 0 0 3px #16a34a inset}.scene-sun,.scene-kite{background:#fde68a}.scene-cloud,.scene-river{background:#bfdbfe}.scene-hill,.scene-bush{background:#bbf7d0}.scene-tree,.scene-bird,.scene-house,.scene-path,.scene-bench,.scene-flower{background:#fecdd3}.hidden-object-scene{position:relative;width:min(100%,560px);min-height:320px;border:1px solid var(--line);border-radius:20px;background:radial-gradient(circle at 18% 24%,#fde68a 0 8%,transparent 9%),linear-gradient(180deg,#bae6fd,#cffafe 42%,#fed7aa 42%,#fdba74);overflow:hidden}.hidden-object-target{position:absolute;transform:translate(-50%,-50%);min-width:72px;min-height:40px;background:#ffffffe6}.hidden-object-target.is-found{background:#dcfce7;color:#166534}.hidden-object-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.hidden-object-list span{border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 12px;font-weight:800}.hidden-object-list span.is-found{background:#dcfce7;color:#166534}.mahjong-grid{display:grid;grid-template-columns:repeat(4,78px);grid-template-rows:repeat(3,92px);gap:10px}.mahjong-grid button{min-height:92px;border-radius:16px;font-size:1.6rem}.mahjong-grid button.is-open{background:#fffbeb}.mahjong-grid button.is-closed{background:#e5e7eb;color:#64748b}.mahjong-grid button.is-selected{box-shadow:0 0 0 3px #0f172a inset}.mahjong-grid button.is-removed{opacity:.18}@media(max-width:620px){.falling-blocks-grid{grid-template-columns:repeat(8,28px)}.falling-blocks-cell{width:28px;height:28px}.typing-form,.difference-layout,.escape-code-entry{grid-template-columns:1fr}.jigsaw-grid{grid-template-columns:repeat(3,minmax(0,90px))}.jigsaw-grid button{min-height:90px}.mahjong-grid{grid-template-columns:repeat(4,64px);grid-template-rows:repeat(3,82px)}.nonogram-top-clues,.nonogram-row{grid-template-columns:52px repeat(5,44px)}.nonogram-cell{width:44px;height:44px}.hive-wheel{grid-template-columns:repeat(3,70px)}.hive-wheel button{width:70px;height:70px;font-size:1.45rem}}.word-guess-game{display:grid;width:min(100%,520px);gap:16px;justify-items:center}.word-guess-game__header{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px}.word-guess-board{display:grid;grid-template-columns:repeat(5,minmax(44px,64px));gap:8px;justify-content:center}.word-guess-tile{display:grid;aspect-ratio:1;place-items:center;border:2px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:clamp(1.25rem,4vw,1.9rem);font-weight:950;text-transform:uppercase}.word-guess-tile.is-correct{border-color:#15803d;background:#dcfce7;color:#14532d}.word-guess-tile.is-present{border-color:var(--amber);background:#fef3c7;color:#78350f}.word-guess-tile.is-absent{border-color:#94a3b8;background:#e2e8f0;color:#334155}.word-guess-keyboard{display:flex;max-width:520px;flex-wrap:wrap;justify-content:center;gap:6px}.word-guess-keyboard button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:900;padding:0 10px}.word-guess-keyboard button:hover{border-color:var(--accent);color:var(--accent-strong)}.word-guess-keyboard button.is-correct{border-color:#15803d;background:#dcfce7;color:#14532d}.word-guess-keyboard button.is-present{border-color:var(--amber);background:#fef3c7;color:#78350f}.word-guess-keyboard button.is-absent{border-color:#94a3b8;background:#e2e8f0;color:#334155}@media(max-width:620px){.word-guess-game__header{align-items:stretch;flex-direction:column}.word-guess-board{grid-template-columns:repeat(5,minmax(38px,1fr));width:100%}.word-guess-keyboard button{min-width:32px;padding:0 8px}}
