/* Adaptation only: home/unit visual rules come from the verified production UI. */
@font-face{font-family:"Smiley Sans";src:url("/assets/fonts/course-display.woff2") format("woff2");font-display:swap}
:root{--course-nav-height:64px;--course-ink:#242115;--course-olive:#625c3b;--course-paper:#fffdf8;--course-line:#e5dccd;--font-display:"Smiley Sans","得意黑","PingFang SC",sans-serif}
*{box-sizing:border-box}html{scroll-padding-top:calc(var(--course-nav-height) + 18px)}html:has(.grouped-page){scroll-padding-top:0}
body:not(.course-original-home):not(.course-original-unit){margin:0;color:var(--course-ink);background:linear-gradient(rgba(243,239,231,.66),rgba(243,239,231,.76)),var(--course-unit-background,url("/assets/images/home-landscape-bg.webp")) center/cover fixed,#f3efe7;font:16px/1.52 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a7ad8a;outline-offset:4px}[hidden]{display:none!important}
.course-topbar.topbar,.course-topbar.site-nav{position:sticky!important;top:0!important;z-index:50!important;width:100%;height:auto!important;padding:0!important;background:rgba(248,243,235,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--course-line);transform:none!important;filter:none!important;opacity:1!important}
.course-topbar .topbar-inner{width:min(1500px,100%);min-height:64px;height:auto!important;margin:auto;padding:10px 24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.course-topbar .course-home-link{font:22px/1.2 var(--font-display);text-decoration:none;white-space:nowrap;color:#4d4830;padding:4px 0;border:0;border-radius:0;background:none;box-shadow:none;min-height:0}
.course-directory-button{border:1px solid #d0c8b7;border-radius:999px;padding:8px 13px;background:#fffdf8;color:#4d4830;white-space:nowrap;min-height:38px}
.course-breadcrumb{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:13px/1.4 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#8b8374}
.course-topbar .search{margin-left:auto;width:220px;max-width:100%;height:36px}.course-topbar .current-learning-btn,.course-topbar .current-learning-status{display:none}
.course-dialog{position:fixed;inset:0;margin:auto;width:min(720px,calc(100vw - 28px));max-height:calc(100dvh - 36px);border:1px solid #d0c8b7;border-radius:14px;padding:24px;background:linear-gradient(145deg,#fffdf8,#f3efe7);color:#242115;box-shadow:0 28px 82px #2421154d;z-index:10000;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
.course-dialog[open]{animation:courseDialogIn .24s cubic-bezier(.2,.8,.2,1)}.course-dialog::backdrop{background:#24211557;backdrop-filter:blur(7px)}
@keyframes courseDialogIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.course-dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.course-dialog h2{font:30px/1.2 var(--font-display);margin:0}.course-dialog h3{font:22px/1.3 var(--font-display);margin:20px 0 10px}.course-dialog button.close{border:1px solid var(--course-line);border-radius:50%;background:#f8f3eb;width:38px;height:38px;flex:none}
.course-directory-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.course-directory-list a{display:block;padding:12px;border:1px solid var(--course-line);border-radius:8px;text-decoration:none;text-align:left}.course-directory-list a:hover{background:#eef2e7}.course-settings-form{display:grid;gap:20px}.course-settings-form label{display:flex;align-items:center;gap:12px}.course-settings-form input[type=number]{width:85px;padding:8px;border:1px solid var(--course-line);border-radius:6px}.course-settings-form input[type=checkbox]{width:20px;height:20px;accent-color:#625c3b}.course-settings-note{font-size:14px;line-height:1.6;color:#8b8374}.course-error{color:#944733}
.course-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid #cfc6b3;border-radius:999px;padding:9px 18px;text-decoration:none;background:rgba(255,253,248,.92);color:#4d4830;font-weight:650;transition:transform .16s ease,box-shadow .16s ease}
.course-button.primary{background:#625c3b;border-color:#625c3b;color:#fffdf8}.course-button:hover{box-shadow:0 6px 18px #39312018;transform:translateY(-1px)}
.course-tabs{display:flex;gap:4px;padding:5px;margin-top:26px;width:fit-content;border:1px solid #d5cbb9;background:#eae4d8;border-radius:999px}.course-tabs button{border:0;border-radius:999px;padding:12px 28px;background:transparent;font:24px/1.1 var(--font-display);color:#8b8374;transition:background .18s ease,box-shadow .18s ease,color .18s ease}.course-tabs button[aria-selected=true]{background:#fffdf8;color:#4d4830;box-shadow:0 2px 8px #39312014}
.course-part-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;margin:18px 0 0}.course-part-heading p{color:#726b59;font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;margin:0}
.course-original-home .course-unit-card{display:flex;flex-direction:column;min-height:190px}.course-original-home .course-unit-card::after{left:auto;right:16px;top:65px;font-size:24px;opacity:0}.course-original-home .course-unit-card:hover::after,.course-original-home .course-unit-card:focus-within::after{opacity:1}
.course-original-home .course-topic{position:relative;z-index:1;font:25px/1.25 var(--font-display);margin:0 0 10px;color:#4d4830;pointer-events:none}.course-original-home .course-unit-card>.links{margin-top:auto;padding-top:8px}.course-word-count{margin-left:8px;font:11px/1.2 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#8b8374;white-space:nowrap}
.course-original-home .unit-card .unit-title-row{padding-right:34px}.course-original-home .unit-card .unit-action{grid-column:auto;font-size:12px;min-height:42px;padding:8px 7px}.course-original-home .course-continue{margin-top:18px;background:rgba(255,253,248,.9)}
.course-today-progress{height:8px;overflow:hidden;border-radius:999px;background:#e5dccd;border:1px solid #d9cfbf;max-width:100%;margin-top:3px}.course-today-progress>span{display:block;width:0;height:100%;border-radius:inherit;background:#6e8d5b;transition:width .28s ease}
#courseTodaySummary,#courseRangeSummary{font-size:12px;line-height:1.5}#courseRangeSummary{margin-top:4px}
.course-tools{display:flex;justify-content:center;gap:24px;margin:36px 0 0;flex-wrap:wrap}.course-tools a,.course-tools button,.course-original-home .course-secondary{display:inline-flex;border:0;border-radius:0;background:none;box-shadow:none;color:#8b8374;text-underline-offset:5px;font:14px/1.4 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;padding:8px;min-height:0}
.course-original-unit .unit-head h1{font-size:clamp(32px,4vw,54px);line-height:1.15}.course-original-unit .meta{font:15px/1.7 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.course-original-unit main>.map-panel{margin-top:16px}.course-original-unit .map-gallery{align-content:start}.course-original-unit .map-chip{font-size:14px}
.course-shell{width:min(1180px,calc(100% - 48px));margin:30px auto 70px}.course-hero{padding:38px;border:1px solid #ded4c4;border-radius:10px;background:#fffdf8dd;box-shadow:0 18px 42px #39312014}.course-hero h1{font:clamp(38px,5vw,60px)/1.15 var(--font-display);color:#4d4830}.course-hero p{line-height:1.7;color:#726b59}.course-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.course-family-review{margin:16px 0;padding:13px 16px;border-left:3px solid #adb59a;background:#eef2e7;font-size:14px;line-height:1.6}.course-family-review a{color:#4d4830;text-underline-offset:4px}.course-family-review small{color:#8b8374;margin-left:8px}
.grouped-page .sidebar,.grouped-page .word-sidebar,.layout>.sidebar{top:var(--course-nav-height)!important;height:calc(100dvh - var(--course-nav-height))!important;max-height:calc(100dvh - var(--course-nav-height))!important}.mobile-word-nav{top:var(--course-nav-height)!important}.group-section,.compact-card,.card{scroll-margin-top:calc(var(--course-nav-height) + var(--word-nav-offset,0px) + 16px)!important}.controls,.pager{top:var(--course-nav-height)!important}.site-return-bar,.site-return-footer{display:none!important}.course-topbar~.review-page{padding-top:18px}.review-top .back{display:none}.course-topbar[aria-hidden=true]{visibility:hidden}
.grouped-page .group-section{scroll-margin-top:calc(var(--course-nav-height) + 16px)!important}
#courseSettings{width:min(700px,calc(100vw - 40px));max-height:calc(100dvh - 48px);padding:20px;border-color:rgba(98,92,59,.22);animation:taskModalIn .24s cubic-bezier(.2,.8,.2,1)}
#courseSettings .task-settings-heading h3{margin:0;font:800 21px/1.2 var(--font-ui);color:var(--olive-dark)}
#courseSettings .course-plan-note{margin:0;color:var(--muted,#8b8374);font:13px/1.55 var(--font-ui,sans-serif)}
#courseSettings .course-plan-scope{display:grid;gap:7px;padding:12px 14px;border:1px solid #ded6c5;border-radius:9px;background:rgba(255,253,248,.55)}
#courseSettings .course-plan-scope label{display:flex;align-items:center;gap:8px;color:var(--olive-dark,#4d4830)}
#courseSettings .course-plan-scope input{width:18px;height:18px;margin:0;padding:0;accent-color:var(--olive,#625c3b)}
#courseSettings .course-plan-status{margin:0;font:13px/1.5 var(--font-ui,sans-serif);color:#944733}#courseSettings .course-plan-status[data-status=saved]{color:#3b4a32}
#courseSettings button:disabled{opacity:.6;cursor:wait}
@media(max-width:820px){#courseSettings{inset:auto 10px 10px;margin:0 auto;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:16px 16px 10px 10px;padding:18px}}
.course-file-notice{padding:12px 18px;background:#fff6da;color:#4d4830;font:14px/1.6 sans-serif}.course-file-notice a{color:#4d4830;font-weight:700}
@media(max-width:1120px){.grouped-page .layout{grid-template-columns:220px minmax(0,1fr)}.grouped-page .word-sidebar{display:none}.grouped-page .mobile-word-nav{display:flex;position:sticky;z-index:30;overflow-x:auto;gap:6px;background:#fffdf8f5;padding:8px 0}.mobile-word-nav button{flex:0 0 auto}}
@media(max-width:760px){body{background-attachment:scroll!important}.course-topbar .topbar-inner{padding:9px 12px;gap:8px;min-height:58px}.course-topbar .course-home-link{font-size:20px}.course-breadcrumb{font-size:12px}.course-topbar .search{flex:1 1 100%;width:100%;margin:0}.course-shell{width:calc(100% - 24px);margin:16px auto 44px}.course-hero{padding:28px 24px}.course-tabs button{padding:11px 24px;font-size:23px}.course-part-heading{align-items:flex-start}.course-dialog{padding:20px}.course-directory-list{grid-template-columns:1fr}.course-dialog h2{font-size:27px}.course-original-unit .unit-head h1{font-size:36px}.grouped-page .layout{display:block!important}.grouped-page .sidebar{position:relative!important;top:auto!important;height:auto!important;max-height:none!important;display:block!important;padding:16px;border-right:0;border-bottom:1px solid #e5dccd}.grouped-page .sidebar h1,.grouped-page .sidebar p{display:none}.grouped-page .sidebar>nav{display:flex;overflow-x:auto;gap:6px}.grouped-page .group-nav{width:auto;flex:0 0 auto;display:flex;gap:6px;max-width:250px;border:1px solid #e5dccd}.grouped-page .group-nav em{display:none}.grouped-page main{width:calc(100% - 24px);padding-top:16px}.grouped-page .group-section{padding:20px 16px}}
/* Fit the mastery setup to its actual available width, including scrollbars. */
.unit-test-modal{padding:14px}
.unit-test-setup-card{box-sizing:border-box;min-width:0;width:min(620px,100%)}
.unit-test-setup-head>.ghost-btn{flex:0 0 auto;white-space:nowrap}
@media(max-width:430px){.course-breadcrumb{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.course-topbar,.course-tools,.course-dialog,.sidebar,.word-sidebar,.mobile-word-nav{display:none!important}body{background:white!important}.card-overlay[aria-hidden=true]{display:none!important}}
