button,select,input{touch-action:manipulation}
button,select{min-height:44px}
button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #d89532;outline-offset:3px}
.learning-home{max-width:1170px;margin:1.2rem auto 0;padding:1.1rem 1.3rem;background:#fff;border:1px solid var(--mist);border-radius:1rem;display:flex;align-items:center;gap:1rem;justify-content:space-between;flex-wrap:wrap}
.learning-home h2{font-size:1.1rem;color:var(--jade);margin-bottom:.35rem}
.learning-home p,.record-note{font-size:.85rem;color:#6e5a48;line-height:1.7}
.home-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.home-actions button,.review-panel button,.reading-options button{border:1px solid var(--mist);border-radius:.65rem;padding:.6rem .8rem;background:var(--cloud);font:inherit;color:var(--ink);cursor:pointer}
.home-actions button:first-child{background:var(--jade);color:#fff;border-color:var(--jade)}
.detail-mode .learning-home{display:none}
.child-instruction{font-size:.9rem;color:var(--jade);line-height:1.8;margin-top:.6rem}
.picture-memory{font-size:.88rem;color:var(--jade);padding:.75rem 1rem;background:#edf2e5;border-radius:.65rem;line-height:1.8;margin:-.3rem 0 1rem}
.detail-mode .site-header{padding:1rem}
.detail-mode .site-header h1{font-size:1.6rem}
.detail-mode .site-header .subtitle,.detail-mode .site-header .hero-note{display:none}
.audio-controls{gap:.5rem;margin-bottom:.6rem}
.audio-btn{padding:.6rem .85rem}
.reading-options{display:flex;gap:.6rem;justify-content:center;align-items:center;flex-wrap:wrap;font-size:.85rem}
.reading-options select{font:inherit;padding:.5rem;border:1px solid var(--mist);border-radius:.5rem;background:#fff;color:var(--ink)}
.audio-status{font-size:.85rem;text-align:center;color:#685443;line-height:1.6;margin:.7rem 0 1rem}
.poem-text-box{padding:1.5rem .6rem}
.poem-line{margin:.4rem 0 1rem}
.poem-line .chinese{font-family:'Noto Serif SC','Songti SC',serif;font-size:1.65rem;letter-spacing:0;border:0;background:transparent;width:100%;display:flex;justify-content:center;gap:.15rem;min-height:66px}
.poem-line .chinese ruby{display:inline-flex;flex-direction:column-reverse;align-items:center;min-width:1.5em;line-height:1.6}
.poem-line .chinese rt{font-family:system-ui,sans-serif;font-size:.62rem;line-height:1.8;letter-spacing:0;color:#635b50;white-space:nowrap;display:block}
.hide-pinyin rt{visibility:hidden}
.poem-line .chinese.highlight{background:#fff0d1;color:var(--accent);text-shadow:none}
.practice-help{color:#e9f3e7;font-size:.85rem;line-height:1.8;text-align:center;margin-bottom:1rem}
.practice-progress{font-size:.85rem;margin-bottom:.7rem;color:#f6edd7}
.answer-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.8rem auto;max-width:400px}
.answer-options button{background:#fff;color:var(--jade);border:2px solid transparent;border-radius:.65rem;font:1.35rem 'Noto Serif SC',serif;cursor:pointer;min-height:52px}
.answer-options button.selected{border-color:#ffd45a;background:#fff0c4}
.fill-blank-area .blank-word{min-width:1.5em;margin:0 .12em}
.fill-blank-area .blank-word input{width:1.7em;font-family:'Noto Serif SC',serif;font-size:1.4rem;background:rgba(255,255,255,.15);border-radius:.3rem;color:white;padding:.2rem 0}
.score{min-height:2.8em;font-size:.95rem!important;line-height:1.6}
.practice-done{font-size:1.1rem;color:#fff7cb;margin-bottom:1rem}
.study-options button:disabled{opacity:.5;cursor:default}
.review-panel{background:#fff;padding:1.2rem;border:1px solid var(--mist);border-radius:1rem;margin-top:1.3rem}
.review-panel h3{color:var(--jade);font-size:1.1rem;margin-bottom:.6rem}
.review-panel .record-note{margin:.45rem 0}
.record-tag{background:#e8f1e5;color:#245535}
.scene-container.has-cover{height:auto;background:#e9e3d8}
.scene-container.has-cover .scene-cover{height:auto;width:100%;max-height:520px;object-fit:contain}
.scene-caption{pointer-events:none}
.scene-container::after{background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.55))}
.toast{width:max-content;max-width:calc(100vw - 2rem);bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:.75rem;text-align:center;white-space:normal}
@media(max-width:640px){
 .site-header{padding:1.6rem 1rem 1.2rem}
 .site-header .subtitle{letter-spacing:.08em;font-size:.9rem}
 .site-header .hero-note{font-size:.82rem}
 .learning-home{margin:1rem;gap:.7rem;padding:1rem}
 .home-actions{width:100%}.home-actions button{flex:1}
 .stats-bar{gap:.45rem;padding:.3rem .8rem;font-size:.75rem}
 .search-wrap{margin:1rem auto .5rem}
 .detail-view{padding:1rem .75rem calc(2rem + env(safe-area-inset-bottom))}
 .detail-header{margin-bottom:1rem}.detail-header h2{font-size:1.7rem;letter-spacing:.025em}
 .scene-container{margin-bottom:1rem}
 .scene-caption strong{font-size:1.1rem}.scene-caption span{font-size:.7rem}
 .scene-caption{gap:.3rem;flex-wrap:wrap;bottom:.65rem;left:.8rem}
 .audio-controls{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
 .audio-btn{justify-content:center;font-size:.85rem}
 .study-section{padding:1.2rem .8rem}
 .poem-line .chinese{font-size:clamp(1rem,5.2vw,1.45rem);gap:.04rem}
 .poem-line .chinese ruby{min-width:1.55em}.poem-line .chinese rt{font-size:clamp(.48rem,1.9vw,.64rem)}
 .poem-nav{gap:.5rem}.poem-nav-btn{max-width:49%;padding:.6rem;font-size:.8rem;word-break:break-word}
 .scroll-top{right:.8rem;bottom:calc(.8rem + env(safe-area-inset-bottom))}
 .study-opt{padding:.55rem .75rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
