:root{color:#5c3144;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff4f7;font-family:Gowun Dodum,Noto Sans KR,WenQuanYi Micro Hei,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:#5c3144;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:radial-gradient(900px 480px at 0 -10%,#ffe0ef,#0000 60%),radial-gradient(700px 460px at 110% 0,#e4d8ff,#0000 55%),linear-gradient(#fff8f5 0%,#f6f0ff 100%);min-height:100dvh}button,a{font:inherit}#app{width:min(440px,100%);min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:12px;margin:0 auto;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#c06a8a;margin:0;font-size:12px}h1,h2,.btn,.screen-title,.tcg,.floater,.pip{font-family:Jua,Gowun Dodum,sans-serif;font-weight:400}h1{color:#e56b97;margin:0;font-size:64px;line-height:.95}h2{margin:0;font-size:28px}.tagline,.how,.hint,.best-line,.dex-count{color:#8d6474;margin:0;line-height:1.45}.title-screen{flex-direction:column;gap:10px;padding-top:12px;animation:.42s rise;display:flex}.hero{justify-content:center;gap:8px;margin:8px 0 4px;display:flex}.hero img{object-fit:contain;filter:drop-shadow(0 10px 12px #c4789640);width:92px;height:92px}.hero img:nth-child(2){transform:translateY(-8px)scale(1.06)}.best-line{color:#5c3144;font-size:18px}.actions,.dialog,.over{flex-direction:column;gap:8px;display:flex}.btn{cursor:pointer;border:0;border-radius:999px;min-height:52px;padding:12px 18px}.btn:disabled{opacity:.45;cursor:default}.btn.primary{color:#fff;background:linear-gradient(#f7a4c4,#e56b97);box-shadow:0 10px 20px #e56b9747}.btn.ghost{color:#8a4d66;background:#ffffffb8;box-shadow:inset 0 0 0 1px #f48ab073}.spawn{width:100%}.topbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.scores{gap:14px;display:flex}.scores p{flex-direction:column;align-items:center;margin:0;display:flex}.scores span,.text-btn,.sound{color:#8d6474;font-size:13px}.scores strong{color:#5c3144;font-family:Jua,sans-serif;font-size:22px;font-weight:400}.text-btn,.sound{color:#8a4d66;cursor:pointer;background:#ffffffb3;border:0;border-radius:999px;min-height:40px;padding:8px 12px}.screen-title{color:#e56b97;font-size:28px}.board-wrap{position:relative}.board{touch-action:none;background:#ffffff9e;border-radius:28px;grid-template-columns:repeat(5,1fr);gap:8px;padding:10px;display:grid;box-shadow:0 16px 40px #c4789629}.cell{aspect-ratio:1;background:#ffe2ecf2;border-radius:16px;place-items:center;display:grid;position:relative}.cell img{object-fit:contain;pointer-events:none;width:86%;height:86%}.cell.dragging{opacity:.35}.cell.over-merge{transform:scale(1.04);box-shadow:inset 0 0 0 3px #e56b97}.cell.over-move{box-shadow:inset 0 0 0 3px #c9b6f2}.cell.pop img,.cell.spawn img{animation:.28s pop}.pip{color:#c06a8a;font-size:11px;position:absolute;bottom:2px;right:4px}.ghost{pointer-events:none;z-index:30;filter:drop-shadow(0 12px 14px #b4506e59);width:76px;height:76px;position:fixed;transform:translate(-50%,-58%)scale(1.08)}.floater{color:#e56b97;pointer-events:none;font-size:16px;animation:.7s forwards float;position:absolute;top:4px;left:50%}.hint{text-align:center;min-height:1.4em}.hint-gap{visibility:hidden}.toast{background:#ffffffe6;border-radius:16px;flex-direction:column;align-items:center;padding:8px 12px;animation:.24s rise;display:flex;box-shadow:0 8px 20px #c4789629}.toast strong{color:#e56b97;font-family:Jua,sans-serif;font-size:18px}.over,.dialog{text-align:center;background:#fffafcf5;border-radius:28px;padding:22px 18px;box-shadow:0 16px 40px #c4789633}.scrim{z-index:20;background:#5c314447;position:fixed;inset:0}.over{z-index:21;justify-content:center;width:min(360px,100% - 32px);max-height:calc(100dvh - 32px);display:flex;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.over h2,.dialog h2{color:#e56b97}.over-score{color:#5c3144;font-size:22px}.record{color:#e56b97;margin:0}.dex-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.dex-card{text-align:center;background:#ffffffd1;border-radius:18px;min-height:112px;padding:8px 4px 10px}.dex-card img{object-fit:contain;width:64px;height:64px}.dex-card p{margin:2px 0 0;font-size:13px}.dex-card small{color:#8d6474;font-size:11px}.mystery{color:#e7a8bf;background:#ffe3ee;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto;font-family:Jua,sans-serif;font-size:28px;display:grid}.footer{flex-direction:column;gap:8px;margin-top:auto;display:flex}#banner-slot:empty{display:none}.tcg{color:#fff;background:linear-gradient(90deg,#f48ab0,#c9a6f5);border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:10px 14px;text-decoration:none;display:flex;box-shadow:0 8px 18px #c48cbe47}.sound{align-self:center}@keyframes pop{0%{transform:scale(.45)}70%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes float{to{opacity:0;transform:translate(-50%,-26px)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:360px){h1{font-size:52px}.hero img{width:76px;height:76px}.board{gap:6px;padding:8px}.dex-card img,.mystery{width:52px;height:52px}}@media (min-width:800px){body{place-items:center;display:grid}#app{min-height:auto;padding-top:28px;padding-bottom:28px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
