/* 连续答题、难度反馈与心愿商店 */
#quiz-screen { min-height: 470px; display: flex; flex-direction: column; }
.subject-pill.english { background:#dff2e9; color:#4d997c; }
.subject-pill.chinese { background:#fff0df; color:#b07949; }
.subject-pill.knowledge { background:#e6f0f6; color:#5d8ca3; }
.auto-next { display:flex; align-items:center; gap:8px; color:#79a694; }
.auto-next i { width:18px; height:5px; border-radius:5px; background:#dbece4; position:relative; overflow:hidden; }
.auto-next i::after { content:''; position:absolute; inset:0; background:#73bf9f; transform:translateX(-100%); }
.auto-next.running i::after { animation:autoNext .75s linear forwards; }
@keyframes autoNext { to { transform:translateX(0); } }
.help-actions { display:flex; gap:8px; margin-top:16px; }
.help-actions button { border:1px solid #dfe9e4; background:#f8fbf9; color:#6e817d; border-radius:10px; padding:9px 12px; font-size:10px; cursor:pointer; }
.help-actions button:hover { background:#edf7f2; border-color:#b9dcca; }
.lesson-card { background:#f0f8f4; border:1px solid #d8ece2; border-radius:14px; padding:16px; margin-top:15px; }
.lesson-card.hidden { display:none; }
.lesson-card h3 { margin:0 0 7px; font-size:14px; color:#3f665a; }
.lesson-card>p:not(.kicker) { color:#607b73; font-size:11px; line-height:1.8; margin:0 0 12px; }
.lesson-card button { border:0; background:#5da989; color:#fff; border-radius:9px; padding:8px 12px; font-size:10px; cursor:pointer; }
.answer-option.assisted { border-style:dashed; }
.side-stack { display:grid; gap:16px; }
.subject-plan { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:16px; }
.subject-mini { border:1px solid #edf1ef; border-radius:11px; padding:10px; }
.subject-mini span,.subject-mini b { display:block; }
.subject-mini span { font-size:10px; color:#9da8a6; }
.subject-mini b { font-size:12px; margin-top:4px; color:#4d605d; }
.wish-card { background:#fff; border:1px solid var(--line); border-radius:20px; padding:21px; }
.wish-head { display:flex; justify-content:space-between; align-items:flex-start; }
.wish-head h3 { font-size:15px; margin:0; }
.wallet { background:#fff3dc; color:#b6854b; border-radius:20px; padding:7px 10px; font-size:11px; }
.wish-list { display:grid; gap:8px; margin-top:16px; }
.wish-item { display:grid; grid-template-columns:35px 1fr auto; align-items:center; gap:9px; border:1px solid #edf1ef; border-radius:12px; padding:9px; }
.wish-emoji { width:35px; height:35px; border-radius:10px; background:#f7f3ea; display:grid; place-items:center; font-size:18px; }
.wish-item strong,.wish-item small { display:block; }
.wish-item strong { font-size:11px; }
.wish-item small { font-size:9px; color:#a2adaa; margin-top:3px; }
.wish-progress { height:4px; background:#edf2ef; border-radius:5px; overflow:hidden; margin-top:6px; }
.wish-progress i { display:block; height:100%; background:#e4b875; border-radius:5px; }
.redeem-btn { border:0; background:#e4f4ec; color:#4d9679; border-radius:8px; padding:7px 8px; font-size:9px; cursor:pointer; }
.redeem-btn:disabled { opacity:.4; cursor:not-allowed; }
.wish-note { font-size:9px; color:#abb5b3; text-align:center; margin-top:12px; }
.surprise-card { background:#fff; border:1px solid var(--line); border-radius:20px; padding:0 20px 19px; overflow:hidden; }
.garden-scene { height:108px; margin:0 -20px 17px; position:relative; overflow:hidden; background:linear-gradient(#e7f4f5 0 68%,#d9edda 68%); }
.garden-sky { position:absolute; right:24px; top:15px; color:#fff; font-size:23px; }
.garden-plant { position:absolute; z-index:2; left:50%; bottom:17px; transform:translateX(-50%); font-size:43px; filter:drop-shadow(0 4px 3px #56856a28); transition:.3s; }
.garden-ground { position:absolute; left:50%; bottom:10px; width:90px; height:18px; transform:translateX(-50%); border-radius:50%; background:#b4d2a9; }
.surprise-copy h3 { margin:0; font-size:15px; }
.surprise-copy>p:last-child { margin:6px 0 0; color:#98a5a3; font-size:10px; line-height:1.6; }
.surprise-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:15px; }
.surprise-button { border:1px solid #e7eeeb; background:#fbfdfc; border-radius:11px; padding:10px 7px; cursor:pointer; color:#536763; }
.surprise-button:disabled { opacity:.55; cursor:not-allowed; }
.surprise-button span,.surprise-button b,.surprise-button small { display:block; }
.surprise-button span { font-size:20px; }
.surprise-button b { font-size:10px; margin-top:3px; }
.surprise-button small { font-size:8px; color:#a3aeac; margin-top:2px; }
.surprise-message { display:none; background:#fff7e9; color:#967348; border-radius:11px; padding:11px; margin-top:10px; font-size:10px; line-height:1.7; }
.surprise-message.show { display:block; }
.finish-screen { min-height:470px; padding:55px 45px; text-align:center; }
.finish-screen.hidden,#quiz-screen.hidden { display:none; }
.finish-icon { width:58px; height:58px; border-radius:20px; background:#dff3e9; color:#5bb08e; font-size:29px; display:grid; place-items:center; margin:0 auto 18px; }
.finish-screen h2 { font-size:25px; margin:0 0 10px; }
.finish-screen>p:not(.kicker) { font-size:12px; color:#98a5a3; }
.difficulty-scale { max-width:520px; margin:34px auto 0; }
.scale-labels { display:flex; justify-content:space-between; color:#9aa6a4; font-size:9px; }
.difficulty-buttons { display:grid; grid-template-columns:repeat(10,1fr); gap:6px; margin-top:9px; }
.difficulty-button { border:1px solid #dfe8e4; background:#fff; border-radius:9px; aspect-ratio:1; cursor:pointer; color:#5e716e; font-weight:700; }
.difficulty-button:hover,.difficulty-button.selected { background:#365852; color:#fff; border-color:#365852; }
.finish-message { min-height:43px; margin-top:22px; color:#72a990; font-size:11px; }
.finish-message.done { background:#edf8f2; border-radius:12px; padding:12px; color:#4b8e72; }
.parent-bottom { display:grid; grid-template-columns:1.3fr .7fr; gap:20px; margin-top:20px; }
.recent { margin-top:0; }
.wish-manager form { display:grid; grid-template-columns:1fr 72px; gap:8px; margin-top:18px; }
.wish-manager input { min-width:0; border:1px solid #dfe8e4; border-radius:9px; padding:9px; font-size:10px; outline:0; }
.wish-manager form button { grid-column:1/3; border:0; background:#365852; color:#fff; border-radius:9px; padding:9px; font-size:10px; cursor:pointer; }
.parent-wish-row { display:flex; align-items:center; gap:8px; border-top:1px solid #eef2f0; padding:10px 0; font-size:10px; }
.parent-wish-row:first-child { margin-top:12px; }
.parent-wish-row span { flex:1; }
.parent-wish-row button { border:0; background:transparent; color:#c28978; font-size:9px; cursor:pointer; }
.parent-message-box { border-top:1px solid #e8eeeb; margin-top:12px; padding-top:15px; }
.parent-message-box h3 { margin:0 0 9px; font-size:12px; }
.parent-message-box form { margin:0; display:grid; grid-template-columns:1fr auto; }
.parent-message-box form button { grid-column:auto; padding:8px 10px; }
.parent-message-box>small { display:block; color:#91a19d; font-size:9px; margin-top:7px; }
.redemption-heading { border-top:1px solid #e8eeeb; margin-top:12px; padding-top:15px; display:flex; align-items:center; justify-content:space-between; }
.redemption-heading h3 { margin:0; font-size:12px; }
.redemption-heading span { color:#a6b0ae; font-size:9px; }
.redemption-list { margin-top:8px; }
.redemption-row { display:flex; gap:8px; align-items:center; padding:8px 0; color:#5d6e6b; font-size:10px; }
.redemption-row span { flex:1; }
.redemption-row small { color:#a5afad; font-size:9px; }
.pin-modal { position:fixed; inset:0; z-index:50; background:#243f3b80; display:grid; place-items:center; padding:20px; backdrop-filter:blur(3px); }
.pin-modal.hidden { display:none; }
.pin-dialog { width:min(360px,100%); background:#fff; border-radius:22px; padding:30px; text-align:center; position:relative; box-shadow:0 24px 70px #18362f35; }
.pin-close { position:absolute; right:15px; top:12px; border:0; background:transparent; color:#9ba7a4; font-size:24px; cursor:pointer; }
.lock-mark { width:48px; height:48px; display:grid; place-items:center; margin:0 auto 12px; border-radius:15px; background:#e5f3ed; }
.pin-dialog h2 { font-size:20px; margin:0 0 5px; }
.pin-dialog p { color:#9ba7a4; font-size:11px; margin:0 0 17px; }
.pin-dialog input { width:100%; border:1px solid #dce7e2; border-radius:11px; padding:13px; text-align:center; font-size:20px; letter-spacing:8px; outline:0; }
.pin-error { min-height:25px; padding-top:7px; color:#c27664; font-size:10px; }
.pin-submit { width:100%; border:0; background:#365852; color:#fff; border-radius:10px; padding:11px; font-size:11px; cursor:pointer; }
@media(max-width:760px) {
  .subject-plan { grid-template-columns:repeat(4,1fr); }
  .parent-bottom { grid-template-columns:1fr; }
  .difficulty-buttons { grid-template-columns:repeat(5,1fr); }
  .finish-screen { padding:40px 22px; }
  .today-card { order:0; }
}
@media(max-width:430px) {
  .subject-plan { grid-template-columns:1fr 1fr; }
  .difficulty-buttons { grid-template-columns:repeat(5,1fr); }
}
