*{box-sizing:border-box}.hidden{display:none!important}html,body{width:100%;height:100%;min-height:100%;margin:0;overflow:hidden!important}button,input,select,textarea{font:inherit}canvas{display:block}html.touch-guards-active,html.touch-guards-active body{-webkit-text-size-adjust:100%}.touch-guards-active body,.touch-guards-active .game-root,.touch-guards-active #main-menu,.touch-guards-active #game-screen,.touch-guards-active .game-frame,.touch-guards-active .game-primary-hud,.touch-guards-active .game-stage,.touch-guards-active .board-stage,.touch-guards-active .board-shell,.touch-guards-active .game-secondary-rail,.touch-guards-active .onboarding-overlay,.touch-guards-active .tutorial-overlay,.touch-guards-active .overlay,.touch-guards-active .overlay-card,.touch-guards-active .pause-shell,.touch-guards-active .pause-view,.touch-guards-active .secondary-card,.touch-guards-active .foot,.touch-guards-active .menu-wrap,.touch-guards-active .menu-shell{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.touch-guards-active .game-root,.touch-guards-active #main-menu,.touch-guards-active #game-screen,.touch-guards-active .game-primary-hud,.touch-guards-active .game-stage,.touch-guards-active .board-stage,.touch-guards-active .board-shell,.touch-guards-active .game-secondary-rail,.touch-guards-active .onboarding-overlay,.touch-guards-active .tutorial-overlay,.touch-guards-active .overlay,.touch-guards-active .overlay-card,.touch-guards-active .pause-shell,.touch-guards-active .pause-view,.touch-guards-active .menu-wrap,.touch-guards-active .menu-shell{-webkit-user-select:none;user-select:none}.touch-guards-active .game-brand,.touch-guards-active .game-footer-copy,.touch-guards-active .game-primary-label,.touch-guards-active .game-primary-value,.touch-guards-active .game-primary-progress-level,.touch-guards-active .game-primary-next-hint,.touch-guards-active .label,.touch-guards-active .val,.touch-guards-active .status-line,.touch-guards-active .rules-line,.touch-guards-active .example span,.touch-guards-active .example strong,.touch-guards-active .secondary-card h3,.touch-guards-active .secondary-card p,.touch-guards-active .hud-record-notice,.touch-guards-active .hud-feedback,.touch-guards-active .onboarding-copy,.touch-guards-active .onboarding-copy strong,.touch-guards-active .tutorial-copy,.touch-guards-active .overlay-card h1,.touch-guards-active .overlay-card p,.touch-guards-active .pause-menu-title,.touch-guards-active .pause-section-title,.touch-guards-active .pause-help-copy,.touch-guards-active .pause-help-copy p,.touch-guards-active .pause-help-copy strong,.touch-guards-active .pause-setting span,.touch-guards-active .pause-setting strong,.touch-guards-active .pause-stats-subtitle,.touch-guards-active .pause-stats-card,.touch-guards-active .pause-stats-row,.touch-guards-active .gameover-row,.touch-guards-active .gameover-records,.touch-guards-active .foot{cursor:default;-webkit-user-select:none;user-select:none}.touch-guards-active .game-secondary-button,.touch-guards-active .game-pause-button,.touch-guards-active .game-hard-drop-button,.touch-guards-active .game-secondary-close,.touch-guards-active .onboarding-button,.touch-guards-active .tutorial-button,.touch-guards-active .pause-menu-link,.touch-guards-active .gameover-button,.touch-guards-active .pause-help-entry,.touch-guards-active .pause-help-control-button,.touch-guards-active .help-modal-close{touch-action:manipulation}.touch-guards-active .board-stage,.touch-guards-active .board-shell,.touch-guards-active #game-canvas,.touch-guards-active .board-overlay,.touch-guards-active .board-feedback-layer{touch-action:none}.touch-guards-active input,.touch-guards-active select,.touch-guards-active textarea,.touch-guards-active [contenteditable=true],.touch-guards-active [contenteditable=plaintext-only],.touch-guards-active [data-allow-touch-zoom]{-webkit-user-select:auto;user-select:auto;-webkit-touch-callout:default}#main-menu.screen,#game-screen.screen{grid-template-rows:1fr auto;justify-items:center;transition:opacity .35s,transform .35s;display:grid;position:fixed;inset:0}#main-menu.screen{align-items:stretch}#main-menu.hidden,#game-screen.hidden{pointer-events:none;opacity:0;transform:scale(.98)}#game-screen{place-items:stretch stretch;padding:0;display:grid}.game-root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--board-stage-pad:18px;--board-shell-pad:8px;--hard-drop-button-reserve:18px;--secondary-rail-docked-width:224px;--secondary-rail-gap:12px;width:100%;height:100dvh;min-height:100dvh;padding-top:calc(12px + var(--safe-top));padding-right:calc(12px + var(--safe-right));padding-bottom:calc(12px + var(--safe-bottom));padding-left:calc(12px + var(--safe-left));position:relative;overflow:hidden}.game-frame{grid-template-rows:auto minmax(0,1fr);gap:12px;width:min(1360px,100%);height:100%;margin:0 auto;display:grid}.game-main{gap:var(--secondary-rail-gap);grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.game-root.secondary-placement-docked .game-main,.game-root.has-docked-secondary .game-main{grid-template-columns:minmax(0, 1fr) var(--secondary-rail-docked-width)}.game-stage{grid-template-rows:minmax(0,1fr) auto;gap:10px;min-width:0;min-height:0;display:grid;position:relative}.game-secondary-rail{align-content:start;gap:10px;min-width:0;min-height:0;display:grid;overflow:hidden}.game-root.secondary-placement-docked .game-secondary-rail,.game-root.has-docked-secondary .game-secondary-rail{width:100%;position:relative}.game-root:not(.secondary-placement-docked):not(.has-docked-secondary) .game-secondary-rail{top:calc(88px + var(--safe-top));right:calc(12px + var(--safe-right));width:min(320px, calc(100vw - 24px - var(--safe-left) - var(--safe-right)));max-height:calc(100dvh - 104px - var(--safe-top) - var(--safe-bottom));z-index:20;position:absolute}.game-root.is-secondary-open .game-secondary-rail{display:grid}.game-root:not(.secondary-placement-docked):not(.has-docked-secondary) .howto-card,.game-root:not(.secondary-placement-docked):not(.has-docked-secondary) .controls-card{display:none}.board-stage{min-width:0;min-height:0;padding:var(--board-stage-pad);border-radius:calc(var(--radius) + 6px);box-shadow:var(--shadow);background:linear-gradient(#ffffff0a,#ffffff04);place-items:center;display:grid;position:relative;overflow:hidden}.board-stage-stack{z-index:1;align-content:center;justify-items:stretch;width:fit-content;max-width:100%;padding-bottom:0;display:grid;position:relative}.board-stage-stack.has-hard-drop-button{padding-bottom:var(--hard-drop-button-reserve)}.board-shell{width:fit-content;max-width:100%;padding:var(--board-shell-pad);border-radius:calc(var(--radius) + 4px);background:linear-gradient(#ffffff0f,#ffffff05);position:relative}.board-actions{pointer-events:none;justify-content:flex-end;align-items:flex-end;width:100%;min-height:0;display:flex;position:absolute;bottom:0;right:0}.board-feedback-layer{z-index:4;pointer-events:none;position:absolute;inset:0}.board-feedback-popup{text-align:center;white-space:nowrap;transform-origin:50%;will-change:transform, opacity;background:#090b10d6;border:1px solid #ffffff14;border-radius:999px;gap:2px;min-width:0;padding:6px 10px;display:grid;position:absolute;top:0;left:0;box-shadow:0 10px 24px #00000057}.board-feedback-popup__label{letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:900}.board-feedback-popup__detail{color:#ffffffeb;font-size:11px;font-weight:800}.board-feedback-popup--points{padding:5px 9px}.board-feedback-popup--points.board-feedback-popup--base .board-feedback-popup__label{color:#a8dadc}.board-feedback-popup--combo.board-feedback-popup--highlight .board-feedback-popup__detail{color:#fff2c8}#game-canvas{border-radius:var(--radius);touch-action:none;-webkit-user-select:none;user-select:none;background:#2b2b2b;width:auto;max-width:100%;height:auto;box-shadow:inset 0 0 0 1px #ffffff0a}.board-overlay{pointer-events:none;position:absolute;inset:0}.board-overlay--feedback{padding:calc(var(--board-stage-pad) + 8px);z-index:4;align-content:start;justify-items:start;gap:8px;display:grid}.game-pause-button{top:calc(8px + var(--safe-top));right:calc(8px + var(--safe-right));z-index:5;position:absolute}.game-hard-drop-button{z-index:5;cursor:pointer;appearance:none;pointer-events:auto;border:0;border-radius:999px;place-items:center;width:40px;height:40px;padding:0;display:inline-grid}.panel{background:linear-gradient(180deg, var(--panel), var(--panel-2));border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;animation:.35s fadeIn}.compact-panel{padding:10px 12px}.panel h2,.secondary-card h3{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.panel p,.secondary-card p{color:var(--text);margin:0;font-size:13px;line-height:1.4}.panel p+p,.secondary-card p+p{margin-top:8px}.label{color:var(--muted)}.val{font-weight:800}.val.flash{color:var(--accent);animation:.5s flashVal}.progress-track{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:999px;width:0%;height:100%;transition:width .25s}.progress-text{color:var(--muted);margin-top:6px;font-size:11px}.row{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.row:last-child{border-bottom:0}.status-line{color:var(--accent);background:#a8dadc14;border-radius:10px;margin-top:10px;padding:7px 9px;font-size:12px}.rules-line{color:var(--accent-2);margin-top:10px;font-size:11px}.example{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding-top:10px;display:flex}.example span{color:var(--muted)}.example strong{color:var(--accent-2);font-size:16px}.game-primary-hud{min-width:0}.game-primary-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.game-brand{letter-spacing:.5px;color:var(--accent);text-shadow:0 0 10px #a8dadc59;margin:0;font-size:28px;font-weight:800}.game-primary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.game-primary-card{background:#ffffff08;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.game-primary-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.game-primary-value{color:var(--text);font-size:clamp(26px,3vw,34px);font-weight:900}#ui-target.target-pulse{animation:.45s targetPulse}.game-primary-progress{margin-top:10px}.game-secondary-button,.game-pause-button,.game-secondary-close,.onboarding-button,.tutorial-button,.gameover-button{appearance:none;cursor:pointer;border:0}.game-secondary-button,.game-pause-button,.game-secondary-close{min-width:42px;min-height:42px;color:var(--accent);box-shadow:var(--shadow);background:#101010d1;border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.game-secondary-button:hover,.game-secondary-button:focus-visible,.game-pause-button:hover,.game-pause-button:focus-visible,.game-secondary-close:hover,.game-secondary-close:focus-visible{outline:none;transform:translateY(-1px)}.game-footer-copy{text-align:center;color:var(--muted);margin:0;font-size:13px}.game-secondary-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.game-secondary-head h2{color:var(--accent-2);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px}.secondary-card{background:#ffffff08;border-radius:12px;padding:10px 12px}.secondary-card h3{margin-bottom:8px}.next-piece-frame{background:#101010;border-radius:10px;justify-content:center;align-items:center;min-height:68px;padding:4px 0;display:flex}#next-canvas{width:176px;height:64px}.hud-record-notice{color:#ffe6b0;box-shadow:var(--shadow);background:linear-gradient(135deg,#f6bd6033,#a8dadc2e);border:1px solid #f6bd603d;border-radius:12px;padding:10px 12px;font-size:12px;font-weight:700}.hud-record-notice--show{animation:.24s fadeIn}.hud-feedback-stack{gap:8px;display:grid}.hud-feedback{box-shadow:var(--shadow);border-radius:11px;max-width:min(260px,100vw - 64px);padding:9px 11px;font-size:12px;font-weight:700;animation:.24s fadeIn}.hud-feedback--points{color:var(--accent);background:#a8dadc1f}.hud-feedback--combo{color:#ffd18b;background:#f6bd6024}.hud-feedback--level{color:#9be3af;background:#76c89324}.hud-feedback--out{opacity:0;transition:opacity .22s,transform .22s;transform:translateY(-4px)}.game-primary-hud{gap:6px;width:min(820px,100%);margin:0 auto;padding:10px 12px;display:grid}.game-primary-head{justify-content:space-between;align-items:center;gap:12px;min-height:0;margin:0;display:flex}.game-brand{font-size:clamp(24px,3vw,34px)}.game-primary-layout{grid-template-columns:minmax(92px,.82fr) minmax(132px,1.28fr) minmax(112px,1fr);align-items:stretch;gap:8px;display:grid}.game-primary-card--target,.game-primary-card--points,.game-primary-card--next{min-width:0;min-height:56px}.game-primary-card--target{text-align:center;align-content:center;justify-items:center;gap:3px;padding:8px 10px;display:grid}.game-primary-card--target .game-primary-label,.game-primary-card--target .game-primary-value,.game-primary-card--target .game-primary-target-preview-value{text-align:center;margin:0}.game-primary-card--target .game-primary-value{letter-spacing:-.04em;font-size:clamp(52px,6.6vw,72px);line-height:.92}.target-value-row{isolation:isolate;justify-content:center;align-items:baseline;gap:10px;display:inline-flex;position:relative}.game-target-value-row{align-items:flex-end}.game-primary-target-preview-value{color:var(--accent-2);transform-origin:100%;font-size:clamp(16px,2vw,20px);font-weight:800;line-height:1}.target-current-value{white-space:nowrap;transform-origin:0;display:inline-block}.target-current-value--hidden{opacity:0}.target-current-value--arrive{animation:.3s targetCurrentArrive}.target-preview-value--incoming{animation:.34s targetPreviewIncoming}.target-value-ghost{z-index:4;text-align:center;white-space:nowrap;pointer-events:none;color:var(--accent-2);text-shadow:1px 1px #ffffff59;transform-origin:50%;will-change:transform, opacity, color;transition:transform var(--target-shift-duration,.65s) cubic-bezier(.22, 1, .36, 1), opacity var(--target-shift-duration,.65s) ease, color var(--target-shift-duration,.65s) ease;line-height:1;display:inline-block;position:absolute;transform:translate(-50%,-50%)scale(1)}.target-value-ghost--current-outgoing{color:var(--accent)}.target-value-ghost--next-moving{color:var(--accent-2)}.target-value-ghost.target-value-ghost--moving{color:var(--accent)}.target-value-ghost--fade-out{opacity:0;transform:translate(-50%,-50%)scale(1.08)}.game-primary-label{font-size:10px;line-height:1}.game-primary-card--points,.game-primary-card--next{align-content:center;gap:4px;padding:7px 8px;display:grid}.game-primary-card--points{text-align:left;justify-items:start}.game-primary-card--next{gap:3px}.game-primary-next-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.game-primary-card--next .game-primary-label,.game-primary-progress-level{white-space:nowrap}.game-primary-next-hint{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:9px}.game-primary-value{line-height:1}.game-primary-value--points{font-size:clamp(18px,2vw,22px)}.next-piece-frame--hud{min-height:34px;padding:1px 3px}#next-canvas{aspect-ratio:176/64;width:min(100%,104px);height:auto}.game-primary-progress{grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:8px;margin-top:0;display:grid}.game-primary-progress .progress-track{min-width:0;height:6px}.game-primary-progress-level{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1}.secondary-card--context .status-line{margin-top:0}@keyframes targetCurrentArrive{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes targetPreviewIncoming{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.versus-root{background:radial-gradient(circle at 50% 12%,#ffffff73,#0000 28%),linear-gradient(#f7efd6f0,#e9dbb7f0);width:100%;height:100dvh;min-height:100dvh;padding:12px;position:relative;overflow:hidden}.versus-frame{grid-template-columns:minmax(0,1fr) minmax(170px,.44fr) minmax(0,1fr);align-items:stretch;gap:14px;width:min(1360px,100%);height:100%;margin:0 auto;display:grid}.versus-player,.versus-center{min-width:0;min-height:0}.versus-player{grid-template-rows:auto auto minmax(0,1fr) auto;justify-items:center;gap:8px;display:grid}.versus-player-hud{grid-template-columns:minmax(86px,.72fr) minmax(0,1fr);align-items:stretch;gap:8px;width:100%;display:grid}.versus-player-hud>div,.versus-target-card{background:#ffffff47;border:1px solid #4161841f;border-radius:12px;align-content:center;gap:4px;padding:8px 10px;display:grid}.versus-score{color:var(--accent);font-size:clamp(22px,2.4vw,30px);font-weight:900;line-height:1}.versus-next canvas{aspect-ratio:176/64;width:min(100%,108px);height:auto}.versus-progress{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:8px;width:100%;display:grid}.versus-board-shell{place-self:center;position:relative}.versus-board-shell:after{content:"";z-index:2;border-radius:calc(var(--radius) + 2px);pointer-events:none;position:absolute;inset:0;box-shadow:0 0 #d2534300}.versus-board-shell--under-attack:after{animation:.72s ease-in-out infinite versusBoardHeartPulse}.versus-board-shell--under-attack canvas{transform-origin:50%;will-change:transform, box-shadow;animation:.72s ease-in-out infinite versusBoardCanvasThreatPulse}.versus-board-shell canvas{border-radius:calc(var(--radius) + 2px);touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;max-width:100%;height:auto;display:block;box-shadow:inset 0 0 0 1px #5a80ad2e}.versus-target-badge{z-index:4;max-width:min(92%,260px);color:var(--accent);text-align:center;white-space:nowrap;pointer-events:none;background:radial-gradient(circle at 30% 18%,#ffec969e,#0000 42%),#ffffffe0;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:900;line-height:1.05;position:absolute;top:-10px;left:50%;transform:translate(-50%,-100%)scale(1);box-shadow:0 10px 22px #523d1d2e,inset 0 0 0 1px #4161841f}.versus-target-badge--show{animation:.24s ease-out versusTargetBadgePop}.versus-board-countdown{z-index:3;color:#446ea37a;text-align:center;text-shadow:0 6px 18px #ffffff57;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:112px;font-weight:900;line-height:.82;position:absolute;top:7%;left:50%;transform:translate(-50%)}.versus-board-countdown--tick{animation:.24s ease-out versusLocalCountdownTick}.versus-hard-drop-button{z-index:5;position:absolute;bottom:10px;right:10px}.versus-root[data-layout-profile=tablet-touch]{padding:10px 8px}.versus-root[data-layout-profile=tablet-touch] .versus-frame{grid-template-columns:minmax(0,1fr) minmax(118px,.3fr) minmax(0,1fr);gap:10px;width:min(1180px,100%)}.versus-root[data-layout-profile=tablet-touch] .versus-player{gap:6px}.versus-root[data-layout-profile=tablet-touch] .versus-player-hud{grid-template-columns:minmax(78px,.8fr) minmax(0,1fr);gap:6px}.versus-root[data-layout-profile=tablet-touch] .versus-player-hud>div,.versus-root[data-layout-profile=tablet-touch] .versus-target-card{border-radius:10px;gap:2px;padding:7px 8px}.versus-root[data-layout-profile=tablet-touch] .versus-score{font-size:clamp(20px,2.3vw,28px)}.versus-root[data-layout-profile=tablet-touch] .versus-next canvas{width:min(100%,96px)}.versus-root[data-layout-profile=tablet-touch] .versus-progress{gap:6px}.versus-root[data-layout-profile=tablet-touch] .versus-center{grid-template-rows:auto auto auto;align-content:center;gap:8px}.versus-root[data-layout-profile=tablet-touch] .versus-center .game-brand,.versus-root[data-layout-profile=tablet-touch] #versus-p1-status,.versus-root[data-layout-profile=tablet-touch] #versus-p2-status{display:none}.versus-root[data-layout-profile=tablet-touch] .versus-target-card{min-height:108px}.versus-root[data-layout-profile=tablet-touch] .versus-target-card .game-primary-value{font-size:clamp(42px,6vw,64px)}.versus-root[data-layout-profile=tablet-touch] .versus-target-value-row{gap:8px}.versus-root[data-layout-profile=tablet-touch] .versus-target-countdown-overlay{width:min(54vw,520px);height:min(46vh,320px)}.versus-root[data-layout-profile=tablet-touch] .versus-target-countdown-value{font-size:clamp(108px,20vh,220px)}.versus-root[data-layout-profile=tablet-touch] .versus-actions{gap:6px}.versus-root[data-layout-profile=tablet-touch] .versus-hard-drop-button{opacity:.92;width:64px;height:64px;bottom:12px;right:12px}.versus-root[data-layout-profile=tablet-touch] .versus-hard-drop-button .game-hard-drop-button__icon{font-size:28px}.versus-root[data-layout-profile=tablet-touch] .versus-target-badge{max-width:min(94%,220px);padding:5px 10px;font-size:12px}.versus-root[data-layout-profile=tablet-touch] .versus-board-countdown{font-size:86px;top:6%}.versus-center{text-align:center;grid-template-rows:auto auto minmax(0,1fr) auto;align-content:center;gap:12px;display:grid;position:relative;overflow:visible}.versus-center .game-brand{z-index:1;margin:0;font-size:clamp(22px,2.8vw,34px);position:relative}.versus-target-card{z-index:1;background:radial-gradient(circle at 35% 18%,#ffeb8a8f,#0000 42%),#ffffff47;justify-items:center;gap:4px;min-height:132px;position:relative}.versus-target-card .game-primary-value{font-size:clamp(54px,7vw,76px);line-height:.92}.versus-target-value-row{align-items:flex-end;gap:10px}.versus-target-preview-value{color:var(--accent-2);font-size:clamp(16px,2vw,20px);font-weight:800;line-height:1}.versus-target-countdown-overlay{z-index:0;pointer-events:none;place-items:center;width:min(44vw,540px);height:min(50vh,380px);display:grid;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.versus-target-countdown-value{color:#446ea3b3;letter-spacing:-.06em;-webkit-user-select:none;user-select:none;text-shadow:0 8px 24px #ffffff2e;font-size:clamp(128px,24vh,280px);font-weight:800;line-height:.82}.versus-target-countdown-value--tick{animation:.26s versusCountdownTick}.versus-actions{z-index:1;gap:8px;display:grid;position:relative}.versus-center .status-line{z-index:1;position:relative}.versus-actions .gameover-button{width:100%}.versus-gameover-overlay{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#3b2b114d;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.versus-gameover-overlay.hidden{display:none}.versus-gameover-card{text-align:center;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;width:min(760px,100% - 32px);max-height:min(100dvh - 48px,100%);padding:24px 24px 20px;display:grid;overflow:hidden;box-shadow:0 24px 44px #523d1d3d}.versus-gameover-card>h2.versus-gameover-title{color:var(--accent);font-family:var(--font-handwritten);letter-spacing:.02em;text-transform:none;text-shadow:0 10px 26px #523d1d2e;margin:0;font-size:clamp(38px,5.2vw,64px);font-weight:800;line-height:.94}.versus-gameover-summary{border-top:1px solid #41618424;min-height:0;padding-top:18px;overflow:auto}.versus-gameover-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.versus-gameover-table thead th{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;padding:0 12px 10px;font-size:11px;font-weight:800}.versus-gameover-table thead th:first-child,.versus-gameover-table tbody th{text-align:left}.versus-gameover-table tbody th,.versus-gameover-table tbody td{border-top:1px solid #4161841a;padding:12px}.versus-gameover-table tbody th{color:var(--text);font-size:15px;font-weight:700}.versus-gameover-value{color:var(--text);text-align:center;background:#ffffff57;border-radius:14px;font-size:18px;font-weight:800;transition:background-color .16s,box-shadow .16s,color .16s}.versus-gameover-value.is-leading{color:var(--accent);background:radial-gradient(circle at 30% 20%,#ffe99485,#0000 44%),#d0ecbad1;box-shadow:inset 0 0 0 1px #608f4a42}.versus-gameover-value.is-tied{color:var(--accent);background:radial-gradient(circle at 28% 18%,#ffe9946b,#0000 42%),#f1e5bcdb;box-shadow:inset 0 0 0 1px #d4a84b38}.versus-gameover-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.versus-gameover-actions .gameover-button{width:100%}.versus-root.is-layout-invalid .versus-frame{filter:saturate(.8)}@media (width<=1280px){.versus-gameover-card{padding:20px 20px 18px}.versus-gameover-table tbody th,.versus-gameover-table tbody td{padding:10px}}@keyframes versusCountdownTick{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes versusTargetBadgePop{0%{opacity:0;transform:translate(-50%,-100%)scale(.88)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}@keyframes versusLocalCountdownTick{0%{opacity:0;transform:translate(-50%)scale(.88)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes versusBoardHeartPulse{0%,to{opacity:.28;box-shadow:0 0 0 1px #d253432e,0 0 #d253431f,0 0 12px #d253431a}42%{opacity:.68;box-shadow:0 0 0 2px #d2534357,0 0 0 5px #d253431a,0 0 18px #d253432e}58%{opacity:.5;box-shadow:0 0 0 1px #d253433d,0 0 0 3px #d2534314,0 0 14px #d2534324}}@keyframes versusBoardCanvasThreatPulse{0%,to{transform:scale(1);box-shadow:inset 0 0 0 1px #5a80ad2e,0 0 #d2534300,0 0 #d2534300}34%{transform:scale(1.004);box-shadow:inset 0 0 0 2px #ffec9633,0 0 0 2px #d253434d,0 0 16px #d2534333}52%{transform:scale(1.002);box-shadow:inset 0 0 0 1px #ffec9629,0 0 0 1px #d2534338,0 0 12px #d2534329}}.powerup-legend{grid-template-columns:1fr;gap:10px;margin-top:0;display:grid}.powerup-item{color:var(--accent);align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;display:flex}.powerup-badge{flex:none;width:36px;height:36px}.onboarding-overlay{z-index:30;background:linear-gradient(135deg,#f6bd602e,#a8dadc24);border:1px solid #f6bd6033;border-radius:16px;gap:12px;width:min(420px,100vw - 40px);padding:16px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 60px #00000073}.onboarding-copy{gap:6px;display:grid}.onboarding-copy strong{color:#ffe6b0;letter-spacing:.04em;text-transform:uppercase;font-size:13px}.onboarding-button{color:var(--accent);background:#101010c7;border-radius:999px;justify-self:start;padding:10px 14px;font-weight:800}.tutorial-overlay{--tutorial-overlay-dim:#06080c8f;--tutorial-bubble-fill:linear-gradient(180deg, #fffffff7, #faf3ddf7);z-index:8000;pointer-events:auto;position:fixed;inset:0}.tutorial-overlay.hidden{display:none}.tutorial-dimmer{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tutorial-dimmer-path{fill:var(--tutorial-overlay-dim);fill-rule:evenodd;clip-rule:evenodd}.tutorial-overlay--passthrough{pointer-events:none}.tutorial-spotlight{z-index:1;pointer-events:none;background:#ffffff0d;border:2px solid #f7dd72f2;border-radius:14px;transition:left .18s,top .18s,width .18s,height .18s;position:fixed;box-shadow:0 0 28px #f7dd7261}.tutorial-spotlight.hidden{display:none}.tutorial-dialog{left:50%;bottom:calc(22px + var(--safe-bottom));z-index:2;pointer-events:auto;grid-template-columns:116px minmax(0,1fr);align-items:end;width:min(560px,100vw - 28px);min-height:128px;display:grid;position:fixed;transform:translate(-50%)}.tutorial-overlay--dialog-top .tutorial-dialog{top:var(--tutorial-dialog-top,calc(18px + var(--safe-top)));align-items:start;bottom:auto}.tutorial-mascot{object-fit:contain;filter:drop-shadow(0 12px 18px #00000057);pointer-events:none;place-self:end;width:clamp(92px,18vw,132px);max-height:156px;margin-bottom:0;margin-right:-20px;transform:translate(-20px,10px)}.tutorial-bubble{isolation:isolate;background:var(--tutorial-bubble-fill);color:#16202a;border:3px solid #13181eeb;border-radius:28px;gap:12px;min-width:0;padding:18px 20px;display:grid;position:relative;box-shadow:0 18px 42px #00000057}.tutorial-bubble>*{z-index:2;position:relative}.tutorial-bubble:before{content:"";background:var(--tutorial-bubble-fill);z-index:0;border-bottom:3px solid #13181eeb;border-left:3px solid #13181eeb;width:30px;height:30px;position:absolute;bottom:31px;left:-18px;transform:rotate(45deg)}.tutorial-bubble:after{content:"";background:var(--tutorial-bubble-fill);z-index:1;width:20px;height:46px;position:absolute;bottom:24px;left:0}.tutorial-copy{color:#16202a;margin:0;font-size:clamp(15px,2.3vw,18px);font-weight:800;line-height:1.42}.tutorial-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tutorial-button{color:#fff;cursor:pointer;background:#1d5d8f;border:0;border-radius:999px;min-height:42px;padding:10px 16px;font-weight:900;box-shadow:0 10px 20px #1d5d8f3d}.tutorial-button--secondary{color:#16202a;box-shadow:none;background:#ffffffb8;border:2px solid #13181e3d}.tutorial-button:hover,.tutorial-button:focus-visible{outline-offset:2px;outline:3px solid #f7dd728c;transform:translateY(-1px)}.tutorial-button.hidden{display:none}.info-dialog{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10012;background:#16324f2e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.info-dialog-card{width:min(560px,100vw - 28px)}.info-dialog-bubble{background:linear-gradient(180deg, #f5edd6d1, #efe3c1d1), var(--paper);color:#16202a;border:3px solid #13181eeb;border-radius:28px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:20px 20px 18px;display:grid;box-shadow:0 18px 42px #00000057}.info-dialog-copy{gap:14px;min-width:0;display:grid}.info-dialog-title{color:#0f4e7b;font-family:var(--font-handwritten);margin:0;font-size:clamp(24px,4vw,32px);line-height:1.04}.info-dialog-message{color:#16202a;margin:0;font-size:clamp(15px,2.4vw,17px);font-weight:800;line-height:1.45}.info-dialog-actions{flex-wrap:wrap;gap:10px;display:flex}.info-dialog-confirm{color:#fff;cursor:pointer;background:#1d5d8f;border:0;border-radius:999px;min-height:42px;padding:10px 16px;font-weight:900;box-shadow:0 10px 20px #1d5d8f3d}.info-dialog-confirm:hover,.info-dialog-confirm:focus-visible{outline-offset:2px;outline:3px solid #f7dd728c;transform:translateY(-1px)}.info-dialog-mascot{object-fit:contain;filter:drop-shadow(0 12px 18px #00000057);pointer-events:none;place-self:end;width:clamp(86px,15vw,122px);max-height:136px;margin-right:2px}.achievement-overlay{z-index:7;padding:calc(var(--board-stage-pad) + 12px);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.achievement-overlay.hidden{display:none}.achievement-overlay-card{--achievement-accent:#1d5d8f;--achievement-accent-soft:#1d5d8f29;background:linear-gradient(180deg, #ffffffa3, #ffffff2e), repeating-linear-gradient(180deg, transparent 0 24px, #5991ce24 24px 25px), var(--paper);width:min(360px,100% - 20px);min-height:92px;color:var(--text);border:1px solid #41618433;border-radius:8px;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;animation:.26s both achievementOverlayIn;display:grid;box-shadow:0 16px 34px #5b49273d}.achievement-overlay-card--points{--achievement-accent:#d48a2f;--achievement-accent-soft:#d48a2f2e}.achievement-overlay-card--matches{--achievement-accent:#1d5d8f;--achievement-accent-soft:#1d5d8f29}.achievement-overlay-card--level{--achievement-accent:#3b7f4c;--achievement-accent-soft:#3b7f4c29}.achievement-overlay-card--length{--achievement-accent:#8a5a9e;--achievement-accent-soft:#8a5a9e29}.achievement-overlay-card--time{--achievement-accent:#b84e66;--achievement-accent-soft:#b84e6629}.achievement-overlay-card--out{animation:.22s both achievementOverlayOut}.achievement-overlay-card__badge{width:64px;height:64px}.achievement-overlay-card .achievement-badge__svg{width:100%;height:100%;display:block}.achievement-overlay-card .achievement-badge__ring{fill:none;stroke:var(--achievement-accent);stroke-width:3px}.achievement-overlay-card .achievement-badge__disc{fill:var(--achievement-accent-soft)}.achievement-overlay-card .achievement-badge__stroke,.achievement-overlay-card .achievement-badge__fill{color:var(--achievement-accent)}.achievement-overlay-card .achievement-badge__stroke{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.achievement-overlay-card .achievement-badge__fill{fill:currentColor}.achievement-overlay-card .achievement-badge__label{fill:var(--achievement-accent);text-anchor:middle;font-size:10px;font-weight:800}.achievement-overlay-card__copy{gap:2px;min-width:0;display:grid}.achievement-overlay-card__title{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.achievement-overlay-card__name{color:var(--text);overflow-wrap:anywhere;font-size:clamp(18px,2.6vw,24px);line-height:1.05}.level-transition-overlay{z-index:8;padding:calc(var(--board-stage-pad) + 12px);pointer-events:auto;place-items:center;display:grid;position:absolute;inset:0}.level-transition-overlay.hidden{display:none}.level-transition-overlay--versus{z-index:24;padding:18px}.level-transition-card{background:linear-gradient(180deg, #ffffff9e, #ffffff29), repeating-linear-gradient(180deg, transparent 0 24px, #5991ce1f 24px 25px), var(--paper);width:min(420px,100% - 20px);color:var(--text);text-align:center;pointer-events:auto;border:1px solid #4161842e;border-radius:16px;gap:12px;padding:16px 18px;animation:.22s both achievementOverlayIn;display:grid;box-shadow:0 18px 36px #5b482938}.level-transition-card__title{color:var(--accent);font-size:clamp(24px,3vw,32px);font-weight:900;line-height:1}.level-transition-card__subtitle{color:var(--accent-2);font-size:clamp(16px,2.4vw,21px);font-weight:800;line-height:1.1}.level-transition-card__sections{gap:10px;display:grid}.level-transition-card__section{background:#ffffff57;border-radius:14px;justify-items:center;gap:8px;padding:10px 12px;display:grid}.level-transition-card__section-title{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.level-transition-card__previews{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.level-transition-card__preview{place-items:center;display:grid}.level-transition-card__preview-canvas{width:60px;height:60px;display:block}.level-transition-card__actions{justify-content:center;display:flex}.level-transition-card__confirm{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;min-height:42px;padding:10px 18px;font-size:14px;font-weight:900;box-shadow:0 10px 20px #1d5d8f3d}.level-transition-card__confirm:hover,.level-transition-card__confirm:focus-visible{outline-offset:2px;outline:3px solid #f7dd728c;transform:translateY(-1px)}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:9999;background:#00000094;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.overlay.hidden,.pause-view.hidden,.help-modal.hidden,.pause-help-subview.hidden,.pause-help-section-menu.hidden{display:none}.overlay-card{text-align:center;color:#fff;background:#111;border:1px solid #ffffff1a;border-radius:18px;width:min(90vw,680px);padding:2.5rem 2rem;box-shadow:0 20px 60px #00000073}.overlay-card--gameover{grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:14px;max-height:min(100dvh - 32px,100%);display:grid;overflow:hidden}.overlay-card h1{letter-spacing:.08em;text-shadow:0 6px 18px #0009;margin:0 0 .25em;font-size:clamp(2.2rem,4.5vw,4rem)}.overlay-card p{opacity:.92;margin:0}.pause-shell{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;text-align:center;color:#fff;background:#111;border:1px solid #ffffff1a;border-radius:18px;width:min(88vw,560px);max-height:min(100dvh - 32px,100%);padding:24px 28px;overflow-y:auto;box-shadow:0 20px 60px #00000073}.pause-shell::-webkit-scrollbar{width:8px}.pause-shell::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}.pause-menu-title{letter-spacing:.08em;color:var(--accent);text-shadow:0 0 22px #a8dadc3d;margin:0 0 22px;font-size:clamp(2.7rem,7vw,4.3rem);font-weight:900}.pause-section-title{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin:0 0 18px;font-size:1.15rem;font-weight:700}.pause-menu-actions{justify-items:center;gap:16px;display:grid}.pause-menu-link{color:var(--text);letter-spacing:.03em;cursor:pointer;background:0 0;border:0;padding:0;font-size:clamp(1.35rem,4vw,2rem);font-weight:800;transition:transform .14s,color .14s,text-shadow .14s;display:inline-block}.pause-menu-link:hover,.pause-menu-link:focus-visible,.pause-menu-link.is-selected{color:var(--accent);text-shadow:0 0 14px #a8dadc40;outline:none;transform:scale(1.06)}.pause-menu-link--back{margin-top:22px}.pause-settings{text-align:left;gap:12px;width:min(100%,360px);margin:0 auto;display:grid}.pause-options-view{gap:0;display:grid}.pause-options-layout{gap:12px;width:min(100%,420px);margin:0 auto;display:grid}.pause-options-panel,.pause-options-footer{background:#ffffff0a;border-radius:16px;gap:12px;padding:14px;display:grid}.pause-options-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;width:100%;max-height:clamp(160px,44dvh,360px);margin:0;padding-right:8px;overflow-y:auto}.pause-options-scroll::-webkit-scrollbar{width:8px}.pause-options-scroll::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}.pause-options-footer{justify-items:center}.pause-options-footer .pause-menu-link--back{margin-top:0}.pause-setting{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.pause-setting strong{color:var(--accent)}@keyframes achievementOverlayIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes achievementOverlayOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.98)}}@media (width<=720px){.tutorial-dialog{width:min(94vw,480px);bottom:calc(12px + var(--safe-bottom));grid-template-columns:82px minmax(0,1fr)}.tutorial-overlay--dialog-top .tutorial-dialog{top:var(--tutorial-dialog-top,calc(10px + var(--safe-top)))}.tutorial-mascot{width:92px;margin-right:-16px;transform:translate(-20px,16px)}.tutorial-bubble{border-radius:22px;gap:10px;padding:14px 15px}.tutorial-bubble:before{width:24px;height:24px;bottom:24px;left:-14px}.tutorial-bubble:after{width:16px;height:40px;bottom:18px}.tutorial-copy{font-size:14px;line-height:1.36}.tutorial-actions{gap:8px}.tutorial-button{min-height:38px;padding:9px 13px}.info-dialog-card{width:min(94vw,480px)}.info-dialog-bubble{border-radius:22px;grid-template-columns:minmax(0,1fr) 78px;gap:10px;padding:14px 15px 12px}.info-dialog-copy{gap:10px}.info-dialog-title{font-size:24px}.info-dialog-message{font-size:14px;line-height:1.38}.info-dialog-confirm{min-height:38px;padding:9px 13px}.info-dialog-mascot{width:78px;max-height:102px}.achievement-overlay{padding-top:calc(var(--board-stage-pad) + 18px);align-items:start}.achievement-overlay-card{grid-template-columns:58px minmax(0,1fr);min-height:82px;padding:10px 12px}.achievement-overlay-card__badge{width:56px;height:56px}.achievement-overlay-card__title{font-size:11px}.level-transition-card{gap:10px;padding:14px 15px}.level-transition-card__section{padding:9px 10px}.level-transition-card__preview-canvas{width:52px;height:52px}}@media (prefers-reduced-motion:reduce){.achievement-overlay-card,.achievement-overlay-card--out{animation:none}}.pause-slider{width:100%;accent-color:var(--accent-2);margin-bottom:10px}.pause-help-copy{text-align:left;gap:12px;width:min(100%,420px);margin:0 auto;display:grid}.pause-help-copy p{color:var(--muted);line-height:1.55}.pause-help-copy strong{color:var(--accent-2)}.pause-help-layout{gap:18px;width:min(100%,460px);margin:0 auto;display:grid}.pause-help-section-menu,.pause-help-subview{background:#ffffff0a;border-radius:16px;gap:12px;padding:14px;display:grid}.pause-help-entry-grid{gap:12px;display:grid}.pause-help-entry{color:var(--text);text-align:left;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:16px;gap:8px;padding:14px 16px;transition:transform .14s,border-color .14s,background .14s;display:grid}.pause-help-entry:hover,.pause-help-entry:focus-visible{background:#a8dadc1a;border-color:#a8dadc6b;outline:none;transform:translateY(-1px)}.pause-help-entry-title{color:var(--accent);font-size:1rem;font-weight:800}.pause-help-entry-copy{color:var(--muted);line-height:1.45}.pause-help-controls-body{gap:12px;display:grid}.pause-help-section-title{color:var(--accent-2);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px}.pause-help-section-copy{color:var(--muted);margin:0;line-height:1.55}.pause-help-controls-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pause-help-control-button,.help-modal-close{color:var(--text);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;font-weight:800;transition:transform .14s,border-color .14s,background .14s}.pause-help-control-button{min-height:54px;padding:12px 14px}.pause-help-control-button:hover,.pause-help-control-button:focus-visible,.help-modal-close:hover,.help-modal-close:focus-visible{background:#a8dadc1f;border-color:#a8dadc6b;outline:none;transform:translateY(-1px)}.help-modal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10010;background:#4a391e3d;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.help-modal-card{background:linear-gradient(180deg, #ffffff94, #ffffff29), repeating-linear-gradient(180deg, transparent 0 26px, #5991ce1f 26px 27px), var(--paper);width:min(94vw,920px);max-height:min(100dvh - 32px,100%);color:var(--text);overscroll-behavior:contain;border:1px solid #41618429;border-radius:18px;gap:18px;padding:20px;display:grid;position:relative;overflow:auto;box-shadow:0 18px 36px #5b482933}.help-modal-card:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#1b4e766b,#0000);height:2px;position:absolute;bottom:12px;left:14px;right:14px}.help-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.help-modal-copy{text-align:left;gap:6px;display:grid}.help-modal-body{grid-template-columns:minmax(0,1.55fr) minmax(240px,.95fr);align-items:start;gap:16px;display:grid}.help-modal-title{color:var(--accent);font-family:var(--font-handwritten);text-shadow:1px 2px #ffffff80;margin:0;font-size:1.1rem;font-weight:800}.help-modal-description{color:var(--ink-soft);margin:0;line-height:1.45}.help-modal-close{color:var(--accent);text-shadow:1px 1px #ffffff6b;background:linear-gradient(180deg, #ffffffe6, #faf3ddb3), var(--paper);border:1px solid #4062842e;padding:10px 14px;box-shadow:0 8px 18px #75603f24}.help-modal-close:hover,.help-modal-close:focus-visible{background:linear-gradient(180deg, #fff8dcf5, #f7dd7266), var(--paper);color:#0f4e7b;border-color:#d48a2f61}.help-modal-figure{background:linear-gradient(180deg, #ffffff8a, #ffffff24), repeating-linear-gradient(180deg, transparent 0 24px, #5991ce24 24px 25px), var(--paper-strong);border:1px solid #41618424;border-radius:16px;place-items:center;min-height:min(280px,48vh);padding:14px;display:grid;overflow:auto;box-shadow:inset 0 0 0 1px #5a80ad14}.help-modal-legend{align-content:start;gap:10px;display:grid}.help-modal-legend-item{background:linear-gradient(180deg, #ffffff9e, #ffffff2e), var(--paper);text-align:left;border:1px solid #41618424;border-radius:14px;gap:4px;padding:12px 14px;display:grid;box-shadow:0 6px 14px #75603f1a}.help-modal-legend-title{color:var(--accent-2);margin:0;font-size:.98rem;font-weight:800}.help-modal-legend-copy{color:var(--ink-soft);margin:0;line-height:1.4}.help-figure{width:100%;height:auto;overflow:visible}.help-figure__device{fill:#5a4f4024;stroke:#5a4f4061;stroke-width:2px}.help-figure__screen{fill:#f5edd6c2;stroke:#4161842e;stroke-width:1.5px}.help-figure__key{fill:#ffffff57;stroke:#5a4f402e;stroke-width:1.5px}.help-figure__key--muted{fill:#ffffff2e}.help-figure__key--accent,.help-figure__accent,.help-figure__target{fill:#f7dd729e;stroke:#d48a2feb;stroke-width:2px}.help-figure__accent-secondary{fill:#5991ce38;stroke:#1d5d8fc2;stroke-width:2px}.help-figure__ui-button{stroke-width:2px}.help-figure__ui-button--pause{fill:#a8dadc3d;stroke:#a8dadce6}.help-figure__ui-button--drop{fill:#f6bd6047;stroke:#f6bd60e6}.help-figure__line{fill:none;stroke-linecap:round}.help-figure__line--device{stroke:#5a4f4042;stroke-width:2px}.help-figure__line--motion{stroke:#1d5d8f9e;stroke-width:3px;stroke-dasharray:6 6}.help-figure__line--callout{stroke:#d48a2fd6;stroke-width:2px}.help-figure__arrow-head,.help-figure__anchor{fill:#d48a2fe0}.help-figure__label,.help-figure__button-text,.help-figure__key-text{fill:var(--text);text-anchor:middle;font-family:Aritmetris Notebook,cursive}.help-figure__label{font-size:11px;font-weight:700}.help-figure__button-text,.help-figure__key-text{font-size:10px;font-weight:800}.pause-setting--toggle{padding:4px 0}.pause-setting--toggle input{width:18px;height:18px}.pause-setting--stack{flex-direction:column;align-items:flex-start}.pause-select{width:100%;color:var(--text);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;padding:10px 12px}.gameover-summary{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;border-top:1px solid #ffffff14;min-height:0;padding-top:18px;padding-right:8px;overflow-y:auto}.gameover-summary-grid{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;display:grid}.gameover-row{background:#ffffff08;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.gameover-row span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.gameover-row strong{color:var(--accent);font-size:16px}.gameover-records{color:#ffd18b;background:#f6bd601f;border-radius:12px;margin-top:14px;padding:10px 12px;font-weight:700}.gameover-actions{border-top:1px solid #ffffff14;flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:12px;padding-top:14px;display:flex}.gameover-share-status{width:min(100%,460px);color:var(--ink-soft);background:#ffffff6b;border-radius:999px;justify-self:center;padding:8px 12px;font-weight:800;line-height:1.35}.gameover-share-status[data-tone=success]{color:#2f6b1e;background:#c9e9b7b8}.gameover-share-status[data-tone=warning]{color:#93581d;background:#fce0adc7}.gameover-share-status[data-tone=error]{color:#9b2f2c;background:#fcc4bec7}.gameover-summary::-webkit-scrollbar{width:8px}.gameover-summary::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}.gameover-button{background:var(--accent);color:#101010;box-shadow:var(--shadow);border-radius:14px;padding:12px 18px;font-weight:800;transition:transform .14s,box-shadow .18s,opacity .18s}.gameover-button:hover,.gameover-button:focus-visible,.gameover-button.is-selected{outline:none;transform:translateY(-1px)}.gameover-button--secondary.is-selected{background:#ffffff24}.share-overlay{z-index:10020;overflow:auto}.share-dialog{width:min(96vw,980px);max-height:min(100dvh - 32px,100%);color:var(--text);background:linear-gradient(180deg, #ffffff94, #ffffff29), repeating-linear-gradient(180deg, transparent 0 27px, #5991ce1f 27px 28px), var(--paper);overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;border:1px solid #41618429;border-radius:18px;gap:18px;padding:20px;display:grid;position:relative;overflow:auto;box-shadow:0 24px 58px #4a391e47}.share-dialog:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#1b4e766b,#0000);height:2px;position:absolute;bottom:14px;left:18px;right:18px}.share-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.share-dialog-title-block{text-align:left;gap:4px;min-width:0;display:grid}.share-dialog-kicker,.share-dialog-desc,.share-text-label,.share-network-title{margin:0}.share-dialog-kicker{color:var(--accent-2);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800}.share-dialog-title{color:var(--accent);text-shadow:1px 2px #ffffff8a;margin:0;font-size:clamp(2rem,5vw,3.2rem);font-weight:900;line-height:1.02}.share-dialog-desc{color:var(--ink-soft);line-height:1.45}.share-gameover-summary{background:linear-gradient(180deg, #ffffff85, #ffffff29), var(--paper);border:1px solid #41618429;border-radius:16px;gap:12px;padding:14px 16px;display:grid;box-shadow:inset 0 0 0 1px #5a80ad0f}.share-gameover-reason,.share-gameover-records{margin:0}.share-gameover-reason{color:var(--text);text-align:left;font-weight:700;line-height:1.45}.share-gameover-grid{gap:10px;display:grid}.share-gameover-row{background:#ffffff57;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.share-gameover-row span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.share-gameover-row strong{color:var(--accent);font-size:16px}.share-gameover-records{color:#9a5d16;text-align:left;background:#f6bd601f;border-radius:12px;padding:10px 12px;font-weight:800;line-height:1.35}.share-dialog-close{width:42px;height:42px;color:var(--accent);background:linear-gradient(180deg, #ffffffe0, #faf3ddad), var(--paper);cursor:pointer;border:1px solid #4062842e;border-radius:12px;flex:none;place-items:center;font-weight:900;display:grid;box-shadow:0 8px 18px #75603f24}.share-dialog-body{grid-template-columns:minmax(260px,.95fr) minmax(320px,1fr);align-items:start;gap:18px;min-height:0;display:grid}.share-preview-frame{aspect-ratio:1;background:linear-gradient(180deg, #ffffff7a, #ffffff24), var(--paper-strong);border:1px solid #41618424;border-radius:16px;place-items:center;width:100%;margin:0;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #5a80ad14}.share-preview-image{object-fit:contain;border-radius:12px;width:100%;height:100%;display:block}.share-compose-panel{gap:12px;min-width:0;display:grid}.share-text-label,.share-network-title{color:var(--accent-2);letter-spacing:.1em;text-align:left;text-transform:uppercase;font-size:12px;font-weight:800}.share-text-box{resize:vertical;width:100%;min-height:118px;color:var(--text);background:#ffffff75;border:1px solid #4161842e;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45;box-shadow:inset 0 0 0 1px #5a80ad0f}.share-primary-actions,.share-network-grid{gap:10px;display:grid}.share-primary-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.share-network-section{gap:10px;display:grid}.share-network-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.share-action-button,.share-social-button{min-width:0;min-height:48px;color:var(--text);text-align:left;cursor:pointer;background:#ffffff70;border:1px solid #41618429;border-radius:12px;grid-template-columns:34px minmax(0,1fr);justify-content:start;align-items:center;gap:8px;padding:10px 12px;font-weight:800;line-height:1.1;transition:transform .14s,border-color .14s,background .14s;display:grid;box-shadow:0 8px 16px #75603f1a}.share-action-button:hover,.share-action-button:focus-visible,.share-social-button:hover,.share-social-button:focus-visible,.share-dialog-close:hover,.share-dialog-close:focus-visible{background:#fff8dcb8;border-color:#d48a2f6b;outline:none;transform:translateY(-1px)}.share-action-button:disabled,.share-social-button:disabled{cursor:default;opacity:.56;transform:none}.share-action-button--native{color:#0f4e7b;background:#a8dadc3d}.share-action-icon,.share-social-icon{color:#fff;background:var(--accent);border-radius:10px;flex:none;place-items:center;font-size:11px;font-weight:900;line-height:1;display:grid}.share-action-icon{width:34px;height:28px}.share-social-icon{width:34px;height:34px}.share-social-icon img{object-fit:contain;width:28px;height:28px;display:block}.share-social-button--instagram .share-social-icon img,.share-social-button--whatsapp .share-social-icon img{width:30px;height:30px}.share-social-button--bluesky .share-social-icon img{width:31px;height:28px}.share-social-button--x .share-social-icon img{width:23px;height:23px}.share-social-button--whatsapp .share-social-icon{background:#fffc}.share-social-button--telegram .share-social-icon{background:0 0}.share-social-button--x .share-social-icon{background:#fffc}.share-social-button--instagram .share-social-icon{background:0 0}.share-social-button--facebook .share-social-icon,.share-social-button--bluesky .share-social-icon,.share-social-button--mastodon .share-social-icon,.share-social-button--reddit .share-social-icon{background:#ffffffd1}.share-dialog-status{width:100%;color:var(--ink-soft);text-align:left;background:#ffffff8a;border-radius:12px;justify-self:start;margin:0;padding:9px 12px;font-weight:800;line-height:1.35}.share-dialog-status[data-tone=success]{color:#2f6b1e;background:#c9e9b7b8}.share-dialog-status[data-tone=warning]{color:#93581d;background:#fce0adc7}.share-dialog-status[data-tone=error]{color:#9b2f2c;background:#fcc4bec7}.share-dialog-status[data-tone=muted]{color:var(--ink-soft)}.share-gameover-actions{background:linear-gradient(#f7f2e200,#f7f2e2e6 20%,#f7f2e2f5),0 0;border-top:1px solid #4161841f;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:16px;padding-bottom:2px;display:grid;position:sticky;bottom:0}.share-gameover-actions .gameover-button{width:100%}.share-dialog::-webkit-scrollbar{width:8px}.share-dialog::-webkit-scrollbar-thumb{background:#5991ce47;border-radius:999px}@media (width<=780px){.share-dialog{width:min(94vw,560px);padding:16px}.share-dialog-body{grid-template-columns:1fr}.share-preview-frame{justify-self:center;max-width:min(100%,360px)}.share-primary-actions{grid-template-columns:1fr}.share-gameover-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.share-gameover-actions [data-share-gameover-native]{grid-column:1/-1}}.pause-help-powerups{background:#ffffff0a;border-radius:14px;gap:12px;padding:12px;display:grid}.pause-help-powerups h3{color:var(--accent-2);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px}.pause-help-tip{background:#a8dadc14;border-radius:14px;padding:12px}.pause-stats-panel{text-align:left;gap:16px;width:min(100%,420px);margin:0 auto;display:grid}.pause-stats-subtitle{color:var(--muted);margin:0}.pause-stats-subtitle strong{color:var(--accent)}.pause-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,460px);margin:0 auto;display:grid}.pause-stats-grid--menu{width:min(100%,460px)}.pause-stats-card{text-align:left;background:#ffffff0a;border-radius:14px;gap:8px;padding:14px;display:grid}.pause-stats-card span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:12px}.pause-stats-card strong{color:var(--accent);font-size:clamp(1.5rem,5vw,2.1rem)}.pause-stats-card--mode{gap:10px}.pause-stats-card--mode h3{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1rem}.pause-stats-row{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.pause-stats-row:first-of-type{border-top:0;padding-top:0}.pause-stats-row span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.pause-stats-row strong{color:var(--accent);font-size:1.1rem}.pause-help-copy{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:clamp(220px,42dvh,420px);padding-right:8px;overflow-y:auto}.pause-help-copy::-webkit-scrollbar{width:8px}.pause-help-copy::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}@media (height<=640px){.pause-options-view .pause-menu-title,.pause-options-view .pause-section-title{margin-bottom:14px}.pause-options-scroll{max-height:clamp(144px,40dvh,300px)}}@font-face{font-family:Aritmetris Notebook;src:url(./ShantellSans-Regular-CS7rjTU9.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Aritmetris Notebook;src:url(./ShantellSans-Bold-CLHrU03b.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Aritmetris Notebook;src:url(./ShantellSans-ExtraBold--_-vEoZ8.ttf)format("truetype");font-style:normal;font-weight:800;font-display:swap}:root{--paper:#f5edd6;--paper-strong:#efe3c1;--paper-shadow:#785a262e;--ink:#16324f;--ink-soft:#4d6580;--line-blue:#5991ce57;--line-blue-strong:#5991ce94;--margin-red:#cd4848ad;--marker-yellow:#f7dd72;--marker-pink:#f3adbf;--marker-green:#badb8f;--panel:var(--paper);--panel-2:var(--paper-strong);--text:var(--ink);--muted:var(--ink-soft);--accent:#1d5d8f;--accent-2:#d48a2f;--shadow:0 12px 28px #5b492729;--radius:18px;--font-handwritten:"Aritmetris Notebook", cursive}body{color:var(--text);font:15px/1.45 var(--font-handwritten);background:radial-gradient(circle at top,#fffbefeb,#f5ecd6c7 36%,#0000 70%),linear-gradient(#dfd1ad 0%,#cfbe95 100%)}button,input,select,textarea{font-family:var(--font-handwritten)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flashVal{0%{opacity:.6;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes targetPulse{0%{opacity:.7;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.panel,.secondary-card,.pause-shell,.overlay-card,.onboarding-overlay,.board-feedback-popup,.hud-feedback,.hud-record-notice,.pause-help-powerups,.pause-help-tip,.gameover-row,.game-primary-card,.next-piece-frame,.pause-stats-card,.gameover-records{background:linear-gradient(180deg, #ffffff85, #ffffff24), repeating-linear-gradient(180deg, transparent 0 26px, #5991ce1f 26px 27px), var(--paper);color:var(--text);border:1px solid #41618429;box-shadow:0 10px 24px #7a613624}.panel,.pause-shell,.overlay-card{position:relative}.panel:after,.pause-shell:after,.overlay-card:after,.onboarding-overlay:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#1b4e766b,#0000);height:2px;position:absolute;bottom:12px;left:14px;right:14px}.game-root{background:radial-gradient(circle at 15% 15%,#ffffff6b,#0000 26%),linear-gradient(#f7efd6eb,#e9dbb7eb)}.game-brand,.pause-menu-title,.overlay-card h1{color:var(--accent);font-family:var(--font-handwritten);letter-spacing:.02em;text-shadow:1px 2px #ffffff80;font-weight:800}.game-primary-label,.game-primary-progress-level,.pause-section-title,.pause-stats-card span,.pause-stats-row span,.gameover-row span,.game-primary-next-hint{color:var(--ink-soft);letter-spacing:.08em}.progress-track{background:#31587f1f;box-shadow:inset 0 0 0 1px #31587f1a}.progress-fill{background:linear-gradient(90deg,#e17f57,#f1c75f 55%,#88bf84)}.game-primary-card--target{background:radial-gradient(circle at 25% 18%, #ffeb8a8f, transparent 38%), linear-gradient(180deg, #ffffff9e, #ffffff1f), var(--paper)}.game-primary-value,.pause-stats-card strong,.gameover-row strong,.example strong,.pause-setting strong{color:var(--accent)}.game-primary-value--points,#ui-target,#ui-points,#pause-stats-best-level,#menu-stats-classic-level,#menu-stats-sprint-level,#go-level{text-shadow:1px 1px #ffffff80}.status-line,.pause-help-tip{color:var(--accent);background:#fff6d3b8;border:1px dashed #1d5d8f38}.status-line[data-tone=success]{color:#2f6b1e;background:#c9e9b7c7}.status-line[data-tone=warning]{color:#93581d;background:#fce0add1}.board-stage{background:radial-gradient(circle at top,#fffc,#fff0 36%),linear-gradient(#765b331a,#765b330a);box-shadow:0 24px 46px #5b48292e}.board-shell{background:linear-gradient(180deg, #ffffffc7, #ffffff2e), repeating-linear-gradient(180deg, transparent 0 24px, #5991ce29 24px 25px), var(--paper);border-radius:24px;box-shadow:0 18px 28px #745c3538}.board-shell:before,.board-shell:after,.board-shell:before{display:none}.board-shell:after{background:linear-gradient(#cd484829,#cd48488c,#cd484829);width:2px;top:10px;bottom:10px;left:24px}#game-canvas{border-radius:calc(var(--radius) + 2px);background:0 0;box-shadow:inset 0 0 0 1px #5a80ad2e}.board-feedback-popup{border:1px solid #4062842e;border-radius:16px 18px 15px 19px;box-shadow:0 8px 18px #75603f2e}.board-feedback-popup__label,.board-feedback-popup__detail{text-transform:none;letter-spacing:.02em}.board-feedback-popup--points .board-feedback-popup__label{color:#1a567f}.board-feedback-popup--points.board-feedback-popup--bonus .board-feedback-popup__label{color:#9a5b11}.board-feedback-popup--combo{background:linear-gradient(180deg, #fff1c3d9, #ffe4a2b3), var(--paper);border-color:#c182213d}.board-feedback-popup--combo .board-feedback-popup__label{color:#8e5414}.board-feedback-popup--combo .board-feedback-popup__detail{color:#6b4d27}.hud-feedback--points,.hud-feedback--combo,.hud-feedback--level,.hud-record-notice{border-style:dashed;border-width:1px}.hud-feedback--points{color:#1d5d8f;border-color:#1d5d8f38}.hud-feedback--combo{color:#8f5312;border-color:#af781c47}.hud-feedback--level,.hud-record-notice{color:#325f1d;border-color:#3f6f2242}.game-secondary-button,.game-pause-button,.game-secondary-close,.onboarding-button,.gameover-button,.pause-menu-link,.game-hard-drop-button{color:var(--accent)}.game-pause-button{padding:0}.game-hard-drop-button{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);opacity:.76;background:linear-gradient(#ffffffbd,#f7efd657),#f5edd694;border:1px solid #40628429;box-shadow:0 8px 18px #75603f24}.game-hard-drop-button__icon{text-shadow:1px 1px #ffffff6b;font-size:19px;font-weight:800;line-height:1;display:inline-block;transform:rotate(-6deg)}.game-hard-drop-button:hover,.game-hard-drop-button:focus-visible{opacity:1;outline:none}.game-pause-button__icon{width:12px;height:16px;display:inline-block;position:relative}.game-pause-button__icon:before,.game-pause-button__icon:after{content:"";background:currentColor;border-radius:999px;width:3px;position:absolute;top:0;bottom:0;box-shadow:0 0 0 1px #ffffff2e}.game-pause-button__icon:before{left:1px}.game-pause-button__icon:after{right:1px}.game-secondary-button,.game-pause-button,.game-secondary-close,.onboarding-button,.gameover-button{background:linear-gradient(180deg, #ffffffe6, #faf3ddb3), var(--paper);border:1px solid #4062842e}.pause-menu-link{position:relative}.pause-menu-link:after{content:"";transform-origin:0;z-index:-1;background:#f7dd7285;height:.2em;transition:transform .14s;position:absolute;bottom:-.12em;left:-.08em;right:-.08em;transform:scaleX(0)}.pause-menu-link:hover:after,.pause-menu-link:focus-visible:after,.pause-menu-link.is-selected:after{transform:scaleX(1)}.pause-menu-link:hover,.pause-menu-link:focus-visible,.pause-menu-link.is-selected,.gameover-button:hover,.gameover-button:focus-visible,.gameover-button.is-selected{color:#0f4e7b;text-shadow:none}.pause-menu-link:disabled,.pause-menu-link[aria-disabled=true]{color:var(--muted);cursor:default;opacity:.55;text-shadow:none;transform:none}.pause-menu-link:disabled:after,.pause-menu-link[aria-disabled=true]:after{transform:scaleX(0)}.pause-slider{accent-color:#d4902c}.pause-select{color:var(--ink);background:#ffffff8a;border-color:#41618429}.next-piece-frame,.next-piece-frame--hud{background:linear-gradient(180deg, #ffffffa6, #ffffff29), var(--paper)}.overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#4a391e3d}.onboarding-copy strong,.pause-help-powerups h3,.secondary-card h3,.secondary-card h2{color:#9f5f17}.powerup-item,.powerup-item span,.pause-help-copy p,.game-footer-copy,.pause-stats-subtitle,.panel p,.secondary-card p,.example span,.foot{color:var(--ink-soft)}.gameover-button{color:#0f4e7b}.gameover-button--secondary{color:var(--ink);background:#ffffff80}.view-family-mobile .game-brand{display:none}.view-family-mobile .game-primary-hud{padding:10px}.view-family-mobile .game-primary-head{margin-bottom:8px}.view-family-mobile .game-primary-grid{gap:8px}.view-family-mobile .game-primary-card{padding:9px 10px}.view-family-mobile .game-primary-value{font-size:26px}.view-family-mobile .game-footer-copy,.view-family-mobile .game-secondary-rail,.view-family-mobile .game-secondary-button{display:none!important}.view-family-tablet .game-brand{font-size:24px}.view-family-tablet .game-footer-copy{display:none}.view-family-tablet .board-overlay--feedback,.view-family-mobile .board-overlay--feedback{align-content:start;justify-items:center}.game-root.is-tight .game-primary-grid{gap:8px}.game-root.is-tight .game-primary-card{padding:8px 10px}.game-root.is-tight .board-shell{padding:var(--board-shell-pad)}@media (width<=720px){.overlay{padding:10px}.gameover-summary-grid{grid-template-columns:1fr}.pause-shell,.overlay-card{width:min(94vw,420px);padding:16px 14px}}@media (width<=900px){.help-modal-body{grid-template-columns:1fr}.help-modal-figure{min-height:min(240px,42vh)}.help-modal-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}.view-family-desktop .game-frame{width:min(1180px,100%)}.view-family-desktop .game-primary-hud,.view-family-tablet .game-primary-hud,.view-family-mobile .game-primary-hud{width:100%}@media (width<=720px){.pause-stats-grid,.pause-stats-grid--menu,#main-menu .menu-stats-kpi-grid,#main-menu .menu-achievements-grid,.pause-help-controls-grid{grid-template-columns:1fr}.pause-help-entry{padding:12px 14px}.help-modal-card{padding:14px}.help-modal-head{display:grid}.help-modal-close{justify-self:stretch;width:100%}.help-modal-legend{grid-template-columns:1fr}.help-modal{padding:10px}#main-menu .achievement-card{grid-template-columns:76px minmax(0,1fr);min-height:100px}#main-menu .achievement-badge{width:76px;height:76px}}.board-overlay--feedback,.view-family-tablet .board-overlay--feedback,.view-family-mobile .board-overlay--feedback{align-content:start;justify-items:start}.hud-feedback,.hud-record-notice{justify-self:start}.game-root.view-family-mobile{--hard-drop-button-reserve:16px;padding-top:calc(8px + var(--safe-top));padding-right:calc(8px + var(--safe-right));padding-bottom:calc(8px + var(--safe-bottom));padding-left:calc(8px + var(--safe-left))}.view-family-mobile .game-frame{gap:8px}.view-family-mobile .game-main,.view-family-mobile .game-stage{gap:6px}.view-family-mobile .game-primary-head{display:none}.view-family-mobile .game-primary-hud{gap:5px;padding:8px 9px}.view-family-mobile .game-primary-layout{grid-template-columns:minmax(70px,.8fr) minmax(96px,1.22fr) minmax(84px,.94fr);gap:6px}.view-family-mobile .game-primary-card--target,.view-family-mobile .game-primary-card--points,.view-family-mobile .game-primary-card--next{min-height:48px;padding:6px 7px}.view-family-mobile .game-primary-card--target{gap:2px}.view-family-mobile .game-target-value-row{gap:8px}.view-family-mobile .game-primary-card--target .game-primary-value{font-size:clamp(40px,9.2vw,50px)}.view-family-mobile .game-primary-target-preview-value{font-size:clamp(14px,3.8vw,18px)}.view-family-mobile .game-primary-value--points{font-size:clamp(15px,4.6vw,18px)}.view-family-mobile .game-primary-next-hint{display:none}.view-family-mobile .next-piece-frame--hud{min-height:28px;padding:1px 3px}.view-family-mobile #next-canvas{width:min(100%,82px)}.view-family-mobile .game-primary-progress{gap:6px}.view-family-mobile .game-primary-progress-level{font-size:9px}.view-family-mobile .game-primary-progress .progress-track{height:5px}.game-root.is-short{--hard-drop-button-reserve:14px;padding-top:calc(6px + var(--safe-top));padding-right:calc(6px + var(--safe-right));padding-bottom:calc(6px + var(--safe-bottom));padding-left:calc(6px + var(--safe-left))}.game-root.is-short .game-frame{gap:6px}.game-root.is-short .game-main,.game-root.is-short .game-stage{gap:5px}.game-root.is-short .game-primary-hud{gap:4px;padding:6px 7px}.game-root.is-short .game-primary-layout{grid-template-columns:minmax(68px,.8fr) minmax(90px,1.2fr) minmax(78px,.92fr);gap:5px}.game-root.is-short .game-primary-card--target,.game-root.is-short .game-primary-card--points,.game-root.is-short .game-primary-card--next{min-height:42px;padding:5px 6px}.game-root.is-short .game-primary-card--target .game-primary-value{font-size:clamp(34px,8.6vw,42px)}.game-root.is-short .game-target-value-row{gap:7px}.game-root.is-short .game-primary-target-preview-value{font-size:clamp(13px,3.3vw,16px)}.game-root.is-short .game-primary-label,.game-root.is-short .game-primary-progress-level{letter-spacing:.05em;font-size:8px}.game-root.is-short .game-primary-value--points{font-size:clamp(13px,4vw,16px)}.game-root.is-short .game-primary-next-hint{display:none}.game-root.is-short .next-piece-frame--hud{min-height:24px;padding:1px 2px}.game-root.is-short #next-canvas{width:min(100%,70px)}.game-root.is-short .game-primary-progress{gap:5px}.game-root.is-short .game-primary-progress .progress-track{height:4px}.game-root.is-short .game-footer-copy{display:none}.game-root.is-short:not(.secondary-placement-docked):not(.has-docked-secondary) .game-secondary-rail{top:calc(86px + var(--safe-top));max-height:calc(100vh - 98px - var(--safe-top) - var(--safe-bottom));max-height:calc(100dvh - 98px - var(--safe-top) - var(--safe-bottom))}.game-root.is-tight{--hard-drop-button-reserve:12px}.game-root.is-tight .game-primary-hud{padding:5px 6px}.game-root.is-tight .game-primary-layout{grid-template-columns:minmax(64px,.78fr) minmax(84px,1.14fr) minmax(72px,.9fr);gap:4px}.game-root.is-tight .game-primary-card--target,.game-root.is-tight .game-primary-card--points,.game-root.is-tight .game-primary-card--next{min-height:40px;padding:4px 5px}.game-root.is-tight .game-primary-card--target .game-primary-value{font-size:clamp(30px,8vw,38px)}.game-root.is-tight .game-target-value-row{gap:6px}.game-root.is-tight .game-primary-target-preview-value{font-size:clamp(12px,3vw,15px)}.game-root.is-tight .game-primary-value--points{font-size:clamp(12px,3.8vw,14px)}.game-root.is-tight .game-primary-label,.game-root.is-tight .game-primary-progress-level{font-size:8px}.game-root.is-tight .game-primary-next-hint{display:none}.game-root.is-tight .next-piece-frame--hud{min-height:22px;padding:0 2px}.game-root.is-tight #next-canvas{width:min(100%,64px)}.game-root.is-tight .game-primary-progress{gap:4px}.game-root.is-short .board-shell:before,.game-root.is-tight .board-shell:before,.view-family-mobile .board-shell:before{display:none}#main-menu .menu-wrap{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;align-self:stretch;place-items:center;width:100%;min-height:0;padding:12px 16px;display:grid;overflow-y:auto}#main-menu .menu-shell{width:min(88vw,560px);max-height:100%}#main-menu .pause-view{width:100%}#main-menu .pause-menu-title{line-height:1}#main-menu .foot{opacity:.9;color:var(--ink-soft);text-align:center;padding:12px 16px;font-size:.92rem}@media (width<=560px){#main-menu .menu-wrap{padding:10px}}.pause-menu-title--hero{white-space:nowrap;width:fit-content;max-width:10ch;margin:0 auto;animation:1.8s steps(10,end) both notebookTitleWrite;display:block;position:relative;overflow:hidden}.pause-menu-title--hero:after{content:none}.menu-hero-subtitle{text-align:center;letter-spacing:.04em;max-width:18ch;color:var(--ink-soft);margin:-10px auto 22px;font-size:clamp(1rem,3.1vw,1.2rem);font-weight:700}@media (orientation:landscape) and (height<=720px){#main-menu .menu-wrap{padding:clamp(6px,1.8dvh,12px) 16px}#main-menu .menu-shell{padding-block:clamp(12px,3.4dvh,24px);padding-inline:clamp(18px,3vw,28px)}#main-menu .pause-menu-title{margin-bottom:clamp(10px,2.8dvh,18px);font-size:clamp(2.15rem,min(6.2vw,10dvh),4.3rem)}#main-menu .pause-menu-title--hero{margin-bottom:0}#main-menu .menu-hero-subtitle{margin-top:clamp(-10px,-1.4dvh,-6px);margin-bottom:clamp(10px,2.8dvh,18px);font-size:clamp(.92rem,min(2.4vw,3.2dvh),1.12rem);line-height:1.12}#main-menu .pause-menu-actions{gap:clamp(7px,1.9dvh,14px)}#main-menu .pause-menu-link{font-size:clamp(1.1rem,min(3.1vw,4.6dvh),1.78rem);line-height:1.08}}@media (orientation:landscape) and (height<=560px){#main-menu .menu-shell{padding-block:clamp(10px,2.6dvh,16px)}#main-menu .pause-menu-title{margin-bottom:clamp(8px,2dvh,12px);font-size:clamp(1.9rem,min(5.2vw,9dvh),3.4rem)}#main-menu .menu-hero-subtitle{margin-bottom:clamp(8px,2dvh,12px);font-size:clamp(.86rem,min(2.1vw,3dvh),1rem)}#main-menu .pause-menu-actions{gap:clamp(5px,1.35dvh,9px)}#main-menu .pause-menu-link{font-size:clamp(1rem,min(2.65vw,4.2dvh),1.45rem)}}.foot--meta{opacity:.8;padding-top:0;font-size:.82rem}.foot--meta strong{color:var(--ink)}#main-menu .menu-achievements-layout{gap:12px;width:min(100%,520px);min-width:0;margin:0 auto;display:grid}#main-menu .menu-stats-layout{gap:12px;width:min(100%,520px);margin:0 auto;display:grid}#main-menu .menu-stats-panel,#main-menu .menu-achievements-panel{background:#ffffff0a;border-radius:16px;gap:12px;min-width:0;padding:14px;display:grid}#main-menu .menu-stats-scroll,#main-menu .menu-achievements-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-height:clamp(220px,46dvh,420px);margin:0;padding-right:8px;overflow:hidden auto}#main-menu .menu-achievements-scroll::-webkit-scrollbar{width:8px}#main-menu .menu-stats-scroll::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}#main-menu .menu-achievements-scroll::-webkit-scrollbar-thumb{background:#a8dadc42;border-radius:999px}#main-menu .menu-stats-scroll::-webkit-scrollbar{width:8px}#main-menu .menu-stats-section{gap:12px;display:grid}#main-menu .menu-stats-section+.menu-stats-section{margin-top:18px}#main-menu .menu-stats-section-title{color:var(--accent-2);letter-spacing:.08em;text-transform:uppercase;text-align:left;margin:0;font-size:.98rem}#main-menu .menu-stats-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}#main-menu .menu-stats-kpi-grid--dense .pause-stats-card strong,#main-menu .menu-stats-kpi-grid .pause-stats-card strong{font-size:clamp(1.1rem,4vw,1.55rem)}#main-menu .menu-stats-mode-grid{gap:12px;display:grid}#main-menu .menu-stats-mode-card{gap:10px}#main-menu .menu-achievements-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;min-width:0;display:grid}#main-menu .achievement-card{--achievement-accent:#8ea0b6;--achievement-accent-soft:#8ea0b633;text-align:left;background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:112px;padding:12px;display:grid}#main-menu .achievement-card--points{--achievement-accent:#f4a261;--achievement-accent-soft:#f4a26138}#main-menu .achievement-card--matches{--achievement-accent:#8fd3ff;--achievement-accent-soft:#8fd3ff33}#main-menu .achievement-card--level{--achievement-accent:#8dd39e;--achievement-accent-soft:#8dd39e33}#main-menu .achievement-card--length{--achievement-accent:#d6a3ff;--achievement-accent-soft:#d6a3ff33}#main-menu .achievement-card--mode{--achievement-accent:#ffd166;--achievement-accent-soft:#ffd16638}#main-menu .achievement-card--sessions{--achievement-accent:#72d6c9;--achievement-accent-soft:#72d6c933}#main-menu .achievement-card--time{--achievement-accent:#ff8fab;--achievement-accent-soft:#ff8fab33}#main-menu .achievement-card--locked{--achievement-accent:#9aa0af;--achievement-accent-soft:#9aa0af33}#main-menu .achievement-badge{place-items:center;width:88px;height:88px;display:grid}#main-menu .achievement-badge__svg{width:100%;height:100%}#main-menu .achievement-badge__ring{fill:none;stroke-width:4px}#main-menu .achievement-card--locked .achievement-badge__ring{stroke:#ffffff24}#main-menu .achievement-card--unlocked .achievement-badge__ring{stroke:#e9c76b;filter:drop-shadow(0 0 6px #e9c76b38)}#main-menu .achievement-badge__disc{fill:var(--achievement-accent-soft);stroke:#ffffff0f;stroke-width:1.5px}#main-menu .achievement-card--locked .achievement-badge__disc{fill:var(--achievement-accent-soft);stroke:#ffffff24}#main-menu .achievement-badge__stroke,#main-menu .achievement-badge__fill{color:var(--achievement-accent)}#main-menu .achievement-badge__stroke{fill:none;stroke:currentColor;stroke-width:3.4px;stroke-linecap:round;stroke-linejoin:round}#main-menu .achievement-badge__fill{fill:currentColor}#main-menu .achievement-badge__label{fill:var(--ink);font-family:var(--font-handwritten);letter-spacing:.05em;text-anchor:middle;font-size:9px;font-weight:800}#main-menu .achievement-card--locked .achievement-badge__label{fill:var(--ink-soft)}#main-menu .achievement-card__body{gap:6px;min-width:0;display:grid}#main-menu .achievement-card__name{color:var(--text);overflow-wrap:anywhere;font-size:.98rem;line-height:1.2}#main-menu .achievement-card__objective{color:var(--muted);overflow-wrap:anywhere;font-size:.9rem;line-height:1.4}@media (width<=720px){#main-menu .menu-achievements-grid{grid-template-columns:minmax(0,1fr)}#main-menu .achievement-card{grid-template-columns:76px minmax(0,1fr);min-height:100px}#main-menu .achievement-badge{width:76px;height:76px}}@keyframes notebookTitleWrite{0%{max-width:0}to{max-width:10ch}}
