:root{--color-site-bg:#fffbf5;--color-site-line:#e9dfd3;--color-site-ink:#312b25;--color-site-orange:#b94d0a;--color-site-lilac:#e7e0f5;--color-site-apricot:#f8dfc2;--color-site-mint:#e5eee7;--color-site-dark:#242e2b;--shadow-site:0 18px 60px #3a2e2417;--color-bg:#fff7ef;--color-surface:#fff;--color-surface-input:#fffcf8;--color-border:#f1e5d8;--color-border-strong:#f0dcc6;--color-primary:#ee8c3c;--color-primary-hover:#d06d1e;--color-primary-strong:#c0641b;--color-primary-soft:#fdefe0;--color-primary-soft-hover:#fbe1c9;--color-on-primary:#fff;--color-text:#3a2e24;--color-text-muted:#8a7a6b;--color-text-subtle:#b5a594;--color-text-nav:#6b5b4c;--color-text-bubble:#4a3d31;--color-good:#2e7a62;--color-good-soft:#7cc0a8;--color-good-surface:#e6f4ef;--color-good-strong:#2e5f50;--color-caution:#f0b15c;--color-risk:#d2566b;--color-risk-surface:#fcebee;--color-risk-strong:#b33f55;--color-not-started:#f6eadc;--color-xp-accent:#7c6bc4;--color-xp-strong:#5f4fa8;--color-xp-soft:#8b7bd0;--color-xp-surface:#f1edfb;--color-teacher-accent:#7c6bc4;--color-teacher-accent-strong:#5f4fa8;--color-teacher-accent-surface:#f1edfb;--radius-card:22px;--radius-card-sm:20px;--radius-card-lg:26px;--radius-pill:999px;--font-heading:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Maru Gothic Pro", "Yu Gothic Medium", "Noto Sans JP", system-ui, sans-serif;--font-body:"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, system-ui, sans-serif;--font-numeric:"Nunito", ui-rounded, "SF Pro Rounded", "Segoe UI", system-ui, sans-serif;--shadow-card:0 2px 10px #3a2e240f;--shadow-card-raised:0 3px 14px #583c200f;--shadow-primary:0 4px 12px #d06d1e4d;--shadow-send:0 2px 7px #d06d1e4d;--shadow-copal:0 10px 22px #e0842847;--gradient-meter:linear-gradient(90deg, #ffc463, #ee8c3c);--gradient-copal:linear-gradient(165deg, #fc7, #ef8a2a);--color-copal-ink:#4a3117;--color-copal-cheek:#e25c3a38;--color-copal-shine:#ffffff80}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;min-width:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%}:focus-visible{outline:2px solid var(--color-primary-strong);outline-offset:3px}@media (max-width:760px){button{touch-action:manipulation;min-height:44px}body:has([data-student-page=teach]){height:var(--copal-viewport-height,100dvh);flex-direction:column;display:flex;overflow:hidden}}h1,h2,h3{font-family:var(--font-heading);color:var(--color-text)}a{color:var(--color-primary-hover);text-decoration:none}a:hover{color:var(--color-primary)}.numeric{font-family:var(--font-numeric);font-weight:800}
