/* Rounded Companion — one locally hosted rounded family across all routes. */
@font-face{font-family:'Daily Rounded';src:url('/daily-rounded.woff2') format('woff2');font-style:normal;font-weight:100 500;font-display:swap}
@font-face{font-family:'Daily Rounded';src:url('/daily-rounded-bold.woff2') format('woff2');font-style:normal;font-weight:501 900;font-display:swap}
:root{--garden-heading:'Daily Rounded','Microsoft YaHei','PingFang SC',sans-serif;--daily-font:'Daily Rounded','Microsoft YaHei','PingFang SC',Arial,sans-serif;font-family:var(--daily-font);font-synthesis:weight}html body,html button,html .button,html input,html select,html textarea,html label,html p,html small,html a,html th,html td,html summary,html dialog,html .select-option,html .select-trigger,html .parent-content .select-trigger,html .top-grade-label .select-trigger{font-family:var(--daily-font)}html h1,html h2,html h3,html b,html strong,html .brand-link b,html .brand-link b span,html .parent-sidebar-title,html .practice-module h2,html .hero h1,html .bank-section-head h2,html .bank-import-method h3,html #editor .compact-editor h2,html .clear-bank-head h2,html .mistake-day-heading h2,html .mistake-answer,html .learning-history .number{font-family:var(--daily-font);font-style:normal}html .hero h1{font-weight:650;letter-spacing:.3px;line-height:1.45}html .practice-module h2{font-weight:600;letter-spacing:.6px}html .brand-link b{font-size:24px;font-weight:700;letter-spacing:-.3px}html .parent-sidebar-title{font-weight:650;letter-spacing:.3px}html .parent-content>h1{font-family:var(--daily-font);font-weight:650;letter-spacing:.3px}html .parent-content h2,html .parent-content h3{font-weight:600;letter-spacing:.2px}html .practice-stage .question-workspace .question-title,html .practice-stage.long-sentence .question-workspace .question-title{font-family:var(--daily-font);font-weight:650;letter-spacing:.6px}html .practice-stage .question-workspace #answer,html .practice-stage .practice .word-slot input{font-family:var(--daily-font);font-weight:450;font-variant-ligatures:none;letter-spacing:.4px}html .practice-stage .word-slot .grammar-hint,html .practice-stage .word-slot .word-gloss{font-family:var(--daily-font);font-weight:400}html .module-total,html .number{font-family:var(--daily-font);font-weight:600;font-variant-numeric:tabular-nums}html .select-trigger,html .select-option{letter-spacing:0;font-weight:450}html .parent-sidebar nav a{font-family:var(--daily-font);font-weight:450}html button,html .button{font-weight:550;letter-spacing:.2px}html .card p{font-weight:400}html .mistake-answer{font-weight:500}html .mistake-day-heading h2{font-weight:600}html .clear-bank-dialog{font-family:var(--daily-font)}
/* Explicitly center both word and sentence prompts within the answer workspace. */
html .practice-stage .question-workspace{align-items:center}html .practice-stage .question-workspace .question-title,html .practice-stage.long-sentence .question-workspace .question-title{display:block;width:100%;max-width:100%;text-align:center;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0;align-self:center}html .practice-stage .question-workspace #answerform{width:100%;align-self:stretch}
.account-login{max-width:480px;margin:44px auto;padding:32px}.account-login h1{font-size:27px;line-height:1.5}.account-login p{font-size:13px}.account-login input{font-size:16px}.account-login>small{display:block;line-height:1.8;margin-top:22px;font-size:11px}.account-login button{width:100%;margin-top:10px}.account-header{display:flex;align-items:center;gap:10px;font-size:12px;color:#7f9b6f}.account-header button{font-size:11px;padding:8px 12px}.account-context{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#edf6e6;border:1px solid #d5e5ca;border-radius:12px;padding:12px 16px;font-size:12px;color:#779367;margin-bottom:22px}.account-context a{color:#4f7a4c}.clear-bank-dialog form input{font-family:var(--daily-font);font-size:14px}.account-login label{font-size:14px}.header-tools[hidden]{display:none}@media(max-width:650px){.account-login{margin:20px 0;padding:25px}.account-header{width:100%;justify-content:flex-end}.account-login h1{font-size:24px}}
/* Header menus must sit above hero and glass-card stacking contexts. */
body>header{position:relative;z-index:1200;overflow:visible}.header-tools{overflow:visible}.top-grade-label{position:relative;z-index:2}.top-grade-label .theme-select{position:relative;z-index:3}.top-grade-label .select-menu{z-index:1300}
/* Gentle feedback: playful enough to notice, brief enough to stay focused. */
@keyframes answer-green-glow{0%{box-shadow:0 0 0 0 #8bc76a00}35%{box-shadow:0 0 0 6px #a5d77a45,0 0 24px #a5d77a22;border-color:#83b45f}100%{box-shadow:0 0 0 12px #a5d77a00}}
@keyframes answer-word-glow{0%,100%{background:transparent}40%{background:#e0f3cd;border-bottom-color:#75a652}}
@keyframes answer-feedback-pop{0%{opacity:.3;transform:translateY(6px) scale(.97)}60%{opacity:1;transform:translateY(-2px) scale(1.02)}100%{transform:translateY(0) scale(1)}}
@keyframes answer-gentle-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}
@keyframes answer-warm-outline{0%,100%{box-shadow:0 0 0 0 #d7a08c00}40%{border-color:#c78e76;box-shadow:0 0 0 4px #e0aa922b}}
html .practice-stage .question-workspace .answer-celebrate #answer{animation:answer-green-glow .65s ease-out}html .practice-stage .question-workspace .answer-celebrate .sentence-word{animation:answer-word-glow .65s ease-out}.answer-celebrate .feedback{animation:answer-feedback-pop .45s ease-out}.answer-retry #answer,.answer-retry .word-blanks{animation:answer-gentle-shake .36s ease-in-out}html .practice-stage .question-workspace .answer-retry #answer{animation:answer-gentle-shake .36s ease-in-out,answer-warm-outline .6s ease-out}.answer-retry .feedback{animation:answer-feedback-pop .3s ease-out}.answer-celebrate .feedback.good:before{content:'✦';display:inline-block;color:#8fba65;margin-right:8px}.answer-retry .feedback.bad:before{content:'·';display:inline-block;margin-right:7px}@media(prefers-reduced-motion:reduce){.answer-celebrate *,.answer-retry *{animation:none!important}.answer-celebrate .feedback{background:#edf7e3;border-radius:12px}.answer-retry .feedback{background:#fff0e8;border-radius:12px}}
.practice-stage .practice>.card{position:relative}.answer-motion-badge{position:absolute;left:50%;top:calc(50% - 150px);transform:translate(-50%,-50%);pointer-events:none;z-index:20;display:flex;align-items:center;gap:12px;padding:12px 24px;border-radius:24px;white-space:nowrap;animation:motion-badge-pop .7s ease both;box-shadow:0 8px 26px #416f3d25;font-family:var(--daily-font);border:2px solid}.motion-success{background:#e0f5ccf5;color:#3b7a35;border-color:#8dbf6c}.motion-error{background:#fff0e8f5;color:#ad624d;border-color:#d99c81}.motion-symbol{font-size:68px;font-weight:700;line-height:1}.motion-label{font-size:25px;font-weight:600}.motion-spark{position:absolute;left:50%;top:50%;font-style:normal;font-size:26px;color:#9bbf4b;animation:motion-spark-fly .65s ease-out both;animation-delay:var(--delay)}
@keyframes motion-badge-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}45%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-70%) scale(.95)}}
@keyframes motion-spark-fly{0%{opacity:0;transform:rotate(var(--angle)) translateX(30px) scale(.4)}30%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(160px) scale(1.1)}}
@keyframes answer-clear-shake{0%,100%{transform:translateX(0)}15%{transform:translateX(-12px)}30%{transform:translateX(12px)}45%{transform:translateX(-9px)}60%{transform:translateX(9px)}75%{transform:translateX(-4px)}90%{transform:translateX(4px)}}
html .practice-stage .question-workspace .answer-retry #answer{animation:answer-clear-shake .48s ease-in-out,answer-warm-outline .65s ease-out}.answer-retry .word-blanks{animation:answer-clear-shake .48s ease-in-out}
@media(max-width:650px){.answer-motion-badge{top:calc(50% - 125px);padding:10px 18px;gap:8px}.motion-symbol{font-size:49px}.motion-label{font-size:20px}.motion-spark{font-size:20px}@keyframes motion-spark-fly{0%{opacity:0;transform:rotate(var(--angle)) translateX(20px) scale(.4)}30%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(110px) scale(1)}}}@media(prefers-reduced-motion:reduce){.answer-motion-badge{animation:none;opacity:1}.motion-spark{display:none}html .practice-stage .question-workspace .answer-retry #answer,.answer-retry .word-blanks{animation:none}}
/* Slightly shorter home practice modules, preserving text and control sizes. */
.practice-modules .practice-module{padding:23px 28px}.practice-modules .practice-module h2{margin-top:17px;margin-bottom:14px}.practice-modules .practice-module>p{margin-top:0;margin-bottom:17px}.practice-modules .module-learning-status{padding-top:13px;padding-bottom:13px;margin-top:16px;margin-bottom:16px}.practice-modules .module-learning-status>div,.practice-modules .module-count{row-gap:7px}@media(max-width:650px){.practice-modules .practice-module{padding:20px 23px}.practice-modules .practice-module h2{margin-top:15px;margin-bottom:12px}.practice-modules .practice-module>p{margin-bottom:14px}.practice-modules .module-learning-status{padding-top:12px;padding-bottom:12px;margin-top:14px;margin-bottom:14px}}
.parent-page-toolbar{display:flex;align-items:center;margin:0 0 20px}.parent-page-toolbar .parent-home-button{font-size:13px;min-height:40px;padding:10px 19px}.sidebar-profile{background:#f5fbef;border:1px solid #d8e8cc;border-radius:12px;padding:12px;margin:0 0 18px}.sidebar-profile small{display:block;font-size:10px;color:#96ac87}.sidebar-profile strong{display:block;font-family:var(--daily-font);font-size:14px;font-weight:550;color:#648655;margin-top:5px;overflow-wrap:anywhere}.sidebar-profile a{display:block;font-size:11px;margin-top:9px;color:#7c9968}.parent-sidebar .parent-sidebar-title{padding-bottom:16px}@media(max-width:650px){.sidebar-profile{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px}.sidebar-profile strong,.sidebar-profile a{margin-top:0}.sidebar-profile a{margin-left:auto}.parent-page-toolbar{margin-bottom:16px}}
