:root{color:#183b3a;font-synthesis:none;background:#f6f4ef;font-family:DM Sans,Noto Sans TC,sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0}button,a,audio,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;background:#fff;border:1px solid #d6ded7;border-radius:10px;padding:12px 16px}button:hover{background:#f1f6f2;border-color:#6d9991}button:focus-visible,a:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #d49562}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}p{line-height:1.8}h1,h2,h3{margin-top:0;line-height:1.45}h1{letter-spacing:-.04em;margin-bottom:12px;font-size:clamp(28px,4.2vw,44px)}h2{margin-bottom:8px;font-size:22px}h3{font-size:19px}.shell{max-width:1240px;margin:auto;padding:0 42px}header,footer{justify-content:space-between;align-items:center;padding:28px 0;display:flex}.brand{align-items:center;gap:12px;font-size:21px;font-weight:700;display:flex}.brand>span{color:#fff;background:#183b3a;border-radius:50%;place-items:center;width:38px;height:38px;font-size:26px;display:grid}.pill,.eyebrow,.step-label{letter-spacing:.11em;font-size:11px;font-weight:700}.pill{border:1px solid #d5dcd5;border-radius:30px;padding:8px 12px}.intro{padding:32px 0 18px}.intro>p:last-child{color:#64746f}.eyebrow{color:#a36b48;margin-bottom:12px}.topnav{border-bottom:1px solid #d9dfd9;gap:12px;margin:16px 0 28px;display:flex}.topnav button{color:#6e7b75;background:0 0;border:0;border-radius:0;padding:14px 8px}.topnav button.selected{color:#214b45;border-bottom:3px solid #214b45;font-weight:700}.panel{background:#fffefa;border:1px solid #e0e4dc;border-radius:16px;padding:26px}.course-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.course-head p{margin-bottom:0}.pdfs{flex-direction:column;gap:10px;max-width:45%;font-size:12px;display:flex}.pdfs a{border-bottom:1px solid #cbd6cd;padding-bottom:5px}.lesson-grid{grid-template-columns:255px 1fr;gap:22px;display:grid}.milestones{gap:8px;display:grid}.milestones button{text-align:left;background:0 0;border-color:#0000;grid-template-columns:30px 1fr 18px;align-items:center;gap:12px;padding:17px 12px;display:grid}.milestones button.selected{background:#e5eee5;border-color:#bdcdbf}.number{color:#819489;font-size:12px}.milestones small{color:#839087;margin-top:4px;font-size:11px;display:block}.workspace{min-height:460px}.step-label{color:#71948a;margin-bottom:18px;display:inline-block}.audio-card{background:#f3f5ef;border-radius:12px;flex-direction:column;gap:12px;margin:20px 0;padding:18px;display:flex}.audio-card audio{width:100%}small{color:#7b8980;font-size:11px;line-height:1.65;display:block}.answers{gap:10px;margin:22px 0;display:grid}.answers button{text-align:left;align-items:center;gap:16px;min-height:56px;display:flex}.answers button b{background:#f1f3ed;border-radius:6px;place-items:center;width:26px;height:26px;font-size:12px;display:grid}.answers button.chosen{background:#edf4ed;border-color:#3f7768}.answers textarea{min-height:150px;font:inherit;resize:vertical;border:1px solid #d3ded4;border-radius:12px;padding:18px}.primary{color:#fff;background:#224d44;border-color:#224d44}.primary:hover{color:#fff;background:#346658}.quiet{text-underline-offset:4px;background:0 0;border-color:#0000;font-size:13px;text-decoration:underline}.actions{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.feedback{background:#f4f6ed;border-left:3px solid #91ac80;border-radius:0 12px 12px 0;margin-top:24px;padding:18px}.history-card{background:#fff8e8;border:1px solid #ead9b5;border-radius:12px;margin-top:16px;padding:14px 16px}.history-card h4{color:#7a5a2c;margin:0 0 8px;font-size:14px}.history-card p{margin:4px 0;line-height:1.75}.rating{margin:20px 0}.rating button{margin:0 6px 8px 0;font-size:12px}.next{justify-content:space-between;align-items:center;gap:20px;margin-top:24px;display:flex}.next h2{font-size:19px}.next p{color:#728075;font-size:13px}.notice{background:#fbefda;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;padding:15px 18px;line-height:1.7;display:flex}.notice button{white-space:nowrap;background:0 0;font-size:12px}.prose{overflow-wrap:anywhere;line-height:1.9}.prose p{white-space:pre-wrap}.teaching{border-top:1px solid #dae2d8;margin-top:24px;padding-top:24px}.game{max-width:760px;margin:auto}.zones{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.zones span{background:#eff3e9;border-radius:20px;padding:8px 12px;font-size:12px}.stats{gap:14px;margin:26px 0;display:grid}.stats>div{grid-template-columns:110px 1fr 130px;align-items:center;gap:12px;font-size:12px;display:grid}progress{accent-color:#557f6d;width:100%;height:12px}details{border-bottom:1px solid #dce3d8;padding:18px 0}summary{cursor:pointer;line-height:1.8}footer{color:#87958c;margin-top:24px;font-size:11px}@media (width<=760px){.shell{padding:0 18px}header{padding:20px 0}.brand{font-size:18px}.pill{display:none}.intro{padding:20px 0 10px}.lesson-grid{grid-template-columns:1fr}.milestones{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-bottom:8px;display:grid}.milestones button{grid-template-columns:1fr;gap:5px;min-width:0;padding:12px 8px;font-size:12px}.milestones .number,.milestones button>span:last-child{display:none}.panel{border-radius:14px;padding:20px}.course-head{flex-direction:column;align-items:flex-start;gap:18px}.pdfs{flex-flow:wrap;max-width:100%}.next{display:block}.next .actions{flex-direction:column}.actions>.primary{flex:1}.workspace{min-height:300px}.stats>div{grid-template-columns:75px 1fr 100px;font-size:11px}.notice{display:block}.notice button{margin-top:8px}.topnav{gap:10px}.topnav button{flex:1;font-size:14px}.audio-card{padding:12px}.answers button{min-height:58px;padding:14px 12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}.optional{border-top:1px solid #dde4d9;margin-top:18px;padding-top:18px}.optional button{margin:4px;font-size:12px}.makeup{margin-top:24px}.makeup input{font:inherit;border:1px solid #d8e0d5;border-radius:8px;margin:8px;padding:8px}.makeup button{margin:8px}.tile-line{background:#f0f3eb;border-radius:12px;flex-wrap:wrap;gap:8px;min-height:65px;margin:12px 0;padding:12px;display:flex}.tile-line button{background:#fff;border-bottom:3px solid #b9cbb5}.timeline{flex-direction:column;gap:8px;display:flex}.timeline button{text-align:left;gap:18px;display:flex}.timeline b{color:#91a685}.lesson-grid>*{min-width:0}.shell,.panel,.answers>*{overflow-wrap:anywhere;min-width:0}.review-panel{border-top:1px solid #dbe3d7;margin-top:24px;padding-top:20px}.review-panel .actions{justify-content:space-between;align-items:center}.review-panel h3{margin:0}.review-panel label{margin:16px 0;display:block}.review-panel textarea,.review-panel select{font:inherit;background:#fff;border:1px solid #d3ded4;border-radius:10px;width:100%;margin-top:8px;padding:12px}.review-panel textarea{min-height:110px}.review-panel li{line-height:1.8}.audio-card audio{min-width:0;max-width:100%}@media (width<=380px){.shell{padding:0 12px}.panel{padding:16px}.topnav{gap:4px}.topnav button{padding:14px 4px;font-size:13px}.stats>div{grid-template-columns:65px minmax(30px,1fr) 90px}.makeup input{max-width:100%;margin-left:0}}.recovery{margin:20px 0}.recovery-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px;margin:22px 0;display:grid}.recovery-list>div{border:1px solid #dce4da;border-radius:12px;min-width:0;padding:18px}.recovery-list h3{font-size:17px}.learning-player{min-width:0}.learning-player .actions{gap:6px}.learning-player button{padding:10px 12px}.audio-seek{gap:8px;font-size:12px;display:grid}.audio-seek input{accent-color:#346658;width:100%;min-height:35px}.sentence-loop{border:0;padding:8px 0}.sentence-loop p{font-size:12px}.game-tabs{flex-wrap:wrap;gap:7px;display:flex}.game-tabs button{flex:1;min-width:110px;font-size:13px}.game-tabs .chosen{background:#e6eee5;border-color:#729b85}.morphology{align-items:center;gap:10px;margin:18px 0;font-size:26px;display:flex}.stem{color:#176c65!important;background:#eaf6f0!important}.ending{color:#9b4d20!important;background:#fff0df!important}.draft-shelf{margin-top:24px}.draft-shelf button{margin:6px 6px 6px 0}.local-practice textarea{width:100%;min-height:100px;font:inherit;border:1px solid #c8d8ca;border-radius:10px;padding:12px;display:block}.archive-view .audio-card{margin:12px 0}.archive-view .actions{margin-top:16px}.topnav{flex-wrap:wrap}.topnav .picker-entry{text-align:left;flex:100%}@media (width>=761px){.topnav .picker-entry{flex:none;margin-left:auto}}.login{max-width:420px;margin:24px auto}.login form{gap:10px;display:grid}.login label{font-size:14px;font-weight:600}.login input{font:inherit;border:1px solid #d8e0d5;border-radius:8px;width:100%;min-height:44px;padding:12px;font-size:16px}.login button{min-height:44px;margin-top:6px}.login-error{color:#9b2c2c;margin:0}.grammar-frame-banner,.history-clue-box,.si-floor-guide{background:#f0f5ef;border-left:4px solid #3f7768;border-radius:10px;margin:14px 0;padding:12px 16px}.history-clue-box{background:#faf4ea;border-left-color:#b97a45}.si-floor-guide{background:#eef4f8;border-left-color:#2b6cb0}.grammar-frame-banner p,.history-clue-box p,.si-floor-guide p{margin:4px 0}.lesson-links{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.morphology-card,.trilogy-card,.history-story-card{background:#fff;border:1px solid #d6dfd5;border-radius:12px;margin:14px 0;padding:14px 16px}.morphology-row{flex-wrap:wrap;gap:18px;display:flex}.morphology-chip .morphology{margin:8px 0;font-size:20px}.stem,.ending{border-radius:6px;padding:2px 6px;font-weight:700}.md-table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}.md-table th,.md-table td{text-align:left;vertical-align:top;border:1px solid #d4ddd3;padding:8px 10px}.md-table th{background:#eef3ec}.md-table tr.current-floor{background:#fcf6e8}.history-story-card p{margin:6px 0;line-height:1.7}
