.cc-shell{--cc-teal:#16a6a0;--cc-deep:#126e70;--cc-ink:#253b3d;max-width:820px;margin:0 auto;color:var(--cc-ink);font-size:18px}.cc-shell [hidden]{display:none!important}.cc-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}.cc-head p{margin:4px 0}.cc-stage{flex:1 1 100%;font-weight:700;color:var(--cc-deep)}.cc-counter{flex:1}.cc-score{font-weight:700}.cc-progress{display:block;width:100%;height:7px;border:0;border-radius:8px;margin:12px 0 20px;overflow:hidden;background:#dceae7}.cc-progress::-webkit-progress-bar{background:#dceae7}.cc-progress::-webkit-progress-value{background:#16a6a0}.cc-progress::-moz-progress-bar{background:#16a6a0}.cc-panel,.cc-summary{background:#fffefa;border:1px solid #dceae7;border-radius:24px;padding:24px;box-shadow:0 8px 28px #126e7009}.cc-instruction{text-align:center;font-size:24px;line-height:1.3;margin:0 0 8px}.cc-instruction-ja{text-align:center;font-size:16px;color:#526f70;margin:0 0 16px}.cc-picture{background:#e9f8f4;border:1px solid #dceae7;border-radius:20px;overflow:hidden;padding:8px 12px}.cc-image{display:block;width:100%;max-height:310px;height:auto;object-fit:contain;margin:auto}.cc-caption{text-align:center;font-size:16px;line-height:1.5;margin:4px 0 8px;color:#365c5d}.cc-hearts{text-align:center;letter-spacing:3px;color:#126e70;min-height:24px;margin:12px 0}.cc-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cc-shell button{font:inherit;cursor:pointer;min-height:48px;border-radius:16px;border:1px solid #c8ded8;line-height:1.4;padding:12px 16px;white-space:normal;overflow-wrap:break-word}.cc-choice{background:white;color:#253b3d;font-weight:700!important;font-size:25px!important;min-height:68px!important;text-transform:uppercase;box-shadow:0 3px 0 #e5efec;transition:background .15s,transform .15s}.cc-choice:active{transform:translateY(2px)}.cc-shell button:focus-visible{outline:3px solid #126e70;outline-offset:4px}.cc-shell button:focus{outline-color:#126e70}.cc-shell .cc-choice.cc-correct{background:#e0f4e7;border-color:#22a06b;color:#116b43;animation:cc-success .25s ease-out}.cc-shell .cc-choice.cc-wrong{background:#fdebec;border-color:#d9535f;color:#922936}.cc-shell button:disabled{cursor:default;opacity:1}.cc-hint-button{display:block;width:100%;background:#fff7df;color:#604c20;margin-top:16px}.cc-hint-card{border:1px solid #eadcb9;border-radius:16px;background:#fff7df;padding:18px;text-align:center;font-size:32px;margin-top:10px;animation:cc-reveal .2s ease-out}.cc-feedback{text-align:center;line-height:1.5;margin:14px 0 0}.cc-feedback:empty{display:none}.cc-learning{border:1px solid #dceae7;border-radius:18px;background:#f2faf7;padding:20px;margin-top:16px;animation:cc-reveal .2s ease-out}.cc-learning h3{font-size:27px;margin:0 0 8px;color:#126e70}.cc-learning p{margin:8px 0;line-height:1.6}.cc-meaning{font-weight:700;font-size:21px}.cc-example-ja{color:#526f70}.cc-next{background:#126e70;color:white;width:100%;margin-top:18px;font-weight:700!important}.cc-secondary{background:white;color:#126e70}.cc-practice{display:block;margin:20px auto 0;max-width:100%}.cc-practice:disabled{opacity:.5!important}.cc-summary{text-align:center}.cc-summary p{line-height:1.7}.cc-celebrate{font-size:24px;color:#126e70}.cc-save-notice{color:#922936}.cc-total{font-size:25px;font-weight:700}.cc-fallback{padding:20px;text-align:center}@keyframes cc-success{from{transform:scale(.98)}to{transform:scale(1)}}@keyframes cc-reveal{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:540px){.cc-shell{font-size:16px}.cc-panel,.cc-summary{padding:14px;border-radius:20px}.cc-instruction{font-size:20px}.cc-instruction-ja{font-size:14px}.cc-image{max-height:230px}.cc-caption{font-size:14px}.cc-options{gap:10px}.cc-choice{font-size:21px!important;min-height:58px!important}.cc-picture{padding:4px 6px}.cc-head{gap:4px 12px}.cc-progress{margin:10px 0 14px}.cc-hearts{margin:9px 0}}@media(max-width:300px){.cc-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.cc-shell *{animation:none!important;transition:none!important}}
.cc-stage{background:#d8f1e5;border-radius:999px;padding:5px 12px;flex:0 1 auto;font-size:16px}.cc-head{justify-content:space-between}.cc-counter{flex:0 0 auto}.cc-score{font-size:15px}.cc-shell .cc-choice{border-radius:999px;text-transform:none;box-shadow:none;font-weight:600!important}.cc-hint-button{border-radius:999px!important;background:#fff;color:#526f70}.cc-picture{margin-bottom:4px}
.cc-scene-ja{font-size:24px;line-height:1.7;text-align:center;background:#f3f9e9;border:1px solid #dce7ce;border-radius:18px;padding:14px 18px;margin:12px 0 10px;overflow-wrap:break-word;line-break:strict}@media(max-width:540px){.cc-scene-ja{font-size:20px;line-height:1.65;padding:12px 14px;margin-top:10px}}
