*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}.d-none{display:none!important}.invisible{visibility:hidden!important}:root{--bg-gradient-start: #05060f;--bg-gradient-mid: #080d1a;--bg-gradient-end: #120820;--glass-bg: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: rgba(0, 0, 0, .3);--text-primary: #f0f0f0;--text-secondary: rgba(255, 255, 255, .6);--accent-cyan: #00e5ff;--accent-magenta: #e040fb;--accent-gold: #ffd740;--accent-green: #69f0ae;--text-next: rgba(255, 255, 255, .5);--font-display: "Chakra Petch", sans-serif;--font-main: "Chakra Petch", sans-serif;--combo-color: #ffd740;--spacing-xs: clamp(4px, 1vw, 8px);--spacing-sm: clamp(8px, 2vw, 14px);--spacing-md: clamp(12px, 3vw, 20px);--spacing-lg: clamp(20px, 4vw, 32px);--container-max-w: min(480px, 95svh * 9 / 16)}html,body{width:100%;height:100vh;height:100svh;overflow:hidden;font-family:var(--font-main);color:var(--text-primary);background:linear-gradient(135deg,var(--bg-gradient-start),var(--bg-gradient-mid),var(--bg-gradient-end));-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;overscroll-behavior:none;-webkit-user-select:none}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 80%);mask-image:radial-gradient(circle at center,black,transparent 80%);pointer-events:none;z-index:0}.screen{padding:var(--spacing-lg) var(--spacing-md);position:fixed;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;z-index:1}.screen.active{opacity:1;visibility:visible;z-index:10;transition:opacity .4s ease,visibility .4s ease}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:clamp(12px,3vw,18px);box-shadow:0 8px 32px var(--glass-shadow)}.btn{display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.5vw,10px);width:100%;padding:clamp(11px,3vw,16px) clamp(18px,5vw,28px);border:none;border-radius:10px;font-family:var(--font-main);font-size:1rem;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .2s ease;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.7;cursor:not-allowed;filter:brightness(.8);transform:none}.btn-primary{background:linear-gradient(135deg,var(--accent-cyan),#0091ea);color:#000;box-shadow:0 4px 20px #00e5ff4d}.btn-primary:active{box-shadow:0 2px 10px #00e5ff33}.btn-secondary{background:var(--glass-bg);color:var(--text-primary);border:1px solid var(--glass-border)}.btn-secondary:active{background:#ffffff1a}.btn-icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.2em;stroke:currentColor}.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:100;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.modal.active{opacity:1;visibility:visible}.modal-overlay{position:absolute;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;width:90%;max-width:360px;max-height:60svh;overflow-y:auto;padding:var(--spacing-lg) var(--spacing-md);text-align:center;z-index:101}.modal-content h2{font-size:1.1rem;margin-bottom:20px;color:var(--text-primary)}@media(hover:hover)and (pointer:fine){*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}*::-webkit-scrollbar{width:4px;height:4px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#ffffff38;border-radius:999px}}@media(orientation:landscape){:root{--container-max-w: min(480px, 50.625svh )}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.mode-normal{--current-mode-color: var(--accent-cyan);--current-mode-border: rgba(0, 238, 255, .55);--current-mode-bg: linear-gradient(135deg, rgba(0, 229, 255, .12), rgba(0, 145, 234, .1));--current-mode-bg-soft: rgba(0, 229, 255, .2);--current-mode-shadow: rgba(0, 229, 255, .1)}.mode-shuffle{--current-mode-color: var(--accent-magenta);--current-mode-border: rgba(224, 64, 251, .5);--current-mode-bg: linear-gradient(135deg, rgba(224, 64, 251, .12), rgba(170, 0, 255, .1));--current-mode-bg-soft: rgba(224, 64, 251, .2);--current-mode-shadow: rgba(224, 64, 251, .1)}.mode-survival{--current-mode-color: #00e5c8;--current-mode-border: rgba(0, 212, 184, .5);--current-mode-bg: linear-gradient(135deg, rgba(0, 200, 180, .12), rgba(0, 150, 135, .1));--current-mode-bg-soft: rgba(0, 200, 180, .22);--current-mode-shadow: rgba(0, 200, 180, .12)}.mode-chaos{--current-mode-color: rgba(255, 90, 180, .95);--current-mode-border: rgba(255, 90, 180, .5);--current-mode-bg: linear-gradient(135deg, rgba(255, 90, 180, .1), rgba(210, 60, 150, .08));--current-mode-bg-soft: rgba(255, 90, 180, .22);--current-mode-shadow: rgba(255, 90, 180, .12)}.mode-puzzle{--current-mode-color: var(--accent-gold);--current-mode-border: rgba(255, 215, 64, .5);--current-mode-bg: linear-gradient(135deg, rgba(255, 215, 64, .12), rgba(255, 183, 77, .08));--current-mode-bg-soft: rgba(255, 215, 64, .2);--current-mode-shadow: rgba(255, 215, 64, .1)}.mode-total{--current-mode-color: rgba(255, 255, 255, .95);--current-mode-border: rgba(255, 255, 255, .2);--current-mode-bg: rgba(255, 255, 255, .05);--current-mode-bg-soft: rgba(255, 255, 255, .1);--current-mode-shadow: rgba(255, 255, 255, .08)}.mode-badge{color:var(--current-mode-color)}.mode-badge svg,.btn-mode svg{color:inherit;stroke:currentColor}.mode-best{color:var(--current-mode-color)!important}.mode-badge{display:inline-block;text-align:center;font-size:.7rem;font-weight:700;letter-spacing:.1em;padding:4px 16px;border-radius:6px;corner-shape:bevel;border:1px solid var(--current-mode-border);background:color-mix(in srgb,var(--current-mode-color) 10%,transparent);color:var(--current-mode-color)!important;text-shadow:0 0 10px color-mix(in srgb,var(--current-mode-color) 30%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--current-mode-color) 15%,transparent);transition:all .3s ease}.ranking-tab[data-tab=normal]{color:color-mix(in srgb,var(--accent-cyan) 35%,var(--text-secondary))}.ranking-tab[data-tab=survival]{color:color-mix(in srgb,#00d4b8 35%,var(--text-secondary))}.ranking-tab[data-tab=shuffle]{color:color-mix(in srgb,var(--accent-magenta) 35%,var(--text-secondary))}.ranking-tab[data-tab=chaos]{color:color-mix(in srgb,rgba(255,90,180,.95) 35%,var(--text-secondary))}.ranking-tab[data-tab=total]{color:color-mix(in srgb,rgba(255,255,255,.95) 35%,var(--text-secondary))}.ranking-tabs.mode-normal .ranking-tab[data-tab=normal].active,.ranking-tabs.mode-shuffle .ranking-tab[data-tab=shuffle].active,.ranking-tabs.mode-survival .ranking-tab[data-tab=survival].active,.ranking-tabs.mode-chaos .ranking-tab[data-tab=chaos].active,.ranking-tabs.mode-total .ranking-tab[data-tab=total].active{color:var(--current-mode-color)}.ranking-tabs.mode-normal .ranking-tab-indicator,.ranking-tabs.mode-shuffle .ranking-tab-indicator,.ranking-tabs.mode-survival .ranking-tab-indicator,.ranking-tabs.mode-chaos .ranking-tab-indicator,.ranking-tabs.mode-total .ranking-tab-indicator{background:var(--current-mode-bg-soft);box-shadow:0 0 12px var(--current-mode-shadow)}.star-icon.is-rainbow{fill:url(#rainbow-grad)!important;stroke:none!important;animation:star-glow-pulse 3s ease-in-out infinite}.modal-user-settings-content{max-width:320px;padding:var(--spacing-lg) var(--spacing-md);display:flex;flex-direction:column;gap:0}.profile-name-section{margin-bottom:14px}.profile-name-row{display:flex;align-items:center;gap:8px;min-height:40px}.profile-name-label{width:5.5em;font-size:.8rem;color:var(--text-secondary);flex-shrink:0;white-space:nowrap}.profile-name-display-area{display:flex;align-items:center;flex:1;min-width:0}.profile-name-value{flex:1;text-align:center;font-size:.92rem;color:var(--text-primary);font-weight:700;letter-spacing:.02em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.profile-name-value.is-unregistered{opacity:.6;font-weight:600}.btn-profile-name-action{background:none;border:none;padding:0;display:inline-flex;align-items:center;gap:4px;cursor:pointer;color:var(--text-muted, rgba(255, 255, 255, .6));font-size:.78rem;font-weight:600;letter-spacing:.02em;transition:color .2s}@media(hover:hover){.btn-profile-name-action:hover{color:var(--text-primary)}}.btn-profile-name-action svg{width:16px;height:16px}.profile-name-edit-area{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.profile-name-required{display:none;font-size:.74rem;color:#00e5ffbf;margin-top:6px}.force-register .profile-name-required{display:block}.profile-name-public-info{font-size:.7rem;color:#ffffff59;margin-top:2px;text-align:center;padding-left:calc(4.4em + 8px)}.profile-name-input{flex:1;min-width:0;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:6px 10px;font-size:.85rem;color:var(--text-primary);outline:none;box-sizing:border-box}.profile-name-input:focus{border-color:#00e5ff59;box-shadow:0 0 10px #00e5ff1a}.force-register .profile-name-label{color:#00e5ffd9}.force-register .profile-name-input{border-color:#00e5ff66;box-shadow:0 0 #00e5ff00;animation:registerPulse 1.6s ease-in-out infinite}.force-register .btn-profile-name-submit{animation:registerPulseBtn 1.6s ease-in-out infinite}@keyframes registerPulse{0%{box-shadow:0 0 #00e5ff00}50%{box-shadow:0 0 12px 2px #00e5ff40}to{box-shadow:0 0 #00e5ff00}}@keyframes registerPulseBtn{0%{box-shadow:0 0 #00e5ff00}50%{box-shadow:0 0 10px 2px #00e5ff4d}to{box-shadow:0 0 #00e5ff00}}.profile-name-input::placeholder{color:#ffffff40}.btn-profile-name-submit,.btn-profile-name-cancel{width:32px;height:32px;border-radius:6px;border:none;background:#ffffff14;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,opacity .2s;flex-shrink:0}.btn-profile-name-submit.is-busy,.btn-profile-name-cancel.is-busy{opacity:.5;pointer-events:none}.btn-profile-name-submit{background:#00e5ff2e}@media(hover:hover){.btn-profile-name-submit:hover{background:#00e5ff47}}.btn-profile-name-submit:active{background:#00e5ff66}.btn-profile-name-cancel{background:#ffffff14}.btn-profile-name-cancel:hover{background:#ffffff24}.btn-profile-name-submit svg,.btn-profile-name-cancel svg{width:16px;height:16px}.profile-name-note{font-size:.72rem;line-height:1.5;color:#ffffff85;margin-top:8px;padding:6px 8px;border-radius:6px;background:#ffffff08}.profile-name-note.note-registration{color:#ffffff80;border-left:2px solid rgba(0,229,255,.3)}.profile-name-note.note-anonymous{color:#ffffff80;border-left:2px solid rgba(255,255,255,.15)}.profile-name-error{font-size:.78rem;color:#ff5252;margin-top:4px}.reminder-no-show-label{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:10px;font-size:.75rem;color:#fff6;cursor:pointer;-webkit-tap-highlight-color:transparent}.reminder-no-show-label input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-cyan, #00e5ff);cursor:pointer;margin:0}.btn-logout-text{background:none;border:none;color:#ffffff4d;font-size:.78rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 0;margin-top:4px;align-self:center;transition:color .2s;-webkit-tap-highlight-color:transparent}.btn-logout-text:hover{color:#ffffff8c}.btn-delete-account-text{background:none;border:none;color:#ff525259;font-size:.78rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 0;margin-top:8px;align-self:center;transition:color .2s;-webkit-tap-highlight-color:transparent}.btn-delete-account-text:hover{color:#ff525299}.modal-confirm-error{margin-top:12px;margin-bottom:0;font-size:.8rem;color:#ff5252;text-align:center}.modal-close-btn{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s,background .2s}@media(hover:hover){.modal-close-btn:hover{color:var(--text-primary);background:#ffffff14}}.modal-close-btn svg{width:22px;height:22px;stroke:currentColor}.stars-display{display:flex;justify-content:center;align-items:center}.stars-large{gap:10px}.stars-large .star-icon{max-width:3.2rem;width:3.3rem;height:3.3rem}.stars-small{gap:2px}.stars-small .star-icon{width:.9rem;height:.9rem;font-size:.9rem}.star-icon{color:#ffffff14;stroke:#ffffff1f;fill:currentColor;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.star-icon.active{color:var(--accent-gold);stroke:#ffd74066;filter:drop-shadow(0 0 .15em rgba(255,215,64,.4))}.btn-mode .mode-stars .star-icon{color:#ffffff14;stroke:#ffffff1f}.btn-mode .mode-stars .star-icon.active{color:var(--accent-gold);stroke:#ffd74066}.stars-display.animate .star-icon.active{animation:star-pop .5s cubic-bezier(.175,.885,.32,1.275) both}.stars-large .star-icon:nth-child(2){animation-delay:.15s}.stars-large .star-icon:nth-child(3){animation-delay:.3s}@keyframes star-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.star-icon.is-rainbow{fill:url(#rainbow-grad)!important;stroke:none!important;animation:star-glow-pulse 3s ease-in-out infinite}.stars-display.animate .star-icon.is-rainbow{animation:star-pop .5s cubic-bezier(.175,.885,.32,1.275) both,star-glow-pulse 3s ease-in-out infinite}@keyframes star-glow-pulse{0%,to{filter:drop-shadow(0 0 .07em rgba(255,255,255,.2)) drop-shadow(0 0 .15em var(--accent-cyan))}50%{filter:drop-shadow(0 0 .11em rgba(255,255,255,.3)) drop-shadow(0 0 .22em var(--accent-magenta)) brightness(1.25)}}.btn-back-bottom{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border:1px solid var(--glass-border);border-radius:8px;background:transparent;color:var(--text-secondary);font-family:var(--font-main);font-size:.875rem;letter-spacing:.04em;cursor:pointer;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}.btn-back-bottom svg{width:1rem;height:1rem;stroke:currentColor;fill:none}@media(hover:hover){.btn-back-bottom:hover{background:var(--glass-bg);color:var(--text-primary)}}.btn-back-bottom:active{transform:scale(.96)}.user-settings-provider-linked{display:flex;align-items:center;gap:10px;padding:0 14px;height:48px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;font-size:.85rem;color:var(--text-secondary);box-sizing:border-box;overflow:hidden}.provider-linked-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:#ffffff73}.provider-linked-icon svg{width:16px;height:16px}.provider-name{font-size:.82rem;color:var(--text-primary);letter-spacing:.02em}.provider-unlink-btn{margin-left:auto;cursor:pointer;color:#ffffffb3;background:none;border:1px solid rgba(255,255,255,.25);padding:4px 10px;border-radius:999px;font-size:.72rem;letter-spacing:.02em;font-family:inherit;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:color .2s ease,border-color .2s ease,opacity .2s ease}@media(hover:hover){.provider-unlink-btn:hover{color:var(--text-primary);border-color:#ffffff73}}.provider-unlink-btn:active{opacity:.7}.provider-unlink-btn.is-busy{opacity:.5;pointer-events:none}.provider-link-primary{margin-left:auto;cursor:pointer;color:var(--text-primary);background:#ffffff24;border:1px solid rgba(255,255,255,.3);padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;font-family:inherit;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background .2s ease,border-color .2s ease,opacity .2s ease}@media(hover:hover){.provider-link-primary:hover{background:#ffffff38;border-color:#ffffff73}}.provider-link-primary:active{opacity:.7}.provider-link-primary.is-busy{opacity:.5;pointer-events:none}.signin-options-section{margin-top:4px}.signin-options-header{margin-bottom:10px}.signin-options-label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff4d;margin-bottom:4px}.signin-options-note{font-size:.72rem;color:#ffffff59;line-height:1.5;margin-bottom:8px;padding-left:2px;font-weight:500}.user-settings-buttons{display:flex;flex-direction:column;gap:10px}.user-settings-error{font-size:.8rem;color:#ff5252;text-align:center}.btn-provider-link{background:#ffffff14;color:var(--text-primary);border:1px solid rgba(255,255,255,.15);gap:20px;display:flex;align-items:center;justify-content:flex-start;height:48px;padding:0 14px;font-size:.85rem;font-weight:600;border-radius:10px;box-sizing:border-box}.btn-provider-link:hover{background:#ffffff1f}.provider-icon{flex-shrink:0;width:18px;display:flex;align-items:center;justify-content:center}.provider-icon svg{display:block}.result-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:var(--container-max-w);max-height:100%;gap:1rem}.result-card{height:50%;min-height:50%;max-height:50%;width:100%;perspective:1200px;cursor:pointer}.result-card-inner{display:grid;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.22,1,.36,1)}.result-card.is-flipped .result-card-inner{transform:rotateY(180deg)}.result-card-front,.result-card-back{grid-area:1 / 1;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-md);padding-bottom:28px;text-align:center;background:#ffffff0a;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--current-mode-border, rgba(255, 255, 255, .1));border-radius:18px;corner-shape:bevel;box-shadow:0 0 40px var(--current-mode-shadow, rgba(0, 0, 0, .2)),0 16px 48px #0006,inset 0 1px #ffffff14;transition:border-color .4s ease,box-shadow .4s ease;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.result-card-back{transform:rotateY(180deg);justify-content:flex-start;overflow-y:auto;overflow-x:hidden}.screen-result.active .result-card-front{animation:result-card-in .45s cubic-bezier(.22,1,.36,1) both}@keyframes result-card-in{0%{transform:translateY(24px) scale(.97)}to{transform:none}}.screen-result.active .result-card-front>*{animation:result-section-in .5s cubic-bezier(.22,1,.36,1) both}.screen-result.active .result-buttons{animation:result-section-in .5s cubic-bezier(.22,1,.36,1) both;animation-delay:.42s}.screen-result.active .result-tips{animation:result-section-in .5s cubic-bezier(.22,1,.36,1) both;animation-delay:.5s}@keyframes result-section-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.screen-result.active .result-header-accent{animation-delay:0s}.screen-result.active .mode-badge{animation:result-section-in .5s cubic-bezier(.22,1,.36,1) both;animation-delay:.05s}.screen-result.active .result-star-area{animation-delay:.12s}.screen-result.active .result-divider:first-of-type{animation-delay:.18s}.screen-result.active .result-score-area{animation-delay:.2s}.screen-result.active .result-divider:last-of-type{animation-delay:.32s}.screen-result.active .result-stats{animation-delay:.34s}.card-hint-flip{position:absolute;bottom:.7rem;left:0;right:0;text-align:center;font-size:.65rem;color:#ffffff40;pointer-events:none}.back-section-title{font-size:.65rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;text-align:center;margin:8px 0 4px}.back-section-title:first-of-type{margin-top:0}.back-conditions-wrap{background:#ffffff0a;border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;padding:10px 16px;font-size:.8rem;color:#fff;display:flex;flex-direction:column;align-items:center;gap:2px}.back-conditions-stars,.back-conditions-rainbow{display:flex;flex-direction:column;align-items:center;width:100%;gap:2px}.back-conditions-divider{border:none;height:1px;background:#ffffff1a;margin:6px 0;width:100%;max-width:240px}.result-header-accent{width:60px;height:3px;background:linear-gradient(90deg,transparent,var(--current-mode-color, rgba(255, 255, 255, .5)),transparent);border-radius:2px;margin:0 auto 8px}.result-divider{border:none;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);margin:10px 0}.screen-result .mode-badge{margin:0;min-width:120px;z-index:10}.result-star-area{min-height:40px;display:flex;align-items:center;justify-content:center}.result-score-area{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px}.score-glow-ring{position:absolute;inset:-40px;background:radial-gradient(ellipse,var(--current-mode-shadow, rgba(255, 215, 64, .08)) 0%,transparent 70%);pointer-events:none;z-index:0}.result-score-value{position:relative;z-index:1;font-size:3.5rem;font-weight:900;color:var(--accent-gold);text-shadow:0 0 30px rgba(255,215,64,.4);line-height:1.1;margin-top:-4px}.result-new-record{position:relative;z-index:1;font-size:.9rem;font-weight:900;margin-bottom:-2px;background:linear-gradient(90deg,var(--accent-gold),#fff8c0,var(--accent-gold));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;opacity:1;transition:opacity .3s ease}.result-new-record:not(.hidden){animation:new-record-shimmer 1.5s ease infinite,result-new-record-pulse .6s ease both}.result-new-record.hidden{visibility:hidden;opacity:0}@keyframes new-record-shimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes result-new-record-pulse{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.result-best-area{position:relative;z-index:1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px}.result-best-area .result-best-label{font-size:.7rem;font-weight:600;color:var(--text-secondary)}.result-best-value{font-size:.95rem;font-weight:900;color:#e0c870;opacity:.95}.result-score-breakdown{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.8rem;color:var(--text-secondary);opacity:1;background:#ffffff0a;border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;padding:10px 16px}.result-score-breakdown .stat-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:180px}.result-score-breakdown .stat-label{font-size:.7rem;color:var(--text-secondary);font-weight:500}.result-score-breakdown .stat-value{font-size:.8rem;font-weight:700;color:var(--accent-gold)}.breakdown-total-divider{border:none;height:1px;background:#ffffff1a;margin:4px 0;width:100%;max-width:180px}.result-score-breakdown .stat-item.total .stat-label{font-size:.8rem;font-weight:700;color:var(--text-primary)}.result-score-breakdown .stat-item.total .stat-value{font-size:1.1rem;font-weight:900;color:var(--accent-gold);text-shadow:0 0 10px rgba(255,215,64,.3)}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:2px}.result-stats .stat-item{background:#ffffff0a;border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;padding:10px 8px}.stat-label{font-size:.7rem;color:var(--text-secondary)}.stat-label .stat-icon,.stat-label svg{display:inline-block;width:1em;height:1em;vertical-align:-.15em;margin-right:2px;stroke:currentColor}.stat-value{font-size:1.5rem;font-weight:900;color:var(--accent-cyan)}.result-stats .stat-value{color:var(--current-mode-color, var(--accent-cyan))}.result-buttons{display:flex;flex-direction:column;gap:10px;width:100%}.result-buttons-bottom{display:flex;justify-content:space-between;align-items:flex-start;width:100%;margin:12px 0}.result-btn-wrapper{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;min-width:0}.btn-caption{font-size:.65rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;letter-spacing:.5px}.result-buttons .btn-icon-only{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:var(--bg-secondary);color:var(--text-primary);box-shadow:inset 0 0 0 1px #ffffff8c;transition:background .2s,border-color .2s,box-shadow .2s,color .2s,transform .15s;flex-shrink:0}@media(hover:hover){.result-buttons .btn-icon-only:hover{background:var(--bg-tertiary);border-color:var(--current-mode-border, rgba(255, 255, 255, .3));box-shadow:inset 0 0 0 1px #ffffffb3,0 0 12px var(--current-mode-shadow, rgba(255, 255, 255, .1));color:var(--current-mode-color, var(--text-primary))}}.result-buttons .btn-icon-only:active{transform:scale(.96)}.result-buttons .btn-icon-only i,.result-buttons .btn-icon-only svg{width:22px;height:22px;stroke:currentColor;fill:none}.result-score-breakdown .stat-value.max-level,.stat-value.max-level{background:linear-gradient(135deg,#ff6e40,#ffd740,#ff6e40);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:900;filter:drop-shadow(0 0 6px rgba(255,110,64,.5))}.condition-row-grid{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:8px;width:100%;max-width:280px}.condition-row-grid.rainbow-row{grid-template-columns:24px 1fr auto}.stars-part{display:flex;align-items:center;justify-content:center;gap:1px;width:100%}.stars-part .star-icon{width:15px;height:15px}.score-part{font-variant-numeric:tabular-nums;color:#ffffffe6;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-part.is-locked{color:#ffffff40}.condition-value-part{font-variant-numeric:tabular-nums;color:#ffffffbf;text-align:center;align-items:center;min-width:32px;white-space:nowrap;font-size:.75rem;font-weight:700}.condition-value-part.is-locked{color:#ffffff40}@keyframes tooltip-fade-in{0%{opacity:0;transform:translate(-50%,-90%)}to{opacity:1;transform:translate(-50%,-100%)}}.result-tips{font-size:.72rem;color:var(--text-secondary);text-align:center;line-height:1.5;opacity:.8;min-height:3em;width:100%;display:flex;align-items:center;justify-content:center}.result-tips .tips-content.is-priority-tip{color:#ffd36b;opacity:1;text-shadow:0 0 10px rgba(255,211,107,.28)}.result-tips .tips-icon{width:14px;height:14px;display:inline-block;vertical-align:-2px;margin-right:4px;color:var(--accent-gold);opacity:.7}.unlock-toast{position:fixed;top:16px;left:50%;transform:translate(-50%) translateY(-120%);display:flex;align-items:center;gap:8px;padding:10px 20px;background:#e040fb33;border:1px solid rgba(224,64,251,.5);border-radius:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:.82rem;font-weight:600;z-index:100;opacity:0;transition:transform .4s ease,opacity .4s ease;pointer-events:none;white-space:nowrap}.unlock-toast.show{transform:translate(-50%) translateY(0);opacity:1}.unlock-toast-icon{width:18px;height:18px;flex-shrink:0;color:var(--accent-magenta)}.sync-failed-toast{background:#ef444433;border-color:#ef444480}.sync-failed-toast .unlock-toast-icon{color:#ef4444}@media(max-height:580px){.result-card-front,.result-card-back{padding:8px var(--spacing-md);padding-bottom:28px}.result-divider{margin:6px 0}}.title-container{text-align:center;width:100%;max-width:var(--container-max-w)}.title-eyebrow{font-family:var(--font-main);font-size:.7rem;font-weight:600;letter-spacing:.15em;color:#00eeff8c;margin-bottom:4px}.game-title{font-size:clamp(2.8rem,10vw,4rem);font-weight:900;letter-spacing:-2px;margin-bottom:clamp(24px,6vw,40px);line-height:1;filter:drop-shadow(0 2px 12px rgba(255,255,255,.18))}.title-first{background:linear-gradient(135deg,var(--accent-cyan),#0091ea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.title-shared{background:linear-gradient(135deg,#0091ea,var(--accent-magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.title-second{background:linear-gradient(135deg,var(--accent-magenta),#aa00ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mode-select-area{margin-bottom:clamp(12px,3.5vw,20px)}.mode-target-toggle{position:relative;display:grid;grid-template-columns:1fr 1fr;background:#ffffff0f;border-radius:8px;corner-shape:bevel;padding:3px;margin-bottom:12px}.toggle-option{position:relative;z-index:1;padding:7px 0;border:none;background:none;color:var(--text-secondary);font-family:var(--font-main);font-size:.78rem;font-weight:600;cursor:pointer;border-radius:6px;corner-shape:bevel;transition:color .25s ease}.toggle-option.active{color:#ffffffd1}.toggle-option[data-target=fixed]{color:color-mix(in srgb,var(--accent-cyan) 35%,var(--text-secondary))}.toggle-option[data-target=random]{color:color-mix(in srgb,var(--accent-magenta) 35%,var(--text-secondary))}.mode-target-toggle[data-active=fixed] .toggle-option[data-target=fixed].active{color:var(--accent-cyan)}.mode-target-toggle[data-active=random] .toggle-option[data-target=random].active{color:var(--accent-magenta)}.toggle-indicator{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);background:#ffffff1a;border-radius:6px;corner-shape:bevel;transition:transform .3s cubic-bezier(.4,0,.2,1),background .3s ease,box-shadow .3s ease;pointer-events:none;overflow:hidden}.mode-target-toggle[data-active=fixed] .toggle-indicator{background:#00e5ff26;box-shadow:0 0 12px #00e5ff26}.mode-target-toggle[data-active=fixed] .toggle-indicator:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 120% at 85% 30%,rgba(255,255,255,.08) 0%,transparent 60%)}.mode-target-toggle[data-active=random] .toggle-indicator{transform:translate(100%);background:#e040fb26;box-shadow:0 0 12px #e040fb26}.mode-target-toggle[data-active=random] .toggle-indicator:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 120% at 85% 30%,rgba(255,255,255,.08) 0%,transparent 60%)}.mode-description{font-size:.8rem;color:var(--text-secondary);line-height:1.4;margin-bottom:10px;min-height:1.4em;opacity:.85;letter-spacing:.03em}.mode-button-group{display:flex;flex-direction:column;gap:10px}.mode-button-group.hidden{display:none}.mode-group-random-wrapper{position:relative}.mode-group-random-wrapper.hidden{display:none}.random-lock-overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#14141ebf;border-radius:14px;corner-shape:bevel;pointer-events:none}.random-lock-overlay.hidden{display:none}.random-lock-overlay .lock-icon{width:28px;height:28px;color:#fff6}.random-lock-overlay .lock-condition{font-size:.72rem;color:#ffffff80;text-align:center;line-height:1.4;margin:0}.random-lock-overlay .lock-progress{display:flex;align-items:center;gap:4px;margin:0}.random-lock-overlay .lock-star{width:20px;height:20px;color:#ffffff26}.random-lock-overlay .lock-star.active{color:var(--accent-gold, #ffd740);fill:var(--accent-gold, #ffd740)}.mode-group-random-wrapper.is-locked #mode-group-random{pointer-events:none}.title-actions{width:min(100%,250px);margin:0 auto}.title-ranking-row{width:min(100%,250px);margin:0 auto clamp(20px,5.5vw,30px)}.title-account-row{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:10px;margin-top:18px;align-items:stretch}.btn-title-ranking{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px 24px;background:linear-gradient(135deg,#ffd74014,#ffb74d0a);border:1px solid rgba(255,215,64,.22);border-radius:10px;color:var(--accent-gold);font-family:var(--font-main);font-size:.82rem;font-weight:700;letter-spacing:.08em;cursor:pointer;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:border-color .2s,box-shadow .2s,background .2s}.btn-title-ranking:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 100% 160% at 75% 15%,rgba(255,215,64,.06) 0%,transparent 50%);pointer-events:none}.btn-title-ranking .btn-icon{width:1em;height:1em;stroke:currentColor;filter:drop-shadow(0 0 3px rgba(255,215,64,.25))}@media(hover:hover){.btn-title-ranking:hover{border-color:#ffd74066;box-shadow:0 0 14px #ffd7401a;background:linear-gradient(135deg,#ffd7401f,#ffb74d0f)}}.btn-title-ranking:active{transform:scale(.96)}.btn-title-account{display:grid;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:10px;min-height:46px;padding:0 14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.23);border-radius:10px;color:#f0f0f0cc;cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent;transition:color .2s,border-color .2s,background .2s}.btn-title-account .btn-icon{width:1.05em;height:1.05em;stroke:currentColor}.btn-account-label{min-width:0;text-align:center;font-family:var(--font-main);font-size:.82rem;font-weight:700;letter-spacing:.04em;white-space:nowrap}.btn-account-status-slot{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px}.btn-account-caution{width:.95em;height:.95em;stroke:currentColor;opacity:0;transition:opacity .2s ease}.btn-title-account.is-anonymous-like .btn-account-caution{color:var(--accent-gold);opacity:.82}@media(hover:hover){.btn-title-account:hover{background:#ffffff14;border-color:#ffffff38;color:var(--text-primary)}}.btn-title-account:active{transform:scale(.97)}.btn-title-sound{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:0;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--text-secondary);cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent;transition:color .2s,border-color .2s,background .2s}.btn-title-sound .btn-icon{width:1.1em;height:1.1em;stroke:currentColor}@media(hover:hover){.btn-title-sound:hover{background:#ffffff14;border-color:#ffffff38;color:var(--text-primary)}}.btn-title-sound:active{transform:scale(.92)}#btn-toggle-mute.is-muted{color:#ff5252;border-color:#ff52524d}@media(hover:hover){#btn-toggle-mute.is-muted:hover{background:#ff52521a;border-color:#ff525280}}#btn-toggle-mute.is-unmuted{color:var(--accent-green);border-color:#69f0ae4d}@media(hover:hover){#btn-toggle-mute.is-unmuted:hover{background:#69f0ae1a;border-color:#69f0ae80}}#btn-toggle-mute.bgm-muted{color:#ffb74d;border-color:#ffb74d4d}@media(hover:hover){#btn-toggle-mute.bgm-muted:hover{background:#ffb74d1a;border-color:#ffb74d80}}.mute-se-label{position:absolute;left:50%;bottom:4px;transform:translate(-50%);font-size:.43rem;font-weight:900;letter-spacing:.03em;line-height:1;white-space:nowrap;pointer-events:none;opacity:.9;text-shadow:0 0 2px rgba(0,0,0,.6)}.version-info{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px}.app-version-text{font-size:.65rem;color:#fff3;letter-spacing:.05em;font-variant-numeric:tabular-nums;font-weight:500}.btn-changelog{font-size:.65rem;color:#ffffff4d;background:none;border:none;padding:4px 2px;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:2px;-webkit-tap-highlight-color:transparent;transition:all .2s ease;font-weight:500}@media(hover:hover){.btn-changelog:hover{color:#fff9}}.btn-changelog:active{opacity:.7;transform:translateY(1px)}.btn-mode{width:100%;display:flex;flex-direction:row;align-items:center;border-radius:12px;corner-shape:bevel;border:2px solid rgba(255,255,255,.15);background:var(--glass-bg);color:var(--text-primary);font-family:var(--font-main);font-weight:700;cursor:pointer;transition:transform .15s ease,border-color .2s ease,box-shadow .2s ease;position:relative;overflow:hidden;gap:12px;padding:clamp(16px,4.5vw,26px) clamp(16px,4vw,24px);--mode-icon-size: 1.6em;--mode-dice-scale: .62}.btn-mode:active{transform:scale(.97)}.btn-mode.mode-normal,.btn-mode.mode-shuffle,.btn-mode.mode-survival,.btn-mode.mode-chaos{border-color:var(--current-mode-border);background:var(--current-mode-bg);box-shadow:0 0 15px var(--current-mode-shadow);color:var(--current-mode-color)}@media(hover:hover){.btn-mode:hover{border-color:color-mix(in srgb,var(--current-mode-color) 60%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--current-mode-color) 20%,transparent)}}.btn-mode .mode-icons{display:inline-flex;align-items:center;gap:2px;width:calc(var(--mode-icon-size) + (var(--mode-icon-size) * var(--mode-dice-scale)) + 2px);flex-shrink:0}.btn-mode .mode-icon{display:block;width:var(--mode-icon-size);height:var(--mode-icon-size);opacity:.7;stroke:currentColor}.btn-mode .mode-icon.mode-icon-dice{opacity:.85}.btn-mode .mode-icon.mode-icon-dice{width:calc(var(--mode-icon-size) * var(--mode-dice-scale));height:calc(var(--mode-icon-size) * var(--mode-dice-scale))}.btn-mode .mode-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.btn-mode .mode-name{font-weight:900;letter-spacing:.12em;line-height:1;font-size:clamp(1rem,3vw,1.3rem)}.btn-mode .mode-desc{font-weight:500;color:var(--text-secondary);opacity:.6;line-height:1;font-size:.72rem}.mode-best-row{display:flex;flex-direction:column;align-items:center;gap:3px;flex-shrink:0;margin-left:auto}.btn-mode .mode-best{font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums}.btn-mode .mode-stars{flex-shrink:0}.btn-mode.mode-normal:after,.btn-mode.mode-shuffle:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 120% at 85% 30%,rgba(255,255,255,.07) 0%,transparent 60%);pointer-events:none}.btn-mode.mode-survival:after,.btn-mode.mode-chaos:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(255,255,255,.03) 8px,rgba(255,255,255,.03) 10px);pointer-events:none}.modal-confirm-content{max-width:310px;padding:var(--spacing-lg) var(--spacing-md)}.confirm-switch-body{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:20px;text-align:left}.confirm-switch-body strong{color:#ff5252}.confirm-switch-buttons{display:flex;flex-direction:column;gap:8px}.btn-danger{background:linear-gradient(135deg,#ff525240,#c6282833);color:#ff5252;border:1px solid rgba(255,82,82,.4)}.btn-danger:active{background:#ff525259}.btn-title-puzzle{display:flex;align-items:center;gap:12px;width:100%;margin-bottom:0;padding:15px 16px 15px 22px;background:#ffffff0a;border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;color:var(--text-primary);font-family:var(--font-main);text-align:left;cursor:pointer;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:border-color .2s,background .2s,transform .1s}.btn-title-puzzle:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent-green) 0%,var(--accent-cyan) 25%,#64b5f6 50%,var(--accent-magenta) 75%,var(--accent-gold) 100%)}.btn-title-puzzle .btn-icon{flex-shrink:0;width:1.5em;height:1.5em;stroke:currentColor;color:var(--text-primary)}.puzzle-entry-name{flex:1;min-width:0;text-align:left;font-size:.92rem;font-weight:700;letter-spacing:.06em}.puzzle-entry-record{--card-accent: var(--text-secondary);flex-shrink:0;display:flex;align-items:baseline;gap:5px;line-height:1}.puzzle-entry-record.is-reached{--card-accent: var(--accent-gold)}.puzzle-entry-level{font-family:var(--font-display);font-size:1.3rem;font-weight:900;font-variant-numeric:tabular-nums;color:var(--card-accent)}.puzzle-entry-level:empty{display:none}.puzzle-entry-caption{font-size:.52rem;font-weight:700;letter-spacing:.1em;color:var(--card-accent)}.btn-title-puzzle:active{transform:scale(.99);background:#ffffff14}@media(hover:hover){.btn-title-puzzle:hover{border-color:#ffffff52;background:#ffffff12}}.ranking-container{width:100%;max-width:520px;display:flex;flex-direction:column;gap:12px;height:min(600px,100dvh);overflow:hidden}.ranking-meta{display:flex;align-items:center;justify-content:center;flex-shrink:0}.ranking-meta .ranking-mode-label{text-align:center;margin:0;font-size:1rem}.ranking-tabs{position:relative;display:flex;flex-shrink:0;min-width:0;background:#ffffff0f;border-radius:8px;padding:3px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.ranking-tabs::-webkit-scrollbar{display:none}.ranking-tab{position:relative;z-index:1;flex:1 1 0;min-width:0;padding:7px 4px;border:none;border-radius:6px;background:none;color:var(--text-secondary);font-size:.72rem;font-weight:600;cursor:pointer;transition:color .25s ease;display:flex;align-items:center;justify-content:center;gap:2px}.ranking-tab svg{width:16px;height:16px;flex-shrink:0}.ranking-tab-icon-stack{display:inline-flex;align-items:center;gap:2px}.ranking-tab-icon-stack svg{position:static}.ranking-tab-icon-stack .ranking-tab-dice{width:12px;height:12px}.ranking-tab.active{color:var(--text-primary)}@media(hover:hover){.ranking-tab:not(.active):hover{color:var(--text-primary)}}.ranking-tab-indicator{position:absolute;top:3px;left:3px;width:calc((100% - 6px)/5);height:calc(100% - 6px);border-radius:6px;transform:translate(calc(100% * var(--ranking-tab-index, 0)));transition:transform .3s cubic-bezier(.4,0,.2,1),background .3s ease;pointer-events:none}.ranking-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.ranking-status{text-align:center;padding:40px 16px;color:var(--text-secondary);font-size:.9rem}.ranking-table{width:100%;border-collapse:separate;border-spacing:0 2px;table-layout:fixed}.ranking-table thead th{position:sticky;top:0;z-index:1;padding:4px 6px 8px;background:#0d1b2af5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.07);font-size:.58rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#ffffff47}.ranking-table thead th:first-child{border-radius:8px 0 0 8px}.ranking-table thead th:last-child{border-radius:0 8px 8px 0}.ranking-table tbody tr{transition:background .2s;height:39px}.ranking-table-main tbody tr:nth-child(1),.ranking-table-main tbody tr:nth-child(2),.ranking-table-main tbody tr:nth-child(3),.ranking-my-info tr{height:48px}.ranking-table tbody td{padding:0 7px;font-size:.84rem;line-height:1;vertical-align:middle}.ranking-table tbody td:first-child{border-radius:8px 0 0 8px}.ranking-table tbody td:last-child{border-radius:0 8px 8px 0}@media(hover:hover){.ranking-table tbody tr:hover td{background:#ffffff0a}}.ranking-table-main tbody tr:nth-child(1) td{background:#ffd7400d}.ranking-table-main tbody tr:nth-child(2) td{background:#c0c0c00a}.ranking-table-main tbody tr:nth-child(3) td{background:#cd7f320a}.ranking-table tbody tr.ranking-me td{background:#00e5ff0f}.rank-col{width:36px;text-align:center;font-weight:700;color:#ffffff40}.ranking-table-main tbody tr:nth-child(1) .rank-col{color:#ffd740}.ranking-table-main tbody tr:nth-child(2) .rank-col{color:#aaaabc}.ranking-table-main tbody tr:nth-child(3) .rank-col{color:#b07850}.ranking-table-main tbody tr:nth-child(1) td{font-size:1rem}.ranking-table-main tbody tr:nth-child(2) td{font-size:.95rem}.ranking-table-main tbody tr:nth-child(3) td{font-size:.92rem}.name-col{text-align:center;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-col{width:86px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent-cyan)}.stars-col{width:66px;padding-left:12px;white-space:nowrap}.ranking-table .stars-display{margin-bottom:0}.ranking-my-info{padding-top:4px;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.ranking-mode-label{text-align:center;font-size:1rem;font-weight:900;letter-spacing:.12em;line-height:1;color:var(--current-mode-color, var(--text-secondary));transition:color .3s ease}.ranking-footer{display:flex;justify-content:center;padding:10px 0 4px;flex-shrink:0}.ranking-note{font-size:.62rem;color:var(--text-secondary);text-align:center;opacity:.6;margin-bottom:-4px;z-index:1}@media(min-width:768px){.ranking-tab svg{width:18px;height:18px}}.screen.solution-view-mode .game-header,.screen.solution-view-mode .game-hud,.screen.solution-view-mode .game-timer-area,.screen.solution-view-mode .combo-display,.screen.solution-view-mode .chain-info,.screen.solution-view-mode .game-timer-bar,.screen.solution-view-mode .score-popups,.screen.solution-view-mode .countdown-overlay,.screen.solution-view-mode .btn-pause-float,.screen.solution-view-mode .pause-overlay{display:none!important}.screen.solution-view-mode .game-container{justify-content:center;padding-top:clamp(4px,1dvh,16px);padding-bottom:clamp(4px,1dvh,16px);gap:clamp(2px,.8dvh,8px)}.screen.solution-view-mode .game-grid{width:100%;max-width:max(300px,40svh)}.solution-header{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-height:48px;justify-content:center}.solution-header-label{font-size:.75rem;font-weight:700;letter-spacing:.2em;color:var(--text-secondary)}.solution-header-value{font-size:clamp(1.1rem,min(6vw,6dvh),2.8rem);font-weight:900;color:var(--accent-cyan);text-shadow:0 0 20px rgba(0,229,255,.5),0 0 40px rgba(0,229,255,.2);line-height:1}.solution-nav{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:10px 14px 8px;flex-shrink:0;width:100%;max-width:min(240px,100%);margin:0 auto;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.solution-step-nav{display:flex;align-items:center;flex-direction:row;justify-content:space-evenly;gap:0;width:100%}.solution-step-label{flex:1;text-align:center;font-size:.78rem;font-weight:700;letter-spacing:1.5px;color:var(--accent-magenta);-webkit-user-select:none;user-select:none}.solution-step-prev,.solution-step-next{display:flex;align-items:center;justify-content:center;width:48px;height:44px;border:1px solid rgba(224,64,251,.35);border-radius:7px;background:transparent;color:var(--accent-magenta);cursor:pointer;transition:background .15s,opacity .15s,border-color .15s;-webkit-tap-highlight-color:transparent;opacity:.8}@media(hover:hover){.solution-step-prev:hover,.solution-step-next:hover{background:#e040fb1a;border-color:#e040fbb3;opacity:1}}.solution-step-prev:active,.solution-step-next:active{transform:scale(.9)}.solution-step-prev svg,.solution-step-next svg{display:block;width:1.5rem;height:1.5rem}.solution-player-toggle-row{display:flex;justify-content:center;padding:10px 0 2px;margin-top:4px;border-top:1px solid rgba(255,255,255,.06)}.solution-player-toggle{display:flex;align-items:center;gap:5px;padding:5px 14px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:transparent;color:#ffffff59;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent;letter-spacing:.5px}.solution-player-toggle svg{width:.9rem;height:.9rem}@media(hover:hover){.solution-player-toggle:hover{border-color:#ffffff40;color:#fff9}}.solution-player-toggle.active{background:#ffffff14;border-color:#ffffff4d;color:#dcdce6e6}.solution-player-toggle.disabled{opacity:.25;pointer-events:none}.cell.player-path-highlight{box-shadow:inset 0 0 0 2px #c8c8d266}.solution-formula{font-size:.95rem;font-weight:600;color:#ffffffd9;letter-spacing:.8px;min-height:1.4em;text-align:center;padding:6px 14px;font-variant-numeric:tabular-nums;width:100%;max-width:max(300px,40svh);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#ffffff0a;border-radius:8px;corner-shape:bevel;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.solution-path-nav{display:flex;align-items:center;justify-content:center;gap:0;width:100%;padding-top:6px;border-top:1px solid rgba(255,255,255,.06)}.solution-path-label{flex:1;text-align:center;font-size:.75rem;font-weight:500;color:var(--text-secondary);letter-spacing:.5px;-webkit-user-select:none;user-select:none}.solution-path-prev,.solution-path-next{display:flex;align-items:center;justify-content:center;width:44px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s;-webkit-tap-highlight-color:transparent;opacity:.75}@media(hover:hover){.solution-path-prev:hover,.solution-path-next:hover{background:#ffffff14;border-color:#fff6;color:var(--text-primary);opacity:1}}.solution-path-prev:active,.solution-path-next:active{transform:scale(.9)}.solution-path-prev svg,.solution-path-next svg{display:block;width:1.25rem;height:1.25rem}.solution-footer{display:flex;justify-content:center;padding:6px 0 2px}@keyframes solution-pulse{0%,to{opacity:.1}50%{opacity:.2}}.solution-pulse-path{animation:solution-pulse 1.5s ease-in-out infinite}.screen.solution-view-mode .game-grid .cell{z-index:2}.screen.solution-view-mode .game-grid .solution-path-svg{z-index:1!important}.screen.solution-view-mode .game-grid .player-path-svg{z-index:10!important}.changelog-overlay{position:absolute;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.changelog-modal-content{position:relative;width:90%;max-width:360px;display:flex;flex-direction:column;padding:var(--spacing-lg) var(--spacing-md) var(--spacing-md);text-align:left;z-index:101}.changelog-title{font-size:1.1rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;color:var(--text-primary)}.changelog-body{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;display:flex;flex-direction:column;gap:20px}.changelog-section{display:flex;flex-direction:column;gap:8px}.changelog-version-label{font-size:.9rem;font-weight:800;color:var(--accent-cyan);padding-bottom:6px;border-bottom:1px solid rgba(0,238,255,.25)}.changelog-entries{list-style:none;padding:0;display:flex;flex-direction:column;gap:6px}.changelog-entry{font-size:.83rem;color:var(--text-secondary);line-height:1.5;padding-left:1.2em;position:relative}.changelog-entry:before{content:"·";position:absolute;left:.3em;font-weight:700;color:var(--accent-magenta)}.changelog-empty{font-size:.85rem;color:var(--text-secondary);text-align:center;padding:16px 0;opacity:.6}.changelog-content{padding:2px 4px 12px}.changelog-md-p{margin:4px 0;font-size:.85rem;line-height:1.5;color:var(--text-secondary)}.changelog-md-ul{margin:6px 0 10px 4px;padding-left:18px;list-style-type:disc}.changelog-md-li{margin:4px 0;font-size:.85rem;line-height:1.4;color:var(--text-secondary)}.changelog-md-li::marker{color:var(--accent-cyan)}.changelog-content h3{font-size:.95rem;font-weight:700;margin:16px 0 8px;color:var(--text-primary);border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4px}.changelog-content h3:first-child{margin-top:4px}.changelog-content strong{color:var(--text-primary);font-weight:700}.changelog-md-desc{margin:2px 0 8px 4px;font-size:.78rem;line-height:1.5;color:#ffffff59;border-left:2px solid rgba(255,255,255,.12);padding-left:10px}.puzzle-home-container{height:100%;width:100%;max-width:var(--container-max-w);margin:0 auto;display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md);overflow-y:auto}.puzzle-home-title{text-align:center;font-family:var(--font-display);font-size:clamp(1.9rem,8vw,2.6rem);font-weight:900;letter-spacing:.14em;line-height:1;background:linear-gradient(120deg,var(--accent-cyan),var(--accent-magenta));-webkit-background-clip:text;background-clip:text;color:transparent}.puzzle-home-lead{text-align:center;line-height:1.7;font-size:clamp(.66rem,2.4vw,.78rem);color:var(--text-secondary)}.puzzle-home-status{display:flex;align-items:stretch;width:100%;padding:var(--spacing-md) 0;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;corner-shape:bevel}.puzzle-home-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.puzzle-home-stat-label{font-size:clamp(.52rem,2vw,.62rem);letter-spacing:.1em;color:var(--text-secondary)}.puzzle-home-stat-value{font-family:var(--font-display);font-size:clamp(2rem,9vw,2.8rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-primary)}.puzzle-home-stat-value.is-best{color:var(--accent-gold)}.puzzle-home-stat-value.is-empty{color:var(--text-next)}.puzzle-home-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.puzzle-home-actions .btn-title-ranking{align-self:center;width:min(100%,250px);margin-top:4px}.puzzle-home-checkpoints{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.puzzle-home-checkpoints:empty{display:none}.puzzle-home-howto{align-self:center;padding:4px 2px;background:none;border:none;color:#ffffff4d;font-family:inherit;font-size:.65rem;font-weight:500;text-decoration:underline;text-underline-offset:2px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s ease}@media(hover:hover){.puzzle-home-howto:hover{color:#fff9}}.puzzle-home-howto:active{opacity:.7;transform:translateY(1px)}#btn-puzzle-resume.is-loading .btn-icon{animation:puzzle-home-spin .9s linear infinite}@keyframes puzzle-home-spin{to{transform:rotate(-360deg)}}@media(prefers-reduced-motion:reduce){#btn-puzzle-resume.is-loading .btn-icon{animation:none}}.puzzle-home-container .btn-back-bottom{align-self:center;margin-top:6px}.modal-logo{font-size:2.2rem;margin-bottom:24px}.howto-section{text-align:left;margin-bottom:18px}.howto-section:last-of-type{margin-bottom:24px}.howto-section-title{font-size:.95rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}.howto-steps{display:flex;flex-direction:column;gap:10px;text-align:left}.howto-step{display:flex;align-items:flex-start;gap:12px}.howto-num{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-cyan),#0091ea);color:#000;font-weight:900;font-size:.85rem;border-radius:6px}.howto-step p{font-size:.9rem;line-height:1.5;color:var(--text-secondary)}.howto-step strong{color:var(--text-primary)}.howto-mode-desc{font-size:.88rem;line-height:1.5;color:var(--text-secondary);margin-bottom:4px}.howto-mode-desc strong{color:var(--text-primary)}.howto-mode-hint{font-size:.82rem;line-height:1.4;color:var(--text-muted, rgba(255, 255, 255, .4))}.howto-mode-variants{list-style:none;padding:0;margin:10px 0 0;font-size:.84rem;line-height:1.6;display:flex;flex-direction:column;gap:6px}.howto-mode-variants li{display:flex;align-items:center;gap:5px;padding:1px 0;background:none;border:none;box-shadow:none;color:var(--text-secondary);font-size:.82rem}.howto-mini-icon{width:.95em;height:.95em;stroke-width:2.5;flex-shrink:0}.howto-mode-variants strong{font-weight:700}.howto-mode-variants li .howto-mini-icon,.howto-mode-variants li strong:first-of-type{color:var(--current-mode-color);stroke:currentColor}#modal-puzzle-howto .modal-content{max-height:78svh}#modal-puzzle-howto .puzzle-howto-title{font-family:var(--font-display);font-size:clamp(1.7rem,7vw,2rem);font-weight:900;letter-spacing:.14em;line-height:1;background:linear-gradient(120deg,var(--accent-cyan),var(--accent-magenta));-webkit-background-clip:text;background-clip:text;color:transparent}.puzzle-howto-lead{font-size:.8rem;line-height:1.5;color:var(--text-secondary);margin:8px 0 24px}.puzzle-howto-note{margin-top:12px;padding:10px 12px;background:#ffffff0a;border-left:2px solid var(--accent-cyan);border-radius:0 8px 8px 0;corner-shape:bevel}.puzzle-howto-note-title{font-size:.82rem;font-weight:700;color:var(--text-primary)}.puzzle-howto-note p{font-size:.82rem;line-height:1.5;color:var(--text-secondary);margin-top:4px}.puzzle-howto-note p+p{margin-top:8px}.puzzle-howto-track{display:flex;gap:4px;height:9px;margin:10px 0 8px}.puzzle-howto-seg{flex:1;border-radius:2px;corner-shape:bevel;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff4d}.puzzle-howto-seg.is-done{background:var(--accent-cyan);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-cyan) 80%,white),0 0 10px color-mix(in srgb,var(--accent-cyan) 65%,transparent)}.puzzle-howto-list{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:7px}.puzzle-howto-list li{position:relative;padding-left:13px;font-size:.82rem;line-height:1.5;color:var(--text-secondary)}.puzzle-howto-list li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;border-radius:1px;corner-shape:bevel;background:#ffffff59}.puzzle-howto-list strong{color:var(--text-primary);font-weight:700}.puzzle-review-container{--card-accent: var(--accent-cyan);--review-blunder: #ff5252;--review-solution: var(--accent-green);height:100%;width:100%;max-width:var(--container-max-w);margin:0 auto;display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm)}.puzzle-review-head{display:flex;align-items:baseline;gap:var(--spacing-xs);width:100%}.puzzle-review-level{flex:1;min-width:0;font-family:var(--font-display);font-size:clamp(1.05rem,4.2vw,1.4rem);font-weight:800;line-height:1;letter-spacing:.06em;color:var(--text-primary)}.puzzle-review-tag{font-family:var(--font-display);font-size:clamp(.56rem,2.1vw,.68rem);letter-spacing:.24em;color:var(--card-accent)}.puzzle-review-container .cell{cursor:default}.puzzle-review-container .cell:active{transform:translateZ(0)}.puzzle-review-container .cell.is-erased{border-color:var(--card-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--card-accent) 45%,transparent),0 0 16px color-mix(in srgb,var(--card-accent) 25%,transparent)}.puzzle-review-container #puzzle-review-grid.is-blunder .cell.is-erased{border-color:var(--review-blunder);box-shadow:0 0 0 1px color-mix(in srgb,var(--review-blunder) 45%,transparent),0 0 16px color-mix(in srgb,var(--review-blunder) 25%,transparent)}.puzzle-review-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;color:var(--card-accent)}.puzzle-review-path.is-solution{color:var(--review-solution)}.puzzle-review-path.is-blunder{color:var(--review-blunder)}.puzzle-review-container .game-grid .cell{z-index:2}.puzzle-review-pulse{animation:puzzle-review-pulse 1.5s ease-in-out infinite}@keyframes puzzle-review-pulse{0%,to{opacity:.1}50%{opacity:.2}}@media(prefers-reduced-motion:reduce){.puzzle-review-pulse{animation:none;opacity:.12}}.puzzle-review-formula{min-height:1.6em;text-align:center;font-family:var(--font-display);font-size:clamp(.8rem,3.4vw,1.05rem);letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--text-primary)}.puzzle-review-formula.is-note{font-family:inherit;font-size:clamp(.58rem,2.2vw,.72rem);letter-spacing:.06em;color:var(--text-secondary)}.puzzle-review-formula.is-blunder{color:var(--review-blunder)}.puzzle-review-formula.is-solution{color:var(--review-solution)}.puzzle-review-nav{display:flex;align-items:center;gap:var(--spacing-xs);width:100%}.puzzle-review-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;background:transparent;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .15s,border-color .15s}.puzzle-review-arrow:active{transform:scale(.92)}@media(hover:hover){.puzzle-review-arrow:hover{color:var(--card-accent);border-color:color-mix(in srgb,var(--card-accent) 55%,transparent)}}.puzzle-review-arrow svg{width:20px;height:20px}.puzzle-review-track{flex:1;min-width:0;display:flex;align-items:stretch;gap:3px;height:12px}.puzzle-review-seg{flex:1;min-width:0;padding:0;border:none;border-radius:2px;background:var(--glass-border);opacity:.5;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s,opacity .15s}.puzzle-review-seg.is-done{background:color-mix(in srgb,var(--card-accent) 55%,transparent);opacity:.8}.puzzle-review-seg.is-current{background:var(--card-accent);opacity:1}.puzzle-review-seg.is-solution{background:color-mix(in srgb,var(--review-solution) 55%,transparent);opacity:.7}.puzzle-review-seg.is-solution.is-done{opacity:.85}.puzzle-review-seg.is-solution.is-current{background:var(--review-solution);opacity:1}.puzzle-review-seg.is-blunder{background:color-mix(in srgb,var(--review-blunder) 70%,transparent);opacity:1}.puzzle-review-seg.is-blunder.is-current{background:var(--review-blunder);box-shadow:0 0 0 2px color-mix(in srgb,var(--review-blunder) 40%,transparent)}.puzzle-review-seg.is-final,.puzzle-review-seg.is-solution-final{flex:0 0 14px;border-radius:999px;corner-shape:bevel}.puzzle-review-seg.is-solution-final{background:color-mix(in srgb,var(--review-solution) 55%,transparent);opacity:.7}.puzzle-review-seg.is-solution-final.is-current{background:var(--review-solution);opacity:1}.puzzle-review-container .btn-back-bottom{align-self:center;margin-top:6px}.puzzle-review-step{text-align:center;font-size:clamp(.52rem,2vw,.64rem);letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.modal-update-content{max-width:290px;padding:36px 24px 28px;border:1px solid rgba(0,229,255,.2);box-shadow:0 0 40px #0009,0 0 20px #00e5ff0d}.update-title{display:block!important;width:100%!important;font-size:.85rem!important;font-weight:700!important;margin:0 0 28px!important;color:#fff!important;text-align:center!important;white-space:nowrap!important;letter-spacing:-.01em!important;background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:#ffffff!important;text-shadow:none!important;box-shadow:none!important}.update-buttons{width:100%}.btn-update{width:100%;height:48px;border-radius:8px;background:linear-gradient(135deg,#00e5ff40,#0091ea40);border:1px solid rgba(0,229,255,.3);color:#fff!important;font-size:.9rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:all .2s ease;box-shadow:0 4px 12px #0003}.btn-update:active{background:#00e5ff66;transform:scale(.98)}.game-container{height:100%;width:100%;max-width:var(--container-max-w);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);position:relative;touch-action:none}.game-header{width:100%;flex-shrink:0;text-align:center;display:flex;align-items:center;justify-content:center;position:relative}.game-hud{display:flex;justify-content:space-between;width:100%;gap:var(--spacing-xs)}.hud-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:clamp(6px,1.5vw,10px) clamp(3px,1vw,6px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:clamp(7px,2vw,11px);corner-shape:bevel}.hud-label{font-size:.65rem;font-weight:600;color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase}.hud-value{font-size:clamp(1.3rem,4vw,1.8rem);font-weight:900;line-height:1.2}.hud-score .hud-value{color:var(--accent-cyan)}.hud-chain-count .hud-value{color:var(--accent-green)}.game-timer-area{width:100%;min-height:clamp(70px,12vw,100px);display:flex;flex-direction:column;gap:var(--spacing-xs)}.game-timer-area.survival .combo-display{display:none}.game-timer-bar{position:relative;width:100%;padding:clamp(4px,1.2vw,8px) clamp(8px,2vw,12px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:clamp(8px,2vw,12px);display:flex;flex-direction:column;gap:4px;corner-shape:bevel}.game-timer-bar.hidden{display:none}.game-timer-label{font-size:.6rem;font-weight:600;color:var(--text-secondary);letter-spacing:1px}.game-timer-track{width:100%;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.game-timer-fill{height:100%;background:linear-gradient(90deg,var(--accent-green),var(--accent-cyan));border-radius:3px;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:width,opacity}.game-timer-fill.warning{background:linear-gradient(90deg,#ff9800,#ff5252);animation:bar-pulse-warning .6s ease-in-out infinite alternate}@keyframes bar-pulse-warning{to{opacity:.5}}.combo-display{width:100%;text-align:center;padding:4px 0}.combo-display.hidden{pointer-events:none}.combo-text{display:inline-block;font-size:clamp(1rem,3vw,1.3rem);font-weight:900;letter-spacing:.06em;color:var(--combo-color);text-shadow:0 0 20px rgba(255,215,64,.5)}@keyframes combo-pulse{0%{transform:scale(1.5)}50%{transform:scale(1.1)}to{transform:scale(1)}}.combo-timer-bar{width:100%;height:4px;background:#ffffff1a;border-radius:2px;margin-top:4px;overflow:hidden}.combo-timer-fill{height:100%;background:linear-gradient(90deg,var(--accent-gold),var(--accent-magenta));border-radius:2px;width:100%}.chain-info{position:relative;display:flex;justify-content:center;align-items:center;min-height:clamp(52px,10vw,68px);margin-bottom:-8px}.chain-info-main{display:flex;align-items:center;gap:8px}.chain-info-group{display:flex;flex-direction:column;align-items:center;gap:1px}.chain-next-group{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);white-space:nowrap}.chain-next-group .chain-info-label{font-size:clamp(.34rem,1.1vw,.45rem)}.chain-info-label{font-size:clamp(.48rem,1.5vw,.65rem);font-weight:600;letter-spacing:1px;color:var(--text-secondary);line-height:1}.chain-info-value{font-size:clamp(1.4rem,4.5vw,1.9rem);font-weight:900;line-height:1.2}.chain-current-value{color:var(--accent-cyan)}.chain-target-value{color:var(--accent-gold)}.chain-next-value{font-size:clamp(1rem,3.1vw,1.35rem);color:var(--text-next)}.chain-info-sep{font-size:1.2rem;font-weight:600;color:var(--text-secondary);opacity:.5}.chain-info.match .chain-current-value,.chain-info.match .chain-target-value{color:var(--accent-green)}.chain-info.over .chain-current-value{color:#ff5252}.chain-info.over .chain-target-value{color:#ff525280}.game-grid{width:100%;aspect-ratio:1 / 1;display:grid;grid-template-columns:repeat(var(--grid-size, 4),1fr);grid-template-rows:repeat(var(--grid-size, 4),1fr);gap:calc(1.5% * 4 / var(--grid-size, 4));padding:clamp(8px,2.5vw,16px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:clamp(10px,2.5vw,16px);corner-shape:bevel;position:relative;z-index:2;touch-action:none;container-type:inline-size}.solution-path-svg{overflow:visible}.cell{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:calc(100cqw / var(--grid-size, 6) * .45);font-weight:900;border-radius:calc(16% * 4 / var(--grid-size, 4));corner-shape:bevel;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:transform .1s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease;position:relative;will-change:transform,opacity;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.cell:active{transform:scale(.95) translateZ(0)}.cell[data-value="1"]{color:#80d8ff}.cell[data-value="2"]{color:#84ffff}.cell[data-value="3"]{color:#a7ffeb}.cell[data-value="4"]{color:#b9f6ca}.cell[data-value="5"]{color:#ccff90}.cell[data-value="6"]{color:#fff9c4}.cell[data-value="7"]{color:#ffe57f}.cell[data-value="8"]{color:#ffab91}.cell[data-value="9"]{color:#ff8a80}.cell.selected{background:#00e5ff26;border-color:var(--accent-cyan);box-shadow:0 0 16px #00e5ff4d,inset 0 0 8px #00e5ff1a;transform:scale(1.05) translateZ(0)}.cell.chain-match{background:#69f0ae26;border-color:var(--accent-green);box-shadow:0 0 16px #69f0ae4d,inset 0 0 8px #69f0ae1a}.cell.chain-over{background:#ff52521a;border-color:#ff525266}.cell.solution-highlight{background:color-mix(in srgb,var(--solution-color, #69f0ae) 22%,transparent);border-color:var(--solution-color, #69f0ae);box-shadow:0 0 18px color-mix(in srgb,var(--solution-color, #69f0ae) 40%,transparent),inset 0 0 8px color-mix(in srgb,var(--solution-color, #69f0ae) 15%,transparent);animation:solution-highlight-pulse 1.5s ease-in-out infinite;transition:background .3s,border-color .3s,box-shadow .3s}@keyframes solution-highlight-pulse{0%,to{transform:scale(1) translateZ(0);opacity:1}50%{transform:scale(1.06) translateZ(0);opacity:.92}}.cell.clearing{transition:none!important;animation:cell-finish .3s cubic-bezier(.25,.46,.45,.94) forwards!important;z-index:1000!important;pointer-events:none;background:color-mix(in srgb,var(--accent-green) 40%,transparent)!important;border-color:var(--accent-green)!important;box-shadow:0 0 20px color-mix(in srgb,var(--accent-green) 50%,transparent)!important}@keyframes cell-finish{0%{transform:scale(1) translateZ(0);opacity:1}30%{transform:scale(1.15) translateZ(0);background:color-mix(in srgb,var(--accent-green) 70%,#fff)!important;box-shadow:0 0 30px var(--accent-green),0 0 15px #fff!important}to{transform:scale(0) translateZ(0);opacity:0}}.cell.dropping{transition:none!important;animation:cell-drop-refined .1s cubic-bezier(0,0,.2,1) forwards!important;z-index:1}@keyframes cell-drop-refined{0%{transform:translateY(-100%) translateZ(0);opacity:1}to{transform:translateY(0) translateZ(0);opacity:1}}.level-bar{width:100%;padding:6px 10px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:10px;corner-shape:bevel;display:flex;flex-direction:column;gap:4px;font-size:.75rem;font-weight:700;color:var(--text-secondary);position:relative}.level-bar.hidden{display:none}.level-bar-head{display:flex;align-items:center;gap:6px}.level-bar-label{letter-spacing:1px}.level-bar-value{font-variant-numeric:tabular-nums;color:var(--accent-cyan)}.level-bar-track{width:100%;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.level-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-magenta));border-radius:2px;transition:width .25s ease}.level-bar.at-max-level .level-bar-value,.level-bar.at-max-level .level-bar-head{background:linear-gradient(135deg,#ff6e40,#ffd740,#ff6e40);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 6px rgba(255,110,64,.5))}.level-bar.at-max-level .level-bar-fill{background:linear-gradient(90deg,#ff6e40,#ffd740)}.countdown-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:50;background:#00000080;transition:opacity .2s ease}.countdown-overlay.hidden{opacity:0;pointer-events:none}.pause-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:60;background:#000000eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:opacity .2s ease}.pause-overlay.hidden{opacity:0;pointer-events:none}.pause-panel{width:90%;max-width:320px;padding:var(--spacing-lg) var(--spacing-md);text-align:center}.pause-title{font-family:var(--font-display);font-size:clamp(1.3rem,4vw,1.8rem);font-weight:700;letter-spacing:.08em;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pause-buttons{display:flex;flex-direction:column;gap:10px}#btn-resume{background:linear-gradient(135deg,var(--accent-cyan),#0080d4);color:#fff;font-weight:700;box-shadow:0 4px 16px #00e5ff59;border:none}@media(hover:hover){#btn-resume:hover{background:linear-gradient(135deg,#00d4ff,#0091ea);box-shadow:0 4px 20px #00e5ff66}}#btn-pause-retry{background:#ffffff1f;color:var(--text-primary);border:none;font-weight:700;box-shadow:0 4px 12px #0003}#btn-pause-title{background:#ffffff0d;color:var(--text-primary);border:none;font-weight:700;box-shadow:0 4px 12px #0003}@media(hover:hover){#btn-pause-retry:hover{background:#fff3;transform:translateY(-1px)}#btn-pause-title:hover{background:#ffffff1a;transform:translateY(-1px)}}#btn-pause-retry:active,#btn-pause-title:active{transform:translateY(0)}.countdown-text{font-size:clamp(4rem,15vw,7rem);font-weight:900;color:var(--text-primary);text-shadow:0 0 40px rgba(0,229,255,.6),0 0 80px rgba(0,229,255,.3);animation:countdown-pop .8s ease-out}.countdown-text.start{font-size:4rem;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(1px 0 0 rgba(255,255,255,.25)) drop-shadow(-1px 0 0 rgba(255,255,255,.25)) drop-shadow(0 1px 0 rgba(255,255,255,.25)) drop-shadow(0 -1px 0 rgba(255,255,255,.25)) drop-shadow(0 0 30px rgba(0,229,255,.5)) drop-shadow(0 0 60px rgba(234,0,255,.3))}.countdown-text.finish{font-size:4.5rem;background:linear-gradient(135deg,var(--accent-gold),var(--accent-magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(1px 0 0 rgba(255,255,255,.25)) drop-shadow(-1px 0 0 rgba(255,255,255,.25)) drop-shadow(0 1px 0 rgba(255,255,255,.25)) drop-shadow(0 -1px 0 rgba(255,255,255,.25)) drop-shadow(0 0 30px rgba(255,215,64,.5)) drop-shadow(0 0 60px rgba(224,64,251,.3));animation:finish-appear 1.5s linear forwards}@keyframes finish-appear{0%{transform:scale(1)}to{transform:scale(1.06)}}@keyframes countdown-pop{0%{transform:scale(2.5);opacity:0}30%{transform:scale(.9);opacity:1}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.btn-pause-float{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:30;background:none;border:none;color:var(--text-secondary);font-size:1.8rem;line-height:1;padding:8px;cursor:pointer;transition:color .2s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.btn-pause-float svg{display:block;width:1.8rem;height:1.8rem;stroke:currentColor;fill:none;stroke-width:2.2px;opacity:.85}.btn-pause-float:active{transform:translateY(-50%) scale(.93);color:var(--text-primary)}.btn-pause-float:hover svg,.btn-pause-float:active svg{opacity:1}.speed-up-notify{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;pointer-events:none;z-index:55}.speed-up-content{display:inline-flex;align-items:center;gap:6px;opacity:0}.speed-up-notify .speed-up-icon,.speed-up-notify svg{display:inline-block;width:1.8rem;height:1.8rem;vertical-align:middle;margin-right:6px;color:#00e5ff;stroke:currentColor;opacity:.95;filter:drop-shadow(0 0 6px rgba(0,229,255,.7)) drop-shadow(0 0 14px rgba(68,138,255,.5))}.speed-up-notify.hidden{display:none}.speed-up-notify.show .speed-up-content{animation:speed-up-appear 1.2s ease-out forwards}.speed-up-text{display:inline-block;font-size:1.5rem;font-weight:900;letter-spacing:3px;background:linear-gradient(90deg,#00e5ff,#448aff,#00e5ff);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 12px rgba(0,229,255,.6)) drop-shadow(0 0 24px rgba(68,138,255,.3))}@keyframes speed-up-appear{0%{opacity:0;transform:scale(1.8)}15%{opacity:1;transform:scale(.95)}25%{transform:scale(1.05)}35%{transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8) translateY(-10px)}}.max-speed-badge{position:absolute;top:2px;left:50%;transform:translate(-50%);font-size:.9rem;font-weight:900;letter-spacing:1.5px;background:linear-gradient(135deg,#ff6e40,#ffd740,#ff6e40);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 6px rgba(255,110,64,.5));pointer-events:none;white-space:nowrap;z-index:5;animation:max-speed-gradient .8s ease infinite}.max-speed-badge.hidden{display:none}@keyframes max-speed-pulse{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.08)}}@keyframes max-speed-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.score-popups{position:fixed;inset:0;pointer-events:none;z-index:50}.score-popup{position:absolute;font-size:1.4rem;font-weight:900;color:var(--accent-gold);text-shadow:0 0 10px rgba(255,215,64,.5);animation:score-fly .8s ease-out forwards;pointer-events:none}.score-popup .speed-bonus{color:#00e5ff;text-shadow:0 0 8px rgba(0,229,255,.6)}.score-popup .score-popup-icon,.score-popup svg.score-popup-icon{display:inline-block;width:1em;height:1em;vertical-align:-.15em;margin-left:2px;stroke:currentColor}.score-popup .combo-max{color:#ff6e40;text-shadow:0 0 8px rgba(255,110,64,.6)}@keyframes score-fly{0%{transform:translateY(0) scale(.5);opacity:0}20%{transform:translateY(-10px) scale(1.2);opacity:1}to{transform:translateY(-60px) scale(.8);opacity:0}}.puzzle-container{--card-accent: var(--accent-cyan);height:100%;width:100%;max-width:var(--container-max-w);margin:0 auto;display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);position:relative}.puzzle-tier-0{--card-accent: var(--accent-green)}.puzzle-tier-1{--card-accent: var(--accent-cyan)}.puzzle-tier-2{--card-accent: #64b5f6}.puzzle-tier-3{--card-accent: var(--accent-magenta)}.puzzle-tier-4{--card-accent: var(--accent-gold)}.puzzle-bar{display:flex;align-items:center;gap:var(--spacing-xs);width:100%}.puzzle-level{flex:1;min-width:0;font-family:var(--font-display);font-size:clamp(1.05rem,4.2vw,1.4rem);font-weight:800;line-height:1;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--card-accent)}.puzzle-best{font-family:var(--font-display);font-size:clamp(.55rem,2vw,.68rem);letter-spacing:.1em;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.puzzle-exit-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:clamp(40px,11vw,46px);height:clamp(40px,11vw,46px);padding:0;border-radius:28%;corner-shape:bevel;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .1s ease}.puzzle-exit-btn svg{display:block;width:clamp(22px,6vw,26px);height:clamp(22px,6vw,26px);stroke:currentColor;stroke-width:2.2px;fill:none}.puzzle-exit-btn:active{transform:scale(.92);color:var(--text-primary);background:#ffffff1a;border-color:#fff3}.puzzle-track{display:flex;gap:4px;width:100%;height:clamp(8px,2.4vw,11px)}.puzzle-track-seg{flex:1;border-radius:2px;corner-shape:bevel;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff4d;transition:background .25s ease,box-shadow .25s ease}.puzzle-track-seg.is-done{background:var(--card-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--card-accent) 80%,white),0 0 10px color-mix(in srgb,var(--card-accent) 65%,transparent)}.puzzle-readout{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;height:clamp(42px,11vw,52px)}.puzzle-readout-sum{display:none;font-family:var(--font-display);font-size:clamp(1.5rem,6vw,2rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-primary)}.puzzle-readout-rule{display:flex;align-items:baseline;gap:.5em}.puzzle-readout-chain{font-family:var(--font-display);font-size:clamp(1.35rem,5.6vw,1.75rem);font-weight:700;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--card-accent);text-shadow:0 0 18px color-mix(in srgb,var(--card-accent) 45%,transparent)}.puzzle-readout-conj{font-size:clamp(.68rem,2.7vw,.82rem);letter-spacing:.04em;color:var(--text-next)}.puzzle-readout-target{font-family:var(--font-display);font-size:clamp(1.35rem,5.6vw,1.75rem);font-weight:700;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text-primary)}.puzzle-readout.is-drawing .puzzle-readout-sum{display:block}.puzzle-readout.is-drawing .puzzle-readout-rule{display:none}.puzzle-readout.match .puzzle-readout-sum{color:var(--accent-green)}.puzzle-readout.over .puzzle-readout-sum{color:#ff5252}.puzzle-readout.short .puzzle-readout-sum{display:none}.puzzle-readout.short .puzzle-readout-rule{display:flex}.puzzle-readout.short .puzzle-readout-chain{color:var(--accent-gold);text-shadow:0 0 18px color-mix(in srgb,var(--accent-gold) 45%,transparent)}.puzzle-readout.short .puzzle-readout-target{color:var(--accent-gold)}.puzzle-grid-wrapper{position:relative;width:100%;aspect-ratio:1 / 1}.cell.puzzle-hole{background:#ffffff04;border-color:#ffffff0a;box-shadow:none;cursor:default;pointer-events:none;transition:none}.cell.puzzle-hole:active{transform:translateZ(0)}#puzzle-grid .cell.is-marked:not(.selected,.chain-match,.chain-over,.clearing){background:#00000047;border-color:#ffffff0d;box-shadow:inset 0 1px 5px #0006;color:#ffffff73}#puzzle-grid .cell.clearing{animation:none!important;transition:none!important;background:#ffffff04!important;border-color:#ffffff0a!important;box-shadow:none!important;font-size:0!important}#puzzle-grid .cell.clearing:after{content:attr(data-value);position:absolute;inset:-1px;display:flex;align-items:center;justify-content:center;font-size:calc(100cqw / var(--grid-size, 4) * .45);border-radius:inherit;corner-shape:bevel;background:color-mix(in srgb,var(--accent-green) 40%,transparent);border:1px solid var(--accent-green);box-shadow:0 0 20px color-mix(in srgb,var(--accent-green) 50%,transparent);animation:puzzle-cell-finish .3s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes puzzle-cell-finish{0%{transform:scale(1) translateZ(0);opacity:1}30%{transform:scale(1.15) translateZ(0)}to{transform:scale(0) translateZ(0);opacity:0}}.puzzle-generating{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;border-radius:clamp(10px,2.5vw,16px);corner-shape:bevel;background:#05060fb8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.puzzle-generating.hidden{display:none}.puzzle-generating-text{font-family:var(--font-display);font-size:clamp(.7rem,2.8vw,.9rem);letter-spacing:.24em;color:var(--card-accent);animation:puzzle-generating-blink 1s ease-in-out infinite}@keyframes puzzle-generating-blink{0%,to{opacity:.35}50%{opacity:1}}.puzzle-container.is-stuck-shake{animation:puzzle-stuck-shake .3s ease-in-out}@keyframes puzzle-stuck-shake{0%,to{transform:translate(0)}15%{transform:translate(-7px)}32%{transform:translate(6px)}50%{transform:translate(-4px)}68%{transform:translate(3px)}85%{transform:translate(-2px)}}.puzzle-stuck{position:absolute;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;border-radius:clamp(10px,2.5vw,16px);corner-shape:bevel;background:#05060f8c;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none;animation:puzzle-stuck-in .18s ease-out}.puzzle-stuck.hidden{display:none}.puzzle-stuck-text{font-family:var(--font-display);font-size:clamp(1.9rem,11vw,3rem);font-weight:900;line-height:1;letter-spacing:.04em;color:var(--accent-magenta);text-shadow:0 0 24px color-mix(in srgb,var(--accent-magenta) 55%,transparent);animation:puzzle-stuck-pop .36s cubic-bezier(.16,1,.3,1)}@keyframes puzzle-stuck-in{0%{opacity:0}to{opacity:1}}@keyframes puzzle-stuck-pop{0%{opacity:0;transform:scale(.7) rotate(-3deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.puzzle-container.is-stuck-shake,.puzzle-stuck,.puzzle-stuck-text{animation:none}}.puzzle-notice{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.96);z-index:30;display:flex;flex-direction:column;align-items:center;gap:4px;width:max-content;max-width:min(92vw,340px);padding:14px 22px;border-radius:12px;corner-shape:bevel;background:#0a0904f7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid color-mix(in srgb,var(--accent-gold) 55%,transparent);box-shadow:0 8px 32px #0000008c;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease}.puzzle-notice.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.puzzle-notice.is-message .puzzle-notice-lead,.puzzle-notice.is-message .puzzle-notice-rule,.puzzle-notice.is-rule .puzzle-notice-text{display:none}.puzzle-notice-text{font-size:clamp(.7rem,2.8vw,.84rem);line-height:1.5;letter-spacing:.04em;text-align:center;color:var(--text-primary)}.puzzle-notice-lead{font-family:var(--font-display);font-size:clamp(.62rem,2.4vw,.74rem);font-weight:700;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.puzzle-notice-rule{display:flex;align-items:baseline;gap:.5em}.puzzle-notice-chain{font-family:var(--font-display);font-size:clamp(1.5rem,6.2vw,1.9rem);font-weight:700;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--accent-gold);text-shadow:0 0 18px color-mix(in srgb,var(--accent-gold) 45%,transparent)}.puzzle-notice-conj{font-size:clamp(.68rem,2.7vw,.82rem);letter-spacing:.04em;color:var(--text-next)}.puzzle-notice-target{font-family:var(--font-display);font-size:clamp(1.5rem,6.2vw,1.9rem);font-weight:700;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text-primary)}@media(prefers-reduced-motion:reduce){.puzzle-notice,.puzzle-notice.show{transform:translate(-50%,-50%)}}.puzzle-confirm-title{font-family:var(--font-display);font-size:clamp(1rem,4.5vw,1.3rem);font-weight:800;letter-spacing:.08em;color:var(--text-primary)}.puzzle-confirm-quit{background:none;color:var(--text-secondary)}.puzzle-confirm-quit:active{color:var(--text-primary)}.puzzle-overlay{position:absolute;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);background:#05060fcc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:puzzle-overlay-in .2s ease}.puzzle-overlay.hidden{display:none}@keyframes puzzle-overlay-in{0%{opacity:0}to{opacity:1}}.puzzle-overlay-panel{width:100%;max-width:300px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-lg) var(--spacing-md) var(--spacing-md);text-align:center;border-radius:16px;corner-shape:bevel}.puzzle-overlay-headline{font-family:var(--font-display);font-size:clamp(1.9rem,9vw,2.6rem);font-weight:900;line-height:.95;letter-spacing:.12em;color:var(--text-primary);animation:puzzle-headline-in .42s cubic-bezier(.16,1,.3,1)}@keyframes puzzle-headline-in{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.puzzle-overlay-headline{animation:none}}.puzzle-overlay-headline.is-clear{background:linear-gradient(120deg,var(--accent-cyan),var(--accent-green));-webkit-background-clip:text;background-clip:text;color:transparent}.puzzle-overlay-headline.is-result{font-size:clamp(.62rem,2.4vw,.76rem);font-weight:700;letter-spacing:.3em;color:var(--text-secondary);opacity:.75}.puzzle-overlay-level{margin-top:var(--spacing-xs);font-family:var(--font-display);font-size:clamp(2.2rem,10vw,3rem);font-weight:900;line-height:1;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--text-primary)}.puzzle-overlay-note{font-size:clamp(.56rem,2.1vw,.68rem);letter-spacing:.06em;color:var(--text-secondary)}.puzzle-flags{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:var(--spacing-sm)}.puzzle-flag{padding:3px 9px;border-radius:999px;corner-shape:bevel;font-size:clamp(.5rem,1.9vw,.6rem);letter-spacing:.06em}.puzzle-flag-best{color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent-gold) 45%,transparent)}.puzzle-overlay-buttons{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%;margin-top:var(--spacing-md)}
