:root{color-scheme:light;--ink:#58454e;--muted:#85727d;--rose:#a8627b;--cream:#fffaf2;--lavender:#ded5e8}*{box-sizing:border-box}body{margin:0;background:#f7f1e9;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic",sans-serif;background-image:radial-gradient(ellipse at 0 20%,#eedde6 0,transparent 48%),radial-gradient(ellipse at 100% 75%,#e6dfed 0,transparent 45%)}button,a,canvas{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #9473aa;outline-offset:4px}.shell{max-width:460px;margin:auto;padding:20px 18px max(16px,env(safe-area-inset-bottom))}header{display:flex;justify-content:space-between;align-items:center}.wordmark{text-decoration:none;color:var(--ink);font-family:Georgia,serif;font-size:30px;letter-spacing:1px}.wordmark span{display:block;font-family:sans-serif;font-size:9px;letter-spacing:1px;margin-top:3px}.edition{font-size:8px;letter-spacing:2px;line-height:1.8;text-align:right;color:var(--muted)}.heading{position:relative;text-align:center;margin:22px 0 20px}.eyebrow{font-size:9px;letter-spacing:2.5px;color:var(--muted);font-weight:600}h1{font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1.06;font-weight:400;margin:12px 0}h1 em{font-weight:400;font-size:45px;color:var(--rose)}.sparkle{position:absolute;top:35px;right:20px;color:#b69b6e;font-size:30px}.subtitle{font-size:12px;letter-spacing:1px;margin:12px 0 0}.game-card{border:1px solid #fff;border-radius:25px;overflow:hidden;background:var(--cream);box-shadow:0 16px 40px #6a4c6510}.scoreboard{height:74px;padding:13px 23px;display:flex;align-items:center;gap:36px;position:relative}.scoreboard div>span{font-size:9px;letter-spacing:1.8px;display:block;color:var(--muted)}.scoreboard strong{font-size:30px;font-family:Georgia,serif;font-weight:400;font-variant-numeric:tabular-nums}.scoreboard small{font-size:11px;font-family:sans-serif;margin-left:6px}.score-label strong{color:var(--rose)}.mini-moon{margin-left:auto;font-size:40px;color:#b9a585;transform:rotate(-20deg)}.time-track{height:3px;background:#e7dce3}.time-track div{height:100%;background:#ba8a9e;transform-origin:left;transition:background .3s}.playfield{height:490px;position:relative;background:linear-gradient(165deg,#e8e0ef,#f3e5e9 60%,#eee2dc);overflow:hidden;isolation:isolate}.playfield canvas{width:100%;height:100%;display:block;touch-action:none}.overlay{position:absolute;inset:0;padding:24px 25px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fbf5eddb,#f7edf1eb 90%);backdrop-filter:blur(3px)}[hidden]{display:none!important}.intro-ornament{font-family:Georgia,serif;color:#b49a74;font-size:22px;letter-spacing:14px;margin:0 0 10px 14px}.intro-ornament span{font-size:49px;color:#aa91af;vertical-align:middle}h2{font-family:Georgia,"Yu Mincho",serif;font-weight:500;font-size:24px;line-height:1.6;margin:6px 0 10px}.intro-copy{font-size:13px;line-height:1.9;margin:4px 0 15px}.rules{display:flex;gap:12px;font-size:11px;align-items:center}.rules span{display:flex;align-items:center;gap:3px}.rules i{font-style:normal;font-size:23px}.rules b{font-size:14px;color:var(--rose)}.last-tip{font-size:11px;color:#896f96;margin:18px 0}.primary{border:0;border-radius:30px;background:var(--rose);color:white;min-height:49px;padding:13px 22px;width:100%;font-size:14px;letter-spacing:1px;box-shadow:0 5px 13px #a8627b24;display:flex;justify-content:space-between;align-items:center}.primary:hover{background:#95566e}.primary:active{transform:translateY(1px)}.primary span{font-size:21px}.hint{font-size:10px;line-height:1.7;color:var(--muted);margin:12px 0 0}.game-caption{font-size:11px;display:flex;align-items:center;justify-content:space-between;padding:13px 20px;letter-spacing:.4px}.game-caption>span{color:#a47f94;font-size:17px}footer{text-align:center;margin:21px 0 0;color:var(--muted)}footer>span{font-size:9px;letter-spacing:2px}footer p{font-size:10px;line-height:1.8;margin:9px 0}.rush{position:absolute;top:22px;left:0;right:0;text-align:center;pointer-events:none;color:#725681;text-shadow:0 1px 12px #fff}.rush span{display:block;font-size:10px;letter-spacing:3px}.rush strong{display:block;font-size:22px;margin-top:7px}.is-rush{box-shadow:inset 0 0 40px #bd90c04d}.is-rush .rush{animation:glow 1s ease-in-out infinite alternate}@keyframes glow{to{transform:scale(1.04);opacity:.8}}.feedback{position:absolute;bottom:95px;left:0;right:0;text-align:center;pointer-events:none;font-size:20px;font-weight:600;color:#9b5271;opacity:0;transition:opacity .12s}.feedback.visible{opacity:1}.result{padding:18px 26px}.result h2{font-size:21px;margin:4px 0}.result-score{display:flex;align-items:center;gap:10px;margin:0 0 9px}.result-score strong{font-family:Georgia,serif;font-size:44px;font-weight:400}.result-score span{font-size:11px}.reward{background:#fffbf5c9;border:1px solid #fff;border-radius:16px;width:100%;padding:13px 8px}.reward>span{font-size:10px;letter-spacing:1px}.reward strong{display:block;font-family:Georgia,serif;font-size:31px;color:var(--rose);margin-top:4px}.reward p{font-size:11px;line-height:1.6;margin:5px 0}.tiers{list-style:none;padding:0;width:100%;margin:10px 0 13px;font-size:12px}.tiers li{padding:7px 13px;display:flex;justify-content:space-between;border-bottom:1px solid #d8cbd880}.tiers li.selected{background:#e6dceccc;border-radius:7px;color:#6b4d80}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-height:780px){.shell{padding-top:12px}.heading{margin:15px 0 14px}h1{font-size:29px}h1 em{font-size:36px}.playfield{height:440px}.intro-ornament{margin-bottom:2px}.overlay{padding-top:14px}.intro-copy{margin-bottom:8px}.last-tip{margin:12px 0}.result .eyebrow{margin:3px 0}.result h2{font-size:19px}}@media(max-width:350px){.shell{padding-left:10px;padding-right:10px}.overlay{padding-left:17px;padding-right:17px}.rules{gap:8px}.result h2{font-size:18px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.coupon-intro{margin:0 0 18px;padding:14px 16px;background:#fffaf28c;border:1px solid #fff;border-radius:16px}.coupon-intro h2{font-family:inherit;font-size:13px;margin:0 0 9px;font-weight:600}.coupon-intro ul{list-style:none;padding:0;margin:0;font-size:12px;line-height:1.9}.coupon-intro p{font-size:11px;line-height:1.7;margin:8px 0 0;color:var(--muted)}.result{justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}.result>*{flex-shrink:0}.coupon-details{width:100%;margin-top:12px;padding:14px 12px;background:#fffbf5;border:1px solid #dacbd8;border-radius:14px}.coupon-details label{display:block;font-size:12px;margin-bottom:5px}.coupon-details input{display:block;width:100%;background:transparent;border:0;text-align:center;color:var(--rose);font-family:monospace;font-size:25px;font-weight:700;letter-spacing:1px;padding:8px 0}.coupon-details button{width:100%;min-height:44px;border:1px solid #b38b9e;background:#f4e7ed;color:#704a60;border-radius:22px;font-size:13px}.coupon-details p{font-size:12px;line-height:1.75;margin:8px 0 0;overflow-wrap:anywhere}.coupon-details #couponMinimum{font-weight:700;font-size:14px}.coupon-details #copyStatus:empty{display:none}.clipboard-helper{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}
