﻿.game-app{--bg:#122b24;--ink:#f2f6e6;--green:#a8c773;--border:#ffffff16;background:radial-gradient(ellipse at 20% 0%,#234d3d 0,transparent 55%),radial-gradient(ellipse at 100% 100%,#3a4930 0,transparent 45%),#122b24;color:#eef3e0;margin:0;height:100dvh;overflow:hidden;font-family:'Be Vietnam Pro',system-ui,sans-serif}.home-screen,.play-screen{height:100dvh;width:100%;padding:0 max(16px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;overflow:hidden}.game-top{display:flex;align-items:center;justify-content:space-between;flex:0 0 62px;max-width:1200px;width:100%;margin:0 auto;gap:12px}.game-logo{border:0;background:none;display:flex;align-items:center;gap:10px;color:#f1f2db;padding:0}.game-logo>span{font-size:37px;width:42px;line-height:1;color:#dce5b2}.game-logo b{font-size:15px;letter-spacing:1px;font-weight:750}.game-logo b>span{color:#b6cc8a}.top-actions{display:flex;align-items:center;gap:8px}.game-icon-button{border:1px solid #bdcf951f;background:#c0d59e10;display:inline-flex;gap:6px;align-items:center;justify-content:center;min-width:34px;height:34px;border-radius:9px;padding:0 9px;color:#c2d4a5;font-size:16px}.game-icon-button span{font-size:11px;font-weight:500}.game-icon-button:hover{background:#c0d59e25}.game-icon-button[aria-pressed=true]{color:#ffdf8c;background:#d9b76e22}.home-content{margin:auto;width:min(970px,100%);padding:16px 0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:0;flex:1;max-width:none}.home-title{text-align:center}.home-eyebrow{font-size:9px;letter-spacing:3px;color:#aebf84}.home-title h1{font-size:clamp(24px,3.4vw,43px);line-height:1.4;font-weight:800;letter-spacing:-1px;margin:13px 0 8px;text-shadow:0 3px 0 #0c2119}.home-title h1>span{color:#dce49d}.home-title p{font-size:11px;color:#a4b993;margin:8px 0 0}.play-title{display:flex;align-items:center;gap:18px;width:260px;justify-content:center;margin-top:9px}.play-title h2{font-size:12px;letter-spacing:4px;font-weight:600;white-space:nowrap;margin:0;color:#e1e9c3}.play-title>span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#abbc7870)}.play-title>span:last-child{transform:rotate(180deg)}.mode-grid{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.mode-card{display:flex;align-items:center;flex-direction:column;justify-content:center;border:1px solid #c2d79c42;background:linear-gradient(155deg,#3e6644,#284736);border-radius:19px;color:#ecf2d1;padding:22px 10px 17px;position:relative;box-shadow:0 7px 0 #081b1680,inset 0 1px 0 #ffffff1c;transition:transform .2s,box-shadow .2s,filter .2s}.mode-card:before{content:'';position:absolute;inset:7px;border:1px solid #c9dc9920;border-radius:13px;pointer-events:none}.mode-card:hover{transform:translateY(-5px);filter:brightness(1.1)!important;box-shadow:0 11px 0 #081b1680,0 12px 34px #b5d46820}.mode-card:active{transform:translateY(2px)!important;box-shadow:0 3px 0 #081b1680}.mode-art{font-family:Georgia,serif;font-size:67px;line-height:1;height:69px;text-shadow:0 4px 0 #0b231540;margin:2px 0 9px}.mode-stars{font-size:12px;letter-spacing:3px;color:#dceab0;min-height:19px}.mode-card strong{font-size:23px;font-weight:800;letter-spacing:1px;margin:7px 0}.mode-card small{font-size:10px;color:#d1dfb4}.mode-pool{font-size:9px;margin-top:17px;border-radius:20px;padding:5px 11px;background:#132c2545;color:#b5ca9b}.medium-card{background:linear-gradient(155deg,#766744,#554e33);border-color:#d7c78c50}.medium-card .mode-stars{color:#f3dea0}.hard-card{background:linear-gradient(155deg,#815849,#533c36);border-color:#d5a38b50}.hard-card .mode-stars{color:#ffd096}.custom-card{background:linear-gradient(155deg,#4a6370,#334650);border-color:#a3bfd350}.custom-card .mode-art{font-family:system-ui;font-size:52px}.custom-card .mode-stars{font-size:8px;color:#b7d5e3;letter-spacing:2px}.home-settings-note{display:flex;align-items:center;gap:11px;justify-content:center;font-size:10px;color:#a0b88a;margin-top:6px}.home-settings-note button{border:0;background:none;color:#d6e1b4;font-size:10px;text-decoration:underline;text-underline-offset:3px}.home-footer{max-width:1200px;width:100%;margin:auto;display:flex;justify-content:space-between;font-size:9px;color:#78966f;flex:0 0 28px;align-items:center;gap:10px}.resume-button{padding:9px 17px;border:1px solid #bdd09540;background:#c5d69810;color:#d6e9b5;border-radius:9px;font-size:11px;margin-top:0}.play-top{flex-basis:51px;border-bottom:1px solid #ffffff0c}.mode-label{font-size:11px;color:#c5dca1;letter-spacing:2px;margin-right:auto}.play-content{max-width:1150px;width:100%;margin:0 auto;padding:13px 0 7px;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:25px;flex:1;min-height:0;max-height:100%;max-width:1150px}.board-column{display:flex;flex-direction:column;min-height:0;min-width:0}.match-line{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 28px;min-width:0;padding:0 4px}.match-line>strong{font-size:11px;font-weight:550;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.match-line>span{font-size:9px;color:#a5b58b;white-space:nowrap}.player-line{display:flex;align-items:center;gap:7px;flex:0 0 26px;font-size:10px;padding:0 4px;min-width:0}.player-line strong{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 30px);color:#b9c8a5}.side-marker{height:12px;width:12px;border-radius:50%;border:1px solid #b8c79780;flex-shrink:0}.black-marker{background:#24342a}.white-marker{background:#e9eddb}.turn-marker{margin-left:auto;width:5px;height:5px;background:#c9df98;border-radius:50%;opacity:0}.turn-marker.current{opacity:1}.board-space{flex:1;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;padding:3px}.game-app .board-frame{background:#dce5ce;box-shadow:0 7px 24px #071a1680,0 0 0 1px #cad9aa50;border-radius:9px;padding:6px;flex-shrink:0;width:var(--board-size,300px);height:var(--board-size,300px);max-width:100%;max-height:100%}.game-app .board{height:100%;width:100%;aspect-ratio:1}.game-app .square .piece{width:83%;height:83%}.game-app .board-overlay{color:#294d38;background:#ecf2dedf}.game-app .board-overlay strong{font-size:20px}.board-tools{display:flex;justify-content:space-between;align-items:center;flex:0 0 31px;padding:0 4px;gap:8px}.board-tools>span{font-size:9px;color:#a3b68d;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.board-tools>div{display:flex;gap:5px}.board-tools .game-icon-button{height:26px;min-width:29px;font-size:17px;border-radius:6px}.play-controls{min-height:0;display:flex;flex-direction:column;justify-content:center;gap:15px}.phase-card{border:1px solid #a5c38735;background:linear-gradient(145deg,#355744,#254536);box-shadow:0 5px 0 #0b21193d;border-radius:15px;padding:20px;position:relative}.phase-header{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:9px;letter-spacing:1px;color:#b6c8a0}.phase-header>span:last-child{font-size:8px;letter-spacing:.5px;border-radius:20px;background:#c9dc9c13;padding:5px 7px;color:#d9e8b7}.phase-number{display:flex;align-items:center;gap:11px;margin:20px 0 15px}.phase-number>strong{font-size:63px;font-weight:650;line-height:1;letter-spacing:-3px;color:#f2f4d9;text-shadow:0 3px 0 #152f2440}.phase-number>span{font-size:12px;color:#ccdfae}.phase-number>.phase-orbit{font-size:55px;line-height:1;margin-left:auto;color:#b5cc7d45}.phase-card h2{font-size:14px;font-weight:600;margin:0 0 7px;color:#eef3d8;line-height:1.6}.phase-card>p{font-size:10px;line-height:1.8;color:#b0c39a;min-height:36px;margin:0 0 13px}.phase-card .round-slots{gap:4px;margin:12px 0;min-height:25px}.phase-card .move-slot{height:23px;min-width:20px;max-width:35px;font-size:8px;border-color:#96b47845;background:#264431;color:#a1bb8b}.phase-card .move-slot.seen{background:#769355;color:#f1f5dc;border-color:#a1be7a}.phase-card .move-slot.correct{background:#c1d88c;border-color:#c1d88c;color:#2c482c}.phase-card .main-action{font-size:12px;min-height:42px;padding:11px 9px;background:linear-gradient(#e5eeae,#c6d78d);box-shadow:0 4px 0 #152f243d;border-radius:9px;color:#354c2c}.phase-card .main-action:disabled{background:#52734d;color:#a4bb8b;box-shadow:none}.phase-card .secondary-actions{margin-top:13px}.phase-card .secondary-actions button{font-size:9px;padding:5px 0;color:#c4d6a8}.phase-card .secondary-actions button:disabled{opacity:.4}.phase-card .timer-row{font-size:9px;margin:8px 0 5px;color:#c8dcad}.phase-card .timer-track{height:3px;margin:0 0 13px}.progress-panel{padding:16px 18px;border:1px solid #abc68a20;background:#28433388;border-radius:12px}.progress-panel>div:first-child{display:flex;justify-content:space-between;font-size:10px;color:#a5bf8d}.progress-panel strong{color:#d3e5b3;font-size:11px;font-weight:600}.progress-panel .overall-track{background:#49633c;margin-top:11px;height:4px}.progress-panel .overall-track>span{background:#c7db8b}.progress-panel>p{font-size:9px;color:#a8c08d;margin:10px 0 12px}.attempt-stats{display:flex;justify-content:space-between;color:#87a571;font-size:9px;border-top:1px solid #bad29217;padding-top:12px}.attempt-stats b{font-size:12px;color:#c9dda6;margin-left:6px}.play-footer{max-width:1150px;width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex:0 0 22px;font-size:8px;color:#799970;gap:10px}.game-dialog{background:linear-gradient(145deg,#284b3b,#17352b);color:#ecf1dd;border:1px solid #a4c58150;box-shadow:0 25px 100px #07171190;border-radius:18px;max-height:calc(100dvh - 32px);width:min(430px,calc(100% - 32px));padding:25px}.game-dialog::backdrop{background:#061c16b8;backdrop-filter:blur(7px)}.game-dialog .dialog-heading h2{font-size:20px;color:#e6edcb}.game-dialog .dialog-heading .close-dialog{background:#b5d28a0c;color:#bad19a}.dialog-copy{color:#a4bc8f;font-size:11px;line-height:1.8;margin:11px 0 24px}.config-label{display:flex;justify-content:space-between;color:#b7cd9f;font-size:11px;align-items:center;gap:10px}.config-label strong{color:#e0ecb8;font-weight:500;font-size:11px}.game-dialog input[type=range]{width:100%;accent-color:#c1d787;margin:19px 0 25px;height:5px;cursor:pointer}.config-toggles{display:flex;gap:18px;border-top:1px solid #a9c48426;padding:17px 0 9px;color:#a6bf90;font-size:10px}.config-toggles label{display:flex;align-items:center;gap:7px}.config-toggles input{accent-color:#b2cc7d}.dialog-actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.game-dialog .primary-button{background:linear-gradient(#d7e5a7,#b3ca7e);color:#2c462b;border-radius:9px;box-shadow:0 4px 0 #10271e66;padding:12px 22px;font-size:11px;font-weight:650}.soft-button{border:1px solid #a3bf7e40;background:#b7d48c10;color:#bace9b;padding:10px 15px;border-radius:8px;font-size:10px}.custom-label{display:block;font-size:11px;color:#adca94;margin-bottom:9px}.game-dialog input[type=url],.game-dialog textarea{border:1px solid #95b57445;background:#123027;padding:12px;border-radius:8px;color:#d4e5b5;font-size:11px;width:100%;resize:vertical}.game-dialog input::placeholder,.game-dialog textarea::placeholder{color:#729768}.custom-pgn{margin-top:17px}.custom-pgn summary{font-size:10px;color:#96b67a;cursor:pointer}.custom-pgn textarea{margin-top:12px}.custom-pgn input{font-size:9px;max-width:100%;margin-top:10px;color:#9bba85}.custom-rule{font-size:9px;line-height:1.8;color:#7da16e;margin:17px 0 0}.custom-feedback{font-size:10px;color:#cfe0aa;min-height:16px;margin:13px 0 19px;line-height:1.8}.custom-feedback.error{color:#efb797}.game-help p{font-size:11px;color:#adc497;line-height:1.9;margin:20px 0}.game-help b{display:block;font-size:10px;letter-spacing:1px;color:#d3e3a8;margin-bottom:7px}.game-app #promotion-options button{background:#46653e;border-color:#90af6650;height:75px;width:65px}.game-app .toast{left:50%;background:#4c6740;color:#e6ecc8;font-size:11px;bottom:25px;max-width:calc(100% - 32px);z-index:200;box-shadow:0 7px 28px #07170f80}.game-app .toast.error{background:#875d46;color:#fff0d8}.celebration{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:6;background:radial-gradient(ellipse,#193c3380,transparent 70%);text-align:center;padding:15px;animation:celebrate-pop .85s cubic-bezier(.15,.8,.3,1) both}.celebration-stars{color:#ffdc79;font-size:clamp(22px,4vw,42px);letter-spacing:12px;text-shadow:0 3px 0 #8d6231,0 0 20px #ffda8160;margin-bottom:14px}.celebration strong{font-size:clamp(18px,3vw,34px);font-weight:800;line-height:1.45;color:#ffeb94;text-shadow:0 3px 0 #6c4b25,0 5px 14px #0d2716;letter-spacing:-.5px}.celebration>span:last-child{font-size:11px;color:#fff5ca;text-shadow:0 2px 5px #132c22;margin-top:10px;max-width:85%}.confetti-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:150}.confetti-bit{position:absolute;width:7px;height:12px;border-radius:2px;top:-25px;animation:confetti-fall var(--fall-time,1.8s) ease-in var(--fall-delay,0s) both}.victory-dialog{text-align:center;padding:24px;overflow:hidden}.victory-crown{font-size:68px;color:#ffdf83;line-height:1.2;text-shadow:0 4px 0 #745b28;margin-bottom:13px}.victory-eyebrow{font-size:9px;letter-spacing:4px;color:#b5cf89}.victory-dialog h2{font-size:29px;color:#ffe799;line-height:1.3;font-weight:800;letter-spacing:-.5px;margin:13px 0;text-shadow:0 3px 0 #755729}.victory-dialog>p{font-size:10px;color:#a8c08f;line-height:1.8}.victory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.victory-stats>div{border-radius:10px;background:#8fab6520;padding:14px 7px}.victory-stats strong{display:block;font-size:25px;color:#e4edb3;font-weight:600}.victory-stats span{display:block;font-size:8px;color:#9cba80;margin-top:6px}.victory-dialog>button{display:flex;width:100%;justify-content:center;margin-top:12px}.phase-card.failed-state{animation:failure-pulse .45s ease-in-out;border-color:#c9896750}.phase-card.done-state{border-color:#d4cf8250}.board-frame.win-pulse{animation:board-win .8s ease-out}@keyframes celebrate-pop{0%{opacity:0;transform:scale(.65) rotate(-4deg)}25%{opacity:1;transform:scale(1.06) rotate(2deg)}50%,80%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.05)}}@keyframes confetti-fall{to{transform:translate(var(--drift,50px),110dvh) rotate(var(--spin,500deg));opacity:.15}}@keyframes failure-pulse{25%,75%{transform:translateX(-3px)}50%{transform:translateX(3px)}}@keyframes board-win{50%{box-shadow:0 0 34px #ffe78870,0 0 0 3px #ddcd8550}}
@media(max-width:720px) and (orientation:portrait){.game-top{flex-basis:48px}.home-content{gap:13px;padding:9px 0}.home-title h1{font-size:25px;line-height:1.4;margin:9px 0}.home-eyebrow{font-size:7px;letter-spacing:2px}.home-title p{font-size:9px;line-height:1.8;max-width:300px}.play-title{margin-top:1px}.mode-grid{grid-template-columns:repeat(2,1fr);gap:12px;max-width:420px}.mode-card{padding:13px 8px 11px;border-radius:14px}.mode-card:before{inset:5px;border-radius:9px}.mode-art{font-size:38px;height:39px;margin:0 0 5px}.custom-card .mode-art{font-size:34px}.mode-stars{font-size:9px;min-height:12px}.mode-card strong{font-size:18px;margin:6px 0}.mode-card small{font-size:8px}.mode-pool{font-size:7px;margin-top:9px;padding:4px 9px}.home-footer{font-size:7px;flex-basis:20px}.home-footer>span:last-child{display:none}.home-settings-note{font-size:8px;gap:7px;margin-top:3px}.home-settings-note button{font-size:8px}.resume-button{font-size:9px;padding:7px 12px}.play-content{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 154px;gap:6px;padding:6px 0 3px}.play-controls{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:8px;min-height:0}.phase-card{padding:10px 12px;border-radius:11px;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:0}.phase-header{font-size:8px;letter-spacing:.7px}.phase-header>span:last-child{font-size:6px;padding:3px 5px}.phase-number{margin:7px 0 3px;gap:7px}.phase-number>strong{font-size:29px;letter-spacing:-1px}.phase-number>span{font-size:9px}.phase-number>.phase-orbit{font-size:25px}.phase-card h2{font-size:10px;margin:3px 0 6px;line-height:1.4;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.phase-card>p,.phase-card .round-slots{display:none}.phase-card .main-action{font-size:10px;min-height:30px;padding:7px 5px;border-radius:6px}.phase-card .secondary-actions{margin-top:7px;gap:8px}.phase-card .secondary-actions button{font-size:7px;padding:3px 0}.phase-card .timer-row{font-size:8px;margin:0 0 3px}.phase-card .timer-track{height:2px;margin:0 0 5px}.game-app[data-phase=hold] .phase-card h2{display:none}.progress-panel{padding:12px 10px;border-radius:11px;display:flex;flex-direction:column;justify-content:center}.progress-panel>div:first-child{flex-direction:column;gap:8px;font-size:7px}.progress-panel strong{font-size:16px}.progress-panel .overall-track{margin-top:9px;height:3px}.progress-panel>p{font-size:7px;line-height:1.8;margin:8px 0}.attempt-stats{flex-direction:column;gap:6px;font-size:7px;padding-top:8px}.attempt-stats b{font-size:10px}.match-line{flex-basis:22px;padding:0 2px}.match-line>strong{font-size:9px}.match-line>span{font-size:7px}.player-line{flex-basis:21px;font-size:8px}.side-marker{width:9px;height:9px}.board-tools{flex-basis:26px}.board-tools>span{font-size:8px}.board-tools .game-icon-button{height:23px;min-width:25px;font-size:15px}.play-footer{flex-basis:16px;font-size:6px}.game-dialog{padding:20px}.game-dialog .dialog-heading h2{font-size:18px}.game-icon-button{height:30px;min-width:30px}.game-icon-button span{font-size:10px}.mode-label{font-size:9px}.play-top .top-actions{gap:5px}.rank-coordinate,.file-coordinate{font-size:7px!important}.game-app .board-frame{padding:4px;border-radius:7px}}
@media(max-height:620px) and (orientation:portrait){.home-content{gap:8px}.home-title h1{font-size:21px;margin:7px 0}.home-title p{display:none}.home-eyebrow{font-size:6px}.mode-card{padding:10px 6px 9px}.mode-art{height:30px;font-size:30px;margin-bottom:3px}.custom-card .mode-art{font-size:27px}.mode-card strong{font-size:16px;margin:4px 0}.mode-pool{margin-top:6px;padding:3px 7px}.mode-stars{font-size:8px;min-height:10px}.mode-card small{font-size:7px}.game-top{flex-basis:40px}.game-logo>span{font-size:31px}.game-logo b{font-size:12px}.mode-grid{gap:10px}.home-footer{font-size:6px}.play-content{grid-template-rows:minmax(0,1fr) 145px}.play-footer>span:last-child{display:none}}
@media(orientation:landscape) and (max-height:600px){.game-top{flex-basis:39px}.home-content{gap:8px;padding:5px 0}.home-title h1{font-size:23px;line-height:1.25;margin:5px 0}.home-title h1 br{display:none}.home-title p{display:none}.home-eyebrow{font-size:6px}.play-title{margin-top:1px}.play-title h2{font-size:9px}.mode-grid{gap:12px;max-width:750px}.mode-card{padding:12px 5px 10px;border-radius:12px}.mode-art{font-size:38px;height:39px;margin:0 0 4px}.custom-card .mode-art{font-size:32px}.mode-stars{font-size:9px;min-height:12px}.mode-card strong{font-size:17px;margin:5px 0}.mode-card small{font-size:8px}.mode-pool{font-size:7px;margin-top:7px;padding:3px 7px}.home-footer{flex-basis:15px;font-size:7px}.home-settings-note{font-size:8px;margin-top:0}.home-settings-note button{font-size:8px}.resume-button{position:absolute;bottom:12px;right:17px;font-size:8px}.play-content{grid-template-columns:minmax(0,1fr) 225px;gap:15px;padding:5px 0 0}.match-line{flex-basis:21px}.match-line strong{font-size:8px}.match-line>span{font-size:7px}.player-line{flex-basis:18px;font-size:7px}.board-tools{flex-basis:22px}.board-tools>span{font-size:7px}.board-tools .game-icon-button{height:22px;min-width:25px}.play-footer{flex-basis:16px;font-size:6px}.play-controls{gap:8px}.phase-card{padding:12px 14px;border-radius:11px}.phase-number{margin:9px 0 7px;gap:8px}.phase-number>strong{font-size:35px}.phase-number>span{font-size:9px}.phase-number>.phase-orbit{font-size:32px}.phase-header{font-size:7px}.phase-header>span:last-child{font-size:6px;padding:3px 5px}.phase-card h2{font-size:11px;margin-bottom:6px}.phase-card>p{display:none}.phase-card .round-slots{display:none}.phase-card .main-action{min-height:30px;padding:7px;font-size:10px}.phase-card .secondary-actions{margin-top:7px}.phase-card .secondary-actions button{font-size:7px}.progress-panel{padding:11px 14px}.progress-panel>div:first-child{font-size:8px}.progress-panel>p{font-size:7px;margin:7px 0}.progress-panel .overall-track{margin-top:7px;height:3px}.attempt-stats{font-size:7px;padding-top:8px}.attempt-stats b{font-size:9px}.game-dialog{max-height:calc(100dvh - 20px);padding:17px}.game-dialog .dialog-heading h2{font-size:16px}.dialog-copy{font-size:9px;margin:8px 0 15px}.config-label{font-size:10px}.game-dialog input[type=range]{margin:12px 0 17px}.config-toggles{padding:12px 0 6px}.dialog-actions{margin-top:15px}.victory-dialog{width:min(540px,calc(100% - 30px));padding:18px}.victory-crown{font-size:35px;margin-bottom:5px}.victory-eyebrow{font-size:7px}.victory-dialog h2{font-size:22px;margin:7px 0}.victory-dialog h2 br{display:none}.victory-stats{margin:12px 0}.victory-stats>div{padding:9px}.victory-stats strong{font-size:19px}.victory-dialog>button{margin-top:8px;padding:9px}.game-logo>span{font-size:31px}.game-logo b{font-size:12px}}
@media(max-height:390px) and (orientation:landscape){.play-top{flex-basis:33px}.play-controls{gap:6px}.phase-number{margin:6px 0 4px}.phase-number>strong{font-size:28px}.phase-card h2{font-size:10px;margin:3px 0}.phase-header>span:last-child{font-size:5px}.phase-card{padding:9px 12px}.progress-panel{padding:8px 12px}.progress-panel>p{margin:5px 0}.attempt-stats{padding-top:5px}.play-footer{flex-basis:12px}.home-title h1{font-size:19px}.mode-art{font-size:31px;height:32px}.mode-card{padding:9px 4px}.home-content{gap:6px}.home-eyebrow{display:none}.home-footer{flex-basis:11px}}
@media(prefers-reduced-motion:reduce){.celebration{animation:none}.confetti-bit{display:none}.mode-card:hover{transform:none}.board-frame.win-pulse{animation:none}}
@media(max-height:620px) and (orientation:portrait){.phase-card{padding:8px 11px}.phase-number{margin:4px 0 2px}.phase-card h2{margin:2px 0 4px}}

.round-next-overlay{position:absolute;inset:0;z-index:7;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse,#123729ad,transparent 85%);border-radius:inherit}
.round-next-panel{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;max-width:100%;animation:next-round-appear .22s ease-out both}
.round-next-stars{color:#ffe18a;font-size:clamp(17px,3vw,29px);letter-spacing:7px;text-shadow:0 3px 0 #8a642b}
.round-next-panel>strong{font-size:clamp(14px,2.5vw,27px);line-height:1.4;max-width:100%;color:#ffe8a1;text-shadow:0 3px 0 #73592b,0 4px 14px #10271c;font-weight:800}
.round-next-button{font-size:clamp(11px,1.4vw,16px);font-weight:750;color:#2f482a;padding:14px 24px;border:1px solid #eff3b3;border-radius:12px;background:linear-gradient(#f1f4bb,#cddd92);box-shadow:0 5px 0 #38552c,0 8px 25px #0b221d80;min-height:44px;max-width:100%;white-space:nowrap}
.round-next-button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}
.round-next-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 #38552c}
.round-next-panel>span:last-child{font-size:clamp(8px,1vw,11px);color:#e0edc5;text-shadow:0 2px 6px #173426;line-height:1.6}
.auto-next-toggle{display:flex;align-items:center;gap:10px;margin-top:14px;padding:13px 0 0;border-top:1px solid #a9c48426;cursor:pointer}
.auto-next-toggle input{width:17px;height:17px;flex-shrink:0;accent-color:#bdd589}
.auto-next-toggle span{display:flex;flex-direction:column;gap:6px}
.auto-next-toggle strong{font-size:11px;font-weight:550;color:#d7e7bb}
.auto-next-toggle small{font-size:9px;line-height:1.7;color:#96b27d}
@keyframes next-round-appear{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
@media(max-height:390px) and (orientation:landscape){.round-next-panel{gap:8px}.round-next-button{padding:11px 17px}.auto-next-toggle{margin-top:9px;padding-top:9px}.auto-next-toggle strong{font-size:10px}.auto-next-toggle small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.round-next-panel{animation:none}}
.victory-dialog{overflow-y:auto}
.victory-challenge-offer{padding:17px 14px;margin:18px 0;border:1px solid #c5d78d45;border-radius:12px;background:#b7d48c10}
.victory-challenge-offer h3{font-size:13px;line-height:1.7;color:#e4edb7;margin:0 0 9px}
.victory-challenge-offer p{font-size:10px;line-height:1.8;color:#b1c795;margin:0 0 14px}
.victory-challenge-offer button{width:100%;min-height:42px}
.learning-mode-select,.game-dialog #memory-budget{width:100%;border:1px solid #a3bf7e40;border-radius:8px;padding:11px;background:#173a2c;color:#e3edc4;font:inherit;font-size:11px;margin:10px 0 22px}
.game-dialog #memory-budget{margin-bottom:12px;font-size:16px;font-variant-numeric:tabular-nums}
.game-dialog #memory-budget:disabled{opacity:.4}
.memory-unlimited-toggle{display:flex;align-items:center;gap:8px;color:#c2d6a6;font-size:11px}
.memory-unlimited-toggle input{accent-color:#bdd589}
.study-config-note{color:#a4bc8f;font-size:10px;line-height:1.8;margin:13px 0 20px}
.study-moves{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:180px;overflow-y:auto;overscroll-behavior:contain;margin:8px 0 14px;padding:2px}
.study-moves button{min-height:34px;border:1px solid #a5c38750;border-radius:6px;background:#173b2c;color:#d7e9b7;font:inherit;font-size:11px;padding:6px 4px;white-space:nowrap}
.study-moves button:first-child{grid-column:1/-1}
.study-moves button[aria-pressed=true]{background:#c6d98f;color:#263f27;border-color:#e2efb4}
.study-moves button:focus-visible{outline:2px solid #ffe49a;outline-offset:2px}
.study-moves button:disabled{opacity:.45}
.home-learning-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:min(420px,100%)}
.home-learning-modes button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 8px;background:#193d30;border:1px solid #a3bf7e40;border-radius:10px;color:#b9cc9e;font:inherit}
.home-learning-modes button[aria-pressed=true]{background:#c4d68e;color:#29452c;border-color:#e4edb3;box-shadow:0 3px 0 #0c251d55}
.home-learning-modes strong{font-size:12px}.home-learning-modes small{font-size:9px;opacity:.85}
.study-playback-controls{display:flex;align-items:center;gap:8px;margin:6px 0}
.study-playback-controls button{flex:1;border:1px solid #bdd58f70;border-radius:7px;background:#bdcf8d15;color:#e0ebbb;min-height:32px;padding:5px;font:inherit;font-size:10px}
.study-playback-controls button:disabled{opacity:.45}.study-playback-controls small{font-size:8px;color:#a6bf8a;max-width:65px;line-height:1.5}
.game-app[data-learning-mode=study][data-phase=watch] .phase-number{margin:10px 0}.game-app[data-learning-mode=study][data-phase=watch] .phase-number>strong{font-size:38px}
.memory-clock{display:grid;gap:5px;margin:12px 0;padding:12px 0;border-top:1px solid #bad29225;color:#b5ca96}
.memory-clock>span{font-size:10px}.memory-clock>strong{font-size:25px;font-variant-numeric:tabular-nums;color:#f2e9ab}.memory-clock>small{font-size:9px;line-height:1.6}
.game-app[data-phase=timeout] .memory-clock>strong{color:#ffc09b}
.game-app[data-phase=study] .phase-number{margin:10px 0}.game-app[data-phase=study] .phase-number>strong{font-size:38px}
@media(max-width:720px) and (orientation:portrait){
 .game-app[data-learning-mode=study] .play-content{grid-template-rows:minmax(0,1fr) 212px}
 .game-app[data-phase=study] .phase-card .phase-number,.game-app[data-phase=study] .phase-card h2{display:none}
 .study-moves{grid-template-columns:repeat(2,minmax(0,1fr));max-height:112px;gap:5px;margin:4px 0 9px}
 .study-moves button{min-height:27px;padding:5px 3px;font-size:9px}
 .home-learning-modes button{padding:8px 6px;gap:3px}.home-learning-modes strong{font-size:11px}.home-learning-modes small{font-size:8px}
 .game-app[data-learning-mode=study][data-phase=watch] .phase-card .phase-number,.game-app[data-learning-mode=study][data-phase=watch] .phase-card h2{display:none}
 .study-moves{max-height:85px}.study-playback-controls{gap:5px;margin:5px 0}.study-playback-controls button{font-size:8px;min-height:27px}.study-playback-controls small{font-size:6px;max-width:50px}
 .memory-clock{margin:5px 0;padding:6px 0;gap:3px}.memory-clock>span{font-size:7px}.memory-clock>strong{font-size:19px}.memory-clock>small{font-size:7px}
 .game-app[data-learning-mode=study] .progress-panel>p{margin:5px 0}.game-app[data-learning-mode=study] .attempt-stats{padding-top:5px;gap:3px}
}
@media(orientation:landscape) and (max-height:600px){
 .game-app[data-learning-mode=study] .play-controls{justify-content:flex-start;overflow-y:auto;padding:2px}
 .game-app[data-phase=study] .phase-card .phase-number,.game-app[data-phase=study] .phase-card h2{display:none}
 .game-app[data-learning-mode=study][data-phase=watch] .phase-card .phase-number,.game-app[data-learning-mode=study][data-phase=watch] .phase-card h2{display:none}
 .study-moves{max-height:92px;margin:5px 0 8px;gap:4px}.study-moves button{min-height:26px;font-size:9px;padding:4px}
 .memory-clock{grid-template-columns:1fr auto;align-items:center;margin:5px 0;padding:6px 0;gap:3px}.memory-clock>strong{font-size:18px}.memory-clock>small{grid-column:1/-1;font-size:8px}
}
@media(max-height:620px) and (orientation:portrait){
 .home-content{gap:6px;padding:4px 0}.home-title h1{font-size:18px;line-height:1.1;margin:2px 0}.home-eyebrow,.home-content>.play-title,.mode-stars{display:none}
 .home-learning-modes button{padding:7px 5px;gap:2px}.home-learning-modes strong{font-size:10px}.home-learning-modes small{font-size:6px}
 .mode-card{padding:7px 6px}.mode-art{font-size:22px;height:21px;margin:0}.custom-card .mode-art{font-size:20px}.mode-card strong{font-size:14px;line-height:1.2;margin:2px 0}.mode-card small{font-size:7px;line-height:1.2}.mode-pool{font-size:6px;line-height:1.2;margin-top:3px;padding:2px 5px}.mode-grid{gap:8px}
}
@media(orientation:landscape) and (max-height:600px){.home-learning-modes button{padding:6px;gap:2px}.home-learning-modes strong{font-size:10px}.home-learning-modes small{font-size:7px}.home-content{gap:6px}}
@media(min-width:721px) and (min-height:601px) and (max-height:820px){.game-app[data-learning-mode=study] .study-moves{max-height:90px}.game-app[data-learning-mode=study] .phase-card>p{min-height:0}.game-app[data-learning-mode=study] .phase-card{padding:15px}}
