.puzzle-board-wrapper,.puzzle-board-container{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg,16px);-webkit-user-select:none;user-select:none;box-sizing:border-box;touch-action:pan-x pan-y;scrollbar-width:thin;scrollbar-color:#38bdf84d #0f172a80;-webkit-overflow-scrolling:touch;background:#0f172ab3;border:1px solid #38bdf833;flex-direction:column;justify-content:flex-start;align-items:safe center;width:100%;max-width:100%;padding:16px 20px;display:flex;overflow:auto visible;box-shadow:0 16px 40px #0000008c,0 0 20px #38bdf80f}@media (width<=640px){.puzzle-board-wrapper,.puzzle-board-container{border-radius:var(--radius-md,10px);padding:10px 8px}}@media (width<=380px){.puzzle-board-wrapper,.puzzle-board-container{padding:8px 4px}}.puzzle-board-grid{grid-template:"corner header"max-content"sidebar canvas"max-content/max-content max-content;place-items:end start;width:max-content;max-width:none;margin:0 auto;display:grid}.puzzle-corner-spacer{z-index:6;background:#0f172af5;grid-area:corner;position:sticky;left:0}.puzzle-header-slot{background:#0f172aa6;border-bottom:1px solid #38bdf840;border-top-left-radius:6px;border-top-right-radius:6px;grid-area:header;place-self:end start}.puzzle-sidebar-slot{z-index:5;-webkit-backdrop-filter:blur(10px);background:#0f172af5;border-right:1px solid #38bdf859;border-top-left-radius:6px;border-bottom-left-radius:6px;grid-area:sidebar;place-self:start end;position:sticky;left:0;box-shadow:2px 0 8px #0006}.puzzle-canvas-slot{grid-area:canvas;place-self:start}.puzzle-board-wrapper.free-pan .puzzle-corner-spacer,.puzzle-board-wrapper.free-pan .puzzle-sidebar-slot,.puzzle-board-container.free-pan .puzzle-corner-spacer,.puzzle-board-container.free-pan .puzzle-sidebar-slot{box-shadow:none!important;position:static!important;left:auto!important}:root{--bg-app:#080c14;--bg-surface:#0f172a;--bg-surface-elevated:#182234;--bg-surface-hover:#1e293b;--bg-viewport:#111827;--tile-bg-empty:#1e293b;--tile-bg-hover:#334155;--tile-fill:#38bdf8;--tile-fill-glow:#38bdf873;--tile-flag:#64748b;--tile-flag-line:#94a3b8;--tile-mistake:#f43f5e;--tile-mistake-glow:#f43f5e80;--grid-line-subtle:#ffffff14;--grid-line-major:#38bdf859;--grid-border:#334155;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-dimmed:#334155;--text-cyan:#38bdf8;--text-pink:#f472b6;--text-yellow:#facc15;--text-green:#4ade80;--accent-cyan:#38bdf8;--accent-blue:#2563eb;--accent-gradient:linear-gradient(135deg, #38bdf8 0%, #2563eb 100%);--accent-glow:0 0 25px #38bdf859;--gold-gradient:linear-gradient(135deg, #fbbf24 0%, #d97706 100%);--glass-bg:#0f172abf;--glass-border:#ffffff14;--glass-border-hover:#38bdf84d;--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 32px #0009;--tile-size:36px;--grid-w:5;--grid-h:5;--clue-header-height:120px;--clue-sidebar-width:120px;--font-display:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px}*,:before,:after{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body{background-color:var(--bg-app);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-display);touch-action:pan-x pan-y;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.app-container{background:radial-gradient(circle at 50% 10%, #182234b3 0%, var(--bg-app) 75%);flex-direction:column;min-height:100vh;display:flex}.app-main{box-sizing:border-box;flex-direction:column;flex:1;align-items:center;width:100%;padding:20px 16px;display:flex}@media (width<=640px){.app-main{padding:10px 6px}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.btn{border-radius:var(--radius-md);font-family:var(--font-display);letter-spacing:.02em;cursor:pointer;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 14px #38bdf84d}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 20px #38bdf873}.btn-secondary{background:var(--bg-surface-elevated);border-color:var(--glass-border);color:var(--text-secondary)}.btn-secondary:hover{background:var(--bg-surface-hover);border-color:var(--glass-border-hover);color:var(--text-primary)}.btn-icon{border-radius:var(--radius-md);background:var(--bg-surface-elevated);border:1px solid var(--glass-border);width:42px;height:42px;color:var(--text-secondary);justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:var(--bg-surface-hover);border-color:var(--glass-border-hover);color:var(--text-primary)}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #38bdf84d}50%{box-shadow:0 0 30px #38bdf899}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-app)}::-webkit-scrollbar-thumb{background:var(--bg-surface-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--bg-surface-hover)}.hero-card{box-sizing:border-box;padding:32px 36px}.app-header{border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:blur(16px);z-index:100;box-sizing:border-box;background:#0f172ae0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 24px;display:flex;position:sticky;top:0}@media (width<=640px){.app-header{gap:8px!important;padding:8px 12px!important}.app-header .btn{padding:6px 10px!important;font-size:.8rem!important}.hero-card{padding:20px 16px!important}.hero-btn{white-space:normal!important;text-align:center!important;padding:10px 16px!important;font-size:.9rem!important}.level-select-header,.level-select-grid-panel{padding:14px 12px!important}}@media (width<=440px){.app-header-version,.app-header-progressbar{display:none!important}}.game-view-container{box-sizing:border-box;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:1200px;margin:0 auto;padding:0 8px 32px;display:flex}.game-header-bar{box-sizing:border-box;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 14px;display:flex}.game-toolbar-container{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:560px;margin:0 auto;display:flex}.game-toolbar-strip{box-sizing:border-box;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 12px;display:flex}@media (width<=640px){.game-header-bar{gap:6px;padding:6px 10px}.game-menu-label{display:none}.game-clue-scale-pill{display:none!important}}@media (width<=480px){.game-back-label{display:none}.game-zoom-btn-sub{display:none!important}.toolbar-btn-label{display:none}.game-toolbar-strip{gap:4px!important;padding:6px 8px!important}.game-toolbar-strip .btn{padding:6px 8px!important;font-size:.8rem!important}}.app-header-menu-btn{display:none!important}@media (width<=768px){.app-header-desktop-actions{display:none!important}.app-header-menu-btn{display:flex!important}}@media (orientation:landscape) and (height<=600px){.app-main{padding:2px 8px!important}.game-view-container{gap:3px!important;padding:0 4px 2px!important}.game-header-bar{gap:4px!important;min-height:28px!important;padding:2px 8px!important}.game-header-bar button{padding:3px 8px!important;font-size:.78rem!important}.game-toolbar-container{gap:2px!important}.game-toolbar-strip{gap:6px!important;min-height:28px!important;padding:2px 8px!important}.game-toolbar-strip button{padding:3px 8px!important;font-size:.78rem!important}.game-toolbar-strip div{padding-top:1px!important;padding-bottom:1px!important}.game-menu-drawer{gap:14px!important;padding:14px 16px 20px!important}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.game-menu-drawer{animation:.2s cubic-bezier(.16,1,.3,1) slideInRight}
