@import url(https://fonts.googleapis.com/css2?family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@800;900&family=Zen+Maru+Gothic:wght@500;700;900&display=swap);:root{--ink:#263048;--muted:#74798a;--cream:#fff;--card:#fff;--orange:#ff7b38;--orange-dark:#e65c22;--yellow:#ffc947;--green:#56b979;--line:#e4e7ec;--shadow:0 22px 60px rgba(38, 48, 72, .1)}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);background:#fff;font-family:"Zen Maru Gothic",system-ui,sans-serif;overflow-x:hidden}button{font:inherit}button:focus-visible{outline:rgba(38,48,72,.22) solid 4px;outline-offset:3px}.sun{display:none}.app{width:min(940px,calc(100% - 32px));margin:0 auto;padding-bottom:46px}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f1f4}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:700;font-size:13px;line-height:1.05;letter-spacing:.08em}.brand strong{color:var(--orange);font-family:"Noto Sans JP",sans-serif;font-size:18px;font-weight:900}.brand-mark{display:grid;place-items:center;width:45px;height:45px;color:#fff;background:linear-gradient(145deg,#ff955f,var(--orange));border:0;border-radius:14px;box-shadow:0 8px 20px rgba(255,123,56,.24);font-weight:900;font-size:24px}.header-actions{display:flex;gap:10px}.icon-button{position:relative;width:43px;height:43px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted);font-weight:900;cursor:pointer}.icon-button[data-tooltip]::after{content:attr(data-tooltip);position:absolute;top:calc(100% + 9px);right:0;z-index:20;width:max-content;max-width:150px;padding:7px 10px;border-radius:8px;color:#fff;background:var(--ink);box-shadow:0 5px 15px rgba(38,48,72,.2);font-size:11px;line-height:1.2;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .16s,transform .16s}.icon-button[data-tooltip]:focus-visible::after,.icon-button[data-tooltip]:hover::after{opacity:1;transform:translateY(0)}.sound-on{color:var(--orange);border-color:#ffd4bf;background:#fff8f4}.hero{text-align:center;margin:18px auto 30px}.daily-pill{display:inline-flex;gap:8px;align-items:center;padding:7px 14px;border-radius:999px;color:#b85325;background:#fff2eb;font-weight:900;font-size:12px;letter-spacing:.08em}.daily-pill span::before{content:"★";margin-right:6px;color:var(--orange)}.hero h1{margin:14px 0 10px;font-family:"Noto Sans JP",sans-serif;font-weight:900;font-size:clamp(35px, 6vw, 57px);line-height:1.15;letter-spacing:.02em}.hero h1 em{color:var(--orange);font-style:normal}.hero p{margin:0;color:var(--muted);font-weight:700}.game-card{position:relative;border:1px solid var(--line);border-radius:28px;background:var(--card);box-shadow:var(--shadow);overflow:hidden}.game-card.correct{animation:.5s bounce}.game-head{padding:20px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.game-head>div:first-child{display:flex;align-items:baseline;gap:10px}.game-head strong{font-size:20px}.eyebrow{color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.16em}.game-option-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:#fff;font-size:12px;font-weight:900;cursor:pointer}.game-option-toggle input{width:18px;height:18px;margin:0;accent-color:var(--orange)}.shop-scene{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:220px;padding:25px 10%;background:#fff}.item{display:flex;flex-direction:column;align-items:center}.item-illustration{display:grid;place-items:center;width:120px;height:105px;border:1px solid #ffe7d8;border-radius:28px;background:#fff7f1;font-size:67px;box-shadow:0 10px 28px rgba(255,123,56,.1)}.price-tag{display:flex;gap:14px;align-items:center;margin-top:-4px;padding:9px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(38,48,72,.1)}.price-tag span{color:var(--muted);font-size:13px}.price-tag strong{color:var(--ink);font-size:clamp(28px, 4.5vw, 38px);line-height:1;letter-spacing:.02em}.price-tag strong span{color:inherit;font-size:inherit}.payment{padding-left:12%;border-left:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.payment>span{color:var(--muted);font-size:16px;font-weight:900}.payment>strong{font-size:38px}.payment .target{color:var(--orange);font-size:45px;line-height:1}.payment .change-label{color:var(--ink);font-weight:900}.dashed-line{width:100%;margin:13px 0;border-top:1px solid var(--line)}.answer-zone{margin:0 26px;padding:17px 20px;border:1px solid #eceef2;border-radius:18px;background:#f7f8fa}.answer-label,.answer-total{display:flex;justify-content:space-between;align-items:center}.answer-label{font-size:17px;font-weight:900}.answer-label strong{color:var(--orange)}.coin-tray{min-height:76px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:12px 0 8px;margin:0;color:#aaa494;text-align:center;font-size:13px}.tray-coin{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:50%;color:#6a5a41;background:linear-gradient(145deg,#fff,#d8d2c7);box-shadow:inset 0 0 0 3px #b9b1a4,0 3px 5px rgba(50,40,20,.18);font-size:14px;font-weight:900;cursor:pointer;animation:.2s pop}.answer-total{padding-top:10px;border-top:1px solid #dfe2e7}.answer-total span{color:var(--muted);font-size:17px;font-weight:900}.answer-total strong{font-size:34px;line-height:1}.answer-total strong span{color:inherit;font-size:inherit}.wallet-label{margin:21px 0 -12px;color:var(--muted);text-align:center;font-size:11px;font-weight:900;letter-spacing:.1em}.coins{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:clamp(8px,2.4vw,22px);padding:25px 20px}.coin{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(58px,10vw,78px);aspect-ratio:1;border:0;border-radius:50%;color:#675841;background:linear-gradient(145deg,#fffefa,#c8c1b5);box-shadow:inset 0 0 0 5px #b8b0a2,inset 0 0 0 8px #eeeae1,0 5px 0 #928b80,0 8px 12px rgba(70,51,24,.16);cursor:pointer;transition:transform .12s,box-shadow .12s}.coin:hover{transform:translateY(-4px) rotate(-2deg)}.coin:active{transform:translateY(3px);box-shadow:inset 0 0 0 5px #b8b0a2,inset 0 0 0 8px #eeeae1,0 2px 0 #928b80}.coin:disabled{opacity:.22;transform:scale(.9);cursor:default}.coin span{font-weight:900;font-size:clamp(15px, 2.5vw, 20px);line-height:1}.coin small{font-size:9px;font-weight:900}.coin-1,.coin-100,.coin-50{color:#5d5c58;background:linear-gradient(145deg,#fcfcf9 5%,#d8d7d1 48%,#aaa9a3 100%);box-shadow:inset 0 0 0 5px #aaa9a3,inset 0 0 0 8px #efeee9,0 5px 0 #85847f,0 8px 12px rgba(70,51,24,.16)}.coin-5{color:#634410;background:linear-gradient(145deg,#f5d77f 5%,#c99b3e 55%,#9b6b1e 100%);box-shadow:inset 0 0 0 5px #9b6b1e,inset 0 0 0 8px #e8c462,0 5px 0 #785017,0 8px 12px rgba(70,51,24,.16)}.coin-500{color:#51492f;background:radial-gradient(circle,#e8e7df 0 42%,#c9a44e 44% 67%,#edd078 69% 100%);box-shadow:inset 0 0 0 5px #a77b28,inset 0 0 0 8px #efd27b,0 5px 0 #785a20,0 8px 12px rgba(70,51,24,.16)}.coin-10{color:#5f2f18;background:linear-gradient(145deg,#dc925c 5%,#ae5d32 55%,#78391f 100%);box-shadow:inset 0 0 0 5px #844323,inset 0 0 0 8px #cf7b49,0 5px 0 #65321c,0 8px 12px rgba(70,51,24,.18)}.tray-coin-1,.tray-coin-100,.tray-coin-50{color:#555550;background:linear-gradient(145deg,#fff,#aaa9a3);box-shadow:inset 0 0 0 3px #999893,0 3px 5px rgba(50,40,20,.18)}.tray-coin-5{color:#60410f;background:linear-gradient(145deg,#f4d47b,#a87522);box-shadow:inset 0 0 0 3px #90601b,0 3px 5px rgba(50,40,20,.18)}.tray-coin-500{color:#51492f;background:radial-gradient(circle,#e8e7df 0 42%,#c9a44e 44% 68%,#efd27b 70%);box-shadow:inset 0 0 0 3px #987124,0 3px 5px rgba(50,40,20,.18)}.tray-coin-10{color:#572b16;background:linear-gradient(145deg,#dd9160,#8c4325);box-shadow:inset 0 0 0 3px #71351e,0 3px 5px rgba(50,40,20,.18)}.game-actions{display:grid;grid-template-columns:1fr 2fr;gap:14px;padding:0 26px 27px}.game-actions button{height:58px;border-radius:14px;font-weight:900;cursor:pointer;transition:transform .16s,box-shadow .16s,background .16s}.game-actions button:not(:disabled):hover{transform:translateY(-2px)}.reset-button{border:1px solid var(--line);color:var(--muted);background:#fff}.submit-button{display:flex;justify-content:center;align-items:center;gap:18px;border:0;color:#fff;background:linear-gradient(135deg,#ff8e55,var(--orange));box-shadow:0 10px 24px rgba(255,123,56,.24)}.submit-button span{font-size:23px}.submit-button:disabled{color:#9da2ad;background:#e8e9ec;box-shadow:none;cursor:not-allowed}.tip{color:var(--muted);text-align:center;font-size:13px;font-weight:700}dialog{width:min(440px,calc(100% - 32px));border:0;border-radius:26px;padding:34px;color:var(--ink);background:#fff;box-shadow:0 24px 80px rgba(38,48,72,.2)}dialog::backdrop{background:rgba(38,48,72,.45);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:16px;top:13px;border:0;background:0 0;color:var(--muted);font-size:26px;cursor:pointer}.dialog-icon{display:block;text-align:center;font-size:52px}dialog h2{margin:8px 0 12px;text-align:center;font-family:"Mochiy Pop One",sans-serif}dialog li,dialog p{line-height:1.8;color:var(--muted);font-weight:700}.calendar-field{display:grid;gap:8px;margin:18px 0 8px;text-align:left}.calendar-field span{color:var(--ink);font-size:13px;font-weight:900}.calendar-field input{width:100%;height:54px;padding:0 14px;border:2px solid var(--line);border-radius:14px;color:var(--ink);background:#fff;font:inherit;font-size:17px;font-weight:700}.again-button,.primary-dialog-button,.share-button{width:100%;height:54px;margin-top:12px;border:0;border-radius:15px;color:#fff;background:var(--orange);box-shadow:0 4px 0 var(--orange-dark);font-weight:900;cursor:pointer}.share-heading{margin:20px 0 9px;color:var(--ink);font-size:15px}.share-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.share-options .share-button{height:48px;margin-top:0;padding:0 5px;box-shadow:none;font-size:12px}.share-options .share-x{color:#fff;background:#000}.share-options .share-facebook{color:#fff;background:#1877f2}.share-options .share-copy{border:2px solid var(--line);color:#111;background:#fff}.result-dialog{text-align:center}.result-stars{color:var(--yellow);font-size:38px;letter-spacing:5px}.result-grid{display:grid;gap:9px;margin:20px 0}.result-cell{display:grid;grid-template-columns:62px 1fr 42px;align-items:center;gap:10px;min-height:62px;padding:10px 13px;border-radius:12px;border:1px solid #eceef2;background:#f7f8fa;text-align:left}.result-question small,.result-question strong{display:block}.result-question strong{color:var(--ink);font-size:17px}.result-question small{color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}.result-coin-groups{display:grid;gap:7px}.result-coins{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.result-coin{width:19px;height:19px;border-radius:50%;box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}.result-coin.minimum{background:var(--green)}.result-coin.extra{background:var(--yellow)}.result-wallet-line{display:flex;align-items:center;gap:7px}.result-wallet-line>small{color:var(--muted);font-size:9px;font-weight:700;white-space:nowrap}.result-wallet-coins{display:flex;flex-wrap:wrap;gap:3px;align-items:center}.result-wallet-coin{width:10px;height:10px;border-radius:50%}.result-wallet-coin.minimum{background:#59606d}.result-wallet-coin.extra{background:#c9cbd0}.result-count{color:var(--ink);text-align:right;white-space:nowrap}.again-button{color:var(--ink);background:#fff;border:2px solid var(--line);box-shadow:none}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);padding:12px 20px;border-radius:999px;background:var(--ink);color:#fff;box-shadow:0 8px 28px rgba(38,48,72,.3);font-weight:700;opacity:0;pointer-events:none;transition:.25s;z-index:100}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes pop{from{transform:scale(.5);opacity:0}}@keyframes bounce{50%{transform:scale(1.015)}}@media (max-width:600px){.app{width:min(100% - 20px,940px)}.topbar{height:72px}.hero{margin-top:8px}.hero p{padding:0 12px;font-size:13px}.game-card{border-radius:24px}.game-head{padding:15px 17px}.game-option-toggle{padding:7px 9px;font-size:11px}.shop-scene{min-height:185px;padding:20px 6%}.item-illustration{width:92px;height:82px;font-size:52px}.price-tag{gap:9px;padding:8px 12px}.price-tag strong{font-size:27px}.payment{padding-left:10%}.payment>strong{font-size:32px}.payment .target{font-size:42px}.answer-zone{margin:0 14px;padding:14px}.coins{gap:7px;padding:22px 10px}.coin{width:calc((100vw - 76px)/ 6);min-width:43px;box-shadow:inset 0 0 0 3px #b8b0a2,inset 0 0 0 5px #eeeae1,0 4px 0 #928b80}.coin-1,.coin-100,.coin-50{box-shadow:inset 0 0 0 3px #aaa9a3,inset 0 0 0 5px #efeee9,0 4px 0 #85847f}.coin-5,.coin-500{box-shadow:inset 0 0 0 3px #9b6b1e,inset 0 0 0 5px #e8c462,0 4px 0 #785017}.coin-10{box-shadow:inset 0 0 0 3px #844323,inset 0 0 0 5px #cf7b49,0 4px 0 #65321c}.game-actions{grid-template-columns:1fr;padding:0 14px 20px}.reset-button{order:2;height:45px!important}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:NaNs!important;transition-duration:NaNs!important}}
