*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{--bg: #0f0e17;--surface: #1a1a2e;--surface2: #16213e;--surface3: #0f3460;--accent: #e94560;--accent2: #4ecdc4;--text: #fffffe;--text-dim: rgba(255,255,255,.55);--text-faint: rgba(255,255,255,.25);--radius: 10px;--radius-lg: 18px;--shadow: 0 4px 24px rgba(0,0,0,.4);--cell-size: 44px;--board-cols: 7;--board-rows: 8;--piece-I4: #FF6B6B;--piece-J5: #4ECDC4;--piece-N5: #45B7D1;--piece-C5: #96CEB4;--piece-P5: #FFEAA7;--piece-U5: #DDA0DD;--piece-T5: #F0B27A;--piece-L4: #98D8C8;--piece-Z5: #F7DC6F;--piece-S4: #BB8FCE}html,body{height:100%;overflow:hidden;overscroll-behavior:none}body{font-family:Poppins,system-ui,sans-serif;background:var(--bg);background:var(--body-bg, linear-gradient(160deg, #0f0e17 0%, #1a1a2e 50%, #16213e 100%));color:var(--text);touch-action:none;user-select:none;-webkit-user-select:none}#root{height:100%;display:flex;flex-direction:column}.app{height:100%;display:flex;flex-direction:column;overflow:hidden}.app--start{overflow:visible}.start-screen{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:24px 20px;position:relative}.start-content{display:flex;flex-direction:column;align-items:center;gap:22px;max-width:380px;width:100%;flex-shrink:0;box-sizing:border-box;padding:8px 0 24px}.logo-area{display:flex;flex-direction:column;align-items:center;gap:8px}.logo-puzzle{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:4px}.logo-piece{width:28px;height:28px;border-radius:6px;display:block;box-shadow:0 2px 8px #0000004d}.logo-title{font-size:2rem;font-weight:900;letter-spacing:-.02em;line-height:1;color:var(--text)}.logo-accent{color:var(--accent)}.logo-domain{font-size:1rem;font-weight:600;color:var(--text-dim);margin-top:-4px}.date-card{border-radius:var(--radius-lg);padding:6px 28px;text-align:center;line-height:15px}.date-weekday{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--accent2);margin-bottom:4px}.date-full{font-size:1.05rem;font-weight:700;color:var(--text);text-transform:capitalize}.instructions{text-align:center;color:var(--text-dim);font-size:.95rem;line-height:1.6}.instructions strong{color:var(--text)}.target-badges{display:flex;gap:10px;justify-content:center;margin-top:12px}.badge{padding:6px 14px;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.badge-month{background:#ff6b6b33;color:#ff6b6b;border:1.5px solid rgba(255,107,107,.4)}.badge-day{background:#4ecdc433;color:#4ecdc4;border:1.5px solid rgba(78,205,196,.4)}.badge-weekday{background:#f0b27a33;color:#f0b27a;border:1.5px solid rgba(240,178,122,.4)}.btn-start{background:linear-gradient(135deg,var(--accent) 0%,#c0392b 100%);color:#fff;border:none;border-radius:var(--radius-lg);padding:18px 56px;font-family:inherit;font-size:1.15rem;font-weight:800;letter-spacing:.1em;cursor:pointer;box-shadow:0 6px 24px #e9456073;transition:transform .15s ease,box-shadow .15s ease;width:100%;max-width:280px}.btn-start:active{transform:scale(.96);box-shadow:0 2px 12px #e945604d}.btn-start--modal{max-width:none;margin-top:24px;font-size:1rem;padding:16px}.daily-note{font-size:.78rem;color:var(--text-faint);letter-spacing:.03em}.week-streak-row{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.week-calendar-wrap{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%}.week-calendar{display:flex;gap:6px;justify-content:center;width:100%}.week-day{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;min-width:0}.week-day-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.week-day-dot{width:28px;height:28px;border-radius:50%;position:relative;transition:background .2s ease,box-shadow .2s ease,transform .08s ease;display:flex;align-items:center;justify-content:center}.week-day-num{font-size:.62rem;font-weight:600;color:var(--text-faint)}.week-day--completed .week-day-dot{background:#4caf50;box-shadow:0 0 8px #4caf5080}.week-day--completed .week-day-label,.week-day--completed .week-day-num{color:#4caf50}.week-day--late .week-day-dot{background:#4caf50;box-shadow:0 0 8px #4caf5080}.week-day--late .week-day-label,.week-day--late .week-day-num{color:#4caf50}.week-day--missed .week-day-dot{background:#ffffff1a}.week-day--playable{cursor:pointer}.week-day--playable:hover .week-day-dot{background:#ffffff2e;box-shadow:0 0 0 2px #ffffff26}.week-day-check{color:#ffffffe6;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease}.week-day-miss{color:#ffffff59;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease}.week-day-play{font-size:.55rem;color:#fffc;display:flex;align-items:center;justify-content:center;position:absolute;opacity:0;transition:opacity .15s ease}.week-day--playable:hover .week-day-play{opacity:1}.week-day--playable:hover .week-day-miss,.week-day--playable:hover .week-day-check{opacity:0}.week-day--playable:active .week-day-dot{background:#ffffff40;transform:scale(.92);transition:transform .08s ease}.week-day--today .week-day-dot{background:transparent;border:2px solid var(--accent);animation:today-pulse 2.4s ease-in-out infinite;will-change:opacity}.week-day--today .week-day-label,.week-day--today .week-day-num{color:var(--accent);font-weight:800}@keyframes today-pulse{0%,to{opacity:1}50%{opacity:.6}}.week-day--future .week-day-dot{background:#ffffff0d;border:1px dashed rgba(255,255,255,.1)}.week-day--shielded .week-day-dot{background:#4caf50;box-shadow:0 0 8px #4caf5080}.week-day--shielded .week-day-label,.week-day--shielded .week-day-num{color:#4caf50}.week-day-shield{color:#b2dfdbe6;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease}.streak-shields-col{display:flex;flex-direction:column;align-items:center;gap:4px}.shield-count{display:flex;align-items:center;gap:4px;color:#fff;font-size:.8rem;font-weight:700;background:#5f366c;border-radius:11px;padding:4px 10px;border:1px solid #282332;margin-top:11px}.streak-display{display:flex;flex-direction:column;align-items:center;gap:2px}.streak-flame-wrap{display:flex;align-items:center;justify-content:center;gap:6px}.flame{position:relative;width:var(--flame-size, 64px);height:calc(var(--flame-size, 64px) * 1.2);flex-shrink:0;animation:flame-ignite .9s cubic-bezier(.22,1.4,.36,1) both}@keyframes flame-ignite{0%{transform:scale(.2) translateY(30%);opacity:0}60%{transform:scale(1.18) translateY(-4%);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.flame-stage{position:absolute;top:0;right:0;bottom:0;left:0}.flame-aura{position:absolute;left:50%;top:58%;width:190%;height:160%;transform:translate(-50%,-50%);background:radial-gradient(closest-side,color-mix(in srgb,var(--flame-glow) 55%,transparent) 0%,color-mix(in srgb,var(--flame-glow) 18%,transparent) 55%,transparent 100%);animation:flame-aura 2.4s ease-in-out infinite;pointer-events:none}.flame--small .flame-aura{opacity:.55}.flame--epic .flame-aura,.flame--mega .flame-aura,.flame--legendary .flame-aura,.flame--divine .flame-aura{animation-duration:1.7s}.flame--legendary .flame-aura,.flame--divine .flame-aura{width:240%;height:200%}@keyframes flame-aura{0%,to{opacity:.75;transform:translate(-50%,-50%) scale(.92)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.flame-ring{position:absolute;left:50%;top:62%;width:90%;height:90%;border-radius:50%;border:2px solid var(--flame-glow);transform:translate(-50%,-50%) scale(.4);opacity:0;animation:flame-ring 2.6s ease-out infinite;pointer-events:none}@keyframes flame-ring{0%{transform:translate(-50%,-50%) scale(.4);opacity:.7}to{transform:translate(-50%,-50%) scale(2.1);opacity:0}}.flame-rays{position:absolute;left:50%;top:58%;width:230%;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--flame-glow) 34%,transparent) 0deg 7deg,transparent 7deg 24deg);-webkit-mask-image:radial-gradient(closest-side,#000 0%,transparent 100%);mask-image:radial-gradient(closest-side,#000 0%,transparent 100%);will-change:transform;animation:flame-rays 14s linear infinite;pointer-events:none}.flame--legendary .flame-rays,.flame--divine .flame-rays{animation-duration:8s}@keyframes flame-rays{to{transform:translate(-50%,-50%) rotate(360deg)}}.flame-svg,.flame-lightning,.flame-vb{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.flame-vb.flame-layer,.flame-vb.flame-core,.flame-vb.flame-tongue{transform-origin:50% 100%;will-change:transform}.flame-svg{transition:filter .3s ease}.streak-flame-wrap:not([data-heat="0"]) .flame-svg{filter:brightness(calc(1 + var(--heat, 0) * .09)) saturate(calc(1 + var(--heat, 0) * .12))}.flame-layer,.flame-core,.flame-tongue{transform-box:fill-box;transform-origin:50% 100%}.flame-layer--outer{animation:flame-flicker-a 1.5s ease-in-out infinite}.flame-layer--mid{animation:flame-flicker-b 1.1s ease-in-out infinite}.flame-layer--inner{animation:flame-flicker-c .8s ease-in-out infinite}.flame-core{animation:flame-core .6s ease-in-out infinite}.flame-tongue{animation:flame-tongue 1.3s ease-in-out infinite}.flame--large .flame-layer--outer,.flame--epic .flame-layer--outer{animation-duration:1.2s}.flame--mega .flame-layer--outer,.flame--legendary .flame-layer--outer,.flame--divine .flame-layer--outer{animation-duration:.95s}.flame--mega .flame-layer--mid,.flame--legendary .flame-layer--mid,.flame--divine .flame-layer--mid{animation-duration:.75s}.flame--mega .flame-layer--inner,.flame--legendary .flame-layer--inner,.flame--divine .flame-layer--inner{animation-duration:.55s}@keyframes flame-flicker-a{0%,to{transform:scale(1) skew(0)}25%{transform:scale(.97,1.05) skew(-2.5deg)}50%{transform:scale(1.03,.97) skew(1.5deg)}75%{transform:scale(.98,1.07) skew(3deg)}}@keyframes flame-flicker-b{0%,to{transform:scale(1) skew(0)}30%{transform:scale(1.04,.95) skew(3deg)}60%{transform:scale(.96,1.08) skew(-3deg)}}@keyframes flame-flicker-c{0%,to{transform:scale(1)}35%{transform:scale(.92,1.12) skew(-3deg)}70%{transform:scale(1.06,.92) skew(2deg)}}@keyframes flame-core{0%,to{transform:scale(1);opacity:.95}50%{transform:scale(.8,1.2);opacity:.7}}@keyframes flame-tongue{0%,to{transform:scale(1) rotate(0);opacity:.9}50%{transform:scale(.85,1.2) rotate(-6deg);opacity:1}}.flame-embers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.flame-ember{position:absolute;bottom:38%;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--flame-glow) 60%,transparent 100%);box-shadow:0 0 6px var(--flame-glow);opacity:0;animation:flame-ember 2s ease-out infinite}@keyframes flame-ember{0%{transform:translate(0) scale(1);opacity:0}12%{opacity:1}to{transform:translate(var(--drift, 0%),-150%) scale(.2);opacity:0}}.flame-lightning polyline{fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px var(--flame-glow)) drop-shadow(0 0 8px var(--flame-glow));opacity:0;animation:flame-bolt 3.2s steps(1) infinite}.flame-lightning--b{animation-delay:1.6s!important}@keyframes flame-bolt{0%,to{opacity:0}4%{opacity:1}8%{opacity:0}12%{opacity:.9}17%{opacity:0}}.flame--epic .flame-stage{animation:flame-sway 3.2s ease-in-out infinite}.flame--mega .flame-stage{animation:flame-sway 2.4s ease-in-out infinite,flame-throb 1.6s ease-in-out infinite}.flame--legendary .flame-stage,.flame--divine .flame-stage{animation:flame-sway 1.9s ease-in-out infinite,flame-throb 1.1s ease-in-out infinite}@keyframes flame-sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes flame-throb{0%,to{scale:1}50%{scale:1.06}}.streak-count{font-size:1rem;font-weight:900;color:var(--flame-color, #FF8C42);letter-spacing:.02em;text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none;line-height:1;animation:count-pop .7s cubic-bezier(.34,1.56,.64,1) .35s both}@keyframes count-pop{0%{transform:scale(.3) rotate(-12deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.streak-display--small .streak-count{font-size:.95rem}.streak-display--medium .streak-count{font-size:1.15rem}.streak-display--large .streak-count{font-size:1.35rem;text-shadow:0 0 10px color-mix(in srgb,var(--flame-color) 55%,transparent),0 1px 3px rgba(0,0,0,.6)}.streak-display--epic .streak-count{font-size:1.6rem;text-shadow:0 0 14px color-mix(in srgb,var(--flame-color) 70%,transparent),0 1px 3px rgba(0,0,0,.6)}.streak-display--mega,.streak-display--legendary,.streak-display--divine{padding:6px 0}.streak-display--mega .streak-count,.streak-display--legendary .streak-count,.streak-display--divine .streak-count{background:linear-gradient(100deg,var(--flame-color) 0%,#fff 45%,var(--flame-color) 90%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--flame-color) 70%,transparent));animation:count-pop .7s cubic-bezier(.34,1.56,.64,1) .35s both,count-shimmer 2.8s linear 1.1s infinite}.streak-display--mega .streak-count{font-size:1.85rem}.streak-display--legendary .streak-count,.streak-display--divine .streak-count{font-size:2.15rem}@keyframes count-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.streak-message{font-size:.7rem;font-weight:500;color:#ff8c4299;text-align:center;margin-top:4px;letter-spacing:.02em;line-height:1.3}.done-today{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 24px;border-radius:var(--radius-lg);background:#4caf5014;border:1.5px solid rgba(76,175,80,.25);width:100%;max-width:280px;text-align:center}.done-today-icon{font-size:1.6rem;color:#4caf50;font-weight:900;line-height:1}.done-today-title{font-size:1rem;font-weight:800;color:#4caf50}.done-today-sub{font-size:.78rem;color:var(--text-dim);font-weight:500}.ad-banner{width:100%;min-height:100px;border-radius:var(--radius);overflow:visible;background:#ffffff05;border:1px solid rgba(255,255,255,.04)}.ad-banner ins.adsbygoogle{display:block!important;width:100%!important;min-height:100px}.privacy-footer{text-align:center;margin-top:24px;padding-bottom:8px;position:absolute;bottom:0}.privacy-footer a{font-size:.75rem;color:var(--text-dim);text-decoration:none;opacity:.6;transition:opacity .2s}.privacy-footer a:hover{opacity:1}.ad-banner--start{margin:4px 0 0}.ad-banner--modal{border-radius:10px;margin:4px 0}.shield-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:200;display:flex;align-items:center;gap:12px;background:#1e143cf2;border:1px solid rgba(179,157,219,.4);border-radius:14px;padding:14px 20px;max-width:min(360px,calc(100vw - 32px));box-shadow:0 8px 32px #00000080,0 0 24px #9575cd4d;animation:toast-in .35s cubic-bezier(.34,1.56,.64,1)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(-20px) scale(.88)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-14px) scale(.92)}}.shield-toast--out{animation:toast-out .45s cubic-bezier(.4,0,1,1) forwards}.shield-toast-icon{display:flex;flex-shrink:0}.shield-toast-text{display:flex;flex-direction:column;gap:2px}.shield-toast-text strong{font-size:.95rem;color:#e0d4f7}.shield-toast-text span{font-size:.78rem;color:#e0d4f7a6;line-height:1.3}.shield-toast--used{border-color:#4db6ac66;box-shadow:0 8px 32px #00000080,0 0 24px #26a69a4d}.shield-toast--used .shield-toast-text strong{color:#b2dfdb}.shield-toast--used .shield-toast-text span{color:#b2dfdba6}.shield-toast--failed{border-color:#e5737366;box-shadow:0 8px 32px #00000080,0 0 24px #e539354d}.shield-toast--failed .shield-toast-text strong{color:#ef9a9a}.shield-toast--failed .shield-toast-text span{color:#ef9a9aa6}.rules-modal{background:var(--surface);border-radius:24px 24px 16px 16px;padding:24px 20px 32px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:20px;animation:modal-up .35s cubic-bezier(.22,1,.36,1);border:1px solid rgba(255,255,255,.08);box-shadow:0 -4px 40px #0006}.rules-list{display:flex;flex-direction:column;gap:20px}.rules-item{display:flex;gap:14px;align-items:flex-start}.rules-emoji{display:flex;width:28px;height:28px;flex-shrink:0;margin-top:2px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}.rules-item strong{display:block;font-size:.9rem;color:#ffffffe6;margin-bottom:4px}.rules-item p{font-size:.82rem;color:#ffffff8c;line-height:1.55;margin:0}.top-buttons{position:absolute;top:16px;right:16px;display:flex;gap:8px;align-items:center}.settings-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);transition:background .15s,color .15s;flex-shrink:0}.settings-btn:active{background:#ffffff1f;color:var(--text)}.settings-modal{background:var(--surface);border-radius:24px 24px 16px 16px;padding:24px 20px 32px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:20px;animation:modal-up .35s cubic-bezier(.22,1,.36,1);border:1px solid rgba(255,255,255,.08);box-shadow:0 -4px 40px #0006}.settings-header{display:flex;align-items:center;justify-content:space-between}.settings-title{font-size:1.2rem;font-weight:800;letter-spacing:-.01em}.settings-close{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim);transition:background .15s}.settings-close:active{background:#ffffff24}.settings-section{display:flex;flex-direction:column;gap:10px}.settings-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-row-label{font-size:.95rem;font-weight:600;color:var(--text)}.settings-row-sub{font-size:.75rem;color:var(--text-faint);margin-top:2px}.toggle-btn{flex-shrink:0;width:44px;height:26px;border-radius:999px;background:#ffffff1a;border:1.5px solid rgba(255,255,255,.15);cursor:pointer;position:relative;transition:background .2s,border-color .2s;touch-action:manipulation}.toggle-btn--on{background:var(--accent2);border-color:var(--accent2)}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s cubic-bezier(.22,1,.36,1);box-shadow:0 1px 4px #0000004d}.toggle-btn--on .toggle-thumb{transform:translate(18px)}.lang-select{position:relative;display:inline-block;margin-top:4px}.lang-select-trigger{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius);background:#ffffff0f;border:1.5px solid rgba(255,255,255,.12);cursor:pointer;transition:background .15s,border-color .15s;touch-action:manipulation;color:var(--text);font-size:.82rem;font-weight:500;min-width:130px}.lang-select-trigger:hover{background:#ffffff1c;border-color:#ffffff40}.lang-select-flag{font-size:1.1rem;line-height:1;flex-shrink:0}.lang-select-name{flex:1;text-align:left}.lang-select-chevron{flex-shrink:0;opacity:.5;transition:transform .18s}.lang-select-chevron--open{transform:rotate(180deg)}.lang-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;background:var(--surface, #1e1e2e);border:1.5px solid rgba(255,255,255,.14);border-radius:var(--radius);overflow:hidden;z-index:200;box-shadow:0 8px 24px #00000059;animation:langDropIn .13s ease}@keyframes langDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-select-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;cursor:pointer;font-size:.82rem;color:var(--text);transition:background .12s;text-align:left;touch-action:manipulation}.lang-select-option:hover{background:#ffffff14}.lang-select-option--active{background:#ffffff1a;font-weight:600}.lang-select-option--active:after{content:"✓";margin-left:auto;opacity:.7;font-size:.75rem}.settings-code-wrap{display:flex;gap:8px}.settings-code{flex:1;min-width:0;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:8px 12px;font-family:Courier New,monospace;font-size:.7rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;touch-action:auto;user-select:text;-webkit-user-select:text}.settings-code:focus{outline:none;border-color:#ffffff40}.settings-copy-btn{flex-shrink:0;background:var(--surface3);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:8px 14px;font-family:inherit;font-size:.78rem;font-weight:700;color:var(--text);cursor:pointer;white-space:nowrap;transition:background .15s;touch-action:manipulation}.settings-copy-btn:active{background:#1a4a8a}.settings-feedback{font-size:.78rem;font-weight:600;margin-top:2px}.settings-feedback--ok{color:#4caf50}.settings-feedback--error{color:var(--accent)}.settings-section-desc{font-size:.78rem;color:var(--text-dim);margin-bottom:4px}.settings-collapsible{display:flex;align-items:center;justify-content:space-between;width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:10px 14px;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--text-dim);cursor:pointer;transition:background .15s,color .15s;touch-action:manipulation}.settings-collapsible:active{background:#ffffff14;color:var(--text)}.collapsible-chevron{flex-shrink:0;transition:transform .2s ease}.collapsible-chevron--open{transform:rotate(180deg)}.collapsible-body{display:flex;flex-direction:column;gap:8px;padding-top:4px}.settings-reset-btn{background:#f4433626;border:1.5px solid rgba(244,67,54,.4);border-radius:var(--radius);padding:8px 14px;font-family:inherit;font-size:.85rem;font-weight:600;color:#f44336;cursor:pointer;transition:background .15s,border-color .15s;touch-action:manipulation}.settings-reset-btn:active{background:#f4433640;border-color:#f4433699}.confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.confirm-dialog{background:var(--surface);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:24px;max-width:320px;box-shadow:var(--shadow);animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.confirm-title{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:8px;line-height:1}.confirm-message{font-size:.85rem;color:var(--text-dim);line-height:1.5;margin-bottom:16px}.confirm-buttons{display:flex;gap:8px;justify-content:flex-end}.confirm-cancel,.confirm-delete{border-radius:var(--radius);padding:8px 14px;font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s;touch-action:manipulation;border:1px solid transparent}.confirm-cancel{background:#ffffff0d;color:var(--text)}.confirm-cancel:active{background:#ffffff1a}.confirm-delete{background:#f4433633;border-color:#f443364d;color:#f44336}.confirm-delete:active{background:#f443364d;border-color:#f4433680}.game-screen{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.game-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;background:var(--surface);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.header-back{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;transition:color .15s;touch-action:manipulation}.header-back:active{color:var(--text)}.header-title-area{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;height:36px}.header-title{position:absolute;font-size:1.1rem;font-weight:800;letter-spacing:-.02em;white-space:nowrap;transition:opacity .3s ease,transform .3s ease;transform:translateY(0);opacity:1;pointer-events:none}.header-title--hidden{opacity:0;transform:translateY(-120%);pointer-events:none}.accent{color:var(--accent)}.header-right{display:flex;align-items:center;gap:8px}.header-icon-btn{background:#4ecdc433;border:1.5px solid rgba(78,205,196,.5);border-radius:8px;width:32px;touch-action:manipulation;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4ecdc4;transition:background .15s,color .15s,border-color .15s,opacity .15s;flex-shrink:0}.header-icon-btn:hover:not(:disabled){background:#4ecdc459}.header-icon-btn:active{background:#4ecdc480}.header-icon-btn:disabled{opacity:.25;cursor:default}.header-icon-btn--danger{background:#ff6b6b33;border-color:#ff6b6b80;color:#ff6b6b}.header-icon-btn--danger:hover:not(:disabled){background:#ff6b6b59}.timer{position:absolute;display:flex;align-items:center;gap:5px;font-size:1rem;font-weight:700;color:var(--text-dim);white-space:nowrap;pointer-events:none;transition:opacity .3s ease,transform .3s ease,color .3s;transform:translateY(120%);opacity:0}.timer--running{color:var(--accent2);transform:translateY(0);opacity:1}.timer-icon{font-size:1.2rem}.timer-value{font-family:JetBrains Mono,Courier New,monospace;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.02em;min-width:42px;text-align:right}.patterns [data-pid=I4]{background-image:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(0,0,0,.22) 3px,rgba(0,0,0,.22) 5px)}.patterns [data-pid=J5]{background-image:repeating-linear-gradient(90deg,transparent 0,transparent 3px,rgba(0,0,0,.22) 3px,rgba(0,0,0,.22) 5px)}.patterns [data-pid=N5]{background-image:repeating-linear-gradient(45deg,transparent 0,transparent 3px,rgba(0,0,0,.22) 3px,rgba(0,0,0,.22) 5px)}.patterns [data-pid=C5]{background-image:repeating-linear-gradient(-45deg,transparent 0,transparent 3px,rgba(0,0,0,.22) 3px,rgba(0,0,0,.22) 5px)}.patterns [data-pid=P5]{background-image:repeating-linear-gradient(0deg,transparent 0,transparent 3px,rgba(0,0,0,.18) 3px,rgba(0,0,0,.18) 4px),repeating-linear-gradient(90deg,transparent 0,transparent 3px,rgba(0,0,0,.18) 3px,rgba(0,0,0,.18) 4px)}.patterns [data-pid=U5]{background-image:repeating-linear-gradient(45deg,transparent 0,transparent 3px,rgba(0,0,0,.18) 3px,rgba(0,0,0,.18) 4px),repeating-linear-gradient(-45deg,transparent 0,transparent 3px,rgba(0,0,0,.18) 3px,rgba(0,0,0,.18) 4px)}.patterns [data-pid=T5]{background-image:radial-gradient(circle,rgba(0,0,0,.28) 2px,transparent 2px);background-size:8px 8px}.patterns [data-pid=L4]{background-image:repeating-linear-gradient(0deg,transparent 0,transparent 5px,rgba(0,0,0,.22) 5px,rgba(0,0,0,.22) 8px)}.patterns [data-pid=Z5]{background-image:repeating-linear-gradient(45deg,transparent 0,transparent 5px,rgba(0,0,0,.22) 5px,rgba(0,0,0,.22) 8px)}.board-container{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:12px 8px 8px;overflow:hidden}.board-wrapper{width:100%;max-width:min(calc(100vw - 16px),calc((100vh - 244px)*.875))}@supports (height: 100dvh){.board-wrapper{max-width:min(calc(100dvw - 16px),calc((100dvh - 244px)*.875))}}.board{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(8,1fr);gap:3px;width:100%;aspect-ratio:7 / 8;touch-action:none}.cell{border-radius:var(--cell-rad, 6px);display:flex;align-items:center;justify-content:center;position:relative;transition:background .12s ease,transform .08s ease;cursor:default}.cell--dead{background:transparent;pointer-events:none}.cell--valid{background:var(--slot-bg, var(--surface3))}.cell--empty{background:var(--slot-bg, var(--surface3));transition:background .12s ease,opacity .15s ease}.cell--dim{background:var(--slot-bg, var(--surface3));--cell-opacity: .25}.cell--filled{cursor:grab;opacity:1;transition:filter .12s ease,transform .08s ease}.cell--filled:active{cursor:grabbing;filter:brightness(1.15);transform:scale(.95)}.cell--target{background:var(--target-bg, #1a4a8a);cursor:default}.cell--target-month,.cell--target-day,.cell--target-weekday{background:var(--target-bg, #1a4a8a);--cell-opacity: 1;border:2px solid var(--target-border, #4ecdc452)}.cell-label{font-size:clamp(.8rem,3.5vw,1.05rem);font-weight:900;letter-spacing:.03em;text-transform:uppercase;color:#ffffffc7;line-height:1;pointer-events:none;text-align:center;white-space:nowrap;overflow:hidden;max-width:100%;-webkit-user-select:none;user-select:none;text-shadow:0 1px 0 rgba(255,255,255,.22),0 -1px 0 rgba(0,0,0,.7),1px 0 0 rgba(255,255,255,.1),-1px 0 0 rgba(0,0,0,.4),0 2px 5px rgba(0,0,0,.7);opacity:var(--cell-opacity, .95)}.cell--preview{border-radius:var(--cell-rad, 6px);transition:background .06s ease}.cell--preview-ok{background:#4ecdc459;box-shadow:inset 0 0 0 2px #4ecdc4b3}.cell--preview-bad{background:#e945604d;box-shadow:inset 0 0 0 2px #e9456099}.piece-anchor-dot{width:6px;height:6px;border-radius:50%;background:#ffffff59;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.piece-tray{flex-shrink:0;height:172px;background:var(--surface);border-top:1px solid rgba(255,255,255,.07);padding:6px 0;display:flex;flex-direction:column;gap:4px;overflow:hidden;position:relative;transition:border-color .15s,background .15s}.piece-tray--drop-active{border-top-color:#4a9eff;background:color-mix(in srgb,var(--surface) 88%,#4a9eff 12%)}.piece-tray--over{border-top-color:#4ecdc4;background:color-mix(in srgb,var(--surface) 78%,#4ECDC4 22%);box-shadow:0 -4px 20px #4ecdc440}.piece-controls{display:flex;gap:8px;justify-content:center;padding:0 12px;flex-shrink:0}.ctrl-btn{display:flex;align-items:center;gap:5px;background:var(--surface3);border:1px solid rgba(255,255,255,.1);color:var(--text);border-radius:8px;padding:5px 14px;font-family:inherit;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s}.ctrl-btn:active{background:#1a4a8a;transform:scale(.95)}.tray-carousel{flex:1;min-height:0;display:flex;align-items:stretch;gap:4px;padding:0 8px}.tray-scroll{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;padding:4px 0}.tray-scroll::-webkit-scrollbar{display:none}.carousel-arrow{flex-shrink:0;width:44px;display:flex;align-items:center;justify-content:center;border:none;background:var(--surface2);border-radius:10px;cursor:pointer;transition:opacity .2s ease,background .15s ease;touch-action:manipulation;color:#ffffffd9}.carousel-arrow:active{background:var(--surface3);color:#fff}.carousel-arrow--hidden{opacity:0;pointer-events:none}.tray-empty{color:var(--text-faint);font-size:.82rem;font-weight:600;text-align:center;padding:12px;flex:1;display:flex;align-items:center;justify-content:center}.tray-footer{display:flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;padding:0 12px}.tray-counter{font-size:.65rem;font-weight:600;color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase}.tray-dice-btn{display:flex;align-items:center;gap:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:3px 8px;font-family:inherit;font-size:.62rem;font-weight:600;color:var(--text-faint);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;transition:background .15s,color .15s;touch-action:manipulation}.tray-dice-btn:active{background:#ffffff1f;color:var(--text)}.piece-mini{background:var(--surface2);border-radius:10px;padding:8px 10px;border:2px solid transparent;cursor:grab;display:flex;align-items:center;justify-content:center;scroll-snap-align:start;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease;touch-action:none}.piece-mini:active{transform:scale(.92);cursor:grabbing}.piece-mini--selected{border-color:var(--accent2);box-shadow:0 0 0 3px #4ecdc433,0 4px 12px #4ecdc426;background:#4ecdc414}.drag-piece{pointer-events:none;transform:scale(1.04);transition:none;filter:drop-shadow(0 5px 12px rgba(0,0,0,.38))}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:flex-end;justify-content:center;z-index:500;padding:16px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-in .3s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:24px 24px 16px 16px;padding:28px 24px 32px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:16px;animation:modal-up .35s cubic-bezier(.22,1,.36,1);border:1px solid rgba(255,255,255,.08);box-shadow:0 -4px 40px #0006}@keyframes modal-up{0%{transform:translateY(80px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-celebration{position:relative;width:110px;height:90px;display:flex;align-items:center;justify-content:center;font-size:3.4rem}.modal-trophy{display:block;position:relative;z-index:2;line-height:1;animation:trophy-drop .9s cubic-bezier(.22,1.5,.36,1) .15s backwards,trophy-float 3s ease-in-out 1.1s infinite;filter:drop-shadow(0 6px 14px rgba(255,200,60,.45))}.modal-trophy-glow{position:absolute;left:50%;top:50%;width:190px;height:190px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,#ffd65a8c,#ffd65a00);animation:aura-breathe 2.2s ease-in-out infinite;pointer-events:none}.modal-trophy-rays{position:absolute;left:50%;top:50%;width:230px;height:230px;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(255,224,120,.3) 0deg 8deg,transparent 8deg 24deg);-webkit-mask-image:radial-gradient(closest-side,#000 10%,transparent 100%);mask-image:radial-gradient(closest-side,#000 10%,transparent 100%);animation:spin-slow 16s linear infinite,fade-in .8s ease .4s backwards;pointer-events:none}.modal-sparkle{position:absolute;z-index:3;font-size:1rem;color:#fff3b0;text-shadow:0 0 8px #ffd54a,0 0 16px #ffb300;animation:twinkle 1.8s ease-in-out infinite;pointer-events:none}.modal-sparkle--a{top:4px;left:6px;animation-delay:.5s}.modal-sparkle--b{top:18px;right:2px;font-size:1.3rem;animation-delay:1.1s}.modal-sparkle--c{bottom:4px;left:22px;font-size:.8rem;animation-delay:1.6s}@keyframes trophy-drop{0%{transform:translateY(-120px) scale(.4) rotate(-25deg);opacity:0}55%{transform:translateY(8px) scale(1.25) rotate(8deg);opacity:1}75%{transform:translateY(-4px) scale(.95) rotate(-3deg)}to{transform:translateY(0) scale(1) rotate(0)}}@keyframes trophy-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes aura-breathe{0%,to{opacity:.7;transform:translate(-50%,-50%) scale(.9)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}}@keyframes spin-slow{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes twinkle{0%,to{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1) rotate(90deg);opacity:1}}.modal-title{font-size:1.8rem;font-weight:900;color:var(--text);letter-spacing:-.02em}.modal-date{font-size:.85rem;color:var(--text-dim);font-weight:600;text-transform:capitalize}.modal-time{display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--surface2);border-radius:14px;padding:14px 32px;width:100%;border:1px solid rgba(255,255,255,.06)}.modal-time-label{font-size:.72rem;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em}.modal-time-value{font-size:2.4rem;font-weight:900;color:var(--accent2);font-variant-numeric:tabular-nums;letter-spacing:-.03em}.modal-share-label{font-size:.78rem;color:var(--text-faint);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.share-buttons{display:flex;width:100%;z-index:999;pointer-events:all}.share-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 10px;touch-action:manipulation;border-radius:12px;border:none;font-family:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:transform .12s ease,filter .12s ease}.share-btn:active{transform:scale(.95);filter:brightness(.9)}.share-btn--native{background:var(--accent, #4ECDC4);color:#000;font-size:1rem;padding:15px;width:100%}.modal-actions{width:100%}.btn-play-again{position:relative;width:100%;padding:14px;background:none;border:1.5px solid rgba(255,255,255,.15);border-radius:12px;touch-action:manipulation;color:var(--text-dim);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:color .15s,border-color .15s;z-index:999;pointer-events:all}.btn-play-again:active{color:var(--text);border-color:#ffffff4d}#bmc-wbtn{transition:opacity .25s ease,transform .25s ease!important}body:has(.modal-overlay) #bmc-wbtn,body:has(.app--game) #bmc-wbtn{opacity:0!important;transform:scale(.7)!important;pointer-events:none!important}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}@media (max-height: 700px){.game-header{padding:7px 16px}.target-bar{padding:5px 16px}.board-container{padding:6px 8px 4px}.piece-tray{height:148px;padding:3px 0;gap:3px}.ctrl-btn{padding:3px 12px;font-size:.68rem}.ctrl-btn svg{width:16px;height:16px}.tray-scroll{padding:2px 0}.tray-counter{font-size:.62rem}.board-wrapper{max-width:min(calc(100vw - 16px),calc((100vh - 230px)*.875))}}@supports (height: 100dvh){@media (max-height: 700px){.board-wrapper{max-width:min(calc(100dvw - 16px),calc((100dvh - 230px)*.875))}}}@media (max-height: 580px){.piece-tray{height:130px}.piece-controls{display:none}.board-wrapper{max-width:min(calc(100vw - 16px),calc((100vh - 200px)*.875))}}@supports (height: 100dvh){@media (max-height: 580px){.board-wrapper{max-width:min(calc(100dvw - 16px),calc((100dvh - 200px)*.875))}}}@supports (padding: env(safe-area-inset-bottom)){.piece-tray{padding-bottom:max(12px,env(safe-area-inset-bottom))}}@media (min-width: 600px){.board{gap:4px}.cell{border-radius:var(--cell-rad, 8px)}.cell-label{font-size:clamp(.8rem,1.6vw,1rem)}.start-content{max-width:480px;gap:22px}.week-streak-row{display:flex;align-items:center;gap:20px;width:100%}.week-calendar-wrap{flex:1;align-items:flex-start}.week-streak-row .streak-display{flex-shrink:0;align-items:center}.week-day-dot{width:32px;height:32px}}@media (min-width: 960px){.start-screen{align-items:center;justify-content:center}.start-content{max-width:820px;min-height:auto;justify-content:start;display:grid;grid-template-columns:260px 1fr;grid-template-rows:auto auto auto auto auto;grid-template-areas:"logo      week" "logo      date" "logo      instr" "logo      btn" "logo      note";column-gap:48px;row-gap:16px;align-items:start}.logo-area{grid-area:logo;align-self:center}.week-streak-row{grid-area:week}.date-card{grid-area:date;width:100%}.instructions{grid-area:instr;text-align:left}.instructions .target-badges{justify-content:flex-start}.btn-start,.done-today{grid-area:btn;max-width:none;width:100%}.daily-note{grid-area:note;text-align:left}.game-screen{display:grid;grid-template-columns:1fr 260px;grid-template-rows:auto auto 1fr;grid-template-areas:"header  header" "targets targets" "board   tray";max-width:1060px;margin:0 auto;width:100%}.game-header{grid-area:header;max-width:none}.target-bar{grid-area:targets;max-width:none}.board-container{grid-area:board;max-width:none;padding:24px 32px}.board-wrapper{max-width:480px}.piece-tray{grid-area:tray;height:100%;border-top:none;border-left:1px solid rgba(255,255,255,.07);padding:12px 8px 16px;overflow-y:auto;overflow-x:hidden;flex-direction:column}.tray-carousel{flex-direction:column;padding:0;gap:6px}.carousel-arrow{display:none}.tray-scroll{flex-wrap:wrap;overflow-x:hidden;overflow-y:auto;height:auto;scroll-snap-type:none;justify-content:center;align-content:flex-start;gap:6px;padding:4px 2px}.piece-mini{scroll-snap-align:none;flex-shrink:0}.piece-controls{padding:0 4px}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.logo-area{animation:rise-in .6s cubic-bezier(.22,1,.36,1) backwards}.week-streak-row{animation:rise-in .6s cubic-bezier(.22,1,.36,1) .12s backwards}.date-card{animation:rise-in .6s cubic-bezier(.22,1,.36,1) .22s backwards}.btn-start,.done-today{animation:rise-in .6s cubic-bezier(.22,1,.36,1) .32s backwards}.logo-piece{animation:logo-float 3.4s ease-in-out infinite,piece-in .7s cubic-bezier(.34,1.56,.64,1) backwards;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.logo-piece:nth-child(1){animation-delay:0s,.05s}.logo-piece:nth-child(2){animation-delay:.6s,.15s}.logo-piece:nth-child(3){animation-delay:1.2s,.25s}.logo-piece:nth-child(4){animation-delay:1.8s,.35s}.logo-puzzle:hover .logo-piece{transform:rotate(8deg) scale(1.08)}@keyframes logo-float{0%,to{translate:0 0}50%{translate:0 -4px}}@keyframes piece-in{0%{opacity:0;transform:scale(.2) rotate(-90deg)}to{opacity:1;transform:scale(1) rotate(0)}}.logo-accent{background:linear-gradient(100deg,var(--accent) 0%,#ff9a8b 40%,var(--accent) 80%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@keyframes text-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.btn-start{position:relative;overflow:hidden}.btn-start:before{display:none}.btn-start:after{content:"";position:absolute;top:0;bottom:0;left:0;width:42%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.34),transparent);transform:translate(-130%) skew(-18deg);animation:btn-sweep 3.8s ease-in-out 1.2s infinite;pointer-events:none;will-change:transform}@keyframes btn-sweep{0%,58%{transform:translate(-130%) skew(-18deg)}to{transform:translate(340%) skew(-18deg)}}.done-today-icon{display:inline-block;animation:check-pop .7s cubic-bezier(.34,1.56,.64,1) .5s backwards}@keyframes check-pop{0%{transform:scale(0) rotate(-60deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.week-day{animation:rise-in .5s cubic-bezier(.22,1,.36,1) backwards}.week-day:nth-child(1){animation-delay:.15s}.week-day:nth-child(2){animation-delay:.2s}.week-day:nth-child(3){animation-delay:.25s}.week-day:nth-child(4){animation-delay:.3s}.week-day:nth-child(5){animation-delay:.35s}.week-day:nth-child(6){animation-delay:.4s}.week-day:nth-child(7){animation-delay:.45s}.week-day--completed .week-day-dot,.week-day--late .week-day-dot,.week-day--shielded .week-day-dot{animation:dot-pop .6s cubic-bezier(.34,1.56,.64,1) .5s backwards}@keyframes dot-pop{0%{transform:scale(.4)}to{transform:scale(1)}}.week-day-check svg{stroke-dasharray:14;stroke-dashoffset:0;animation:check-draw .45s ease-out .7s backwards}@keyframes check-draw{0%{stroke-dashoffset:14}to{stroke-dashoffset:0}}.week-day--today .week-day-dot:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;border:2px solid var(--accent);animation:dot-ping 2.4s ease-out infinite;pointer-events:none}@keyframes dot-ping{0%{transform:scale(1);opacity:.8}to{transform:scale(1.8);opacity:0}}.shield-toast-icon{animation:icon-bounce 1s cubic-bezier(.34,1.56,.64,1) .3s 2}@keyframes icon-bounce{0%,to{transform:translateY(0) scale(1) rotate(0)}35%{transform:translateY(-8px) scale(1.25) rotate(-12deg)}65%{transform:translateY(0) scale(.95) rotate(8deg)}}.shield-toast:not(.shield-toast--used):not(.shield-toast--failed) .shield-toast-icon{filter:drop-shadow(0 0 8px rgba(255,214,90,.8))}.rules-item{animation:rise-in .5s cubic-bezier(.22,1,.36,1) backwards}.rules-item:nth-child(1){animation-delay:.1s}.rules-item:nth-child(2){animation-delay:.18s}.rules-item:nth-child(3){animation-delay:.26s}.rules-item:nth-child(4){animation-delay:.34s}.confirm-dialog{animation:pop-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes pop-in{0%{opacity:0;transform:scale(.85) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.game-header{animation:header-in .45s cubic-bezier(.22,1,.36,1) backwards}@keyframes header-in{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.board-container .board{animation:board-in .6s cubic-bezier(.22,1,.36,1) .1s backwards}@keyframes board-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.cell--filled{animation:var(--pop-anim, cell-pop) var(--pop-dur, .42s) var(--pop-ease, cubic-bezier(.34, 1.56, .64, 1)) calc(var(--pop-i, 0) * 18ms + var(--land, 0ms)) backwards}@keyframes cell-pop{0%{transform:scale(1);filter:brightness(1.4)}35%{transform:scale(1.07);filter:brightness(1.3)}70%{transform:scale(.985);filter:brightness(1.05)}to{transform:scale(1);filter:brightness(1)}}.cell--preview-ok{animation:preview-glow .9s ease-in-out infinite}@keyframes preview-glow{0%,to{opacity:1}50%{opacity:.72}}.cell--preview-bad{animation:preview-shake .3s ease-in-out}@keyframes preview-shake{0%,to{transform:translate(0)}25%{transform:translate(-1.5px)}75%{transform:translate(1.5px)}}.cell--target:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle at 50% 50%,rgba(78,205,196,.28),transparent 70%);animation:target-glow 2.6s ease-in-out infinite;pointer-events:none}@keyframes target-glow{0%,to{opacity:.25}50%{opacity:1}}.board--won{border-radius:12px;animation:board-win-glow 1.6s ease-out .3s}@keyframes board-win-glow{0%{box-shadow:0 0 #4ecdc400}35%{box-shadow:0 0 60px 8px #4ecdc48c}to{box-shadow:0 0 #4ecdc400}}.board--won .cell--filled{animation:var(--pop-anim, cell-pop) var(--pop-dur, .42s) var(--pop-ease, cubic-bezier(.34, 1.56, .64, 1)) calc(var(--pop-i, 0) * 18ms + var(--land, 0ms)) backwards,cell-wave .8s ease-in-out calc(.45s + var(--wave, 0) * 70ms) both;pointer-events:none}@keyframes cell-wave{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(1.22) translateY(-5px);filter:brightness(1.55) saturate(1.3);z-index:2}to{transform:scale(1);filter:brightness(1)}}.piece-tray{animation:tray-in .5s cubic-bezier(.22,1,.36,1) .15s backwards}@keyframes tray-in{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.piece-mini{animation:tray-piece-in .5s cubic-bezier(.34,1.56,.64,1) backwards}.piece-mini:nth-child(1){animation-delay:.2s}.piece-mini:nth-child(2){animation-delay:.25s}.piece-mini:nth-child(3){animation-delay:.3s}.piece-mini:nth-child(4){animation-delay:.35s}.piece-mini:nth-child(5){animation-delay:.4s}.piece-mini:nth-child(6){animation-delay:.45s}.piece-mini:nth-child(7){animation-delay:.5s}.piece-mini:nth-child(8){animation-delay:.55s}.piece-mini:nth-child(9){animation-delay:.6s}.piece-mini:nth-child(10){animation-delay:.65s}@keyframes tray-piece-in{0%{opacity:0;transform:translateY(24px) scale(.7) rotate(-8deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.piece-mini:hover{transform:translateY(-2px)}.piece-mini--selected{transform:translateY(-3px)}.piece-mini--selected:active{transform:scale(.92)}.ctrl-btn:active svg{transform:rotate(40deg)}.ctrl-btn svg{transition:transform .2s ease}.drag-piece{animation:lift-in .18s cubic-bezier(.34,1.56,.64,1)}@keyframes lift-in{0%{filter:drop-shadow(0 0 0 rgba(0,0,0,0))}to{filter:drop-shadow(0 5px 12px rgba(0,0,0,.38))}}.timer--running .timer-icon{display:inline-block;animation:timer-wiggle 2s ease-in-out infinite;transform-origin:50% 60%}@keyframes timer-wiggle{0%,85%,to{transform:rotate(0)}90%{transform:rotate(-14deg)}95%{transform:rotate(14deg)}}.modal>*{animation:rise-in .5s cubic-bezier(.22,1,.36,1) backwards}.modal>:nth-child(2){animation-delay:.35s}.modal>:nth-child(3){animation-delay:.42s}.modal>:nth-child(4){animation-delay:.5s}.modal>:nth-child(5){animation-delay:.58s}.modal>:nth-child(6){animation-delay:.66s}.modal>:nth-child(7){animation-delay:.74s}.modal>.modal-celebration{animation:none}.modal-title{background:linear-gradient(100deg,#fff,#ffe9a0,#fff 70%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rise-in .5s cubic-bezier(.22,1,.36,1) .35s backwards!important}.modal-time-value{display:inline-block;animation:time-pop .7s cubic-bezier(.34,1.56,.64,1) .65s backwards}@keyframes time-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.share-btn--native{position:relative;overflow:hidden}.share-btn--native:after{content:"";position:absolute;top:0;bottom:0;left:0;width:42%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:translate(-130%) skew(-18deg);animation:btn-sweep 3.4s ease-in-out 1.5s infinite;pointer-events:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.flame{touch-action:manipulation;-webkit-user-select:none;user-select:none;outline:none}.flame:before{content:"";position:absolute;top:-12px;right:-18px;bottom:-6px;left:-18px;border-radius:50%}.flame:focus-visible .flame-hit{filter:drop-shadow(0 0 6px #fff)}.flame-lean,.flame-hit{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:50% 88%}.flame-lean{rotate:var(--lean, 0deg);transition:rotate .25s ease-out}.flame-hit{scale:calc(1 + var(--heat, 0) * .045);transition:scale .25s cubic-bezier(.34,1.56,.64,1);will-change:transform}.flame-aura{scale:calc(1 + var(--heat, 0) * .14);transition:scale .3s ease}.streak-flame-wrap[data-heat="3"] .flame-embers,.streak-flame-wrap[data-heat="4"] .flame-embers,.streak-flame-wrap[data-heat="5"] .flame-embers{filter:brightness(1.4)}.streak-flame-wrap[data-heat="4"] .flame-layer--outer,.streak-flame-wrap[data-heat="5"] .flame-layer--outer{animation-duration:.6s}.streak-flame-wrap[data-heat="4"] .flame-layer--mid,.streak-flame-wrap[data-heat="5"] .flame-layer--mid{animation-duration:.45s}.streak-count{transition:scale .2s}.flame-bursts{position:absolute;left:50%;top:62%;width:0;height:0;z-index:5;pointer-events:none}.flame-burst{position:absolute;left:0;top:0}.flame-shock{position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 14px var(--flame-glow),inset 0 0 12px var(--flame-glow);transform:translate(-50%,-50%) scale(.2);opacity:0;animation:flame-shock .7s cubic-bezier(.15,.7,.3,1) forwards}.flame-burst--blast .flame-shock{animation-duration:1.1s;border-width:5px}@keyframes flame-shock{0%{transform:translate(-50%,-50%) scale(.2);opacity:.95}to{transform:translate(-50%,-50%) scale(4);opacity:0}}.flame-burst--blast .flame-shock{animation-name:flame-shock-big}@keyframes flame-shock-big{0%{transform:translate(-50%,-50%) scale(.2);opacity:1}to{transform:translate(-50%,-50%) scale(8);opacity:0}}.flame-flash{position:absolute;left:0;top:0;width:160px;height:160px;border-radius:50%;background:radial-gradient(closest-side,#fff 0%,color-mix(in srgb,var(--flame-glow) 70%,transparent) 45%,transparent 100%);transform:translate(-50%,-50%) scale(.3);opacity:0;animation:flame-flash .8s ease-out forwards}@keyframes flame-flash{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}to{transform:translate(-50%,-50%) scale(2.6);opacity:0}}.flame-spark{position:absolute;left:0;top:0;opacity:0;animation:flame-spark .95s cubic-bezier(.2,.8,.3,1) forwards}.flame-spark--dot{border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--flame-glow) 65%,transparent 100%);box-shadow:0 0 8px var(--flame-glow)}.flame-spark--flame{filter:drop-shadow(0 0 5px var(--flame-glow))}.flame-burst--blast .flame-spark{animation-duration:1.4s}@keyframes flame-spark{0%{transform:translate(-50%,-50%) translate(0) scale(.4) rotate(0);opacity:0}12%{opacity:1}55%{transform:translate(-50%,-50%) translate(var(--dx),var(--dy)) scale(1) rotate(var(--rot));opacity:1}to{transform:translate(-50%,-50%) translate(calc(var(--dx) * 1.12),calc(var(--dy) + 46px)) scale(.15) rotate(calc(var(--rot) * 1.6));opacity:0}}.flame-blast-rays{position:absolute;left:50%;top:58%;width:360%;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--flame-glow) 60%,#fff) 0deg 5deg,transparent 5deg 18deg);-webkit-mask-image:radial-gradient(closest-side,#000 0%,transparent 100%);mask-image:radial-gradient(closest-side,#000 0%,transparent 100%);opacity:0;pointer-events:none}.flame--blast .flame-blast-rays{animation:blast-rays 1.5s ease-out}@keyframes blast-rays{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(0)}15%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%) scale(1) rotate(70deg)}}.flame--blast .flame-svg{filter:brightness(1.7) saturate(1.3)}.icon-check-path{stroke-dasharray:20;animation:check-draw-long .5s ease-out .8s backwards}@keyframes check-draw-long{0%{stroke-dashoffset:20}to{stroke-dashoffset:0}}.modal-sparkle svg{display:block}.timer-icon{display:inline-flex}.week-day-play svg{display:block}.done-today-icon{display:inline-flex;line-height:0;margin-bottom:4px}.start-screen{overflow-x:clip}.flame--interactive{cursor:pointer}.flame:not(.flame--interactive):before{display:none}.flame-ember--snow{bottom:auto;top:4%;border-radius:50%;background:#fff;box-shadow:0 0 6px 1px var(--flame-glow);animation-name:flame-snow}@keyframes flame-snow{0%{transform:translate(0) scale(.6);opacity:0}15%{opacity:1}to{transform:translate(var(--drift, 0%),230%) scale(1);opacity:0}}.flame-ember--bubble{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.9),transparent 45%);border:1px solid color-mix(in srgb,var(--flame-glow) 85%,#fff);box-shadow:none;animation-name:flame-bubble}@keyframes flame-bubble{0%{transform:translate(0) scale(.5);opacity:0}15%{opacity:.95}50%{transform:translate(calc(var(--drift, 0%) * -.4),-90%) scale(1)}to{transform:translate(var(--drift, 0%),-190%) scale(1.25);opacity:0}}.flame-ember--star{border-radius:0;background:#fff;box-shadow:none;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation-name:flame-star}@keyframes flame-star{0%{transform:translate(0) scale(0) rotate(0);opacity:0}20%{opacity:1}to{transform:translate(var(--drift, 0%),-170%) scale(1.5) rotate(180deg);opacity:0}}.flame-ember--petal{border-radius:80% 0;background:linear-gradient(135deg,#fff,var(--flame-glow));box-shadow:none;animation-name:flame-petal}@keyframes flame-petal{0%{transform:translate(0) scale(.5) rotate(0);opacity:0}15%{opacity:1}60%{transform:translate(calc(var(--drift, 0%) * -.8),-90%) scale(1) rotate(120deg)}to{transform:translate(var(--drift, 0%),-150%) scale(.8) rotate(300deg);opacity:0}}.flame-spark--p-star.flame-spark--dot{border-radius:0;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#fff;box-shadow:none;filter:drop-shadow(0 0 3px var(--flame-glow))}.flame-spark--p-snow.flame-spark--dot{background:#fff}.flame-spark--p-bubble.flame-spark--dot{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.9),transparent 50%);border:1px solid #fff;box-shadow:none}.flame-spark--p-petal.flame-spark--dot{border-radius:80% 0;background:linear-gradient(135deg,#fff,var(--flame-glow));box-shadow:none}.flame--fx-rainbow{animation:flame-ignite .9s cubic-bezier(.22,1.4,.36,1) both,flame-hue 5s linear infinite}@keyframes flame-hue{to{filter:hue-rotate(360deg)}}.flame--fx-ghost .flame-svg{opacity:.82;mix-blend-mode:screen}.flame--fx-ghost .flame-stage{animation:flame-float 3.4s ease-in-out infinite}@keyframes flame-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5%)}}.flame--fx-void .flame-layer--outer{stroke:#cfa8ff;stroke-width:1.6}.flame--fx-void .flame-aura{background:radial-gradient(closest-side,rgba(0,0,0,.85) 0%,color-mix(in srgb,var(--flame-glow) 40%,transparent) 62%,transparent 100%)}.flame--fx-void .flame-ember{background:#d8b8ff;box-shadow:0 0 6px #8b3dff}.flame-glints{position:absolute;top:-10%;right:-20%;bottom:-10%;left:-20%;pointer-events:none}.flame-glint{position:absolute;width:14px;height:14px;background:#fff;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0;animation:glint 2.6s ease-in-out infinite}.flame-glint--0{left:4%;top:18%;animation-delay:0s}.flame-glint--1{right:2%;top:8%;animation-delay:.7s;width:10px;height:10px}.flame-glint--2{right:8%;top:56%;animation-delay:1.4s}.flame-glint--3{left:8%;top:62%;animation-delay:2s;width:9px;height:9px}@keyframes glint{0%,to{opacity:0;transform:scale(0) rotate(0)}50%{opacity:1;transform:scale(1) rotate(90deg)}}.flame--locked .flame-svg{filter:brightness(0) opacity(.5)}.flame--locked .flame-aura,.flame--locked .flame-tongue{display:none}.flame--locked .flame-layer,.flame--locked .flame-core{animation:none}.flame--locked .flame-core{opacity:0}.flame--unlit .flame-svg{filter:saturate(.85) brightness(.72)}.flame--unlit .flame-aura{opacity:.2;animation-duration:4s}.flame--unlit .flame-layer--outer{animation-duration:3.6s}.flame--unlit .flame-layer--mid{animation-duration:3s}.flame--unlit .flame-layer--inner{animation-duration:2.4s}.flame--unlit .flame-core{animation-duration:1.8s}.flame--unlit{animation:flame-ignite .9s cubic-bezier(.22,1.4,.36,1) both,unlit-breathe 3s ease-in-out 1s infinite}@keyframes unlit-breathe{0%,to{opacity:.8}50%{opacity:1}}.flame--lite{animation:none}.flame--lite .flame-aura{width:150%;height:130%;animation:none;opacity:.7}.flame--lite .flame-svg{filter:none}.flame--lite .flame-layer,.flame--lite .flame-core{animation:none}.flame--lite .flame-svg{transform-origin:50% 100%;animation:lite-flicker 1.7s ease-in-out infinite;will-change:transform}.flame--lite.flame--locked .flame-svg{animation:none;will-change:auto}@keyframes lite-flicker{0%,to{transform:scale(1) skew(0)}30%{transform:scale(.96,1.07) skew(-2.5deg)}62%{transform:scale(1.04,.96) skew(2deg)}}.flame-card:hover .flame--lite .flame-layer--outer,.flame-card--focus .flame--lite .flame-layer--outer{animation:flame-flicker-a 1.6s ease-in-out infinite}.flame--lite .flame-tongue,.flame--lite.flame--locked .flame-aura{display:none}.flame--lite.flame--locked .flame-svg{filter:brightness(0) opacity(.5)}.flame--divine .flame-rays{animation-duration:6s}.flame--divine:after{content:"";position:absolute;left:50%;top:58%;width:175%;aspect-ratio:1;border-radius:50%;border:2px dashed color-mix(in srgb,var(--flame-glow) 65%,transparent);transform:translate(-50%,-50%);animation:spin-slow 14s linear infinite;pointer-events:none}.flame--lite.flame--divine:after{display:none}.rarity--common{--rar: #9aa8bf;--rar-soft: rgba(154, 168, 191, .16)}.rarity--rare{--rar: #4ea8ff;--rar-soft: rgba(78, 168, 255, .18)}.rarity--epic{--rar: #b86bff;--rar-soft: rgba(184, 107, 255, .2)}.rarity--legendary{--rar: #ffb02e;--rar-soft: rgba(255, 176, 46, .2)}.rarity--mythic{--rar: #ff4fa3;--rar-soft: rgba(255, 79, 163, .22)}.rarity--divine{--rar: #7fe9ff;--rar-soft: rgba(127, 233, 255, .22)}.rarity-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--rar);background:var(--rar-soft);border:1px solid color-mix(in srgb,var(--rar) 55%,transparent)}.rarity-pill.rarity--divine,.rarity-pill.rarity--mythic,.rarity-pill.rarity--legendary{background:linear-gradient(100deg,var(--rar-soft),color-mix(in srgb,var(--rar) 40%,transparent),var(--rar-soft));background-size:220% 100%;animation:text-shimmer 3s linear infinite}.flame-collection-btn{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:5px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:var(--text-dim);font-family:inherit;font-size:.7rem;font-weight:700;letter-spacing:.03em;cursor:pointer;touch-action:manipulation;transition:background .2s,color .2s,transform .15s,border-color .2s}.flame-collection-btn b{color:var(--text);font-weight:800}.flame-collection-btn:hover{background:#ffffff1f;color:var(--text);border-color:#ffffff4d}.flame-collection-btn:active{transform:scale(.94)}.collection-modal{background:var(--surface);border-radius:24px 24px 16px 16px;padding:22px 18px 26px;width:100%;max-width:460px;max-height:92vh;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;display:flex;flex-direction:column;gap:14px;border:1px solid rgba(255,255,255,.08);box-shadow:0 -4px 40px #00000073;animation:modal-up .4s cubic-bezier(.22,1,.36,1)}.collection-count{font-size:.78rem;color:var(--text-dim);font-weight:600;margin-top:2px}.collection-progress{height:6px;border-radius:99px;background:#ffffff14;overflow:hidden;flex-shrink:0}.collection-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffb02e,#ff5a1f,#ff4fa3);transform-origin:left;animation:bar-grow .9s cubic-bezier(.22,1,.36,1) .2s backwards}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.collection-stage{position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 16px 18px;border-radius:20px;background:radial-gradient(120% 90% at 50% 0%,var(--rar-soft),transparent 70%),#ffffff08;border:1px solid color-mix(in srgb,var(--rar) 35%,transparent);overflow:hidden;animation:rise-in .5s cubic-bezier(.22,1,.36,1) .08s backwards}.collection-stage-flame{position:relative;min-height:150px;display:flex;align-items:flex-end;justify-content:center;padding:18px 40px 16px;animation:stage-swap .55s cubic-bezier(.34,1.4,.64,1)}@keyframes stage-swap{0%{opacity:0;transform:translateY(14px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.collection-stage-flame .streak-flame-wrap{gap:0}.collection-stage-lock{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);color:#ffffffd9;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6));animation:lock-bob 2.4s ease-in-out infinite;pointer-events:none}@keyframes lock-bob{0%,to{transform:translate(-50%,-50%) rotate(-4deg)}50%{transform:translate(-50%,-56%) rotate(4deg)}}.collection-tap{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-weight:700}.collection-name{font-size:1.35rem;font-weight:900;letter-spacing:-.01em;animation:rise-in .4s ease backwards}.collection-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.collection-req{font-size:.76rem;color:var(--text-dim);font-weight:600}.collection-equip{margin-top:6px;display:inline-flex;align-items:center;gap:6px;padding:10px 26px;border:none;border-radius:12px;font-family:inherit;font-size:.88rem;font-weight:800;color:#14121f;background:linear-gradient(135deg,var(--rar),color-mix(in srgb,var(--rar) 60%,#fff));cursor:pointer;touch-action:manipulation;transition:transform .15s,filter .15s;box-shadow:0 4px 18px color-mix(in srgb,var(--rar) 45%,transparent)}.collection-equip:active{transform:scale(.95)}.collection-equip--on{background:#ffffff14;color:var(--text-dim);box-shadow:none;cursor:default}.collection-locked-info{margin-top:6px;width:100%;max-width:280px;display:flex;flex-direction:column;gap:8px;align-items:center;font-size:.74rem;font-weight:600;color:var(--text-dim);text-align:center}.collection-locked-bar{width:100%;height:8px;border-radius:99px;background:#ffffff1a;overflow:hidden}.collection-locked-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rar),color-mix(in srgb,var(--rar) 55%,#fff));animation:bar-grow .8s cubic-bezier(.22,1,.36,1) .2s backwards;transform-origin:left}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.flame-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;min-width:0;border-radius:14px;border:1.5px solid color-mix(in srgb,var(--rar) 30%,transparent);background:linear-gradient(180deg,var(--rar-soft),rgba(255,255,255,.02));color:var(--text);font-family:inherit;cursor:pointer;touch-action:manipulation;transition:transform .18s cubic-bezier(.34,1.56,.64,1),border-color .2s,box-shadow .2s;animation:card-in .5s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes card-in{0%{opacity:0;transform:translateY(18px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.flame-card:hover{transform:translateY(-3px)}.flame-card:active{transform:scale(.94)}.flame-card--focus{border-color:var(--rar);box-shadow:0 0 0 2px color-mix(in srgb,var(--rar) 40%,transparent),0 6px 18px color-mix(in srgb,var(--rar) 30%,transparent)}.flame-card-art{position:relative;width:44px;height:56px;display:block}.flame-card-art .streak-flame-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.flame-card-art .flame{position:absolute;left:0;top:4px}.flame-card-name{font-size:.62rem;font-weight:800;letter-spacing:.01em;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flame-card--locked{background:#ffffff08;border-style:dashed}.flame-card--locked .flame-card-name{color:var(--text-faint)}.flame-card-req{display:inline-flex;align-items:center;gap:3px;font-size:.6rem;font-weight:800;color:var(--text-dim)}.flame-card-badge{position:absolute;top:5px;right:5px;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--rar);color:#14121f}.flame-card-next{position:absolute;top:-8px;left:50%;transform:translate(-50%);padding:1px 7px;border-radius:99px;font-size:.52rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#14121f;background:var(--rar);white-space:nowrap}.flame-card--next{animation:card-in .5s cubic-bezier(.34,1.56,.64,1) backwards,card-next 2s ease-in-out 1s infinite}@keyframes card-next{0%,to{box-shadow:0 0 color-mix(in srgb,var(--rar) 0%,transparent)}50%{box-shadow:0 0 14px 2px color-mix(in srgb,var(--rar) 55%,transparent)}}.unlock-overlay{align-items:center;z-index:600;background:#05040ce0}.unlock-modal{position:relative;width:100%;max-width:340px;padding:26px 22px 22px;border-radius:26px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--rar) 22%,var(--surface)),var(--surface) 70%);border:1.5px solid color-mix(in srgb,var(--rar) 70%,transparent);box-shadow:0 0 60px color-mix(in srgb,var(--rar) 40%,transparent),0 20px 60px #0009;overflow:hidden;animation:unlock-in .7s cubic-bezier(.22,1.5,.36,1)}@keyframes unlock-in{0%{opacity:0;transform:scale(.4) rotate(-6deg)}60%{opacity:1;transform:scale(1.06) rotate(1deg)}to{transform:scale(1) rotate(0)}}.unlock-burst{position:absolute;left:50%;top:38%;width:520px;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--rar) 40%,transparent) 0deg 7deg,transparent 7deg 22deg);-webkit-mask-image:radial-gradient(closest-side,#000 5%,transparent 100%);mask-image:radial-gradient(closest-side,#000 5%,transparent 100%);animation:spin-slow 18s linear infinite,fade-in .8s ease .3s backwards;pointer-events:none}.unlock-kicker{position:relative;font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--rar);animation:rise-in .5s ease .35s backwards}.unlock-flame{position:relative;min-height:170px;display:flex;align-items:flex-end;justify-content:center;padding:24px 40px 0}.unlock-flame .streak-flame-wrap{gap:0}.unlock-name{position:relative;font-size:1.7rem;font-weight:900;letter-spacing:-.02em;animation:rise-in .5s ease .5s backwards}.unlock-sub{position:relative;font-size:.8rem;color:var(--text-dim);animation:rise-in .5s ease .6s backwards}.unlock-sub em{font-style:normal;color:var(--rar);font-weight:700}.unlock-actions{position:relative;width:100%;display:flex;flex-direction:column;gap:8px;margin-top:10px;animation:rise-in .5s ease .7s backwards}.unlock-actions .btn-start--modal{margin-top:0;max-width:none}.unlock-actions .btn-start:before{display:none}.collection-group{display:flex;flex-direction:column;gap:8px;margin-top:4px}.collection-group-title{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--rar)}.collection-group-title em{margin-left:auto;font-style:normal;font-size:.7rem;letter-spacing:.04em;color:var(--text-dim)}.collection-group-dot{width:8px;height:8px;border-radius:50%;background:var(--rar);box-shadow:0 0 10px var(--rar)}.collection-group-title:after{content:none}.rarity--divine .collection-group-dot{animation:aura-breathe 2s ease-in-out infinite}.collection-modal{scroll-behavior:smooth}.mini-grid{position:relative;display:block;flex-shrink:0}.mini-cell{position:absolute;border-radius:var(--mini-rad, 28%);box-shadow:inset 0 0 0 1px #ffffff4d}.mini-cell--drag{border-radius:var(--mini-rad, 16%);box-shadow:inset 0 0 0 2px #ffffff80}.cell--filled:before,.cell--filled:after,.mini-cell:before,.mini-cell:after{content:none;position:absolute;pointer-events:none;border-radius:inherit}.board{border-radius:var(--board-rad, 0);box-shadow:var(--board-frame, none)}.theme-anim,.theme-anim *,.theme-anim *:before,.theme-anim *:after{transition:background-color .45s ease,border-color .45s ease,box-shadow .45s ease,fill .45s ease!important}.settings-modal{max-height:92vh;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}[data-theme=normal]{--slot-bg: #0f3460;--target-bg: #1a4a8a;--target-border: #4ecdc452;--board-frame: none;--board-rad: 0px;--cell-rad: 6px;--mini-rad: 28%;--pop-anim: cell-pop;--pop-dur: .36s;--pop-ease: cubic-bezier(.34, 1.56, .64, 1)}@media (min-width: 600px){[data-theme=normal]{--cell-rad: 8px}}[data-theme=jelly]{--bg: #150f2b;--surface: #221640;--surface2: #2a1c52;--accent: #ff5fa2;--accent2: #5ff0d7;--body-bg: linear-gradient(160deg, #150f2b 0%, #231545 50%, #1d1b4d 100%);--slot-bg: #2d2358;--target-bg: #5c3bb0;--target-border: rgba(255, 150, 220, .7);--board-frame: none;--board-rad: 0px;--cell-rad: 32%;--mini-rad: 32%;--pop-anim: cell-jelly;--pop-dur: .6s;--pop-ease: cubic-bezier(.25, 1, .5, 1)}[data-theme=jelly] .cell--valid,[data-theme=jelly] .cell--empty,[data-theme=jelly] .cell--dim{box-shadow:inset 0 4px 8px #00000059,inset 0 -2px 4px #ffffff12}[data-theme=jelly] .cell--filled,[data-theme=jelly] .mini-cell{box-shadow:inset 0 -6px 9px #00000042,inset 0 4px 7px #ffffff6b,0 3px 8px color-mix(in srgb,var(--pc, #fff) 45%,transparent)}[data-theme=jelly] .cell--filled:before,[data-theme=jelly] .mini-cell:before{content:"";left:14%;top:10%;width:46%;height:28%;border-radius:60% 60% 70% 70%;background:linear-gradient(180deg,#ffffffb3,#ffffff0d)}@keyframes cell-jelly{0%{transform:scale(1)}22%{transform:scale(1.2,.8)}45%{transform:scale(.9,1.12)}68%{transform:scale(1.05,.96)}to{transform:scale(1)}}@keyframes jelly-idle{0%,to{transform:scale(1)}50%{transform:scale(1.02,.98)}}[data-theme=cartoon]{--bg: #14112e;--surface: #231b52;--surface2: #2b2266;--accent: #ff5a7a;--accent2: #ffd23f;--body-bg: linear-gradient(160deg, #171435 0%, #251d56 50%, #1c2252 100%);--slot-bg: #2c2860;--target-bg: #4a3fb0;--target-border: #ffd23f;--board-frame: none;--board-rad: 0px;--cell-rad: 26%;--mini-rad: 26%;--pop-anim: cell-cartoon;--pop-dur: .5s;--pop-ease: cubic-bezier(.3, 1.5, .5, 1)}[data-theme=cartoon] .cell--valid,[data-theme=cartoon] .cell--empty,[data-theme=cartoon] .cell--dim{box-shadow:inset 0 0 0 2px #0a04228c,inset 0 3px #00000038}[data-theme=cartoon] .cell--target{box-shadow:inset 0 0 0 2px #150c33}[data-theme=cartoon] .cell--filled,[data-theme=cartoon] .mini-cell{box-shadow:inset 0 0 0 3px #150c33,0 3px #150c33}[data-theme=cartoon] .mini-cell{box-shadow:inset 0 0 0 2px #150c33,0 2px #150c33}[data-theme=cartoon] .cell--filled:before,[data-theme=cartoon] .mini-cell:before{content:"";left:16%;top:14%;width:44%;height:20%;border-radius:99px;background:#fff9;transform:rotate(-8deg)}[data-theme=cartoon] .cell--filled:after,[data-theme=cartoon] .mini-cell:after{content:"";left:10%;right:10%;bottom:10%;height:24%;border-radius:0 0 40% 40%;background:#00000024}@keyframes cell-cartoon{0%{transform:scale(1) rotate(0)}25%{transform:scale(1.16,.84) rotate(-1.5deg)}55%{transform:scale(.94,1.08) rotate(1deg)}80%{transform:scale(1.02,.99)}to{transform:scale(1) rotate(0)}}[data-theme=neon]{--bg: #07050f;--surface: #0d0a20;--surface2: #120d2e;--accent: #ff2e97;--accent2: #08f7fe;--body-bg: linear-gradient(160deg, #07050f 0%, #0e0a22 50%, #0a1024 100%);--slot-bg: #0b0a22;--target-bg: #1c0e55;--target-border: rgba(8, 247, 254, .7);--board-frame: none;--board-rad: 0px;--cell-rad: 16%;--mini-rad: 18%;--pop-anim: cell-neon;--pop-dur: .45s;--pop-ease: ease-out}[data-theme=neon] .cell--valid,[data-theme=neon] .cell--empty,[data-theme=neon] .cell--dim{box-shadow:inset 0 0 0 1px #826eff40}[data-theme=neon] .cell--target{box-shadow:inset 0 0 10px #08f7fe4d,0 0 8px #08f7fe40}[data-theme=neon] .cell--filled,[data-theme=neon] .mini-cell{background-color:color-mix(in srgb,var(--pc, #888) 20%,#05030f)!important;box-shadow:inset 0 0 0 2px var(--pc, #fff),inset 0 0 10px color-mix(in srgb,var(--pc, #fff) 45%,transparent)}[data-theme=neon] .cell--filled:before,[data-theme=neon] .mini-cell:before{content:"";top:4px;right:4px;bottom:4px;left:4px;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent 45%)}[data-theme=neon] .cell--filled:after,[data-theme=neon] .mini-cell:after{content:"";top:-1px;right:-1px;bottom:-1px;left:-1px;box-shadow:0 0 9px 0 var(--pc, #fff);opacity:.6}@keyframes cell-neon{0%{transform:scale(1.04);filter:brightness(2.4)}40%{transform:scale(1.07);filter:brightness(1.7)}to{transform:scale(1);filter:brightness(1)}}@keyframes neon-pulse{0%,to{opacity:.4}50%{opacity:.85}}[data-theme=retro]{--bg: #0a0a14;--surface: #12122a;--surface2: #1a1a3a;--accent: #ff4d6d;--accent2: #f8d800;--body-bg: linear-gradient(160deg, #0a0a14 0%, #12122a 50%, #0f1630 100%);--slot-bg: #14142c;--target-bg: #2a2a7a;--target-border: #f8d800;--board-frame: none;--board-rad: 0px;--cell-rad: 0px;--mini-rad: 0px;--pop-anim: cell-retro;--pop-dur: .45s;--pop-ease: steps(5, end)}[data-theme=retro] .cell--valid,[data-theme=retro] .cell--empty,[data-theme=retro] .cell--dim{box-shadow:inset 2px 2px #00000073,inset -2px -2px #ffffff0f}[data-theme=retro] .cell--filled,[data-theme=retro] .mini-cell{box-shadow:inset 3px 3px #fff9,inset -3px -3px #00000080,0 0 0 1px #000000b3}[data-theme=retro] .mini-cell{box-shadow:inset 2px 2px #fff9,inset -2px -2px #00000080,0 0 0 1px #000000b3}[data-theme=retro] .cell--filled:before,[data-theme=retro] .mini-cell:before{content:"";top:28%;right:28%;bottom:28%;left:28%;border-radius:0;background:#fff3;box-shadow:inset -2px -2px #0000002e}@keyframes cell-retro{0%{opacity:1;transform:scale(1)}15%{opacity:.25}30%{opacity:1;transform:scale(1.08)}45%{opacity:.5}60%{opacity:1}to{opacity:1;transform:scale(1)}}[data-theme=candy]{--bg: #1f0c29;--surface: #33123f;--surface2: #411a50;--accent: #ff5fb0;--accent2: #ffe14d;--body-bg: linear-gradient(160deg, #2a0f35 0%, #3a1448 50%, #251538 100%);--slot-bg: #3f2057;--target-bg: #7a2a96;--target-border: #ffe14d;--board-frame: none;--board-rad: 0px;--cell-rad: 36%;--mini-rad: 36%;--pop-anim: cell-candy;--pop-dur: .55s;--pop-ease: cubic-bezier(.3, 1.45, .5, 1)}[data-theme=candy] .cell--valid,[data-theme=candy] .cell--empty,[data-theme=candy] .cell--dim{box-shadow:inset 0 3px 6px #00000052,inset 0 -2px #ffffff12}[data-theme=candy] .cell--filled,[data-theme=candy] .mini-cell{box-shadow:inset 0 -6px 8px #0000002e,inset 0 4px 6px #ffffff80,0 3px color-mix(in srgb,var(--pc, #888) 55%,#000)}[data-theme=candy] .cell--filled:before,[data-theme=candy] .mini-cell:before{content:"";top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.26) 0 18%,transparent 18% 36%);opacity:.5}[data-theme=candy] .cell--filled:after,[data-theme=candy] .mini-cell:after{content:"";left:16%;top:12%;width:34%;height:22%;border-radius:50%;background:radial-gradient(ellipse at 40% 40%,#fff,#fff0);transform:rotate(-30deg)}@keyframes cell-candy{0%{transform:scale(1)}25%{transform:scale(1.14,.86)}50%{transform:scale(.94,1.1) translateY(-4%)}75%{transform:scale(1.03,.98)}to{transform:scale(1)}}[data-theme=paper]{--bg: #10152a;--surface: #1d2440;--surface2: #262e50;--accent: #ff7a8a;--accent2: #ffd98a;--body-bg: linear-gradient(160deg, #141a30 0%, #1d2542 50%, #171e38 100%);--slot-bg: #232a45;--target-bg: #3d4b7a;--target-border: #ffd98a;--board-frame: none;--board-rad: 0px;--cell-rad: 4%;--mini-rad: 5%;--pop-anim: cell-paper;--pop-dur: .4s;--pop-ease: cubic-bezier(.25, 1.2, .4, 1)}[data-theme=paper] .cell--valid,[data-theme=paper] .cell--empty,[data-theme=paper] .cell--dim{box-shadow:inset 0 2px 4px #00000059}[data-theme=paper] .cell--target{box-shadow:inset 0 0 0 2px #ffd98a}[data-theme=paper] .cell--filled,[data-theme=paper] .mini-cell{box-shadow:0 1px #fff6 inset,0 3px #00000042,0 5px 8px #00000042}[data-theme=paper] .cell--filled:before,[data-theme=paper] .mini-cell:before{content:"";top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ffffff5c 0,#ffffff5c 50%,#00000026 50%,#00000026)}[data-theme=paper] .cell--filled:after,[data-theme=paper] .mini-cell:after{content:"";top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 48.5%,rgba(0,0,0,.26) 50%,rgba(255,255,255,.32) 51%,transparent 52.5%)}@keyframes cell-paper{0%{transform:translateY(-8%) scale(1.03)}45%{transform:translateY(2%) scale(.99)}to{transform:translateY(0) scale(1)}}[data-theme=blueprint]{--bg: #0a1a33;--surface: #102a52;--surface2: #143360;--accent: #7fd1ff;--accent2: #ffe082;--body-bg: linear-gradient(160deg, #0a1a33 0%, #0f2a52 50%, #0b2444 100%);--slot-bg: rgba(255, 255, 255, .045);--target-bg: rgba(255, 224, 130, .14);--target-border: #ffe082;--board-frame: none;--board-rad: 0px;--cell-rad: 3%;--mini-rad: 4%;--pop-anim: cell-draw;--pop-dur: .4s;--pop-ease: ease-out}[data-theme=blueprint] .cell--valid,[data-theme=blueprint] .cell--empty,[data-theme=blueprint] .cell--dim{box-shadow:inset 0 0 0 1px #ffffff3d}[data-theme=blueprint] .cell--target{box-shadow:inset 0 0 0 1.5px #ffe082}[data-theme=blueprint] .cell--filled,[data-theme=blueprint] .mini-cell{background-color:color-mix(in srgb,var(--pc, #888) 26%,#0f1a36)!important;box-shadow:inset 0 0 0 2px var(--pc, #fff)}[data-theme=blueprint] .cell--filled:before,[data-theme=blueprint] .mini-cell:before{content:"";top:3px;right:3px;bottom:3px;left:3px;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--pc, #fff) 70%,transparent) 0 1px,transparent 1px 6px)}[data-theme=blueprint] .cell--filled:after,[data-theme=blueprint] .mini-cell:after{content:"";right:3px;bottom:3px;width:22%;height:22%;border-right:2px solid #fff;border-bottom:2px solid #fff;opacity:.75;border-radius:0}@keyframes cell-draw{0%{transform:scale(1.05);filter:brightness(2)}to{transform:scale(1);filter:brightness(1)}}[data-perf=full][data-theme=jelly] .cell--filled{animation:var(--pop-anim) var(--pop-dur) var(--pop-ease) calc(var(--pop-i, 0) * 18ms + var(--land, 0ms)) backwards,jelly-idle 5s ease-in-out calc(var(--wave, 0) * -.35s) infinite}[data-perf=full][data-theme=neon] .cell--filled:after{animation:neon-pulse 3s ease-in-out calc(var(--wave, 0) * -.22s) infinite}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-card{position:relative;display:block;padding:0;border-radius:16px;border:2px solid rgba(255,255,255,.12);background:none;font-family:inherit;cursor:pointer;touch-action:manipulation;overflow:hidden;transition:transform .2s cubic-bezier(.34,1.56,.64,1),border-color .2s,box-shadow .25s;animation:card-in .5s cubic-bezier(.34,1.56,.64,1) backwards}.theme-card:hover{transform:translateY(-3px)}.theme-card:active{transform:scale(.96)}.theme-card--on{border-color:#fff;box-shadow:0 0 0 3px #ffffff47,0 10px 26px #00000073}.theme-preview-host{display:block}.theme-card-check{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#0b0b16;box-shadow:0 2px 8px #0006;animation:check-pop .4s cubic-bezier(.34,1.56,.64,1)}html:not([data-theme=normal]) .game-screen{background:color-mix(in srgb,var(--bg) 58%,transparent)}.piece-style{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px;flex-shrink:0}.piece-style-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.segmented{display:inline-flex;padding:3px;gap:3px;border-radius:12px;background:#ffffff12;border:1px solid rgba(255,255,255,.1)}.segmented-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:none;border-radius:9px;background:transparent;color:var(--text-dim);font-family:inherit;font-size:.74rem;font-weight:800;cursor:pointer;touch-action:manipulation;transition:background .2s,color .2s,transform .15s}.segmented-btn:active{transform:scale(.95)}.segmented-btn--on{background:var(--accent2);color:#0b0b16;box-shadow:0 2px 10px #0000004d}.piece-style-icon{display:inline-flex;gap:2px}.piece-style-icon i{width:6px;height:10px;border-radius:2px;background:currentColor;display:block}.piece-style-icon--joined{gap:0}.piece-style-icon--joined i{border-radius:0}.piece-style-icon--joined i:first-child{border-radius:3px 0 0 3px}.piece-style-icon--joined i:last-child{border-radius:0 3px 3px 0}.board{position:relative}.piece-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(8,1fr);gap:3px;pointer-events:none;z-index:1}@media (min-width: 600px){.piece-layer{gap:4px}}.piece-shape{position:relative;display:block}.mini-grid>.piece-shape,.drag-piece>.piece-shape{position:absolute}.piece-body,.piece-pattern{position:absolute;top:0;right:0;bottom:0;left:0;display:block;-webkit-mask:var(--shape-mask) 0 0 / 100% 100% no-repeat;mask:var(--shape-mask) 0 0 / 100% 100% no-repeat}.piece-body{background-color:var(--pc, #888)}.piece-body:before,.piece-body:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}[data-pieces=joined] .cell--filled{background:transparent!important;box-shadow:none!important;animation:none!important}[data-pieces=joined] .cell--filled:before,[data-pieces=joined] .cell--filled:after{content:none!important}.piece-layer .piece-shape{animation:var(--pop-anim, cell-pop) var(--pop-dur, .42s) var(--pop-ease, cubic-bezier(.34, 1.56, .64, 1)) var(--land, 0ms) backwards}.board--won .piece-layer .piece-shape{animation:var(--pop-anim, cell-pop) var(--pop-dur, .42s) var(--pop-ease, cubic-bezier(.34, 1.56, .64, 1)) var(--land, 0ms) backwards,cell-wave .8s ease-in-out calc(.45s + var(--wave, 0) * 90ms) both}.piece-shape{filter:drop-shadow(0 0 .6px rgba(255,255,255,.55)) drop-shadow(0 2px 2px rgba(0,0,0,.35))}.piece-body:before{background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 45%,rgba(0,0,0,.12))}[data-theme=jelly] .piece-shape{filter:drop-shadow(0 5px 7px color-mix(in srgb,var(--pc, #fff) 55%,transparent))}[data-theme=jelly] .piece-body:before{background:radial-gradient(ellipse 34% 14% at 26% 14%,rgba(255,255,255,.9),transparent 75%),linear-gradient(180deg,rgba(255,255,255,.2) 0,transparent 30%,transparent 55%,rgba(0,0,0,.26))}[data-theme=jelly] .piece-body:after{background:radial-gradient(circle at 82% 84%,rgba(255,255,255,.4) 0,transparent 9%)}[data-theme=cartoon] .piece-shape{filter:drop-shadow(2.5px 0 0 #150c33) drop-shadow(-2.5px 0 0 #150c33) drop-shadow(0 2.5px 0 #150c33) drop-shadow(0 -2.5px 0 #150c33) drop-shadow(0 4px 0 #150c33)}[data-theme=cartoon] .piece-body:before{background:linear-gradient(0deg,rgba(0,0,0,.2) 0 18%,transparent 18%),linear-gradient(180deg,rgba(255,255,255,.45) 0 14%,transparent 14%)}[data-theme=neon] .piece-body{background-color:color-mix(in srgb,var(--pc, #888) 18%,#05030f)}[data-theme=neon] .piece-body:before{background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 45%)}[data-theme=neon] .piece-shape{filter:drop-shadow(1.5px 0 0 var(--pc, #fff)) drop-shadow(-1.5px 0 0 var(--pc, #fff)) drop-shadow(0 1.5px 0 var(--pc, #fff)) drop-shadow(0 -1.5px 0 var(--pc, #fff)) drop-shadow(0 0 7px color-mix(in srgb,var(--pc, #fff) 70%,transparent))}[data-theme=retro] .piece-shape{filter:drop-shadow(2px 0 0 #000) drop-shadow(-2px 0 0 #000) drop-shadow(0 2px 0 #000) drop-shadow(0 -2px 0 #000)}[data-theme=retro] .piece-body:before{background:linear-gradient(180deg,rgba(255,255,255,.55) 0 7%,transparent 7%),linear-gradient(90deg,rgba(255,255,255,.4) 0 5%,transparent 5%),linear-gradient(0deg,rgba(0,0,0,.45) 0 8%,transparent 8%),linear-gradient(270deg,rgba(0,0,0,.35) 0 5%,transparent 5%)}[data-theme=candy] .piece-shape{filter:drop-shadow(0 3px 0 color-mix(in srgb,var(--pc, #888) 50%,#000)) drop-shadow(0 6px 6px rgba(0,0,0,.25))}[data-theme=candy] .piece-body:before{background:radial-gradient(ellipse 30% 10% at 24% 12%,#fff,transparent 80%),repeating-linear-gradient(135deg,rgba(255,255,255,.3) 0 12px,transparent 12px 24px);opacity:.7}[data-theme=candy] .piece-body:after{background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.2))}[data-theme=paper] .piece-body:before{background:linear-gradient(135deg,#ffffff61 0,#ffffff61 50%,#00000029 50%,#00000029)}[data-theme=paper] .piece-body:after{background:linear-gradient(135deg,transparent 49%,rgba(0,0,0,.28) 50%,rgba(255,255,255,.35) 51%,transparent 52%)}[data-theme=paper] .piece-shape{filter:drop-shadow(0 3px 0 rgba(0,0,0,.3)) drop-shadow(0 7px 8px rgba(0,0,0,.3))}[data-theme=blueprint] .piece-body{background-color:color-mix(in srgb,var(--pc, #888) 26%,#0f1a36)}[data-theme=blueprint] .piece-body:before{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--pc, #fff) 70%,transparent) 0 1px,transparent 1px 7px)}[data-theme=blueprint] .piece-shape{filter:drop-shadow(1.5px 0 0 var(--pc, #fff)) drop-shadow(-1.5px 0 0 var(--pc, #fff)) drop-shadow(0 1.5px 0 var(--pc, #fff)) drop-shadow(0 -1.5px 0 var(--pc, #fff))}[data-perf=full][data-theme=jelly] .piece-layer .piece-shape{animation:var(--pop-anim) var(--pop-dur) var(--pop-ease) var(--land, 0ms) backwards,jelly-idle 5s ease-in-out calc(var(--wave, 0) * -.4s) infinite}[data-perf=full][data-theme=neon] .piece-layer .piece-shape{animation:var(--pop-anim) var(--pop-dur) var(--pop-ease) var(--land, 0ms) backwards,neon-breathe 3s ease-in-out calc(var(--wave, 0) * -.3s) infinite}@keyframes neon-breathe{0%,to{opacity:.82}50%{opacity:1}}:root{--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-y: calc(var(--safe-t) + var(--safe-b))}body{-webkit-touch-callout:none}button,[role=button],[role=radio],a{touch-action:manipulation}.game-header{padding-top:calc(12px + var(--safe-t))}.start-screen{padding-top:calc(24px + var(--safe-t))}.top-buttons{top:calc(16px + var(--safe-t))}.modal-overlay{padding-bottom:max(16px,var(--safe-b))}.confirm-overlay{padding-bottom:max(20px,var(--safe-b))}@media (max-height: 700px){.game-header{padding-top:calc(7px + var(--safe-t))}}@media (max-width: 959px){.board-wrapper{max-width:min(calc(100vw - 16px),calc((100vh - 252px - var(--safe-y)) * .875))}}@supports (height: 100dvh){@media (max-width: 959px){.board-wrapper{max-width:min(calc(100dvw - 16px),calc((100dvh - 252px - var(--safe-y)) * .875))}}}@media (max-width: 959px) and (max-height: 700px){.board-wrapper{max-width:min(calc(100vw - 16px),calc((100vh - 236px - var(--safe-y)) * .875))}}@supports (height: 100dvh){@media (max-width: 959px) and (max-height: 700px){.board-wrapper{max-width:min(calc(100dvw - 16px),calc((100dvh - 236px - var(--safe-y)) * .875))}}}@media (max-width: 959px) and (max-height: 580px){.board-wrapper{max-width:min(calc(100vw - 16px),calc((100vh - 206px - var(--safe-y)) * .875))}}.piece-tray{padding-bottom:max(10px,var(--safe-b))}.header-icon-btn{width:38px;height:38px;border-radius:10px}.header-back{min-width:44px;min-height:44px;justify-content:center}.settings-btn{width:42px;height:42px}.settings-close{width:38px;height:38px}.ctrl-btn{min-height:34px;padding:6px 16px;font-size:.76rem}.tray-dice-btn{padding:6px 11px;font-size:.66rem}.carousel-arrow{width:46px}.flame-collection-btn{padding:8px 14px;font-size:.74rem}.toggle-btn{min-width:46px}.piece-mini--selected:after{content:"";position:absolute;right:5px;top:5px;width:12px;height:12px;background:var(--accent2);opacity:.85;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.5-5.8'/%3E%3Cpath d='M20 4v5h-5'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.5-5.8'/%3E%3Cpath d='M20 4v5h-5'/%3E%3C/svg%3E") center / contain no-repeat;pointer-events:none}.piece-mini{position:relative}.collection-modal,.settings-modal,.rules-modal{padding-bottom:calc(26px + var(--safe-b))}.sheet-grabber{display:flex;justify-content:center;padding:4px 0 12px;margin:-14px 0 -4px;touch-action:none;cursor:grab;flex-shrink:0}.sheet-grabber span{width:44px;height:5px;border-radius:99px;background:#ffffff47;transition:background .15s,width .15s}.sheet-grabber:active span{background:#ffffff8c;width:56px}.collection-modal{padding:14px 0 0;gap:10px;overflow:hidden}.collection-modal .sheet-grabber{margin:0;padding-bottom:4px}.collection-head,.collection-progress,.collection-chips{margin-left:18px;margin-right:18px;flex-shrink:0}.collection-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;display:flex;flex-direction:column;gap:14px;padding:6px 18px calc(24px + var(--safe-b))}.collection-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0}.collection-chips::-webkit-scrollbar{display:none}.collection-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--rar) 45%,transparent);background:var(--rar-soft);color:var(--rar);font-family:inherit;font-size:.68rem;font-weight:800;letter-spacing:.04em;cursor:pointer;transition:transform .15s,background .2s}.collection-chip b{color:var(--text);font-weight:800}.collection-chip:active{transform:scale(.94)}.collection-group{content-visibility:auto;contain-intrinsic-size:auto 260px}.drag-anchor{position:fixed;left:0;top:0;z-index:1000;pointer-events:none;will-change:transform;contain:layout style}.drag-piece{position:absolute;pointer-events:none}@media (hover: none){.modal-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000000d1}.flame-ember:nth-child(n+11){display:none}}.piece-mini,.flame-card,.board{contain:layout style}[data-perf=saver] .flame-rays,[data-perf=saver] .flame--divine:after,[data-perf=saver] .modal-trophy-rays,[data-perf=saver] .unlock-burst{display:none!important}[data-perf=saver] .flame-ember:nth-child(n+7){display:none}[data-perf=saver] .flame-layer--mid,[data-perf=saver] .flame-layer--inner,[data-perf=saver] .flame-tongue{animation-duration:2.4s}[data-perf=saver] .rarity-pill,[data-perf=saver] .streak-count{animation:none!important}[data-perf=saver] .flame--fx-rainbow{animation:flame-ignite .9s cubic-bezier(.22,1.4,.36,1) both}[data-perf=saver] .cell--filled{filter:none}.fx-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;pointer-events:none;overflow:hidden}.fx-burst{position:absolute;width:0;height:0}.fx-ring{position:absolute;left:0;top:0;width:var(--s, 60px);height:var(--s, 60px);border-radius:50%;border:2px solid var(--c, #fff);box-shadow:0 0 6px var(--c, #fff);transform:translate(-50%,-50%) scale(.35);opacity:0;animation:fx-ring .55s cubic-bezier(.15,.7,.3,1) forwards}.fx-ring--2{animation-duration:.9s;animation-delay:.08s;border-width:2px}@keyframes fx-ring{0%{transform:translate(-50%,-50%) scale(.45);opacity:.55}to{transform:translate(-50%,-50%) scale(1.45);opacity:0}}.fx-burst--big .fx-ring{width:var(--s);height:var(--s)}.fx-burst--big .fx-ring{animation-name:fx-ring-big;animation-duration:1s}@keyframes fx-ring-big{0%{transform:translate(-50%,-50%) scale(.2);opacity:.9}to{transform:translate(-50%,-50%) scale(2.2);opacity:0}}.fx-flash{position:absolute;left:0;top:0;width:var(--s, 60px);height:var(--s, 60px);border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.75),color-mix(in srgb,var(--c, #fff) 55%,transparent) 55%,transparent 100%);transform:translate(-50%,-50%) scale(.4);opacity:0;animation:fx-flash .38s ease-out forwards}@keyframes fx-flash{0%{transform:translate(-50%,-50%) scale(.5);opacity:.5}to{transform:translate(-50%,-50%) scale(1.15);opacity:0}}.fx-bit{position:absolute;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:2px;background:var(--c, #fff);opacity:0;animation:fx-bit .55s cubic-bezier(.2,.8,.3,1) forwards}.fx-burst--big .fx-bit{width:10px;height:10px;margin:-5px 0 0 -5px;animation-duration:.95s}.fx-burst--big .fx-flash{animation-duration:.6s}@keyframes fx-bit{0%{transform:translate(0) rotate(0) scale(1);opacity:1}65%{opacity:.95}to{transform:translate(var(--dx),var(--dy)) rotate(var(--r)) scale(.4);opacity:0}}[data-perf=saver] .fx-bit:nth-child(n+6){display:none}.drag-piece{rotate:var(--tilt, 0deg);transition:rotate .16s ease-out}.drag-anchor{transform-origin:0 0}.piece-tray--ready .piece-mini{animation-delay:0s!important;animation-duration:.3s}.btn-start,.share-btn,.btn-play-again,.collection-equip,.flame-collection-btn,.settings-btn,.header-icon-btn,.header-back,.ctrl-btn,.tray-dice-btn,.carousel-arrow,.segmented-btn,.confirm-cancel,.confirm-delete,.collection-chip{transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .15s,box-shadow .15s,color .15s,border-color .15s,opacity .15s}.settings-btn:active,.header-icon-btn:active:not(:disabled),.header-back:active,.carousel-arrow:active{transform:scale(.88)}.ctrl-btn:active,.tray-dice-btn:active,.collection-chip:active{transform:scale(.93)}.app{animation:view-in .3s cubic-bezier(.22,1,.36,1)}@keyframes view-in{0%{opacity:0;transform:translateY(8px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-overlay--out{animation:overlay-out .2s ease forwards!important}.modal-overlay--out>.collection-modal,.modal-overlay--out>.settings-modal,.modal-overlay--out>.rules-modal,.modal-overlay--out>.modal{animation:sheet-out .2s cubic-bezier(.4,0,1,1) forwards!important}@keyframes overlay-out{to{opacity:0}}@keyframes sheet-out{to{transform:translateY(70px);opacity:0}}.cell--sel{outline:2px solid rgba(255,255,255,.92);outline-offset:-2px;z-index:2;animation:sel-pulse 1.1s ease-in-out infinite}@keyframes sel-pulse{0%,to{outline-color:#fffffff2;filter:brightness(1.14)}50%{outline-color:#ffffff59;filter:brightness(1.02)}}[data-pieces=joined] .cell--sel{outline:none}.piece-layer .piece-shape.piece-shape--sel{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 7px rgba(255,255,255,.55));animation:sel-bob 1s ease-in-out infinite}@keyframes sel-bob{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.cell--shake,.piece-layer .piece-shape.piece-shape--shake{animation:piece-shake .38s ease!important}@keyframes piece-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px) rotate(-1.5deg)}40%{transform:translate(4px) rotate(1.5deg)}60%{transform:translate(-3px) rotate(-1deg)}80%{transform:translate(2px)}}.piece-actions{position:fixed;z-index:950;display:flex;gap:4px;padding:5px;translate:-50% -100%;border-radius:999px;background:#121224f0;border:1px solid rgba(255,255,255,.16);box-shadow:0 10px 26px #00000080;animation:actions-in .24s cubic-bezier(.34,1.56,.64,1);touch-action:manipulation}.piece-actions--below{translate:-50% 0}@keyframes actions-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.piece-action{width:44px;height:44px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;background:#ffffff14;color:var(--accent2, #4ecdc4);cursor:pointer;touch-action:manipulation;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .15s}.piece-action:active{transform:scale(.86);background:#fff3}.piece-action--back{color:#ff8a8a}.fx-burst--t-jelly .fx-bit{width:11px;height:11px;margin:-5px 0 0 -5px;border-radius:50%;box-shadow:inset -2px -3px #0003,inset 2px 2px #ffffff8c;animation-name:fx-drip;animation-duration:.85s}@keyframes fx-drip{0%{transform:translate(0) scale(.6);opacity:1}55%{transform:translate(var(--dx),var(--dy)) scale(1.1,.9);opacity:1}to{transform:translate(calc(var(--dx) * 1.1),calc(var(--dy) + 46px)) scale(.7,1.4);opacity:0}}.fx-burst--t-jelly .fx-ring{border-width:7px;border-radius:48% 52% 50% 50%;box-shadow:none;animation-name:fx-ring-jelly;animation-duration:.6s}@keyframes fx-ring-jelly{0%{transform:translate(-50%,-50%) scale(.3,.2);opacity:.9}40%{transform:translate(-50%,-50%) scale(1.15,.8);opacity:.7}to{transform:translate(-50%,-50%) scale(1.5,1.35);opacity:0}}.fx-burst--t-cartoon .fx-ring{display:none}.fx-burst--t-cartoon .fx-flash{width:calc(var(--s, 60px) * 1.1);height:calc(var(--s, 60px) * 1.1);border-radius:0;background:#150c33;clip-path:polygon(50% 0%,61% 18%,82% 10%,78% 32%,100% 38%,82% 54%,95% 75%,72% 72%,66% 96%,50% 80%,34% 96%,28% 72%,5% 75%,18% 54%,0% 38%,22% 32%,18% 10%,39% 18%);animation-name:fx-pow;animation-duration:.36s}.fx-burst--t-cartoon .fx-flash:after{content:"";position:absolute;top:9%;right:9%;bottom:9%;left:9%;background:#ffd23f;clip-path:polygon(50% 0%,61% 18%,82% 10%,78% 32%,100% 38%,82% 54%,95% 75%,72% 72%,66% 96%,50% 80%,34% 96%,28% 72%,5% 75%,18% 54%,0% 38%,22% 32%,18% 10%,39% 18%)}@keyframes fx-pow{0%{transform:translate(-50%,-50%) scale(.2) rotate(-14deg);opacity:1}45%{transform:translate(-50%,-50%) scale(1.12) rotate(6deg);opacity:1}to{transform:translate(-50%,-50%) scale(1.25) rotate(10deg);opacity:0}}.fx-burst--t-cartoon .fx-bit{width:13px;height:13px;margin:-6px 0 0 -6px;border-radius:0;background:#fff;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}.fx-burst--t-cartoon .fx-bit:nth-child(odd){background:#ffd23f}.fx-burst--t-neon .fx-ring{border-width:2px;box-shadow:0 0 14px var(--c),inset 0 0 8px var(--c)}.fx-burst--t-neon .fx-flash{background:radial-gradient(closest-side,#fff,var(--c) 40%,transparent)}.fx-burst--t-neon .fx-bit{width:18px;height:2.5px;margin:-1px 0 0 -9px;border-radius:2px;box-shadow:0 0 8px var(--c);animation-name:fx-spark;animation-duration:.5s}@keyframes fx-spark{0%{transform:translate(0) rotate(var(--ang)) scaleX(.2);opacity:1}35%{transform:translate(calc(var(--dx) * .5),calc(var(--dy) * .5)) rotate(var(--ang)) scaleX(1.4);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--ang)) scaleX(.2);opacity:0}}.fx-burst--t-retro .fx-ring{border-radius:0;border-width:4px;box-shadow:none;animation-timing-function:steps(5,end)}.fx-burst--t-retro .fx-flash{border-radius:0;background:#fff;animation:fx-flash .24s steps(3,end) forwards}.fx-burst--t-retro .fx-bit{width:7px;height:7px;margin:-3px 0 0 -3px;border-radius:0;animation-name:fx-pixel;animation-timing-function:steps(6,end);animation-duration:.6s}@keyframes fx-pixel{0%{transform:translate(0);opacity:1}70%{opacity:1}to{transform:translate(var(--dx),var(--dy));opacity:0}}.fx-burst--t-candy .fx-ring{display:none}.fx-burst--t-candy .fx-flash{background:radial-gradient(closest-side,#fff,#ff7ac0 60%,transparent)}.fx-burst--t-candy .fx-bit{width:14px;height:5px;margin:-2px 0 0 -7px;border-radius:3px;animation-name:fx-sprinkle;animation-duration:.9s}.fx-burst--t-candy .fx-bit:nth-child(5n+1){background:var(--piece-I4)}.fx-burst--t-candy .fx-bit:nth-child(5n+2){background:var(--piece-P5)}.fx-burst--t-candy .fx-bit:nth-child(5n+3){background:var(--piece-J5)}.fx-burst--t-candy .fx-bit:nth-child(5n+4){background:var(--piece-N5)}.fx-burst--t-candy .fx-bit:nth-child(5n+5){background:var(--piece-U5)}@keyframes fx-sprinkle{0%{transform:translate(0) rotate(var(--ang)) scale(.5);opacity:1}60%{transform:translate(var(--dx),var(--dy)) rotate(calc(var(--ang) + 180deg)) scale(1);opacity:1}to{transform:translate(calc(var(--dx) * 1.1),calc(var(--dy) + 38px)) rotate(calc(var(--ang) + 330deg)) scale(.8);opacity:0}}.fx-burst--t-paper .fx-ring{display:none}.fx-burst--t-paper .fx-flash{background:radial-gradient(closest-side,rgba(255,255,255,.45),transparent 70%)}.fx-burst--t-paper .fx-bit{width:12px;height:7px;margin:-3px 0 0 -6px;border-radius:1px;background:color-mix(in srgb,var(--c) 70%,#fff);box-shadow:0 1px #00000040;animation-name:fx-flutter;animation-duration:1s;animation-timing-function:ease-out}@keyframes fx-flutter{0%{transform:translate(0) rotate(0) scaleY(1);opacity:1}30%{transform:translate(calc(var(--dx) * .8),calc(var(--dy) * .8 - 14px)) rotate(120deg) scaleY(.35);opacity:1}60%{transform:translate(calc(var(--dx) * 1),calc(var(--dy) * .9 + 8px)) rotate(240deg) scaleY(1);opacity:1}to{transform:translate(calc(var(--dx) * 1.1),calc(var(--dy) + 56px)) rotate(calc(var(--r) * 6)) scaleY(.5);opacity:0}}.fx-burst--t-blueprint .fx-flash{display:none}.fx-burst--t-blueprint .fx-ring{border:2px dashed #fff;border-radius:3px;box-shadow:none;animation-name:fx-ring-bp;animation-duration:.7s}@keyframes fx-ring-bp{0%{transform:translate(-50%,-50%) scale(.4) rotate(0);opacity:.95}to{transform:translate(-50%,-50%) scale(1.5) rotate(45deg);opacity:0}}.fx-burst--t-blueprint .fx-bit{width:13px;height:13px;margin:-6px 0 0 -6px;border-radius:0;background:linear-gradient(#fff,#fff) center / 100% 2px no-repeat,linear-gradient(#fff,#fff) center / 2px 100% no-repeat}.streak-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.streak-pills .flame-collection-btn{margin-top:6px}.header-icon-btn--off{opacity:.55}.result-block{width:100%;display:flex;flex-direction:column;gap:10px}.result-medal{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);animation:medal-in .7s cubic-bezier(.34,1.56,.64,1) .8s backwards}.result-medal svg{filter:drop-shadow(0 3px 8px rgba(0,0,0,.4));animation:medal-swing 2.6s ease-in-out 1.6s infinite;transform-origin:50% 0}.result-medal strong{display:block;font-size:1rem;font-weight:800}.result-medal span{font-size:.78rem;color:var(--text-dim);font-weight:600}.result-medal--gold{border-color:#ffc84680;background:linear-gradient(90deg,#ffc84624,#ffffff08)}.result-medal--silver{border-color:#c8d4e673;background:linear-gradient(90deg,#c8d4e61f,#ffffff08)}.result-medal--bronze{border-color:#cd8a4b80;background:linear-gradient(90deg,#cd8a4b24,#ffffff08)}@keyframes medal-in{0%{opacity:0;transform:translate(-26px) scale(.85)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes medal-swing{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.result-record{position:relative;overflow:hidden;padding:11px 14px;border-radius:14px;text-align:center;background:linear-gradient(100deg,var(--accent),#ff9a3c);color:#fff;box-shadow:0 6px 22px #e9456066;animation:record-in .6s cubic-bezier(.34,1.56,.64,1) 1s backwards}.result-record:after{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:translate(-130%) skew(-18deg);animation:btn-sweep 2.8s ease-in-out 1.6s infinite}.result-record strong{display:block;font-size:1rem;font-weight:900;letter-spacing:.01em}.result-record span{display:block;font-size:.78rem;font-weight:600;opacity:.92;margin-top:2px}.result-record--first{background:linear-gradient(100deg,#3ecf8e,#4ecdc4);box-shadow:0 6px 22px #3ecf8e59}@keyframes record-in{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.result-note{width:100%;text-align:center;font-size:.78rem;color:var(--text-dim);font-weight:600}.result-note--good{color:#7be0a4}.share-buttons--two{gap:10px}.share-buttons--two .share-btn{flex:1;width:auto;padding:14px 8px;font-size:.86rem}.share-btn--image{background:#ffffff1a;color:var(--text);border:1px solid rgba(255,255,255,.16)}.share-btn--image:disabled{opacity:.6}.card-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px;background:#000000d1;animation:overlay-in .25s ease}.card-preview-box{display:flex;flex-direction:column;gap:12px;max-width:420px;width:100%;max-height:100%}.card-preview-box img{width:100%;max-height:68vh;object-fit:contain;border-radius:14px;box-shadow:0 10px 40px #0009;animation:pop-in .35s cubic-bezier(.34,1.56,.64,1)}.card-preview-actions{display:flex;gap:10px}.card-preview-actions>*{flex:1;text-align:center;text-decoration:none}.stats-empty{font-size:.86rem;color:var(--text-dim);text-align:center;padding:10px 6px;line-height:1.5}.stats-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.stats-cards>.stats-card{grid-column:span 2}.stats-cards>.stats-card:nth-child(n+4){grid-column:span 3}.stats-cards>.stats-card.stats-card--medals{grid-column:1 / -1;padding:12px 10px;gap:8px}.stats-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:14px 6px 12px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);text-align:center;animation:card-in .5s cubic-bezier(.34,1.56,.64,1) backwards}.stats-card{min-width:0}.stats-card strong{font-size:1.45rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;max-width:100%}.stats-card span{font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);line-height:1.2;max-width:100%;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.stats-card--flame strong{color:#ff8c42}.stats-card--gold strong{color:#ffd54a}.stats-medals{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;align-items:center}.stats-medals span{display:inline-flex;align-items:center;gap:2px;text-transform:none;letter-spacing:0}.stats-medals b{font-size:.95rem;font-weight:800;color:var(--text)}.stats-section{display:flex;flex-direction:column;gap:10px}.stats-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.stats-section-head h3{font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.stats-nav{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700}.stats-nav span{display:inline-block}.stats-nav span:first-letter{text-transform:uppercase}.stats-nav button{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:var(--text);font-size:1.1rem;line-height:1;cursor:pointer;touch-action:manipulation}.stats-nav button:disabled{opacity:.3;cursor:default}.stats-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.stats-cal-head{text-align:center;font-size:.62rem;font-weight:800;color:var(--text-faint);padding-bottom:2px}.stats-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:9px;font-size:.74rem;font-weight:700;color:var(--text-faint);background:#ffffff0a;animation:stat-pop .35s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes stat-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.stats-day--solved{background:#3e9d63;color:#fff}.stats-day--shield{background:#8c96ff59;color:#fff}.stats-day--gold{background:linear-gradient(135deg,#ffe27a,#d99a12);color:#3a2600}.stats-day--silver{background:linear-gradient(135deg,#f4f7fb,#aab5c6);color:#2b3342}.stats-day--bronze{background:linear-gradient(135deg,#f6c79a,#b8733a);color:#3a1f08}.stats-day--future{opacity:.4}.stats-day--today{box-shadow:0 0 0 2px var(--accent)}.stats-bars{position:relative;height:110px;display:flex;align-items:flex-end;gap:5px;padding:4px 0 0;border-bottom:1px solid rgba(255,255,255,.12)}.stats-bar-wrap{flex:1;height:100%;display:flex;align-items:flex-end}.stats-bar{width:100%;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--accent2),color-mix(in srgb,var(--accent2) 45%,#000));transform-origin:bottom;animation:bar-rise .6s cubic-bezier(.22,1,.36,1) backwards}.stats-bar--best{background:linear-gradient(180deg,#ffe27a,#d99a12)}@keyframes bar-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.stats-avg-line{position:absolute;left:0;right:0;border-top:2px dashed rgba(255,255,255,.4);pointer-events:none}.stats-legend{display:flex;align-items:center;gap:6px;font-size:.68rem;color:var(--text-dim);font-weight:600}.stats-legend .dot{width:9px;height:9px;border-radius:3px;display:inline-block}.dot--best{background:#ffd54a}.dot--avg{background:transparent;border-top:2px dashed rgba(255,255,255,.6);border-radius:0;height:0;margin-left:8px}.stats-section-head{flex-wrap:wrap}.stats-nav span{min-width:0;text-align:center}.result-medal>div,.result-record{min-width:0}.result-medal strong,.result-medal span,.result-record strong,.result-record span,.result-note{overflow-wrap:anywhere}.share-btn{white-space:normal;line-height:1.2;text-align:center}@media (max-width: 380px){.collection-body{padding-left:14px;padding-right:14px}.collection-head,.collection-progress,.collection-chips,.piece-style{margin-left:14px;margin-right:14px}.stats-cards{gap:6px}.stats-card{padding:12px 4px 10px;border-radius:12px}.stats-card strong{font-size:1.25rem}.stats-card span{font-size:.58rem}.stats-cal{gap:4px}.stats-day{font-size:.68rem;border-radius:8px}.stats-nav{gap:5px;font-size:.74rem}.stats-nav button{width:28px;height:28px}.share-buttons--two{flex-direction:column}.share-buttons--two .share-btn{width:100%}.result-medal{padding:8px 10px;gap:10px}}.stats-day--replay{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s ease,filter .15s ease}.stats-day--replay:active{transform:scale(.88);filter:brightness(1.25)}.stats-replay-hint{margin:10px 2px 0;font-size:.7rem;line-height:1.35;color:var(--text-faint);text-align:center}.result-note--up{color:#f5c542}.stats-cal-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;margin-top:10px;font-size:.66rem;font-weight:600;color:var(--text-dim)}.stats-cal-legend span{display:inline-flex;align-items:center;gap:5px}.stats-cal-legend .dot{width:10px;height:10px;border-radius:3px;display:inline-block}
