.difficulty-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 32px}.difficulty-cards button{display:flex;flex-direction:column;gap:8px;padding:22px 16px;background:#fff;border:2px solid #e3e9ee;border-radius:20px}.difficulty-cards button>span{color:#d6a22c;font-size:22px}.difficulty-cards b{font-size:22px}.difficulty-cards small{font-size:13px;font-weight:600}.difficulty-cards [aria-pressed=true]{border-color:#286eae;background:#eaf5ff;box-shadow:0 4px 0 #c1daef}.room-prompt{margin-bottom:20px}.search-workspace .toolbar h1 small{font:600 15px Nunito,Arial}.search-board{isolation:isolate;aspect-ratio:1672/941}.board .search-toy{transform:translate(-50%,-100%);max-width:none;min-width:0;min-height:0;max-height:none;padding:0;border:0;aspect-ratio:auto;background:transparent;box-shadow:none}.search-toy canvas{display:block;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 2px 2px #0004)}.search-toy.found{visibility:hidden}.search-toy.hint{z-index:999!important;filter:drop-shadow(0 0 10px #ffeb3b);outline:3px dashed #fff176;border-radius:8px}.search-board .win{z-index:1000}.landscape-tip{display:none}.board-scroll{overflow:auto;border-radius:18px;overscroll-behavior-x:contain}.target-list{display:grid;gap:6px;width:100%}.search-workspace .target{display:flex;align-items:center;gap:8px;width:100%;margin:0;padding:7px;font-size:12px}.target img{width:40px;height:42px;object-fit:contain}.search-workspace .sidebar{align-content:start}.search-workspace:fullscreen{overflow:auto;background:#fffaf0;padding:12px;width:100%;max-width:none}.search-workspace:fullscreen .game-layout{grid-template-columns:minmax(0,1fr) 170px}.search-workspace:fullscreen .board{width:min(100%,calc((100dvh - 90px)*1.777));margin:auto}.search-workspace:fullscreen .status{display:none}.search-workspace:fullscreen .toolbar{margin-bottom:10px}.search-workspace:fullscreen .sidebar{max-height:calc(100dvh - 90px);overflow:auto}
@media(max-width:900px){.search-workspace .target-list{display:flex;flex-wrap:wrap}.search-workspace .target{width:auto;flex:1 1 130px}.search-workspace .sidebar{display:block}.search-workspace .sidebar>p{margin:5px 0 12px}.search-workspace .sidebar h2{font-size:19px}}
@media(max-width:600px){.difficulty-cards{gap:8px}.difficulty-cards button{padding:16px 6px}.difficulty-cards b{font-size:18px}.difficulty-cards small{font-size:11px}.search-workspace .toolbar{gap:8px}.search-workspace .toolbar h1{font-size:22px}.search-workspace .controls button{font-size:12px;padding:9px 12px}.landscape-tip{display:block;font-size:12px;color:#526f8a}.board-scroll{border:2px solid #ddd2bb}.search-board{width:760px;max-width:none}.search-workspace .status{font-size:11px}.search-workspace:fullscreen .board{min-width:760px}}
@media(orientation:landscape) and (max-height:600px){body[data-section=toys]:has(.search-workspace)>header,body[data-section=toys]:has(.search-workspace)>footer{display:none}.search-workspace{padding:8px 12px}.search-workspace .toolbar{margin-bottom:8px;gap:8px}.search-workspace .toolbar h1{font-size:20px}.search-workspace .toolbar button{min-height:36px;padding:7px 10px;font-size:12px}.search-workspace .game-layout{grid-template-columns:minmax(0,1fr) 155px;gap:10px}.search-workspace .sidebar{padding:10px;max-height:calc(100dvh - 65px);overflow:auto}.search-workspace .target-list{display:grid}.search-workspace .target{width:100%;font-size:10px;min-width:0}.search-workspace .target img{width:28px;height:32px}.search-workspace .status,.landscape-tip{display:none}.search-board{width:100%;min-width:0;max-height:calc(100dvh - 65px)}.search-workspace .board-scroll{border:0}.search-workspace:fullscreen .board{min-width:0}.search-workspace .sidebar h2{font-size:16px}}
@media(orientation:landscape) and (max-height:600px){.search-board{width:min(100%,calc((100dvh - 65px)*1.7768));max-height:none;margin-inline:auto}}
.search-countdown{margin:0 0 14px}.countdown-label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;margin-bottom:6px;color:#42644f}.countdown-label strong{font-size:18px;font-variant-numeric:tabular-nums}.time-track{height:14px;border-radius:20px;background:#dbeadd;overflow:hidden;box-shadow:inset 0 1px 3px #16391c1a}#search-time-fill{height:100%;width:100%;background:linear-gradient(90deg,#25934d,#64cd78);transform-origin:left center;border-radius:inherit}.search-workspace button:disabled{cursor:default}.search-workspace #hint:disabled{opacity:.5}.search-workspace:fullscreen .board{width:min(100%,calc((100dvh - 145px)*1.777))}.search-workspace:fullscreen .sidebar{max-height:calc(100dvh - 145px)}
@media(orientation:landscape) and (max-height:600px){.search-countdown{margin-bottom:8px}.countdown-label{font-size:10px;margin-bottom:3px}.countdown-label strong{font-size:13px}.time-track{height:9px}.search-board,.search-workspace:fullscreen .board{width:min(100%,calc((100dvh - 104px)*1.7768));max-height:none}.search-workspace .sidebar,.search-workspace:fullscreen .sidebar{max-height:calc(100dvh - 104px)}}
/* Immersive rounds: retain the whole room and reserve only a narrow target rail. */
body:has(.immersive){overflow:hidden}.search-workspace.immersive{position:fixed;inset:0;z-index:100;max-width:none;width:100%;height:100dvh;padding:8px max(8px,env(safe-area-inset-right)) 8px max(8px,env(safe-area-inset-left));background:#16334b;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:6px;color:white}.immersive .toolbar{margin:0;gap:8px;flex-wrap:nowrap}.immersive .toolbar h1{font-size:20px;white-space:nowrap}.immersive .toolbar h1 small{font-size:12px}.immersive .toolbar button{min-height:36px;padding:7px 12px;font-size:12px}.immersive .controls{flex-wrap:nowrap}.immersive .search-countdown{margin:0}.immersive .countdown-label{color:#def3e5;font-size:10px;margin-bottom:3px}.immersive .countdown-label strong{font-size:14px}.immersive .time-track{height:9px}.immersive .game-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(76px,12vw,150px);gap:8px;min-height:0;height:100%}.immersive .scene-column{min-height:0;display:grid}.immersive .board-scroll{container-type:size;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;border:0;border-radius:10px}.immersive .search-board{width:min(100cqw,calc(100cqh * 1.776833));height:auto;min-width:0;max-width:none;max-height:none;aspect-ratio:1672/941;margin:0;box-shadow:none;flex:none}.immersive .status,.immersive .landscape-tip{display:none}.immersive .sidebar{display:flex;flex-direction:column;flex-wrap:nowrap;gap:4px;min-height:0;max-height:none!important;overflow:hidden;padding:8px;border:0;border-radius:12px;color:#173b69}.immersive .sidebar h2{font-size:16px;text-align:center}.immersive .sidebar>p{font-size:12px;margin:0;text-align:center}.immersive .target-list{display:grid;grid-auto-rows:minmax(0,1fr);gap:5px;min-height:0;flex:1}.immersive .target-list.many-targets{grid-template-columns:repeat(2,minmax(0,1fr))}.immersive .target{width:100%;min-height:0;min-width:0;position:relative;display:flex;justify-content:center;margin:0;padding:5px;overflow:hidden}.target canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.target.done canvas{opacity:.35}.target-check{position:absolute;right:3px;bottom:1px;color:#19824b;font-size:22px}.immersive .win{color:#173b69}.preparing .game-layout{visibility:hidden}.search-intro{position:absolute;inset:0;z-index:2000;display:grid;place-items:center;background:radial-gradient(ellipse at center,#23668e,#122d46);pointer-events:none}.intro-copy{text-align:center}.intro-copy p{font-size:clamp(18px,3vw,32px);color:#c8e6f6;margin:0}.intro-copy strong{font-family:Fredoka,Arial,sans-serif;display:block;font-size:clamp(100px,24vmin,230px);line-height:1.2;color:#fff4c5;text-shadow:0 8px 0 #102d4d}.preparing .toolbar{position:relative;z-index:2001}.preparing .toolbar h1,.preparing .controls{visibility:hidden}.loading-round{place-items:center}.loading-round>#loading-back{position:absolute;left:12px;top:12px}.loading-round>div{text-align:center}.loading-round h1{font-size:30px}
@media(max-width:600px){.immersive .toolbar h1{font-size:15px}.immersive .toolbar h1 small{display:none}.immersive .toolbar button{padding:6px;font-size:10px}.immersive .controls{gap:4px}.immersive .game-layout{grid-template-columns:minmax(0,1fr) 76px}.immersive .sidebar{padding:5px}.immersive .sidebar h2{font-size:12px}.immersive .target-list.many-targets{grid-template-columns:1fr}}
@media(orientation:landscape) and (max-height:600px){.immersive .toolbar h1{font-size:16px}.immersive .toolbar button{min-height:30px;padding:5px 9px}.immersive .game-layout{grid-template-columns:minmax(0,1fr) 100px}.immersive .sidebar h2{font-size:12px}.immersive .sidebar>p{font-size:10px}.immersive .target-list{gap:3px}.immersive .target{padding:3px}.immersive .target-list.many-targets{grid-template-columns:repeat(2,minmax(0,1fr))}}
.immersive .back{color:#173b69;background:#edf4fa}
/* During play, only the green bar remains above the room. */
.search-workspace.immersive:not(.loading-round){grid-template-rows:8px minmax(0,1fr);gap:3px;padding:3px max(3px,env(safe-area-inset-right)) 3px max(3px,env(safe-area-inset-left))}.immersive>.toolbar,.immersive .countdown-label{display:none}.immersive .search-countdown{height:8px;margin:0}.immersive .time-track{height:8px;border-radius:5px}.immersive .game-layout{gap:4px;grid-template-columns:minmax(0,1fr) clamp(68px,10vw,128px)}.immersive .board-scroll{border-radius:5px}.immersive .search-board{border-radius:5px}.immersive .sidebar{padding:5px;border-radius:7px}.immersive .sidebar h2{font-size:12px}.immersive .sidebar>p{font-size:11px}.immersive .win #end-rooms{display:block;margin:8px auto 0;background:#e2ebf4;color:#173b69}.immersive .search-board{width:min(100cqw,calc(100cqh * 1.776833))}
@media(orientation:landscape) and (max-height:600px){.immersive .game-layout{grid-template-columns:minmax(0,1fr) 88px}.immersive .sidebar{padding:4px}.immersive .sidebar h2{font-size:11px}.immersive .sidebar>p{font-size:10px}}
/* The timer owns a reserved row; the room can never grow beyond its remaining cell. */
html:has(.immersive),body:has(.immersive){overflow:hidden;overscroll-behavior:none}
.search-workspace.immersive{inset:auto;top:var(--search-viewport-top,0px);left:var(--search-viewport-left,0px);width:var(--search-viewport-width,100%);height:var(--search-viewport-height,100dvh);min-width:0;min-height:0;max-height:none;overflow:hidden;box-sizing:border-box}
.search-workspace.immersive:not(.loading-round){grid-template-rows:8px minmax(0,1fr);padding: max(3px,env(safe-area-inset-top)) max(3px,env(safe-area-inset-right)) max(3px,env(safe-area-inset-bottom)) max(3px,env(safe-area-inset-left))}
.immersive .search-countdown{grid-row:1;position:relative;z-index:5;align-self:start;min-height:8px;flex-shrink:0;overflow:hidden}
.immersive .game-layout{grid-row:2;min-height:0;min-width:0;height:auto;max-height:100%;overflow:hidden;align-self:stretch}
.immersive .scene-column{min-width:0;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}
.immersive .board-scroll{min-width:0;min-height:0;max-width:100%;max-height:100%;overflow:hidden}
.immersive .search-board{max-width:100%;max-height:100%;min-height:0;flex-shrink:0}
