*,:before,:after{box-sizing:border-box}:root{--font-display:"Jua", "Noto Sans KR", sans-serif;--font-body:"Noto Sans KR", system-ui, sans-serif;font-family:var(--font-body);color:#1f2937;--sand-base:#fff0f3;--sand-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23s)' opacity='0.11'/%3E%3C/svg%3E");background-color:var(--sand-base);background-image:var(--sand-grain), radial-gradient(135% 100% at 50% 0%, #fff8f2 0%, #ffeef2 42%, #ffe1ec 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;font-size:16px;line-height:1.5}body{margin:0;padding:0}body:before{content:"";z-index:-1;pointer-events:none;filter:grayscale();opacity:.08;mix-blend-mode:multiply;background-image:url(/puzzle/assets/bg-chars-D2d3yXgP.png);background-repeat:repeat;background-size:400px;position:fixed;inset:0}#root{width:100%;max-width:100%;padding-bottom:var(--ad-banner-h,0px);margin:0 auto}button{font-family:var(--font-body)}.board{flex-wrap:wrap;justify-content:center;gap:12px;max-width:600px;margin:0 auto;padding:20px;display:flex}.slot{cursor:pointer;border:3px solid;flex-direction:column;align-items:center;min-width:64px;padding:8px;transition:all .2s;display:flex;position:relative}.slot:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-2px)}.slot.selected{transform:translateY(-4px)}.slot.empty{border-style:dashed}.slot:disabled{cursor:default;opacity:.7}.slot-inner{flex-direction:column-reverse;gap:4px;display:flex}.item-cell{border-radius:13px;justify-content:center;align-items:center;width:52px;height:44px;transition:all .15s;display:flex}.item-cell.filled{border:2px solid}.item-cell.picked-up{outline-offset:1px;z-index:1;outline:3px solid #f59e0b;transform:translateY(-10px);box-shadow:0 6px 12px #00000040}.item-cell.empty-cell{border-radius:inherit;background:#00000008;border:2px dashed #00000014}.item-icon{filter:drop-shadow(0 1px 1px #0003);line-height:1}.item-img{object-fit:contain;filter:drop-shadow(0 2px 2px #00000047);pointer-events:none}.complete-check{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 4px #0003}@media (width<=480px){.board{gap:8px;padding:12px}.slot{min-width:52px;padding:6px}.item-cell{border-radius:12px;width:44px;height:40px}}.game-header{padding:calc(20px + env(safe-area-inset-top)) 20px 12px;background:#fff0f3;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;display:flex}.header-btn{cursor:pointer;color:#374151;background:0 0;border:2px solid #d1d5db;border-radius:8px;padding:6px 12px;font-size:18px;transition:all .2s}.home-btn{transform:translateY(-5px)}.header-btn:hover{background:#f3f4f6;border-color:#9ca3af}.header-center{flex-direction:column;align-items:center;gap:2px;display:flex}.level-badge{font-family:var(--font-display);color:#7a4a1e;letter-spacing:.5px;font-size:19px;font-weight:700;line-height:1.05}.moves-count{color:#6b7280;font-size:13px;transform:translateY(5px)}.star-targets{color:#9ca3af;font-size:11px}.header-right{align-items:center;gap:8px;display:flex;transform:translateY(5px)}.header-shop-btn{cursor:pointer;background:#eff6ff;border:2px solid #3b82f6;border-radius:10px;padding:6px 10px;font-size:18px;line-height:1;transition:all .2s}.header-shop-btn:hover{background:#dbeafe;transform:scale(1.05);box-shadow:0 2px 8px #3b82f640}.coin-display{background:#fef3c7;border:2px solid #fbbf24;border-radius:20px;align-items:center;gap:6px;padding:4px 14px 4px 8px;display:flex}.coin-icon{font-size:18px}.coin-amount{color:#92400e;font-size:16px;font-weight:700}.coin-btn{cursor:pointer;transition:all .2s}.coin-btn:hover{transform:scale(1.05);box-shadow:0 2px 8px #fbbf244d}.actions{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffafb99;border-top:1px solid #b23a5b1a;flex-wrap:wrap;justify-content:center;gap:8px;padding:12px 16px;display:flex}.action-btn{cursor:pointer;background:#fff;border:2px solid #d1d5db;border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:64px;padding:10px 16px;transition:all .2s;display:flex}.action-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.action-btn:disabled{opacity:.4;cursor:default}.action-icon{font-size:22px}.action-label{color:#6b7280;white-space:nowrap;font-size:11px}.hint-btn:not(:disabled){background:#fffbeb;border-color:#fbbf24}.slot-btn:not(:disabled){background:#eff6ff;border-color:#60a5fa}@media (width<=480px){.actions{gap:6px;padding:12px}.action-btn{min-width:56px;padding:8px 12px}.action-icon{font-size:18px}.action-label{font-size:10px}}.popup-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.popup{text-align:center;background:#fff;border-radius:20px;width:90%;max-width:360px;max-height:85vh;padding:32px 28px;animation:.3s slideUp;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.popup-emoji{margin-bottom:12px;font-size:48px}.popup-title{font-family:var(--font-display);color:#7a4a1e;margin:0 0 2px;font-size:24px;font-weight:700;line-height:1.1}.popup-subtitle{color:#6b7280;margin:0 0 8px;font-size:15px}.popup-info{color:#9ca3af;margin:0 0 16px;font-size:14px}.stars-display{justify-content:center;gap:8px;margin:8px 0 12px;display:flex}.star{font-size:36px;transition:all .3s}.star.earned{color:#fbbf24;text-shadow:0 2px 8px #fbbf2466;animation:.4s starPop}.star.empty{color:#d1d5db}@keyframes starPop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.reward-section{background:#fef3c7;border:2px solid #fbbf24;border-radius:12px;margin-bottom:20px;padding:12px}.reward-amount{color:#92400e;justify-content:center;align-items:center;gap:8px;font-size:24px;font-weight:700;display:flex}.reward-amount .coin-icon{font-size:28px}.popup-actions{flex-direction:column;gap:8px;display:flex}.stuck-actions{gap:10px}.popup-btn{cursor:pointer;border:none;border-radius:12px;width:100%;padding:12px 24px;font-size:15px;font-weight:600;transition:all .2s}.popup-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.popup-btn.primary{color:#fff;background:#3b82f6}.popup-btn.primary:hover{background:#2563eb}.popup-btn.secondary{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.popup-btn.continue-btn{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border:none}.popup-btn.continue-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d)}.stuck-divider{color:#9ca3af;text-align:center;margin:4px 0;font-size:12px}.popup-btn.ad-free-btn{color:#92400e;background:#fffbeb;border:1px solid #fbbf24}.popup-btn.ad-free-btn:hover{background:#fef3c7}.popup-btn.secondary:hover{background:#e5e7eb}.popup-btn.reward-double{color:#fff;background:linear-gradient(135deg,#f59e0b,#f97316)}.popup-btn.reward-double:hover{background:linear-gradient(135deg,#d97706,#ea580c)}.next-btn{margin-top:8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.popup-wrapper{width:90%;max-width:420px;position:relative}.popup-close-outer{color:#6b7280;cursor:pointer;z-index:10;background:#fff;border:2px solid #d1d5db;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex;position:absolute;top:-18px;right:-18px;box-shadow:0 2px 8px #00000026}.popup-close-outer:hover{background:#f3f4f6;border-color:#9ca3af;transform:scale(1.1)}.payment-popup{width:100%;max-height:85vh;padding:24px 20px;overflow-y:auto}.payment-note{color:#9ca3af;text-align:center;margin:0 0 16px;font-size:12px}.payment-section{margin-bottom:20px}.payment-section-title{color:#6b7280;text-align:left;margin:0 0 10px;font-size:14px;font-weight:700}.subscription-card{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fbbf24;border-radius:14px;margin-bottom:12px;padding:16px}.subscription-card.active{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#22c55e}.sub-top{align-items:center;gap:10px;margin-bottom:12px;display:flex}.sub-icon{flex-shrink:0;font-size:32px}.sub-info{text-align:left;flex-direction:column;flex:1;display:flex}.sub-name{color:#1f2937;font-size:18px;font-weight:700}.sub-desc{color:#6b7280;font-size:13px}.sub-price{color:#92400e;white-space:nowrap;font-size:16px;font-weight:700}.sub-benefits{flex-direction:column;gap:4px;margin:0 0 14px;padding:0;list-style:none;display:flex}.sub-benefits li{color:#374151;text-align:left;padding-left:18px;font-size:13px;position:relative}.sub-benefits li:before{content:"✓";color:#22c55e;font-weight:700;position:absolute;left:0}.sub-buy-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#f97316);border:none;border-radius:10px;width:100%;padding:12px;font-size:16px;font-weight:700;transition:all .2s}.sub-buy-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.sub-active-badge{text-align:center;color:#16a34a;background:#dcfce7;border-radius:8px;padding:8px;font-size:14px;font-weight:600}.product-list{flex-direction:column;gap:12px;max-height:400px;display:flex;overflow-y:auto}.product-card{background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:14px;transition:border-color .2s}.product-card.purchased{opacity:.6}.product-top{align-items:center;gap:12px;margin-bottom:10px;display:flex}.product-icon{flex-shrink:0;font-size:32px}.product-info{text-align:left;flex-direction:column;display:flex}.product-name{color:#1f2937;font-size:16px;font-weight:700}.product-desc{color:#6b7280;font-size:13px}.product-contents{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.product-contents li{color:#374151;background:#f3f4f6;border-radius:6px;padding:3px 10px;font-size:12px}.product-buy-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;width:100%;padding:10px;font-size:16px;font-weight:700;transition:all .2s}.product-buy-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.product-buy-btn:disabled{cursor:default;background:#d1d5db}.stats-popup{max-width:400px;padding:24px 20px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;display:grid}.stat-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.stat-value{color:#1f2937;font-size:22px;font-weight:700}.stat-label{color:#9ca3af;font-size:11px}.best-moves-section{margin-top:16px}.best-moves-title{color:#6b7280;margin:0 0 10px;font-size:14px;font-weight:600}.best-moves-list{grid-template-columns:repeat(3,1fr);gap:6px;max-height:180px;display:grid;overflow-y:auto}.best-move-item{color:#374151;background:#f9fafb;border-radius:6px;justify-content:space-between;padding:6px 10px;font-size:13px;display:flex}.best-move-value{color:#d6336c;font-weight:600}.coin-info-popup{max-width:340px}.coin-usage-list{text-align:left;margin:12px 0}.coin-usage-title{font-family:var(--font-display);color:#92400e;margin:8px 0 6px;font-size:15px;font-weight:700;line-height:1.2}.coin-usage-item{color:#374151;border-radius:6px;justify-content:space-between;padding:6px 8px;font-size:14px;display:flex}.coin-usage-item:nth-child(2n){background:#fef9f0}.coin-usage-item span:last-child{color:#92400e;font-weight:600}.coin-usage-divider{background:#e5e7eb;height:1px;margin:10px 0}.coin-earn-hint{color:#9ca3af;text-align:center;margin:8px 0 14px;font-size:12px}.pack-popup{width:100%;max-height:85vh;padding:24px 20px;overflow-y:auto}.pack-list{flex-direction:column;gap:14px;margin-top:16px;display:flex}.pack-card{background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:16px}.pack-card.owned{background:#f0fdf4;border-color:#86efac}.pack-top{align-items:center;gap:12px;margin-bottom:12px;display:flex}.pack-icon{flex-shrink:0;font-size:36px}.pack-info{text-align:left;flex-direction:column;flex:1;display:flex}.pack-name{font-family:var(--font-display);color:#4a3320;font-size:17px;font-weight:700;line-height:1.15}.pack-desc{color:#6b7280;margin-top:2px;font-size:13px}.pack-progress{color:#16a34a;margin-top:2px;font-size:12px;font-weight:600}.pack-levels{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.pack-level-btn{aspect-ratio:1;color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:all .2s;display:flex}.pack-level-btn:hover{background:#fffbeb;border-color:#f59e0b}.pack-level-btn.cleared{color:#16a34a;background:#dcfce7;border-color:#86efac}.pack-buy-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;width:100%;padding:12px;font-size:16px;font-weight:700;transition:all .2s}.pack-buy-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}@media (width<=480px){.pack-levels{grid-template-columns:repeat(8,1fr)}}.tutorial-demo{background:#fff9fa;border:2px solid #f9a8b8;border-radius:12px;margin-bottom:14px;padding:16px 12px 12px;position:relative}.demo-board{justify-content:center;gap:10px;margin-bottom:8px;display:flex}.demo-slot{background:#f8f5f0;border:2px solid #d4c8b8;border-radius:8px;flex-direction:column-reverse;gap:3px;width:48px;min-height:76px;padding:5px;transition:all .3s;display:flex;position:relative}.demo-slot.demo-selected{border-color:#f59e0b;transform:translateY(-2px);box-shadow:0 0 0 2px #f59e0b4d}.demo-slot.demo-valid{background:#f0fdf4;border-color:#22c55e;box-shadow:0 0 0 2px #22c55e40}.demo-slot.demo-complete{background:#f0fdf4;border-color:#22c55e;animation:.5s demo-celebrate}.demo-slot.demo-empty{background:#fafaf8;border-style:dashed}.demo-cell{border-radius:4px;justify-content:center;align-items:center;width:36px;height:30px;font-size:14px;transition:all .4s;display:flex}.demo-cell.demo-filled{border:1px solid #00000026;box-shadow:inset 0 -1px 3px #0000001a}.demo-char-img{object-fit:contain;pointer-events:none;width:22px;height:22px}.demo-cell.demo-cell-empty{background:#00000008;border:1px dashed #00000014}.demo-cell.demo-picked{outline-offset:1px;z-index:1;outline:2px solid #f59e0b;transform:translateY(-8px);box-shadow:0 4px 8px #0003}.demo-check{color:#fff;background:#22c55e;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;animation:.3s demo-pop;display:flex;position:absolute;top:-6px;right:-6px}.demo-finger{pointer-events:none;font-size:22px;animation:.6s infinite demo-tap;position:absolute;bottom:52px;transform:translate(-50%)}.demo-label{text-align:center;color:#d6336c;min-height:20px;margin:6px 0 8px;font-size:13px;font-weight:600;animation:.4s demo-fade}.demo-progress{justify-content:center;gap:6px;display:flex}.demo-dot{background:#e5e7eb;border-radius:50%;width:6px;height:6px;transition:all .3s}.demo-dot.active{background:#d6336c;transform:scale(1.3)}@keyframes demo-tap{0%,to{transform:translate(-50%)translateY(0)}50%{opacity:.7;transform:translate(-50%)translateY(4px)}}@keyframes demo-celebrate{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes demo-pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes demo-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lang-toggle{cursor:pointer;background:#fff;border:2px solid #d1d5db;border-radius:8px;align-items:center;gap:0;padding:4px 10px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.lang-toggle:hover{background:#f3f4f6;border-color:#9ca3af}.lang-active{color:#1f2937;font-weight:700}.lang-inactive{color:silver}.lang-divider{color:#d1d5db;margin:0 2px}.home{min-height:100vh;padding:calc(34px + env(safe-area-inset-top)) 20px 20px;isolation:isolate;background-image:var(--sand-grain), linear-gradient(180deg, #ffe0e6 0%, #fff0f3 40%);background-repeat:repeat,no-repeat;background-size:160px,cover;flex-direction:column;align-items:center;display:flex;position:relative}.home:before{content:"";z-index:-1;pointer-events:none;filter:grayscale();opacity:.06;mix-blend-mode:multiply;background-image:url(/puzzle/assets/bg-chars-D2d3yXgP.png);background-repeat:repeat;background-size:360px;position:absolute;inset:0}.home-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-bottom:40px;display:flex}.home-top-left,.home-top-right{align-items:center;gap:10px;min-width:0;display:flex}.home-top-right{flex-wrap:wrap;justify-content:flex-end}.streak-badge{color:#ea580c;white-space:nowrap;background:linear-gradient(#fffdfb 0%,#fff2e4 100%);border:2px solid #fdba74;border-radius:999px;flex-shrink:0;padding:5px 14px;font-size:14px;font-weight:700;box-shadow:0 2px #ea580c1f,0 4px 10px #fb923c38,inset 0 1px #ffffffe6}.home-coin{background:linear-gradient(#fffefb 0%,#fff5d6 100%);border:2px solid #f5c33b;border-radius:999px;align-items:center;gap:6px;padding:5px 15px 5px 9px;font-weight:700;display:flex;box-shadow:0 2px #b482141f,0 4px 10px #d6a02038,inset 0 1px #fffffff2}.home-hero{text-align:center;margin-bottom:32px}.home-title{font-family:var(--font-display);color:#7a4a1e;-webkit-text-fill-color:transparent;letter-spacing:0;filter:drop-shadow(0 2px #ffffff8c)drop-shadow(0 3px 4px #78461447);background:linear-gradient(#9c6a34 0%,#7a4a1e 60%,#5e3714 100%);-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;gap:14px;margin:0 0 2px;font-size:46px;font-weight:700;line-height:1.05;display:flex}.title-orn{color:#e3a4b4;-webkit-text-fill-color:#e3a4b4;filter:none;font-size:22px;transform:translateY(-4px)}.home-subtitle{font-family:var(--font-display);color:#b07a3a;margin:0;font-size:18px;line-height:1.3}.how-to-play{text-align:left;background:#fff;border:2px solid #f9a8b8;border-radius:16px;width:100%;max-width:400px;margin-bottom:28px;padding:20px 24px}.how-to-title{font-family:var(--font-display);color:#d6336c;text-align:center;margin:0 0 10px;font-size:20px;font-weight:700;line-height:1.1}.how-to-list{flex-direction:column;gap:10px;margin:0 0 14px;padding:0;list-style:none;display:flex}.how-to-list li{color:#374151;align-items:center;gap:10px;font-size:14px;line-height:1.4;display:flex}.how-step{color:#fff;background:#d6336c;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:flex}.star-reward-box{text-align:center;background:linear-gradient(135deg,#fef3c7,#fff7ed);border:2px solid #f59e0b;border-radius:12px;margin:14px 0;padding:14px 16px}.star-reward-title{font-family:var(--font-display);color:#92400e;margin:0 0 8px;font-size:17px;font-weight:700;line-height:1.3}.star-reward-table{flex-direction:column;gap:6px;display:flex}.star-row{border-radius:8px;justify-content:space-between;align-items:center;padding:6px 12px;font-size:13px;display:flex}.star-row.star-3{background:#fbbf2433;font-weight:700}.star-row.star-2{background:#fbbf241a}.star-row.star-1{color:#9ca3af;background:#00000008}.star-icons{color:#fbbf24;text-align:left;min-width:50px;font-size:14px}.star-row.star-1 .star-icons{color:#d1d5db}.star-label{text-align:center;color:#6b7280;flex:1}.star-percent{text-align:right;color:#92400e;min-width:70px;font-weight:600}.star-row.star-1 .star-percent{color:#9ca3af}.star-reward-hint{font-family:var(--font-display);color:#d6336c;margin:10px 0 0;font-size:15px;font-weight:700;line-height:1.3}.how-to-tips{color:#6b7280;flex-wrap:wrap;justify-content:center;gap:6px;font-size:13px;display:flex}.home-buttons{flex-direction:column;align-items:center;gap:12px;margin-bottom:40px;display:flex}.play-btn{font-family:var(--font-display);color:#fff;cursor:pointer;text-shadow:0 1px 1px #b4143c59;background:linear-gradient(#ff8fb0 0%,#ff5c86 55%,#ff3d6e 100%);border:none;border-radius:999px;padding:14px 44px;font-size:21px;font-weight:700;line-height:1;transition:transform .12s,box-shadow .12s;box-shadow:0 6px #d61f52,0 13px 22px #ff3d6e61,inset 0 2px #ffffff8c}.play-btn:hover{transform:translateY(-2px);box-shadow:0 8px #d61f52,0 16px 26px #ff3d6e73,inset 0 2px #ffffff8c}.play-btn:active{transform:translateY(3px);box-shadow:0 3px #d61f52,0 6px 12px #ff3d6e4d,inset 0 2px #fff6}.hero-play-btn{border-radius:999px;justify-content:center;align-items:center;gap:10px;margin-top:14px;padding:15px 28px;font-size:24px;display:inline-flex}.play-paw{filter:drop-shadow(0 1px 1px #b4143c4d);font-size:24px}.play-bird{object-fit:contain;filter:drop-shadow(0 2px 3px #0003);width:46px;height:46px;margin:-12px -6px -12px 0}.hero-free-plays{text-align:center;margin:10px 0 0;font-size:16px;font-weight:800}.home-sub-buttons{grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:360px;margin-left:auto;margin-right:auto;display:grid}.hero-sub-buttons{margin-top:14px}.sub-btn{font-family:var(--font-display);cursor:pointer;color:#b23a5b;background:linear-gradient(#fff 0%,#fdeef1 100%);border:2px solid #f6cdd6;border-radius:16px;justify-content:center;align-items:center;gap:4px;padding:14px 18px;font-size:17px;font-weight:700;line-height:1;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 4px #b23a5b24,0 6px 12px #b23a5b1f,inset 0 1px #ffffffe6}.sub-btn:hover{transform:translateY(-2px);box-shadow:0 6px #b23a5b29,0 9px 16px #b23a5b29,inset 0 1px #ffffffe6}.sub-btn:active{transform:translateY(2px);box-shadow:0 1px #b23a5b24,0 3px 6px #b23a5b1a,inset 0 1px #ffffffe6}.sub-btn.challenge-btn{color:#a56a12;background:linear-gradient(#fffdf5 0%,#fdf3d8 100%);border-color:#f5d98a;box-shadow:0 4px #a56a1224,0 6px 12px #a56a121f,inset 0 1px #ffffffe6}.sub-btn.pack-btn{color:#c23a63;background:linear-gradient(#fff 0%,#ffe9ef 100%);border-color:#f6b6c4}.sub-btn.shop-btn{color:#a56a12;background:linear-gradient(#fffdf3 0%,#ffeab8 100%);border-color:#f3cd7e;box-shadow:0 4px #c67d122e,0 6px 12px #f5a62333,inset 0 1px #ffffffe6}.sub-btn.howto-btn{color:#2f8a5a;background:linear-gradient(#fbfffc 0%,#e7f7ee 100%);border-color:#bfe3cf;box-shadow:0 4px #2f8a5a24,0 6px 12px #2f8a5a1f,inset 0 1px #ffffffe6}.home-settings-btn{cursor:pointer;background:linear-gradient(#fff 0%,#fdeef1 100%);border:2px solid #f6cdd6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:inline-flex;box-shadow:0 3px #b23a5b1f,0 5px 10px #b23a5b1a,inset 0 1px #ffffffe6}.home-settings-btn:active{transform:translateY(2px)}.home-sheet-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding-bottom:calc(var(--ad-banner-h,0px) + env(safe-area-inset-bottom,0px));background:#3c1e2d6b;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.home-sheet{background:linear-gradient(#fff,#fdf3f6);border-radius:22px 22px 0 0;width:100%;max-width:440px;max-height:86vh;padding:18px 18px 22px;overflow-y:auto;box-shadow:0 -12px 40px #783c5040}.home-sheet-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.home-sheet-title{color:#b23a5b;font-size:19px;font-weight:900;font-family:var(--font-display);margin:0}.home-sheet-close{color:#b23a5b;cursor:pointer;background:#fbe3ea;border:none;border-radius:50%;width:34px;height:34px;font-size:16px;font-weight:900}.home-sheet-actions{gap:10px;margin-top:14px;display:grid}.sub-btn.rank-btn{color:#a5711a;background:linear-gradient(#fffdf6 0%,#fbf1da 100%);border-color:#f0d9a3;box-shadow:0 4px #a5711a24,0 6px 12px #a5711a1f,inset 0 1px #ffffffe6}.sub-btn.invite-btn{color:#c94a3c;background:linear-gradient(#fffaf9 0%,#ffe4de 100%);border-color:#f7b7ae;box-shadow:0 4px #c94a3c24,0 6px 12px #c94a3c1f,inset 0 1px #ffffffe6}.sub-btn.stats-btn{color:#1f9d46;background:linear-gradient(#fbfffc 0%,#e6f9ec 100%);border-color:#a8e6b6;box-shadow:0 4px #1f9d4621,0 6px 12px #1f9d461f,inset 0 1px #ffffffe6}.reset-data-btn{color:#9ca3af;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:8px;margin-top:32px;padding:6px 16px;font-size:12px}.reset-data-btn:hover{color:#ef4444;border-color:#ef4444}.level-grid{width:100%;max-width:400px}.level-grid-title{font-family:var(--font-display);color:#a5711a;margin:0 0 12px;font-size:19px;font-weight:700;line-height:1.1}.levels{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.level-btn{aspect-ratio:1;font-family:var(--font-display);color:#7a5a2e;cursor:pointer;background:linear-gradient(#fffdf7 0%,#fbf3e0 100%);border:2px solid #f0e6d0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:19px;font-weight:700;transition:transform .12s,box-shadow .12s,background .2s;display:flex;box-shadow:0 3px #96783c1f,0 5px 9px #96783c1a,inset 0 1px #ffffffe6}.level-btn:hover:not(:disabled){border-color:#f5c33b;transform:translateY(-2px)}.level-btn.completed{color:#1f9d46;background:linear-gradient(#f3fef6 0%,#d9f5e1 100%);border-color:#a8e6b6;box-shadow:0 3px #1f9d4621,0 5px 9px #1f9d461a,inset 0 1px #ffffffe6}.level-btn.current{color:#92400e;background:linear-gradient(#fff6dc 0%,#ffe9ad 100%);border-color:#f5b825;box-shadow:0 0 0 3px #f5b82559,0 4px #b4821429,0 6px 12px #d6a02040,inset 0 1px #ffffffe6}.level-btn.locked{color:#cbb3aa;cursor:default;background:linear-gradient(#fdf8f5 0%,#f6ebe6 100%);border-color:#f0e0da;font-size:12px;box-shadow:inset 0 1px #fffc}.level-num{font-size:19px;line-height:1}.level-stars{color:#fbbf24;letter-spacing:-1px;font-size:8px;line-height:1}@media (width<=480px){.home-title{font-size:38px}.play-btn{padding:13px 34px;font-size:19px}.hero-play-btn{padding:14px 26px;font-size:21px}.levels{grid-template-columns:repeat(5,1fr)}}.game-screen{min-height:calc(100vh - var(--ad-banner-h,0px) - env(safe-area-inset-bottom,0px));background:0 0;flex-direction:column;display:flex}.game-screen.shake{animation:.4s cubic-bezier(.36,.07,.19,.97) both screen-shake}@keyframes screen-shake{0%{transform:translate(0,0)rotate(0)}12%{transform:translate(-12px,5px)rotate(-.9deg)}25%{transform:translate(11px,-7px)rotate(.8deg)}40%{transform:translate(-9px,5px)rotate(-.6deg)}55%{transform:translate(7px,-3px)rotate(.45deg)}70%{transform:translate(-5px,2px)rotate(-.3deg)}85%{transform:translate(3px,-1px)rotate(.15deg)}to{transform:translate(0,0)rotate(0)}}@media (prefers-reduced-motion:reduce){.game-screen.shake{animation:none}}.game-area{flex:1;justify-content:center;align-items:center;padding:20px;display:flex}.game-how-to{flex-wrap:wrap;justify-content:center;gap:12px;padding:0 16px;display:flex}.game-how-to span{color:#9ca3af;font-size:12px}
