/* Online catalogue, purchases and private feedback share the existing day/night palette. */
.course-cta .course-package-offer{grid-column:1/-1}.course-package-offer{display:grid;gap:10px;padding:19px 20px;margin:8px 0;border:1px solid var(--ui-line-strong);border-radius:12px;background:linear-gradient(120deg,var(--ui-raised),var(--ui-surface));color:var(--ui-text);text-decoration:none;transition:border-color 160ms,background 160ms}.course-package-offer:hover{border-color:var(--ui-key);background:var(--ui-raised)}.course-package-offer:focus-visible{outline:2px solid var(--ui-key);outline-offset:4px}.package-offer-top{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--ui-secondary)}.package-offer-top strong{margin-left:auto;color:var(--ui-text);font-size:29px;font-weight:450;line-height:1.2;letter-spacing:-.02em}.package-offer-top>span:last-child{font-size:20px;color:var(--ui-text)}.package-offer-name{font-size:17px;line-height:1.55;font-weight:500;color:var(--ui-text)}.package-offer-bottom{display:flex;justify-content:space-between;gap:16px;font-size:14px;line-height:1.5;color:var(--ui-secondary)}.checkout-single{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0 22px;font-size:16px;color:var(--ui-secondary)}.checkout-single strong{font-size:34px;font-weight:450;color:var(--ui-text);letter-spacing:-.02em}.dialog-content>.course-package-offer{margin-bottom:23px}
@media(max-width:600px){.course-package-offer{padding:18px}.package-offer-top strong{font-size:28px}.package-offer-name{font-size:17px}}
@media(prefers-reduced-motion:reduce){.course-package-offer{transition:none}}
.feedback-receipt{padding:26px;border:1px solid var(--ui-line);border-radius:15px;background:var(--ui-surface)}.feedback-receipt>strong{font-size:20px;font-weight:500;color:var(--ui-text)}.feedback-receipt>p{font-size:16px;line-height:1.8;color:var(--ui-secondary);margin:10px 0 20px}.feedback-pagination{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;padding-top:24px;font-size:15px;color:var(--ui-secondary)}
.lesson-loading.error-state>span{font-size:18px;line-height:1.75}.lesson-loading.error-state>small{font-size:14px;line-height:1.8;opacity:.78}.lesson-loading.error-state>.button{min-height:46px;font-size:16px}
html[data-theme] body .bundle-strip{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:25px 30px;margin:0 0 30px;border:1px solid var(--ui-line);border-radius:18px;background:linear-gradient(110deg,var(--ui-raised),var(--ui-surface) 64%);color:var(--ui-text)}
.bundle-strip>div{display:flex;align-items:center;gap:22px;min-width:0}.bundle-mark{display:grid;place-items:center;width:64px;height:68px;border:1px solid var(--ui-line-strong);border-radius:13px 22px 13px 13px;font-size:29px;font-weight:300;letter-spacing:-.04em;flex-shrink:0}
html[data-theme] body .bundle-strip h2{font-size:23px;font-weight:500;margin:0 0 5px}.bundle-strip p{font-size:15px;color:var(--ui-secondary);margin:0}.bundle-strip>a{display:flex;align-items:center;gap:22px;flex-shrink:0;color:var(--ui-text)}.bundle-strip>a strong{font-size:30px;font-weight:400}.bundle-strip>a span{font-size:15px;border-left:1px solid var(--ui-line);padding-left:22px}
.catalog-layout{display:grid;grid-template-columns:272px minmax(0,1fr);gap:32px;align-items:start}.catalog-products{min-width:0;scroll-margin-top:calc(var(--header-height) + 18px)}
#curriculum{position:sticky;top:calc(var(--header-height) + 18px);align-self:start;min-width:0}.curriculum-panel{border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-surface);overflow:hidden}.curriculum-mobile-toggle{display:none}.curriculum-body{max-height:calc(100svh - var(--header-height) - 50px);overflow:auto;overscroll-behavior:contain;padding:18px 15px 22px;scrollbar-width:thin;scrollbar-color:var(--ui-line-strong) transparent}.curriculum-title{display:flex;align-items:center;justify-content:space-between;padding:0 4px 16px;gap:8px;border-bottom:1px solid var(--ui-line);margin-bottom:10px}.curriculum-title h2{font-size:18px;margin:0;font-weight:500}.curriculum-title .text-button{font-size:13px;padding:5px;min-height:36px;color:var(--ui-muted)}
.curriculum-volume>summary{font-size:15px;color:var(--ui-secondary);padding:15px 3px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}.curriculum-volume>summary:before{content:'›';font-size:21px;line-height:1;transform:rotate(0);transition:transform 150ms}.curriculum-volume[open]>summary:before{transform:rotate(90deg)}.curriculum-volume+.curriculum-volume{border-top:1px solid var(--ui-line)}.curriculum-chapter{margin:0 0 4px}.curriculum-chapter>summary{display:flex;align-items:flex-start;gap:8px;justify-content:space-between;list-style:none;cursor:pointer;font-size:16px;line-height:1.6;min-height:44px;padding:9px;border-radius:7px;color:var(--ui-text)}.curriculum-chapter>summary:before{content:'+';font-size:16px;color:var(--ui-muted);flex-shrink:0}.curriculum-chapter[open]>summary:before{content:'−'}.curriculum-chapter>summary>span{flex:1}.curriculum-chapter>summary small{font-size:12px;color:var(--ui-muted);padding-top:3px}.curriculum-chapter>summary:hover{background:var(--ui-raised)}
html[data-theme] body .curriculum-topics button,html[data-theme] body .curriculum-chapter-all{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:0;background:transparent;color:var(--ui-secondary);border-radius:7px;font-size:14px;line-height:1.65;min-height:43px;padding:9px 10px 9px 25px;cursor:pointer}.curriculum-topics button small,.curriculum-chapter-all span{font-size:12px;flex-shrink:0;color:var(--ui-muted)}
html[data-theme] body .curriculum-topics button:hover,html[data-theme] body .curriculum-chapter-all:hover{background:var(--ui-raised);color:var(--ui-text)}html[data-theme] body .curriculum-topics button.selected,html[data-theme] body .curriculum-chapter-all.selected{background:var(--ui-selected);color:var(--ui-text);box-shadow:inset 2px 0 var(--ui-key)}.curriculum-topics button.empty-topic{color:var(--ui-muted)}.curriculum-chapter-all{font-size:13px!important}.curriculum-topics{margin-bottom:9px}.catalog-result-row{gap:15px;align-items:center;min-height:44px}.catalog-result-row .result-count{margin:0;line-height:1.7}.catalog-result-row .text-button{white-space:nowrap;font-size:14px;padding:9px 0}
html[data-theme] body .catalog-products .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.catalog-products .empty{grid-column:1/-1}.catalog-products .product-card .card-title h3{font-size:23px}.catalog-products .product-card .card-description{font-size:16px;line-height:1.85}.catalog-products .card-body{padding:22px}.catalog-products .card-actions{gap:9px;flex-wrap:wrap}.catalog-products .card-actions .button{font-size:15px;padding:12px 16px}.catalog-products .card-meta{font-size:14px}.catalog-products .card-sale-status{font-size:14px}.catalog-products .card-community{font-size:13px}
.bundle-page{max-width:1320px;margin:auto}.bundle-heading{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px;padding:46px 0 60px;border-bottom:1px solid var(--ui-line);align-items:center}.bundle-heading h1{font-size:clamp(32px,4vw,52px);line-height:1.3;font-weight:450;letter-spacing:-.025em;margin:10px 0 24px}.bundle-heading p{font-size:18px;line-height:1.85;max-width:660px;color:var(--ui-secondary)}.bundle-heading .subtle{font-size:15px}.bundle-price{padding:30px;display:grid;gap:18px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface)}.bundle-price>span{font-size:14px;color:var(--ui-secondary)}.bundle-price>span:last-child{font-size:13px}.bundle-price strong{font-size:48px;font-weight:350;letter-spacing:-.03em;line-height:1.2}.bundle-price .button{width:100%;min-height:48px}.bundle-included{padding-top:44px}.bundle-included .section-top>span{color:var(--ui-muted)}
.course-taxonomy{display:grid;gap:16px;margin:22px 0;padding:22px 25px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-inset)}.course-taxonomy strong{font-size:16px;font-weight:500;color:var(--ui-text)}.course-taxonomy p{font-size:15px;line-height:1.85;color:var(--ui-secondary);margin:5px 0 0}.course-jump{z-index:10}.course-section{scroll-margin-top:calc(var(--header-height) + 24px)}
html[data-theme] body .feedback-body{margin-top:23px}.feedback-compose{padding:26px;border:1px solid var(--ui-line);border-radius:15px;background:var(--ui-surface);display:grid;gap:20px}.feedback-compose label,.feedback-item form label,.feedback-admin-filters label{display:grid;gap:9px;font-size:15px;color:var(--ui-secondary)}
html[data-theme] body .feedback-compose select,html[data-theme] body .feedback-item select,html[data-theme] body .feedback-admin-filters select,html[data-theme] body .feedback-compose textarea,html[data-theme] body .feedback-item textarea{border:1px solid var(--ui-line-strong);border-radius:9px;background:var(--ui-inset);color:var(--ui-text);padding:12px 14px;font-size:16px;line-height:1.7;min-height:46px;max-width:100%;width:100%}.feedback-compose>label:first-child{max-width:260px}.feedback-compose textarea,.feedback-item textarea{resize:vertical}.feedback-form-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.feedback-compose .error,.feedback-item .error{margin:0}.feedback-gate{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.feedback-gate p{font-size:16px;margin:0;color:var(--ui-secondary)}.feedback-history{margin-top:30px}.feedback-history>h3{font-size:20px;font-weight:500;margin-bottom:18px}.feedback-item{border:1px solid var(--ui-line);border-radius:13px;padding:24px;margin:15px 0;background:var(--ui-surface)}.feedback-item header{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.feedback-item header>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.feedback-item header strong{font-size:17px;font-weight:500}.feedback-item time{font-size:13px;color:var(--ui-muted)}.feedback-status{border:1px solid var(--ui-line-strong);padding:3px 9px;border-radius:6px;font-size:12px;color:var(--ui-secondary)}.feedback-status[data-status=resolved]{border-color:var(--ui-line);color:var(--ui-muted)}.feedback-message{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ui-text);font-size:17px;line-height:1.9;margin:20px 0 4px}.feedback-meta{font-size:14px;color:var(--ui-muted);margin:9px 0}.feedback-reply{border-left:2px solid var(--ui-line-strong);padding:4px 0 4px 18px;margin-top:22px}.feedback-reply strong{font-size:14px;font-weight:500;color:var(--ui-secondary)}.feedback-reply p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.8;margin:7px 0}.feedback-item form{margin-top:24px;padding-top:22px;border-top:1px solid var(--ui-line);display:grid;gap:16px}.feedback-item .feedback-form-row>label{grid-template-columns:auto 155px;align-items:center}.feedback-admin{max-width:1000px;margin:auto}.feedback-admin-filters{display:grid;grid-template-columns:200px minmax(230px,1fr);gap:20px;padding:22px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:13px}.feedback-total{font-size:15px;color:var(--ui-muted);margin-top:26px}
@media(min-width:1600px){html[data-theme] body .catalog-products .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.catalog-layout{grid-template-columns:245px minmax(0,1fr);gap:23px}.catalog-products .card-body{padding:18px}.bundle-heading{gap:30px}.bundle-strip{padding:23px!important}.bundle-mark{display:none}.bundle-strip>a{gap:14px}.bundle-strip>a span{padding-left:14px}}
@media(max-width:900px){.catalog-layout{grid-template-columns:1fr;gap:22px}#curriculum{position:static}.curriculum-mobile-toggle{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:15px 20px;font-size:17px;cursor:pointer;list-style:none}.curriculum-title{display:none}.curriculum-body{max-height:60svh;padding:0 16px 20px}.curriculum-volume>summary{font-size:16px}.curriculum-topics button{font-size:15px!important}.bundle-heading{grid-template-columns:1fr 265px}.bundle-heading h1{font-size:36px}.bundle-price{padding:24px}.bundle-heading p{font-size:16px}}
@media(max-width:600px){html[data-theme] body .bundle-strip{align-items:flex-start;gap:20px;flex-direction:column;padding:22px!important;margin-bottom:24px}.bundle-strip>div{gap:14px}.bundle-strip p{font-size:14px;line-height:1.75}.bundle-strip>a{width:100%;justify-content:space-between;gap:18px}.bundle-strip>a strong{font-size:29px}.bundle-strip>a span{border:0;padding:0}.bundle-strip h2{font-size:22px!important}html[data-theme] body .catalog-products .grid{grid-template-columns:1fr;gap:25px}.catalog-products .card-body{padding:23px}.catalog-products .card-title h3{font-size:24px!important}.catalog-result-row{flex-wrap:wrap;gap:3px}.catalog-result-row .result-count{font-size:15px}.bundle-heading{grid-template-columns:1fr;gap:25px;padding:24px 0 34px}.bundle-heading h1{font-size:35px;margin:8px 0 18px}.bundle-price{gap:15px;padding:24px}.bundle-price strong{font-size:43px}.bundle-included{padding-top:30px}.course-taxonomy{padding:20px}.course-taxonomy strong{line-height:1.75}.course-taxonomy p{font-size:15px}.feedback-compose,.feedback-item{padding:20px}.feedback-form-row{align-items:stretch}.feedback-form-row .button{min-height:45px}.feedback-gate{align-items:flex-start;flex-direction:column;padding:22px}.feedback-message{font-size:16px}.feedback-item header{align-items:flex-start}.feedback-item form .feedback-form-row{flex-direction:column}.feedback-admin-filters{grid-template-columns:1fr;padding:20px}.feedback-item .feedback-form-row>label{grid-template-columns:1fr}.feedback-reply{padding-left:14px}.feedback-admin .library-header{gap:20px;flex-wrap:wrap}.library-item .button{width:auto;min-height:44px}}
@media(prefers-reduced-motion:reduce){.curriculum-volume>summary:before{transition:none}}

/* Teacher catalogue search shares the established day/night palette. */
.catalog-page-heading>div>h1{margin-bottom:10px}.catalog-page-heading .subtle{margin:0;font-size:17px;line-height:1.7;color:var(--ui-secondary)}
.catalog-layout.teacher-catalog-layout{grid-template-columns:minmax(0,1fr)}
.teacher-search-panel .search-wrap{flex:1;min-width:240px;max-width:470px}
.catalog-author-select{display:block;flex:0 1 380px;min-width:220px}
html[data-theme] body .catalog-author-select select{width:100%;min-height:46px;padding:10px 38px 10px 14px;border:1px solid var(--ui-line-strong);border-radius:9px;background:var(--ui-inset);color:var(--ui-text);font:inherit;font-size:16px;text-overflow:ellipsis}
.catalog-author-select select:disabled{opacity:.6;cursor:default}
.catalog-filter-note,.catalog-search-hint{font-size:14px;line-height:1.7;color:var(--ui-muted)}
.catalog-search-hint{margin:15px 0 0;padding-top:16px;border-top:1px solid var(--ui-line)}
html[data-theme] body .author-filter-button{border:0;background:transparent;padding:0;color:var(--ui-secondary);font:inherit;cursor:pointer;text-align:left}
html[data-theme] body .author-filter-button:hover{color:var(--ui-text)}
.author-filter-button:focus-visible,.catalog-author-select select:focus-visible{outline:2px solid var(--ui-key);outline-offset:4px}
.teacher-catalog .empty{border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);padding:52px 24px}
.teacher-catalog .empty p{font-size:16px;line-height:1.7;color:var(--ui-secondary);margin-bottom:24px}
@media(min-width:1100px){html[data-theme] body .teacher-catalog .catalog-products .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1001px) and (max-width:1180px){:root{--header-height:126px}html[data-theme] body .header{padding:16px 4% 58px;gap:15px}html[data-theme] body .header nav{position:absolute;left:4%;right:4%;top:76px;justify-content:space-between;margin:0;gap:20px;width:auto}}
@media(max-width:700px){.catalog-author-select{flex-basis:100%;min-width:0}.catalog-filter-note{font-size:13px}.teacher-search-panel .search-wrap{max-width:none;min-width:0}.catalog-page-heading .subtle{font-size:16px}.catalog-search-hint{font-size:13px}}

/* Chapter navigation and complete course details. Topic mappings remain searchable. */
.official-bundles .library-header{margin-bottom:20px}.official-bundles .library-header h1{margin-bottom:12px}
html[data-theme] body .official-bundles>.official-bundle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:24px}
.official-bundle-card{--bundle-accent:#829dc8;min-width:0;padding:32px;border:1px solid var(--ui-line-strong);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--bundle-accent) 9%,var(--ui-surface)),var(--ui-surface) 60%);box-shadow:inset 0 1px 0 var(--ui-edge);overflow:hidden}
.official-bundle-card[data-subject="化学"]{--bundle-accent:#82b2a7}
.official-bundle-meta{display:flex;justify-content:space-between;gap:16px;color:var(--ui-secondary);font-size:14px;line-height:1.6}
.official-bundle-meta>span:last-child{border:1px solid var(--ui-line-strong);border-radius:5px;padding:2px 8px;color:var(--ui-secondary);font-size:12px}
.official-bundle-card h2{font-size:clamp(27px,3vw,36px);font-weight:500;line-height:1.4;letter-spacing:-.025em;margin:18px 0 8px;color:var(--ui-text)}
.official-bundle-count{font-size:16px;line-height:1.7;margin:0 0 18px;color:var(--ui-secondary)}
.official-bundle-count strong{font-weight:500;color:var(--ui-text)}
.official-bundle-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 22px;padding:8px;background:var(--ui-inset);border:1px solid var(--ui-line);border-radius:12px}
.official-bundle-preview img{display:block;width:100%;aspect-ratio:1.85;object-fit:cover;border-radius:6px;background:var(--ui-surface)}
.official-bundle-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-top:20px;border-top:1px solid var(--ui-line)}
.bundle-pricing{display:grid;gap:7px;align-content:start}
.bundle-original-price{font-size:16px;line-height:1.5;color:var(--ui-muted)}
.bundle-original-price del{text-decoration-thickness:1px;text-decoration-color:currentColor;font-variant-numeric:tabular-nums}
.bundle-current-price{font-size:48px;line-height:1.18;font-weight:400;letter-spacing:-.025em;color:var(--ui-text);font-variant-numeric:tabular-nums}
.bundle-promotion{font-size:14px;line-height:1.6;color:var(--ui-secondary)}
.official-bundle-action{display:grid;gap:14px;text-align:right;font-size:14px;line-height:1.7;color:var(--ui-secondary)}
.official-bundle-action .button{min-height:46px;white-space:nowrap}
.bundle-pricing.is-compact{gap:3px}
.bundle-pricing.is-compact .bundle-current-price{font-size:30px}
.bundle-pricing.is-compact .bundle-original-price{font-size:14px}
.bundle-strip>a>.bundle-pricing{border:0;padding:0;white-space:normal}
.bundle-strip .bundle-pricing span{border:0;padding:0}
.course-package-offer .bundle-pricing{margin-left:auto;text-align:right}
.course-package-offer .bundle-promotion{font-size:13px}
.checkout-single:has(.bundle-pricing){align-items:flex-start}
.checkout-single .bundle-pricing{text-align:right}
@media(max-width:1050px){.official-bundle-card{padding:26px}.official-bundle-bottom{align-items:flex-start;flex-direction:column;gap:24px}.official-bundle-action{width:100%;text-align:left}.official-bundle-action .button{width:100%}}
@media(max-width:700px){html[data-theme] body .official-bundles>.official-bundle-grid{grid-template-columns:1fr;gap:22px}.official-bundle-card{padding:24px}.official-bundle-bottom{flex-direction:row;align-items:flex-end}.official-bundle-action{width:auto;text-align:right}.bundle-current-price{font-size:43px}.official-bundle-preview{gap:6px}.official-bundle-card h2{font-size:30px}}
@media(max-width:390px){.official-bundle-bottom{flex-direction:column;align-items:stretch}.official-bundle-action{width:100%;text-align:left}.official-bundle-meta{flex-wrap:wrap}.official-bundle-card{padding:20px}}

/* Package purchase and account flows share the existing quiet classroom palette. */
.bundle-benefits{display:flex;flex-wrap:wrap;gap:10px 22px;margin:18px 0 25px;color:var(--ui-secondary);font-size:14px;line-height:1.6}
.bundle-benefits>span{display:inline-flex;align-items:center;gap:8px}.bundle-benefits>span:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ui-key);box-shadow:0 0 8px color-mix(in srgb,var(--ui-key) 22%,transparent)}
.official-bundles>.library-header{align-items:center}.official-bundles .eyebrow{font-size:12px;letter-spacing:.07em}.official-bundles .library-header .subtle{font-size:17px;line-height:1.8}.official-bundle-count>span{font-size:14px;color:var(--ui-muted)}
.official-bundle-card{position:relative;box-shadow:inset 0 1px 0 var(--ui-edge),0 16px 45px #00000006}.official-bundle-card:before{content:'';position:absolute;pointer-events:none;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bundle-accent) 60%,transparent),transparent)}
.official-bundle-preview{padding:9px}.official-bundle-preview img{transition:filter .2s;filter:saturate(.9)}.official-bundle-card:hover .official-bundle-preview img{filter:saturate(1)}
.bundle-scope-note{margin:28px 0 0;max-width:860px;font-size:14px;line-height:1.9;color:var(--ui-secondary)}
.bundle-heading[data-subject="化学"] .bundle-price{background:linear-gradient(145deg,color-mix(in srgb,#82b2a7 8%,var(--ui-surface)),var(--ui-surface) 70%)}
.bundle-heading[data-subject="物理"] .bundle-price{background:linear-gradient(145deg,color-mix(in srgb,#829dc8 8%,var(--ui-surface)),var(--ui-surface) 70%)}
.bundle-heading .bundle-benefits{margin:24px 0}.bundle-free{margin:20px 0 0;font-size:15px;line-height:1.85;color:var(--ui-secondary)}.bundle-free summary{cursor:pointer;min-height:38px}.bundle-free p{display:flex;flex-direction:column;gap:8px;font-size:14px;margin:10px 0}.bundle-free a:hover{color:var(--ui-text)}.bundle-included .section-top p{font-size:15px;text-align:left;max-width:none;margin:10px 0;color:var(--ui-secondary)}
.checkout-scope{margin:0 0 22px;padding:17px 19px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-inset);font-size:15px;color:var(--ui-secondary)}.checkout-scope summary{cursor:pointer;line-height:1.7}.checkout-scope ul{margin:16px 0 0;padding:0 0 0 20px;max-height:250px;overflow:auto}.checkout-scope li{padding:5px 0;line-height:1.7;overflow-wrap:anywhere}.checkout-scope li span{display:inline-block;font-size:12px;margin-left:10px;color:var(--ui-muted)}.checkout-promotion-note{font-size:14px!important;line-height:1.8;padding:12px 16px;border-left:2px solid var(--ui-key);background:var(--ui-raised)}
.purchase-library .library-header h1{margin-bottom:12px}.library-bundle{margin:0 0 40px;padding:28px;border:1px solid var(--ui-line-strong);border-radius:18px;background:linear-gradient(120deg,var(--ui-raised),var(--ui-surface) 70%)}.library-bundle>header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--ui-line);margin-bottom:4px}.library-bundle h2{font-size:27px;font-weight:500;margin:0 0 8px}.library-bundle .eyebrow{font-size:12px;margin-bottom:10px}.library-bundle>header .subtle{font-size:14px;margin:0}.library-bundle .library-item:last-child{border-bottom:0}.library-other{margin:35px 0 50px}.library-other h2,.library-orders h2{font-size:25px;font-weight:500;margin-bottom:12px}.library-orders{padding-top:24px;border-top:1px solid var(--ui-line)}.library-orders>.subtle{font-size:14px;line-height:1.9;margin-top:24px}.order-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px}.order-actions>span{font-size:14px}.library-item>div{min-width:0}.library-item h3{overflow-wrap:anywhere}
.phone-login-option{margin-top:12px}.phone-code-row{display:flex;gap:10px;align-items:stretch}.phone-code-row input{min-width:0;flex:1;width:100px}.phone-code-row .button{white-space:nowrap;min-width:122px;padding:10px 14px;font-size:14px}.phone-bound{margin:20px 0;padding:15px 18px;background:var(--ui-inset);border:1px solid var(--ui-line);border-radius:9px;letter-spacing:.08em}.phone-send-status:empty{display:none}.phone-send-status{font-size:14px!important;line-height:1.8}.phone-form input{font-size:16px}.phone-form .check-label{margin-top:17px;line-height:1.9}.phone-form .check-label a{border-bottom:1px solid var(--ui-line-strong)}.account-phone{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 20px;align-items:center;border-block:1px solid var(--ui-line);padding:15px 0;margin:24px 0;font-size:15px;color:var(--ui-secondary)}
.terms-bundles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0;padding:0;list-style:none}.terms-bundles li{padding:16px 20px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface);font-size:15px!important;line-height:1.8}.terms-bundles .bundle-pricing{margin-top:12px}.terms-bundles .bundle-current-price{font-size:28px}
.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px 0 24px}.admin-section-heading h2,.admin-promotions h2{font-size:25px;font-weight:500;margin:0}.admin-promotions{margin:30px 0 42px}.admin-promotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.admin-promotion-card{padding:23px;border:1px solid var(--ui-line);border-radius:13px;background:var(--ui-surface)}.admin-promotion-card h3{font-size:20px}.admin-promotion-card p{font-size:15px;color:var(--ui-secondary)}.admin-promotion-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 0}.admin-promotion-card dt{font-size:13px;color:var(--ui-muted);margin-bottom:10px}.admin-promotion-card dd{font-size:25px;line-height:1.3;font-variant-numeric:tabular-nums;margin:0}.admin-promotions>.subtle{font-size:14px;line-height:1.9}.admin-form{grid-template-columns:minmax(200px,1fr) 160px 90px!important}
.safety-accounts{display:grid;gap:24px;margin-top:30px}.safety-account{padding:26px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface)}.safety-account>header{display:flex;align-items:center;justify-content:space-between;gap:20px}.safety-account h2{font-size:24px;font-weight:500;margin:0}.safety-account header span{font-size:14px;color:var(--ui-secondary)}.safety-account>dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:27px 0}.safety-account dt{font-size:14px;color:var(--ui-muted);margin-bottom:10px}.safety-account dd{margin:0;font-size:21px;line-height:1.5}.safety-account>.subtle{font-size:14px;line-height:1.8}.safety-account form{display:grid;grid-template-columns:210px minmax(0,1fr) auto;align-items:end;gap:18px;border-top:1px solid var(--ui-line);padding-top:22px;margin-top:22px}.safety-account label{display:grid;gap:10px;font-size:14px;color:var(--ui-secondary)}.safety-account select,.safety-account textarea{width:100%;min-width:0;border:1px solid var(--ui-line-strong);border-radius:8px;background:var(--ui-inset);color:var(--ui-text);padding:12px;font-size:16px;line-height:1.5}.safety-account textarea{resize:vertical;min-height:72px}.safety-account form>.error{grid-column:1/-1;margin:0}.safety-account .button{min-height:46px}
.safety-history{margin-top:32px;padding:20px 24px;border:1px solid var(--ui-line);border-radius:13px;color:var(--ui-secondary);font-size:15px}.safety-history>summary{cursor:pointer;min-height:32px;line-height:1.8}.safety-history article{padding:20px 0;border-top:1px solid var(--ui-line);margin-top:12px}.safety-history article:last-child{padding-bottom:0}.safety-history header{display:flex;flex-wrap:wrap;gap:10px 25px;justify-content:space-between}.safety-history strong{font-size:15px;font-weight:500;color:var(--ui-text)}.safety-history time{font-size:13px}.safety-history p{font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0}
@media(max-width:800px){.admin-promotion-grid{grid-template-columns:1fr}.safety-account>dl{grid-template-columns:repeat(3,minmax(0,1fr))}.safety-account form{grid-template-columns:1fr}.safety-account>header{align-items:flex-start;flex-direction:column;gap:10px}.safety-account form>.button{justify-self:start}.admin-form{grid-template-columns:minmax(0,1fr) 150px!important}.admin-form .button{justify-self:start}.admin-form .review{grid-column:1/-1}.library-bundle{padding:24px}}
@media(max-width:600px){.official-bundles>.library-header{align-items:flex-start;flex-direction:column;gap:22px}.official-bundles .library-header .subtle{font-size:16px}.official-bundles>.bundle-benefits{gap:10px 18px;margin:15px 0 25px}.bundle-benefits{font-size:13px}.bundle-free{font-size:14px}.bundle-free p{font-size:14px}.bundle-included .section-top{gap:18px}.bundle-included .section-top p{font-size:14px}.bundle-included .section-top>span{white-space:nowrap}.package-offer-top{align-items:flex-start;gap:10px}.package-offer-top>span{font-size:14px}.package-offer-bottom{flex-direction:column;gap:7px;font-size:14px}.course-package-offer{padding:18px}.checkout-scope{padding:15px;font-size:14px}.bundle-checkout .checkout-single>span{font-size:14px}.library-bundle{padding:21px 18px}.library-bundle>header{align-items:flex-start;flex-direction:column;gap:10px}.library-bundle h2{font-size:24px;line-height:1.5}.library-bundle .library-item{grid-template-columns:65px minmax(0,1fr);gap:15px}.library-bundle .library-item img{width:65px}.library-bundle .library-item>.button{grid-column:2;justify-self:start}.library-other{margin:25px 0 35px}.library-orders .order-row{flex-direction:column;align-items:flex-start;gap:14px}.order-actions{justify-content:flex-start}.phone-code-row{gap:8px}.phone-code-row .button{min-width:112px;font-size:13px;padding:10px}.terms-bundles{grid-template-columns:1fr}.admin-form{grid-template-columns:1fr!important}.admin-section-heading{align-items:flex-start;flex-direction:column;gap:15px}.admin-promotion-card{padding:20px}.admin-promotion-card dl{gap:12px}.admin-promotion-card dt{font-size:12px}.admin-promotion-card dd{font-size:23px}.safety-account{padding:21px 18px}.safety-account>dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.safety-account dd{font-size:20px}.account-safety .library-header{align-items:flex-start;flex-direction:column;gap:20px}}
@media(prefers-reduced-motion:reduce){.official-bundle-preview img{transition:none}}

/* Keep desktop package browsing in cards while the narrow layout remains stacked. */
.catalog-bundle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:28px}
.catalog-bundle-grid>.bundle-strip:only-child{grid-column:1/-1}
html[data-theme] body .catalog-bundle-grid>.bundle-strip{min-width:0;gap:18px;padding:20px 22px!important;margin:0}
.catalog-bundle-grid .bundle-mark{display:none}
.catalog-bundle-grid .bundle-strip>div{gap:0;flex:1}
html[data-theme] body .catalog-bundle-grid .bundle-strip h2{font-size:20px;line-height:1.45;margin-bottom:7px}
.catalog-bundle-grid .bundle-strip p{font-size:14px;line-height:1.75}
.catalog-bundle-grid .bundle-strip>a{gap:15px;text-align:right;min-width:0}
.catalog-bundle-grid .bundle-strip>a>span{padding-left:15px;font-size:14px;white-space:nowrap}
html[data-theme] body .bundle-included>.bundle-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
@media(min-width:901px) and (max-width:1370px){.catalog-bundle-grid .bundle-strip>a{flex-direction:column;align-items:flex-end;gap:5px}.catalog-bundle-grid .bundle-strip>a>span{padding:0;border:0}}
@media(max-width:1100px){html[data-theme] body .bundle-included>.bundle-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.catalog-bundle-grid{grid-template-columns:1fr;gap:14px;margin-bottom:24px}}
@media(max-width:600px){html[data-theme] body .catalog-bundle-grid>.bundle-strip{align-items:flex-start;gap:18px;padding:20px!important}.catalog-bundle-grid .bundle-strip>div{width:100%}.catalog-bundle-grid .bundle-strip>a>span{padding:0;border:0}html[data-theme] body .bundle-included>.bundle-course-grid{grid-template-columns:1fr;gap:25px}}

.catalog-layout{grid-template-columns:286px minmax(0,1fr)}
.curriculum-title h2{font-size:20px}
.curriculum-title .text-button{font-size:15px}
.curriculum-volume>summary{font-size:17px;line-height:1.6;padding:17px 4px}
.curriculum-chapters{display:grid;gap:5px;padding-bottom:14px}
html[data-theme] body .curriculum-chapter-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:51px;padding:12px;text-align:left;border:0;border-radius:8px;background:transparent;color:var(--ui-secondary);font-size:18px;line-height:1.55;cursor:pointer;transition:background 150ms,color 150ms}
.curriculum-chapter-button>span{min-width:0}
.curriculum-chapter-button small{font-size:14px;color:var(--ui-muted);flex-shrink:0;font-variant-numeric:tabular-nums}
html[data-theme] body .curriculum-chapter-button:hover{color:var(--ui-text);background:var(--ui-raised)}
html[data-theme] body .curriculum-chapter-button.selected{color:var(--ui-text);background:var(--ui-selected);box-shadow:inset 2px 0 var(--ui-key)}
.curriculum-chapter-button:focus-visible,.chapter-course-cover:focus-visible,.chapter-course-more>summary:focus-visible{outline:2px solid var(--ui-key);outline-offset:3px}
.catalog-page .filter,.catalog-page .filter-row .filter{font-size:17px}
.catalog-page .filter-label,.catalog-page .sort-label{font-size:15px}
.catalog-result-row{margin-bottom:23px;align-items:flex-end}
.catalog-result-row .result-count{flex:1;min-width:0;font-size:17px}
.catalog-result-row .text-button{font-size:15px}
.chapter-results-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:4px 0 3px}
.chapter-results-title .eyebrow{font-size:14px;letter-spacing:.1em;color:var(--ui-muted);margin:0 0 7px}
.chapter-results-title h2{font-size:29px;line-height:1.5;font-weight:500;letter-spacing:-.02em;color:var(--ui-text);margin:0}
.chapter-results-count{font-size:16px;color:var(--ui-muted);white-space:nowrap;padding-bottom:5px}
html[data-theme] body .catalog-products .grid.chapter-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.chapter-course{min-width:0;display:grid;grid-template-columns:minmax(220px,.82fr) minmax(0,1.18fr);border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);overflow:hidden}
.chapter-course-cover{display:block;align-self:stretch;position:relative;min-width:0;min-height:270px;width:100%;border:0;padding:0;background:var(--ui-inset);cursor:pointer;overflow:hidden}
.chapter-course-cover img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform 600ms cubic-bezier(.22,.61,.36,1)}
@media(hover:hover){.chapter-course-cover:hover img{transform:scale(1.025)}}
.chapter-course-body{min-width:0;align-self:center;padding:30px 32px}
.chapter-course-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 18px;color:var(--ui-secondary);font-size:15px;line-height:1.7;margin-bottom:16px}
.chapter-course-meta>span:last-child{color:var(--ui-text);font-size:18px}
.chapter-course-body h3{font-size:28px;font-weight:500;line-height:1.55;letter-spacing:-.025em;color:var(--ui-text);margin:0 0 12px}
.chapter-course-description{font-size:18px;line-height:1.9;color:var(--ui-secondary);margin:0}
.chapter-course-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:25px}
.chapter-course-actions .button{font-size:16px;min-height:46px;padding:12px 18px}
.chapter-course-actions .text-button{font-size:15px;min-height:44px}
.chapter-course-content{grid-column:1/-1;min-width:0;border-top:1px solid var(--ui-line);padding:29px 32px 32px}
.chapter-course-content>h4{font-size:20px;color:var(--ui-text);font-weight:500;margin:0 0 22px;line-height:1.5}
.chapter-course-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 34px}
.chapter-course-module{min-width:0;border-top:1px solid var(--ui-line);padding-top:19px}
.chapter-course-module h5{font-size:20px;font-weight:500;line-height:1.6;color:var(--ui-text);margin:0 0 8px}
.chapter-course-module p{font-size:17px;line-height:1.85;color:var(--ui-secondary);margin:0}
.chapter-course-module .module-operation{font-size:16px;color:var(--ui-muted);margin-top:9px}
.chapter-course-more{margin-top:27px}
.chapter-course-more>summary{width:fit-content;cursor:pointer;font-size:17px;color:var(--ui-secondary);padding:10px 0;line-height:1.6}
.chapter-course-more[open]>.chapter-course-modules{margin-top:16px}
.catalog-products .product-card .card-description{font-size:17px}
.catalog-products .card-actions .button{font-size:16px}
.catalog-products .card-meta,.catalog-products .card-sale-status{font-size:15px}
.course-taxonomy strong{font-size:18px}.course-taxonomy p{font-size:17px}
html[data-theme] body .course-module h3{font-size:22px}
html[data-theme] body .course-module p{font-size:18px;line-height:1.85}
html[data-theme] body .course-module .module-operation{font-size:16px}
@media(max-width:1200px){.catalog-layout{grid-template-columns:260px minmax(0,1fr);gap:25px}.chapter-course{grid-template-columns:minmax(180px,.75fr) minmax(0,1.25fr)}.chapter-course-body{padding:25px}.chapter-course-body h3{font-size:26px}.chapter-course-content{padding:25px}.chapter-course-description{font-size:17px}.chapter-course-modules{gap:23px 26px}}
@media(min-width:901px) and (max-width:1100px){.chapter-course{grid-template-columns:minmax(0,1fr)}.chapter-course-cover{min-height:0;aspect-ratio:1.85}.chapter-course-modules{grid-template-columns:minmax(0,1fr)}}
@media(max-width:900px){.catalog-layout{grid-template-columns:minmax(0,1fr);gap:24px}.curriculum-mobile-toggle{font-size:19px;min-height:58px}.curriculum-volume>summary{font-size:17px}.chapter-course-body{padding:25px}.chapter-course-body h3{font-size:26px}.chapter-results-title h2{font-size:28px}}
@media(max-width:600px){.catalog-page .filter,.catalog-page .filter-row .filter{font-size:16px}.catalog-page .filter-label{font-size:14px}.catalog-result-row{align-items:flex-end;gap:12px;margin-bottom:20px;flex-wrap:nowrap}.catalog-result-row .result-count{font-size:17px}.chapter-results-heading{gap:12px;align-items:flex-start;flex-direction:column}.chapter-results-count{font-size:15px;padding:0}.chapter-results-title h2{font-size:27px}.chapter-course{grid-template-columns:minmax(0,1fr);border-radius:13px}.chapter-course-cover{min-height:0;aspect-ratio:1.85}.chapter-course-body{padding:23px}.chapter-course-body h3{font-size:26px}.chapter-course-description{font-size:17px}.chapter-course-actions{gap:10px;margin-top:22px}.chapter-course-actions .button{font-size:16px;padding:12px 15px}.chapter-course-content{padding:23px}.chapter-course-content>h4{font-size:20px;margin-bottom:18px}.chapter-course-modules{grid-template-columns:minmax(0,1fr);gap:22px}.chapter-course-module h5{font-size:20px}.chapter-course-module p{font-size:17px}.chapter-course-module .module-operation{font-size:16px}.course-taxonomy p{font-size:17px}html[data-theme] body .course-module h3{font-size:21px}html[data-theme] body .course-module p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.curriculum-chapter-button,.chapter-course-cover img{transition:none}}

/* Course-specific controls appear before content and purchase options. */
.course-operation-guide{min-width:0;border:1px solid var(--ui-line-strong);border-radius:16px;background:var(--ui-surface);padding:28px 30px;scroll-margin-top:calc(var(--header-height) + 22px);box-shadow:inset 0 1px 0 var(--ui-edge)}
.course-operation-guide>h2,.course-operation-guide>h4{font-size:25px;font-weight:500;letter-spacing:-.02em;line-height:1.5;color:var(--ui-text);margin:0 0 22px}
.operation-guide-keys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 34px;margin:0}
.operation-guide-key{min-width:0;border-top:1px solid var(--ui-line);padding-top:18px}
.operation-guide-key dt{display:flex;align-items:center;gap:10px;color:var(--ui-text);font-size:18px;font-weight:500;line-height:1.5;margin-bottom:9px}
.operation-guide-key dt svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.3;fill:none;flex-shrink:0}
.operation-guide-key dd{font-size:18px;line-height:1.85;color:var(--ui-secondary);margin:0;overflow-wrap:anywhere}
.operation-guide-extra{margin:23px 0 0;padding-left:1.2em;color:var(--ui-secondary);font-size:17px;line-height:1.85}
.operation-guide-extra li+li{margin-top:7px}
html[data-theme] body .operation-guide-browser{font-size:16px;line-height:1.8;color:var(--ui-secondary);border-top:1px solid var(--ui-line);padding-top:18px;margin:24px 0 0}
html[data-theme] body .course-introduction-lead{max-width:960px;font-size:19px;line-height:1.9;color:var(--ui-secondary);margin:26px 0}
.chapter-course-heading{grid-column:1/-1;min-width:0;padding:28px 30px 20px}
.chapter-course-heading .chapter-course-meta{margin-bottom:12px}
.chapter-course-heading h3{font-size:28px;line-height:1.55;font-weight:500;letter-spacing:-.025em;color:var(--ui-text);margin:0}
.chapter-course>.course-operation-guide{grid-column:1/-1;border-radius:0;border-left:0;border-right:0;box-shadow:none;background:var(--ui-inset)}
.chapter-course .course-operation-guide>h4{font-size:22px}
.chapter-course .chapter-course-body{align-self:start}
.classroom-operation-help{max-width:860px}
.classroom-operation-help .course-operation-guide{border:0;box-shadow:none;padding:0;background:transparent}
.classroom-operation-help .operation-guide-keys{grid-template-columns:1fr;gap:18px}
@media(max-width:1200px){.chapter-course .operation-guide-keys{grid-template-columns:1fr;gap:20px}.chapter-course-heading{padding:25px 25px 20px}.chapter-course>.course-operation-guide{padding:25px}}
@media(max-width:650px){.course-operation-guide{padding:22px;border-radius:13px}.course-operation-guide>h2,.course-operation-guide>h4{font-size:23px;margin-bottom:18px}.operation-guide-keys{grid-template-columns:1fr;gap:19px}.operation-guide-key{padding-top:16px}.operation-guide-key dt{font-size:18px}.operation-guide-key dd{font-size:17px;line-height:1.85}.operation-guide-extra{font-size:16px}.operation-guide-browser{font-size:15px!important;margin-top:20px!important}.course-introduction-lead{font-size:18px!important;margin:23px 0!important}.chapter-course-heading{padding:23px 23px 20px}.chapter-course-heading h3{font-size:26px}.chapter-course>.course-operation-guide{padding:23px}.classroom-operation-help .operation-guide-key dd{font-size:16px}}
