:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1d1b18;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f9f4df;font-family:Inter,Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}body{background:radial-gradient(circle at 18% 12%,#f7cf3552,#0000 28rem),radial-gradient(circle at 85% 18%,#1f1e1c1f,#0000 22rem),linear-gradient(#fff8dc 0%,#f6ead0 48%,#fffdf6 100%);min-height:100svh;overflow:hidden}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{width:min(100%,880px);height:100svh;padding:max(8px, env(safe-area-inset-top)) 10px max(8px, env(safe-area-inset-bottom));grid-template-rows:auto minmax(150px,.9fr) minmax(248px,1.1fr) auto;gap:8px;margin:0 auto;display:grid;overflow:hidden}.top-bar{z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf6e0;border:2px solid #1d1b18;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px;display:grid;box-shadow:0 4px #1d1b18}.top-bar>div{text-align:center;background:#fff;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:38px;padding:5px 6px;display:flex}.label{letter-spacing:0;color:#6a5b29;font-size:.58rem;font-weight:900}.top-bar strong{font-size:clamp(.94rem,3.7vw,1.18rem);line-height:1}.hero-zone{place-items:center;min-height:0;padding-top:0;display:grid;overflow:hidden}.mascot-stage{grid-template-columns:minmax(0,.66fr) minmax(102px,.34fr);justify-content:center;align-items:center;gap:0;width:min(100%,460px);height:100%;min-height:0;display:grid}.mascot{object-fit:contain;filter:drop-shadow(0 16px 18px #1d1b182e);transform-origin:bottom;justify-self:center;width:min(50vw,210px);max-height:min(100%,220px);animation:2.8s ease-in-out infinite idle-bob}.mascot-correct .mascot{animation:.72s ease-out both correct-pop}.mascot-wrong .mascot{animation:.52s ease-in-out both wrong-wiggle}.speech-bubble{background:#fffdf6;border:2px solid #1d1b18;border-radius:8px;width:clamp(95px,29vw,136px);padding:9px 10px;font-size:clamp(.76rem,3.1vw,.92rem);font-weight:800;line-height:1.45;box-shadow:4px 4px #1d1b18}.question-zone{flex-direction:column;min-height:0;padding:3px 0 0;display:flex;overflow:hidden}.meta-row{scrollbar-width:none;gap:6px;padding-bottom:5px;display:flex;overflow-x:auto}.meta-row::-webkit-scrollbar{display:none}.meta-row span{background:#fff;border:1.5px solid #1d1b18;border-radius:999px;flex:none;padding:4px 9px;font-size:.72rem;font-weight:800}h1{letter-spacing:0;margin:0 0 8px;font-size:clamp(1.34rem,6.8vw,2.55rem);line-height:1.06}.hint-list{gap:6px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.hint-list li{background:#ffffffe0;border:2px solid #1d1b18;border-radius:8px;grid-template-columns:22px 1fr;align-items:start;gap:8px;min-height:34px;padding:7px 9px;font-size:clamp(.78rem,3.25vw,.96rem);font-weight:750;line-height:1.32;display:grid;box-shadow:3px 3px #1d1b18f2}.hint-list svg{color:#d29b00;margin-top:2px}.answer-card{background:#fff;border:2px solid #1d1b18;border-radius:8px;min-height:0;margin-top:0;padding:10px;overflow:hidden;box-shadow:3px 3px #1d1b18}.answer-card.correct{background:#f8ffc9}.answer-card.wrong{background:#fff0f0}.answer-label{color:#806800;margin-bottom:4px;font-size:.78rem;font-weight:900;display:block}.answer-card strong{font-size:clamp(1.08rem,4.9vw,1.55rem);line-height:1.2;display:block}.answer-card p{margin:6px 0 0;font-size:clamp(.82rem,3.4vw,.98rem);font-weight:650;line-height:1.4}.answer-dock{z-index:4;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf6f0;border:2px solid #1d1b18;border-radius:8px;width:100%;padding:7px;position:static;bottom:auto;left:auto;transform:none;box-shadow:4px 4px #1d1b18}.answer-dock.is-answered{margin-top:0}.answer-dock label{color:#625421;margin:0 0 4px;font-size:.7rem;font-weight:900;display:block}.input-row{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}input{color:#1d1b18;background:#fff;border:2px solid #1d1b18;border-radius:8px;outline:none;width:100%;min-width:0;min-height:46px;padding:0 12px;font-size:.94rem;font-weight:750}input:focus-visible{box-shadow:0 0 0 4px #f7cf358c}input:disabled{color:#555;background:#f4f0e4}.primary-button{color:#1d1b18;cursor:pointer;touch-action:manipulation;background:#f7cf35;border:2px solid #1d1b18;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 15px;font-weight:950;display:inline-flex;box-shadow:0 4px #1d1b18}.primary-button:active{transform:translateY(3px);box-shadow:0 2px #1d1b18}.primary-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.icon-button{width:52px;padding:0}.compact{min-width:76px}.result-shell{padding-bottom:max(12px, env(safe-area-inset-bottom));justify-content:center;display:flex}.result-panel{text-align:center;background:#fffdf6f0;border:2px solid #1d1b18;border-radius:8px;width:min(100%,470px);margin:0 auto;padding:22px 16px 18px;box-shadow:8px 8px #1d1b18}.result-mascot{object-fit:contain;filter:drop-shadow(0 14px 18px #1d1b182e);width:min(58vw,230px);max-height:260px}.eyebrow{color:#806800;margin:5px 0 0;font-size:.75rem;font-weight:950}.score-big{margin:10px 0;font-size:clamp(4rem,22vw,7rem);font-weight:1000;line-height:.9}.score-big span{font-size:.35em}.result-copy{margin:0 0 18px;font-weight:700;line-height:1.55}@keyframes idle-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-7px)rotate(1deg)}}@keyframes correct-pop{0%{transform:scale(.92)translateY(8px)}55%{transform:scale(1.08)translateY(-8px)}to{transform:scale(1)translateY(0)}}@keyframes wrong-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}75%{transform:rotate(-2deg)}}@media (width>=720px){.app-shell{padding-inline:28px;padding-bottom:124px}.hero-zone{min-height:310px}.mascot-stage{grid-template-columns:minmax(260px,.95fr) minmax(160px,.45fr);min-height:330px}.mascot{justify-self:end;width:min(42vw,390px);max-height:420px}.speech-bubble{width:170px}.question-zone{padding-top:0}.hint-list{grid-template-columns:repeat(3,minmax(0,1fr))}.answer-dock{padding-inline:28px}}@media (width<=340px){.app-shell{padding-inline:10px}.top-bar{gap:6px;padding:6px}.top-bar>div{padding-inline:4px}.mascot-stage{grid-template-columns:minmax(0,.64fr) minmax(94px,.36fr)}.mascot{width:min(56vw,190px)}.speech-bubble{padding:10px 9px}.hint-list li{padding:10px}.answer-dock{padding-inline:10px}}
