/* Instructor library and guided authoring, aligned with DEEP AIx. */
.account-name{font-size:13px;font-weight:650;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.header-actions{flex-wrap:wrap;row-gap:4px}.account-password{white-space:nowrap}
.library-hero .public-access-note{font-size:12px!important;line-height:1.6!important;color:#d5e5fa!important;margin-top:17px!important}
#library-modal:has(#password-form),#library-modal:has(#auth-form){max-width:490px}
#library-modal .auth-intro{color:var(--muted);line-height:1.7;margin:0 0 24px}
#library-modal .auth-help{font-size:12px;line-height:1.65;color:var(--muted);margin:15px 0}
#library-modal #password-rules{margin:-8px 0 20px}
#library-modal :is(#auth-form,#password-form) .field{margin-bottom:18px}
#library-modal :is(#auth-form,#password-form) input{font-size:16px}
#library-modal :is(#auth-form,#password-form) .form-error{margin:12px 0 18px}
#library-modal :is(#auth-form,#password-form) .button{min-height:46px}
.library-nav>button{padding:12px 0}.library-hero{margin-top:28px;padding:34px 40px;display:grid;grid-template-columns:1.6fr .8fr;gap:60px;align-items:center;border-radius:12px;background:linear-gradient(110deg,#003366,#173876 65%,#304c98);color:white}
.library-hero h1{font-size:clamp(32px,3.3vw,46px);color:white;max-width:650px;margin-bottom:14px;letter-spacing:-1.2px}
.library-hero .eyebrow{color:#c2dafa;font-size:10px;margin-bottom:14px}.library-hero p:not(.eyebrow){max-width:630px;font-size:16px;color:#e1ebfb;line-height:1.7;margin-bottom:0}
.library-hero .action-row{margin-top:24px;gap:12px}.hero-primary{background:white;color:#173876}.hero-primary:hover{background:#e7effb}.hero-secondary{border-color:#9fbbdf;color:white}.hero-secondary:hover{background:#ffffff12}
.library-brand img{display:block;width:100%;height:auto;padding:20px;background:white;border-radius:8px}.library-brand p{font-size:12px!important;line-height:1.75!important;margin-top:15px}
.library-path{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:25px 0;margin:0;border-bottom:1px solid var(--line);gap:24px}
.library-path li{display:flex;gap:14px;align-items:baseline}.library-path li>span{font-size:11px;color:var(--accent);font-variant-numeric:tabular-nums}.library-path strong{font-size:13px}.library-path small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.catalog-section{padding-top:32px}.catalog-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.catalog-title .eyebrow{font-size:10px;margin:0 0 7px}.catalog-title h2{font-size:26px;margin:0}.catalog-title>p{font-size:12px;color:var(--muted);margin:0}
.library-filters{display:grid;grid-template-columns:2fr 1.25fr 1fr 1fr 1fr;gap:12px;align-items:end}.library-filters label>span{font-size:11px;font-weight:650;display:block;margin-bottom:7px}.library-filters input,.library-filters select{font-size:12px;padding:10px 11px;min-height:43px}.search-field input{background:white}
.results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:18px;padding:0 0 10px}.results-heading p{font-size:12px;margin:0;font-weight:650}.results-heading>span{font-size:11px;color:var(--muted)}
.community-note{font-size:12px;color:#47617e;padding:11px 14px;background:#edf3fc;border-left:2px solid #9dbbe8;margin:18px 0 0}
.lesson-list{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.lesson-row{display:grid;grid-template-columns:28px 1fr auto;gap:20px;padding:25px 28px;border-bottom:1px solid var(--line)}.lesson-row:last-child{border-bottom:0}.lesson-index{font-size:11px;color:#71829b;font-variant-numeric:tabular-nums;padding-top:4px}
.lesson-byline{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted);margin-bottom:8px}.lesson-label{background:#edf3fc;color:#355b93;padding:2px 7px;border-radius:4px;font-size:10px}.visibility-label{font-size:10px;color:#596b82;border-left:1px solid #d6e0ed;padding-left:10px}
.lesson-row h2{font-size:21px;letter-spacing:-.35px;line-height:1.4;margin-bottom:8px}.lesson-row h2 button{font:inherit;text-align:left;padding:0;color:var(--navy)}.lesson-row h2 button:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.lesson-row-body>p{font-size:13px;color:var(--muted);max-width:740px;margin-bottom:13px}.lesson-metadata{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:11px;color:#50627a}.lesson-metadata span+span{position:relative}.lesson-metadata small{font-size:10px;color:#718097}
.lesson-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.lesson-tags span{font-size:10px;color:#476487;padding:2px 7px;border-radius:4px;background:#f3f6fa}
.lesson-row-actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px;justify-content:space-between;min-width:110px}.lesson-row-actions .text-button{padding:2px 0;font-size:12px;min-height:36px}
.save-lesson{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ccd7e6;background:white;border-radius:6px;color:#3e5475;min-height:39px;padding:7px 11px;font-size:12px;white-space:nowrap}.save-lesson:hover{background:#edf3fc;border-color:#9fb8df}.save-lesson.is-saved{background:#edf3fc;border-color:#9fb8df;color:#1e40af}.save-lesson.is-saved svg path{fill:#d0dffa}
.library-empty{padding:48px 30px;text-align:center;background:white;border:1px solid var(--line);border-radius:8px;margin-top:24px}.library-empty p{font-size:14px;color:var(--muted);max-width:600px;margin:0 auto 20px}.library-empty h2{font-size:24px}.library-loading{padding:60px 0;color:var(--muted)}
.lesson-detail-head{padding:24px 0 30px;border-bottom:1px solid var(--line)}.lesson-detail-head>.text-button{margin-bottom:16px}.lesson-detail-head h1{max-width:950px;font-size:38px;margin:10px 0 16px}.lesson-detail-head .lede{max-width:880px;font-size:15px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}.origin-note{font-size:12px;color:var(--muted);margin:16px 0 0}
.lesson-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start;padding-top:28px}.lesson-section{padding:26px 28px;background:white;border:1px solid var(--line);border-radius:8px;margin-bottom:20px}.lesson-section h2{font-size:24px;line-height:1.4}.lesson-section .eyebrow{font-size:10px;margin-bottom:9px}.lesson-section>p{font-size:14px}.lesson-section .micro{font-size:12px}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}
.lesson-sequence{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:18px}.lesson-sequence li{display:grid;grid-template-columns:150px 1fr;gap:15px;font-size:13px}.lesson-sequence strong{color:var(--navy)}.lesson-sequence span{color:var(--muted)}
.lesson-launch{position:sticky;top:20px;background:white;border:1px solid var(--line);border-top:3px solid var(--navy);padding:23px;border-radius:8px}.lesson-launch h2{font-size:23px;margin-bottom:13px}.lesson-launch>p{font-size:13px;color:var(--muted)}.lesson-launch .eyebrow{font-size:10px;margin-bottom:10px}.lesson-launch .micro{font-size:11px}.lesson-launch .field>span{font-size:12px}.lesson-launch select{font-size:12px}
.review-note{border-left:2px solid #a3b8d7;padding:11px 13px;background:#f4f7fc;font-size:12px;line-height:1.7;color:#4d607b}.review-note strong{display:block;font-weight:650;color:#35506e}
.variant-preview{border:1px solid var(--line);border-radius:6px;margin-top:16px;padding:0 18px 16px}.variant-preview>summary{padding:15px 0;font-size:14px;font-weight:650;cursor:pointer}.variant-preview:not([open]){padding-bottom:0}
.material-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px;border-top:1px solid var(--line);padding-top:20px;margin-top:7px}.material-columns h3{font-size:14px;letter-spacing:0;margin-bottom:9px}.material-columns p,.material-columns strong{font-size:12px;line-height:1.85}.material-columns details{margin:12px 0;font-size:12px}.material-columns summary{cursor:pointer;font-weight:600}.material-columns details p{margin-top:10px}.material-columns audio{width:100%;height:40px;margin:5px 0}.reference-details{font-size:12px;padding-top:16px;border-top:1px solid var(--line);margin-top:12px}.reference-details summary{font-weight:600;cursor:pointer}.reference-details dt{font-weight:650;margin-top:12px}.reference-details dd{margin-left:0;color:var(--muted)}.reference-details h4{margin:15px 0 4px}.reference-details p{margin-bottom:8px}
.editor-page{max-width:1080px;margin:0 auto;padding-top:32px}.editor-page-header .eyebrow{font-size:10px;margin-bottom:10px}.editor-page-header h1{font-size:33px;max-width:800px;margin-bottom:12px}.editor-page-header>p{font-size:14px;color:var(--muted)}
#lesson-editor{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-top:25px}#lesson-editor label{display:block;margin-bottom:18px;font-size:13px;font-weight:600}#lesson-editor label>span,#lesson-editor label>small{display:block;margin-bottom:7px}#lesson-editor label small{font-weight:400;font-size:12px;color:var(--muted)}#lesson-editor textarea{min-height:100px}#lesson-editor input[type=checkbox]{width:auto;margin-right:9px}#lesson-editor textarea,#lesson-editor input,#lesson-editor select{font-size:14px;font-weight:400}#lesson-editor fieldset{border:1px solid var(--line);border-radius:6px;margin:20px 0;padding:20px}#lesson-editor legend{font-size:14px;font-weight:650;padding:0 7px;color:var(--navy)}#lesson-editor details{margin:20px 0}#lesson-editor summary{cursor:pointer;font-size:13px;font-weight:650}#lesson-editor h2{font-size:25px}#lesson-editor h3{font-size:17px}#lesson-editor p{font-size:13px;color:var(--muted)}
.lesson-editor-steps,.editor-steps{display:flex;list-style:none;padding:0;margin:0;border-bottom:1px solid var(--line);background:#f6f9fd}.lesson-editor-steps>* ,.editor-steps>*{flex:1}.lesson-editor-steps button,.editor-steps button{width:100%;padding:17px 12px;font-size:12px;text-align:left}.lesson-editor-steps [aria-current],.editor-steps [aria-current],.editor-steps .current{background:#eaf1fb;color:var(--accent);box-shadow:inset 0 -3px var(--accent)}
.lesson-editor-body,.editor-step,.editor-content{padding:28px 32px}.lesson-editor-actions,.editor-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding:18px 25px;background:#f9fbfe}.lesson-editor-actions .primary,.editor-actions .primary{margin-left:auto}
.lesson-editor-grid,.editor-grid,.lesson-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.editor-validation,.form-error{color:#963c32;font-size:13px;line-height:1.7}.editor-validation{padding:14px 18px;background:#fff7f5;border:1px solid #eed2cb;border-radius:6px;margin:16px 0}.editor-validation ul{padding-left:20px;margin:8px 0 0}.form-error:empty{display:none}
.lesson-variant-controls,.variant-controls{display:flex;align-items:end;gap:14px;padding:18px 26px;border-bottom:1px solid var(--line);background:#fbfcfe}.lesson-variant-controls label,.variant-controls label{margin:0!important;flex:1}.editor-repeater-row{padding:16px;background:#f7f9fc;border:1px solid var(--line);border-radius:6px;margin:13px 0}.editor-repeater-row .text-button{color:#8b3e37}.editor-review{font-size:14px}.editor-review dt{font-weight:650;margin-top:12px}.editor-review dd{margin:3px 0 12px;color:var(--muted)}
#library-modal{max-width:900px;width:min(900px,calc(100vw - 40px));max-height:90vh;overflow:auto;padding:28px;border:1px solid var(--line);border-radius:10px;color:var(--ink)}#library-modal:has(#auth-form){max-width:480px}#library-modal::backdrop{background:#001d3d77}#library-modal .dialog-header{gap:20px}#library-modal .dialog-header h2{font-size:25px}#library-modal p{font-size:14px}#library-modal small{font-size:11px;color:var(--muted)}.how-list{padding-left:23px}.how-list li{font-size:14px;margin-bottom:16px}.how-list strong{display:block;color:var(--navy)}
@media(max-width:1100px){.library-filters{grid-template-columns:2fr 1fr 1fr}.search-field{grid-column:span 2}.library-hero{gap:35px}.lesson-detail-grid{grid-template-columns:minmax(0,1fr) 290px}.lesson-row{padding:22px;gap:14px}.library-path{gap:16px}.library-path strong{font-size:12px}}
@media(max-width:800px){.library-hero{padding:28px;grid-template-columns:1fr}.library-brand{display:none}.library-hero h1{font-size:36px;max-width:600px}.lesson-detail-grid{grid-template-columns:1fr}.lesson-launch{position:static;grid-row:1}.library-path{grid-template-columns:1fr;gap:12px;padding:20px 0}.library-path small{display:inline;margin-left:8px}.library-filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.catalog-title{align-items:start;flex-direction:column;gap:6px}.account-name{max-width:100px}.material-columns{gap:15px}.lesson-row{grid-template-columns:20px 1fr}.lesson-row-actions{grid-column:2;flex-direction:row;justify-content:flex-start;align-items:center;gap:20px}.lesson-detail-head h1{font-size:32px}.lesson-sequence li{grid-template-columns:130px 1fr}.editor-page-header h1{font-size:29px}}
@media(max-width:520px){.masthead .account-name{display:none}.library-nav{gap:8px}.library-nav>div{gap:18px}.library-nav button{font-size:12px}.library-hero{padding:24px}.library-hero h1{font-size:31px}.library-hero .eyebrow{font-size:9px}.library-hero p:not(.eyebrow){font-size:14px}.library-hero .action-row{align-items:stretch;flex-direction:column}.library-path small{display:block;margin-left:0}.library-filters{gap:10px}.library-filters input,.library-filters select{font-size:12px}.lesson-row{padding:19px 15px;gap:10px}.lesson-row h2{font-size:19px}.results-heading{align-items:start;flex-direction:column;gap:4px}.lesson-row-actions{gap:13px;flex-wrap:wrap}.lesson-byline{gap:7px}.lesson-metadata{gap:5px 12px}.lesson-detail-head h1{font-size:29px}.lesson-section{padding:21px}.lesson-section h2{font-size:21px}.material-columns{grid-template-columns:1fr}.lesson-sequence li{grid-template-columns:1fr;gap:3px}.lesson-launch{padding:21px}.detail-actions{gap:8px}.detail-actions .button{font-size:12px;padding:10px 13px}.lesson-editor-grid,.editor-grid,.lesson-form-grid{grid-template-columns:1fr}.lesson-editor-body,.editor-step,.editor-content{padding:21px}.lesson-editor-actions,.editor-actions{padding:16px;gap:8px}.lesson-editor-actions .primary,.editor-actions .primary{margin-left:0}.lesson-variant-controls,.variant-controls{padding:16px;flex-wrap:wrap}.lesson-editor-steps button,.editor-steps button{font-size:11px;padding:13px 9px}.editor-page-header h1{font-size:27px}#library-modal{padding:20px;width:calc(100vw - 24px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Guided authoring. These selectors do not alter the catalogue lesson rows. */
#lesson-editor .lesson-editor-heading{padding:22px 28px 0;margin:0;gap:15px;align-items:center}
#lesson-editor .lesson-editor-heading h1,#lesson-editor .lesson-editor-heading h2{font-size:20px;margin:0}
#lesson-editor .lesson-editor-heading .eyebrow{font-size:9px;margin-bottom:5px}
#lesson-editor .lesson-progress{padding:0 28px;margin:10px 0 20px}
#lesson-editor .lesson-step-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid var(--line);background:#f6f9fd}
#lesson-editor .lesson-step{padding:17px 14px;font-size:12px;line-height:1.5;text-align:left;min-height:58px}
#lesson-editor .lesson-step.is-active{color:var(--accent);background:#eaf1fb;box-shadow:inset 0 -3px var(--accent);font-weight:650}
#lesson-editor .lesson-section{border:0;border-radius:0;margin:0;padding:28px 32px}
#lesson-editor .lesson-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#lesson-editor .lesson-row{display:block;padding:20px;margin:16px 0;background:#f6f9fd;border:1px solid var(--line);border-radius:6px}
#lesson-editor .lesson-variant-bar{padding:20px;background:#f6f9fd;border:1px solid var(--line);border-radius:6px;margin-bottom:22px}
#lesson-editor .lesson-variant-bar>label{max-width:380px}#lesson-editor .lesson-variant-actions{flex-wrap:wrap;gap:9px;margin:0 0 10px}
#lesson-editor .lesson-variant-actions .button{font-size:12px;padding:9px 12px}
#lesson-editor .lesson-details{padding:17px 20px;border:1px solid var(--line);border-radius:6px}#lesson-editor .lesson-details>summary{margin-bottom:0}#lesson-editor .lesson-details[open]>summary{margin-bottom:18px}
#lesson-editor .lesson-prewrap{white-space:pre-wrap;overflow-wrap:anywhere}#lesson-editor .lesson-summary-item{padding:18px;border:1px solid var(--line);border-radius:6px;margin-bottom:15px}
#lesson-editor .lesson-checkbox{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7}#lesson-editor .lesson-checkbox input{flex:none;min-height:18px;margin:3px 0}
#lesson-editor .lesson-errors:not(:empty){margin:20px 28px 0;padding:16px 20px;background:#fff7f5;border:1px solid #eed2cb;color:#963c32;border-radius:6px;font-size:13px}
#lesson-editor .lesson-errors:empty{display:none}#lesson-editor .lesson-status{padding:0 28px;margin:14px 0 0}#lesson-editor .lesson-status:empty{display:none}
#lesson-editor .lesson-editor-actions{margin:0;border-radius:0;justify-content:flex-start}#lesson-editor .lesson-editor>p:last-child{padding:0 28px 18px;margin:0;background:#f9fbfe}
#lesson-editor audio{width:100%;max-width:480px}#lesson-editor .lesson-field{min-width:0}#lesson-editor .lesson-hint{margin-top:7px}
@media(max-width:700px){#lesson-editor .lesson-field-grid{grid-template-columns:1fr}#lesson-editor .lesson-step-nav{grid-template-columns:1fr 1fr}#lesson-editor .lesson-step{padding:13px;min-height:50px}#lesson-editor .lesson-section{padding:22px 18px}#lesson-editor .lesson-editor-heading{padding:20px 18px 0}#lesson-editor .lesson-row{padding:15px}#lesson-editor .lesson-details{padding:15px}#lesson-editor .lesson-variant-actions{flex-direction:column;align-items:stretch}}

.flagship-feature{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;background:#f0f5fb;border-top:4px solid #2253b5;padding:2.5rem;margin:1.5rem 0 3rem}.flagship-feature h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.14;max-width:23ch;margin:.8rem 0 1rem}.flagship-feature p:not(.eyebrow){line-height:1.65;max-width:65ch}.flagship-feature a.button,.lesson-launch a.button{display:inline-flex;text-decoration:none;align-items:center;justify-content:center}.flagship-route{margin:0;padding:0;list-style:none;align-self:center}.flagship-route li{display:grid;grid-template-columns:2.4rem 1fr;gap:.3rem 1rem;padding:1rem 0;border-bottom:1px solid #c8d6e9}.flagship-route li>span{grid-row:span 2;font-size:1.4rem;color:#315eb7}.flagship-route small{color:#4f6078;line-height:1.5}.workshop-inclusions{padding-left:1.2rem;line-height:1.6}.workshop-inclusions li{margin:.6rem 0}.lesson-launch a+a{margin-top:.7rem}@media(max-width:760px){.flagship-feature{grid-template-columns:1fr;padding:1.4rem;gap:1.4rem}.flagship-feature .action-row{align-items:stretch}.flagship-feature .action-row>*{width:100%}}
