:root{--course-bg:#06121f;--course-panel:rgba(12,31,48,.88);--course-panel2:#0b1d2d;--course-line:rgba(105,202,220,.17);--course-text:#edf9ff;--course-muted:#8fa9b8;--course-cyan:#58d9d9;--course-blue:#4d8ff0;--course-danger:#ff8191}
*{box-sizing:border-box}.courses-root{min-height:100dvh;padding:28px clamp(14px,4vw,64px) 64px;color:var(--course-text);background:radial-gradient(circle at 8% 0,rgba(42,125,169,.2),transparent 30rem),radial-gradient(circle at 96% 34%,rgba(23,150,158,.12),transparent 28rem),var(--course-bg);overflow-x:hidden}.courses-root button,.courses-root input,.courses-root textarea,.courses-root select{font:inherit}.courses-root h1,.courses-root h2,.courses-root h3,.courses-root p{margin-top:0}
.courses-hero,.course-card,.course-empty,.course-nav,.course-content,.course-tutor,.course-dialog{border:1px solid var(--course-line);background:var(--course-panel);box-shadow:0 18px 55px rgba(0,0,0,.19);backdrop-filter:blur(18px)}
.courses-hero{display:grid;grid-template-columns:1fr auto;gap:20px;padding:32px;border-radius:24px;align-items:end}.courses-back{color:#bcecef;text-decoration:none;font-size:13px}.eyebrow{color:var(--course-cyan);letter-spacing:.13em;font-size:10px;font-weight:850;margin:0 0 8px}.courses-hero h1{font-size:clamp(30px,4vw,46px);margin-bottom:8px}.courses-hero p:last-child,.course-card>p,.course-empty>p{color:var(--course-muted)}
.course-primary,.course-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:12px;padding:0 15px;font-weight:800;cursor:pointer;text-decoration:none}.course-primary{border:0;color:#01282d;background:linear-gradient(125deg,var(--course-cyan),#83ddd1)}.course-secondary{border:1px solid var(--course-line);background:#10283a;color:#dff8f8}.course-primary:disabled{opacity:.65;cursor:wait}.wide{width:100%;margin-top:14px}
.courses-section{margin-top:34px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.section-title h2{margin:0}.section-title>span{padding:6px 10px;border:1px solid var(--course-line);border-radius:999px;color:var(--course-muted)}.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.course-card{display:flex;flex-direction:column;min-height:220px;padding:21px;border-radius:19px}.course-card-top{display:flex;justify-content:space-between;align-items:center}.course-level{display:inline-flex;width:max-content;padding:6px 9px;border-radius:8px;background:rgba(79,198,201,.1);color:#9bf1ec;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.course-card h3{font-size:20px;margin:20px 0 9px}.course-card>p{font-size:13px;line-height:1.55}.mini-progress,.course-progress i{display:block;height:7px;overflow:hidden;border-radius:99px;background:#102c3c}.mini-progress span,.course-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--course-blue),var(--course-cyan))}.course-card-footer{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:auto;padding-top:15px;color:var(--course-muted);font-size:11px}.course-card-footer a{color:#a8f3ef;text-decoration:none}
.course-empty{padding:55px 24px;border-radius:20px;text-align:center}.empty-orbit,.flashcard-orbit{display:grid;place-items:center;width:55px;height:55px;margin:0 auto 14px;border:1px solid var(--course-line);border-radius:50%;color:var(--course-cyan);font-size:24px}
.course-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;background:rgba(1,8,14,.78);overflow:auto}.course-dialog{position:relative;width:min(760px,100%);padding:28px;border-radius:24px}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:transparent;color:white;font-size:27px;cursor:pointer}.field-wide{display:block;margin:18px 0;color:#cde0e9;font-size:13px;font-weight:750}.field-wide textarea,.field-wide input,.course-options select{width:100%;margin-top:7px;border:1px solid var(--course-line);border-radius:11px;background:#091c2b;color:white;padding:11px;outline:0}.field-wide textarea{min-height:88px;resize:vertical}.course-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.course-options label{color:#b5cbd5;font-size:12px;font-weight:750}
.course-creation-modal{overflow:hidden;background:radial-gradient(circle at 50% 38%,rgba(43,155,176,.16),transparent 30rem),rgba(1,8,14,.88)}
.course-creation-dialog{width:min(620px,100%);padding:38px 38px 32px;text-align:center;overflow:hidden}
.course-creation-dialog:before{content:"";position:absolute;inset:-35% -10% auto;height:260px;background:radial-gradient(ellipse at center,rgba(82,217,219,.11),transparent 68%);pointer-events:none}
.course-creation-dialog h2{position:relative;margin:7px 0 6px;font-size:clamp(25px,4vw,34px)}
.creation-topic{position:relative;max-width:500px;margin:0 auto 28px;color:var(--course-muted);font-size:13px;line-height:1.5}
.creation-orbit{position:relative;display:grid;place-items:center;width:82px;height:82px;margin:0 auto 22px;border:1px solid rgba(82,217,219,.22);border-radius:50%;background:radial-gradient(circle,rgba(82,217,219,.12),rgba(8,27,41,.72) 60%);box-shadow:0 16px 45px rgba(0,0,0,.2)}
.creation-orbit:before,.creation-orbit:after,.creation-orbit span,.creation-orbit i{content:"";position:absolute;border-radius:50%}
.creation-orbit:before{inset:-8px;border:1px solid rgba(82,217,219,.13);border-top-color:rgba(82,217,219,.62);animation:courseOrbitSpin 2.4s linear infinite}
.creation-orbit:after{inset:9px;border:1px solid rgba(77,143,240,.24);border-right-color:rgba(88,217,217,.74);animation:courseOrbitSpin 1.65s linear infinite reverse}
.creation-orbit span{width:7px;height:7px;top:-4px;background:var(--course-cyan);box-shadow:0 0 18px rgba(82,217,219,.45);animation:courseOrbitPulse 1.4s ease-in-out infinite}
.creation-orbit i{width:4px;height:4px;right:8px;bottom:11px;background:#87aef4;animation:courseOrbitPulse 1.7s ease-in-out infinite .3s}
.creation-orbit b{position:relative;z-index:2;color:#c7ffff;font-size:18px;letter-spacing:.08em}
.creation-orbit.complete:before,.creation-orbit.complete:after{animation-duration:.65s}.creation-orbit.complete b{font-size:0}.creation-orbit.complete b:after{content:"✓";font-size:25px}
.creation-progress-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 9px;color:#cde7ed;font-size:12px;text-align:left}
.creation-progress-head strong{color:#aef5ef;font-size:13px;font-variant-numeric:tabular-nums}
.creation-progress-track{position:relative;height:11px;border:1px solid rgba(102,200,219,.14);border-radius:999px;background:#071925;overflow:hidden;box-shadow:inset 0 1px 4px rgba(0,0,0,.34)}
.creation-progress-track span{position:absolute;inset:0 auto 0 0;min-width:4%;border-radius:inherit;background:linear-gradient(90deg,#417fd9,#56d9d8,#8be0d3);box-shadow:0 0 18px rgba(82,217,219,.24);overflow:hidden;transition:width .3s ease}
.creation-progress-track span:after{content:"";position:absolute;inset:0;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-130%);animation:courseProgressSweep 1.45s ease-in-out infinite}
.creation-logs{display:grid;gap:7px;max-height:180px;margin-top:22px;padding:15px 16px;border:1px solid rgba(105,202,220,.12);border-radius:14px;background:rgba(3,15,25,.62);overflow:auto;text-align:left}
.creation-log{display:grid;grid-template-columns:12px 1fr;gap:8px;align-items:start;color:#7995a5;font-size:11px;line-height:1.45;transition:color .2s ease}
.creation-log-dot{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#476172}
.creation-log.active{color:#d7eef2}.creation-log.active .creation-log-dot{background:var(--course-cyan);box-shadow:0 0 0 4px rgba(82,217,219,.08);animation:courseLogPulse 1s ease-in-out infinite}
.creation-log.done{color:#a3bdc8}.creation-log.done .creation-log-dot{background:#62caa6}.creation-log.failed{color:#ffb3bd}.creation-log.failed .creation-log-dot{background:var(--course-danger)}
.creation-lock-note{display:flex;justify-content:center;gap:8px;align-items:center;margin:17px 0 0;color:#718c9a;font-size:10px;line-height:1.45}.creation-lock-note span{color:var(--course-cyan)}
.creation-error-actions{margin-top:16px}.creation-error-actions[hidden]{display:none}.creation-error-actions .course-secondary{min-width:150px}
@keyframes courseOrbitSpin{to{transform:rotate(360deg)}}@keyframes courseOrbitPulse{50%{opacity:.35;transform:scale(.72)}}@keyframes courseProgressSweep{70%,100%{transform:translateX(330%)}}@keyframes courseLogPulse{50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.creation-orbit:before,.creation-orbit:after,.creation-orbit span,.creation-orbit i,.creation-progress-track span:after,.creation-log.active .creation-log-dot{animation:none}}
.plan-stats{display:flex;gap:8px;margin:18px 0}.plan-stats b{padding:7px 9px;border-radius:8px;background:rgba(82,217,219,.1);color:#a8f4ef;font-size:11px}.plan-tree{max-height:48vh;overflow:auto}.plan-tree section{padding:0 0 14px 14px;border-left:2px solid rgba(82,217,219,.25)}.plan-tree h3{margin:0}.plan-tree h3 span{margin-right:7px;color:var(--course-cyan)}.plan-tree p,.plan-tree li{color:var(--course-muted);font-size:12px}.plan-tree li{list-style:none;padding:3px 0}.plan-tree em{margin-right:7px;color:#a8f4ef;font-style:normal;font-size:9px}.action-stack{display:grid;gap:9px}.action-stack button{min-height:44px;border:1px solid var(--course-line);border-radius:11px;background:#10283a;color:white;text-align:left;padding:0 14px;cursor:pointer}.action-stack .danger{border-color:rgba(255,110,130,.28);color:#ffc1c9}
.course-player{display:grid;grid-template-columns:285px minmax(0,1fr);gap:16px;align-items:start;max-width:1600px;margin:0 auto}.course-nav,.course-content,.course-tutor{border-radius:19px}.course-nav{position:sticky;top:14px;padding:18px;max-height:calc(100dvh - 28px);overflow:auto}.course-nav-head{display:flex;justify-content:space-between;align-items:center}.dots,.module-more{border:0;background:transparent;color:#a8c3ce;cursor:pointer}.course-nav h2{font-size:19px;margin:18px 0 12px}.course-progress b{display:block;margin-bottom:7px;font-size:12px}.course-search{width:100%;height:39px;margin:15px 0 9px;border:1px solid var(--course-line);border-radius:10px;background:#091b29;color:white;padding:0 10px;outline:0}.course-search-results{display:none;position:absolute;z-index:15;left:16px;right:16px;max-height:350px;overflow:auto;padding:7px;border:1px solid var(--course-line);border-radius:12px;background:#081a29;box-shadow:0 20px 50px rgba(0,0,0,.35)}.course-search-results.open{display:block}.course-search-results button{display:block;width:100%;border:0;border-radius:8px;background:transparent;color:white;text-align:left;padding:9px;cursor:pointer}.course-search-results button:hover{background:#10283a}.course-search-results small,.course-search-results b,.course-search-results span{display:block}.course-search-results small{color:var(--course-cyan);font-size:9px}.course-search-results span{margin-top:3px;color:var(--course-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-tab{width:50%;height:36px;border:0;border-bottom:1px solid var(--course-line);background:transparent;color:var(--course-muted);cursor:pointer}.nav-tab.active{color:white;border-bottom-color:var(--course-cyan)}.module-list{margin-top:15px}.nav-module{margin-top:18px}.module-title-row{display:flex;gap:7px;align-items:flex-start}.nav-module h3{flex:1;margin:0 0 7px;color:#cce3ea;font-size:12px}.lesson-link{display:block;width:100%;margin:2px 0;border:0;border-radius:9px;background:transparent;color:#95aeba;text-align:left;padding:8px 9px;cursor:pointer}.lesson-link:hover,.lesson-link.active{background:rgba(82,217,219,.09);color:white}.lesson-link small{display:block;color:var(--course-cyan);font-size:8px}.lesson-link span{display:block;margin-top:2px}
.course-content{min-width:0;min-height:650px;padding:30px}.course-dashboard header>p:last-child,.library-view p{color:var(--course-muted);line-height:1.55}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.metric-grid article{padding:15px;border:1px solid var(--course-line);border-radius:14px;background:rgba(7,24,37,.56)}.metric-grid small,.metric-grid b{display:block}.metric-grid small{color:var(--course-muted);font-size:10px}.metric-grid b{margin-top:7px;font-size:22px}.dashboard-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dashboard-panels article{padding:18px;border:1px solid var(--course-line);border-radius:15px;background:rgba(7,24,37,.45)}.weak-topics{display:flex;flex-wrap:wrap;gap:7px}.weak-topics span{padding:6px 8px;border-radius:8px;background:rgba(255,150,100,.08);color:#ffd1b4;font-size:11px}.view-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:20px}
.lesson h1{font-size:clamp(26px,3vw,36px);margin:13px 0 24px}.course-paragraph{color:#cadbe4;font-size:15px;line-height:1.72}.course-callout{margin:17px 0;padding:15px 16px;border:1px solid var(--course-line);border-left:3px solid var(--course-cyan);border-radius:0 13px 13px 0;background:rgba(73,183,190,.07)}.course-callout.warning{border-left-color:#f5bf62;background:rgba(245,191,98,.06)}.course-callout.clinical_pearl{border-left-color:#65d49a}.course-callout p{margin:7px 0 0;color:#d6e7ec;line-height:1.6}.course-algorithm{counter-reset:steps;list-style:none;padding:0}.course-algorithm li{position:relative;margin:9px 0;padding:13px 13px 13px 44px;border:1px solid var(--course-line);border-radius:12px;background:#0b2030}.course-algorithm li:before{counter-increment:steps;content:counter(steps);position:absolute;left:12px;top:11px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:rgba(82,217,219,.15);color:#9bf1ec;font-size:11px}.course-table-wrap{max-width:100%;overflow:auto;margin:18px 0;border:1px solid var(--course-line);border-radius:13px}.course-table-wrap table{width:100%;border-collapse:collapse;min-width:520px}.course-table-wrap th,.course-table-wrap td{padding:11px;border-bottom:1px solid var(--course-line);text-align:left;vertical-align:top;font-size:12px}.course-table-wrap th{color:#a8f3ef;background:#0b2232}.course-comparison{display:grid;gap:8px;margin:17px 0}.comparison-head,.comparison-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:1px}.comparison-head>* ,.comparison-row>*{padding:11px;background:#0b2232}.comparison-row>*{background:#0a1c2a;color:#cadddf;font-size:12px}.comparison-card{padding:14px;border:1px solid var(--course-line);border-radius:12px}.comparison-card p{margin:5px 0 0;color:var(--course-muted)}.course-checkpoint{margin:17px 0;padding:13px;border:1px solid var(--course-line);border-radius:12px}.course-checkpoint summary{cursor:pointer;color:#baf1ee;font-weight:750}.course-checkpoint p{margin:10px 0 0;color:#cbdce3}.course-diagram{display:block;width:100%;padding:0;border:1px solid var(--course-line);border-radius:15px;overflow:hidden;background:#071925;color:white;cursor:zoom-in}.course-diagram img{display:block;width:100%;max-height:560px;object-fit:contain}.course-diagram span{display:block;padding:9px;color:var(--course-muted);font-size:11px}.lesson-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.lesson-placeholder{margin:20px 0;padding:24px;border:1px solid var(--course-line);border-radius:16px;background:linear-gradient(120deg,rgba(35,105,143,.17),rgba(39,186,172,.07))}.lesson-placeholder span{font-size:23px;color:var(--course-cyan)}.lesson-placeholder p,.course-empty-inline{color:var(--course-muted)}.flashcard-launch{text-align:center;padding:35px 18px;border:1px solid var(--course-line);border-radius:18px;background:rgba(82,217,219,.04)}.flashcard-launch p{max-width:500px;margin:0 auto 20px;color:var(--course-muted)}
.inline-flashcards{max-width:780px}.inline-flashcard{--flash-swipe-x:0px;appearance:none;width:100%;min-height:250px;display:flex;flex-direction:column;justify-content:center;padding:30px;border:1px solid var(--course-line);border-radius:18px;background:linear-gradient(145deg,rgba(20,64,90,.55),rgba(7,25,37,.92));color:inherit;text-align:left;cursor:pointer;touch-action:pan-y;user-select:none;transform:translateX(var(--flash-swipe-x));transition:transform .18s ease,border-color .18s ease,background .18s ease}.inline-flashcard.back{background:linear-gradient(145deg,rgba(18,92,88,.42),rgba(7,25,37,.92))}.inline-flashcard.swiping-left{border-color:rgba(255,129,145,.8);background:linear-gradient(145deg,rgba(112,32,46,.68),rgba(7,25,37,.92))}.inline-flashcard.swiping-right{border-color:rgba(91,220,151,.8);background:linear-gradient(145deg,rgba(20,103,81,.62),rgba(7,25,37,.92))}.inline-flashcard small{color:var(--course-cyan);letter-spacing:.12em;font-size:10px}.inline-flashcard p{font-size:clamp(19px,2.5vw,30px);line-height:1.45;margin:14px 0 0}.inline-flashcard-hint{display:block;margin-top:25px;color:var(--course-muted);font-size:12px;text-align:center}
.quiz-meta{color:var(--course-muted);font-size:12px}.quiz-question{margin:18px 0;padding:17px;border:1px solid var(--course-line);border-radius:14px}.quiz-question legend{padding:0 6px;font-weight:750;line-height:1.45}.quiz-question legend span{display:inline-grid;place-items:center;width:23px;height:23px;margin-right:8px;border-radius:50%;background:rgba(82,217,219,.13);color:#9ff1ed;font-size:10px}.quiz-question label{display:flex;gap:10px;align-items:flex-start;margin:8px 0;padding:10px;border:1px solid transparent;border-radius:10px;background:#0a1e2e;cursor:pointer}.quiz-question label:has(input:checked){border-color:rgba(82,217,219,.4)}.quiz-question.correct{border-color:rgba(91,220,151,.38)}.quiz-question.incorrect{border-color:rgba(255,129,145,.35)}.quiz-question .right-option{border-color:rgba(91,220,151,.45);background:rgba(91,220,151,.07)}.quiz-question .wrong-option{border-color:rgba(255,129,145,.4);background:rgba(255,129,145,.07)}.question-explanation{margin-top:12px;padding:12px;border-radius:10px;background:rgba(82,217,219,.05)}.question-explanation p{margin:5px 0;color:#d3e5e9}.question-explanation small{color:#f1b6bf}.quiz-score{display:flex;align-items:baseline;gap:10px;margin-top:18px;padding:18px;border:1px solid var(--course-line);border-radius:14px}.quiz-score b{font-size:30px;color:#9ff1ed}.quiz-score p{margin-left:auto;color:#f3c3a5}
.course-tutor{position:sticky;top:14px;display:flex;flex-direction:column;max-height:calc(100dvh - 28px);padding:17px}.tutor-head{display:flex;justify-content:space-between;gap:10px}.tutor-head strong{font-size:13px}.tutor-head button{display:none;border:0;background:transparent;color:white;font-size:23px}.tutor-history{flex:1;min-height:150px;max-height:360px;overflow:auto;margin:13px 0}.tutor-message{margin:8px 0;padding:10px;border-radius:11px;background:#0a2030}.tutor-message.user{margin-left:22px;background:rgba(75,144,232,.1)}.tutor-message small{color:var(--course-cyan);font-size:9px}.tutor-message p{margin:4px 0 0;color:#d5e7ec;font-size:12px;line-height:1.5;white-space:pre-wrap}.tutor-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tutor-actions button{border:1px solid var(--course-line);border-radius:8px;background:#102838;color:#bce9e9;padding:8px;text-align:left;font-size:10px;cursor:pointer}.course-tutor textarea{width:100%;min-height:75px;margin-top:10px;border:1px solid var(--course-line);border-radius:10px;background:#081b29;color:white;padding:10px;resize:vertical}.tutor-fab{display:none}.course-lightbox{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.9)}.course-lightbox img{max-width:96vw;max-height:92vh;object-fit:contain}.course-lightbox button{position:fixed;top:15px;right:18px;border:0;background:transparent;color:white;font-size:32px}
.courses-loading{display:grid;place-items:center;min-height:60vh;gap:12px;color:var(--course-muted)}.courses-loading span{width:34px;height:34px;border:3px solid var(--course-line);border-top-color:var(--course-cyan);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1120px){.course-player{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:760px){.courses-root{padding:14px 11px 55px}.courses-hero{grid-template-columns:1fr;padding:21px}.course-grid{grid-template-columns:1fr}.course-options{grid-template-columns:1fr}.course-player{grid-template-columns:1fr}.course-nav{position:static;max-height:none}.module-list{max-height:320px;overflow:auto}.course-content{min-height:450px;padding:20px 15px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-panels{grid-template-columns:1fr}.course-dialog{padding:24px 17px}.lesson h1{font-size:27px}.course-table-wrap{margin-left:-4px;margin-right:-4px}.quiz-score{display:block}.quiz-score p{margin:8px 0 0}.lesson-actions>*{width:100%}.view-head{display:block}.view-head button{margin-top:8px}}

.lesson-row{display:grid;grid-template-columns:minmax(0,1fr) 26px;align-items:center;gap:2px;border-radius:9px}.lesson-row .lesson-link{min-width:0}.element-more{border:0;background:transparent;color:#7893a1;cursor:pointer;padding:4px}.lesson-row:hover .element-more{color:#bce9e9}.nav-module[draggable=true],.lesson-row[draggable=true]{cursor:grab}.dragging{opacity:.45}.drag-over{outline:1px dashed rgba(88,217,217,.6);outline-offset:2px}
@media(max-width:760px){.nav-module[draggable=true],.lesson-row[draggable=true]{cursor:default}.element-more{color:#9fb7c1}}

.quiz-source{margin-top:10px;padding-top:10px;border-top:1px solid var(--course-line);color:#bcd7df;font-size:11px}.quiz-source a{color:#98eeea}.quiz-source small{display:block;margin-top:4px;color:var(--course-muted)}.wrong-reasons{margin:10px 0 0;padding-left:18px;color:#c9dce2;font-size:11px;line-height:1.55}.wrong-reasons li{margin:4px 0}

.metric-date{font-size:13px!important;line-height:1.35;color:#d9edf2}.field-wide select{width:100%;margin-top:7px;border:1px solid var(--course-line);border-radius:11px;background:#091c2b;color:white;padding:11px;outline:0}

.nav-module.search-highlight{outline:1px solid rgba(88,217,217,.55);outline-offset:6px;border-radius:10px;background:rgba(88,217,217,.045)}

.course-complete-pill{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid rgba(73,219,204,.28);border-radius:11px;background:rgba(25,155,145,.10);color:#b8f4ef;font-size:12px;font-weight:700}


/* Главная «Мои курсы»: лёгкая motion-система без фоновых запросов. */
.courses-hero-v2{
  position:relative;isolation:isolate;overflow:hidden;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,.46fr);gap:20px;
  padding:48px clamp(24px,5vw,62px) 30px;border-radius:30px;
  background:linear-gradient(122deg,rgba(13,32,69,.98),rgba(18,70,117,.93) 54%,rgba(23,113,138,.85));
  box-shadow:0 28px 75px rgba(5,21,53,.24);
}
.courses-hero-v2>*:not(.courses-aurora){position:relative;z-index:1}
.courses-hero-v2 .courses-back{grid-column:1/-1;width:max-content;margin-bottom:5px;color:rgba(237,248,255,.78)}
.courses-hero-v2 h1{max-width:720px;margin:0;color:#fff;font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.065em;line-height:.98}
.courses-hero-v2 h1 span{display:block;color:#82f0dc;font-weight:500}
.courses-hero-copy>p:not(.eyebrow){max-width:580px;margin:22px 0 0;color:rgba(237,248,255,.82);font-size:1.03rem;line-height:1.65}
.courses-hero-v2 .eyebrow{color:#8cffe6}
.courses-aurora{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.courses-aurora i{position:absolute;display:block;border-radius:999px;filter:blur(2px);opacity:.56;animation:courses-float 12s ease-in-out infinite}
.courses-aurora i:nth-child(1){width:330px;height:330px;right:-95px;top:-120px;background:radial-gradient(circle,rgba(104,243,205,.88),transparent 67%)}
.courses-aurora i:nth-child(2){width:270px;height:270px;left:38%;bottom:-180px;background:radial-gradient(circle,rgba(90,157,255,.72),transparent 67%);animation-delay:-4s}
.courses-aurora i:nth-child(3){width:130px;height:130px;right:31%;top:18%;border:1px solid rgba(167,255,238,.38);background:transparent;animation-delay:-8s}
.courses-hero-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.courses-hero-metrics span{padding:9px 12px;border:1px solid rgba(209,255,247,.18);border-radius:999px;background:rgba(5,22,55,.16);color:rgba(238,255,252,.82);font-size:.82rem;backdrop-filter:blur(7px)}
.courses-hero-metrics b{color:#fff;font-size:.96rem}
.courses-orbit-card{align-self:center;justify-self:end;width:min(100%,280px);padding:22px;border:1px solid rgba(208,255,245,.22);border-radius:25px;background:rgba(4,25,59,.24);box-shadow:inset 0 1px rgba(255,255,255,.15);text-align:center;backdrop-filter:blur(12px);animation:courses-rise .7s ease both}
.orbit-label{font-size:.67rem;letter-spacing:.13em;color:#9eeedc;font-weight:800}
.progress-orbit{width:146px;aspect-ratio:1;margin:14px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#83f2d8 calc(var(--progress) * 1%),rgba(255,255,255,.14) 0)}
.progress-orbit:before{content:"";position:absolute}
.progress-orbit>div{width:122px;aspect-ratio:1;display:grid;place-content:center;border-radius:50%;background:#143862;box-shadow:inset 0 0 25px rgba(80,170,255,.26)}
.progress-orbit b{display:block;font-size:1.55rem;color:#fff}
.progress-orbit small{display:block;margin-top:3px;color:#a9cadd}
.courses-orbit-card p{margin:0;color:rgba(238,250,255,.72);font-size:.78rem;line-height:1.45}
.courses-hero-action{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:-4px}
.courses-hero-action .course-primary{min-height:48px;padding-inline:22px;box-shadow:0 12px 28px rgba(3,16,45,.24)}
.courses-section-v2{margin-top:42px}
.courses-section-v2 .section-title{align-items:end}
.courses-section-v2 .section-title h2{margin:3px 0 0;font-size:clamp(1.35rem,2vw,1.8rem)}
.courses-section-v2 .section-title .eyebrow{margin:0}
.course-card-v2{position:relative;overflow:hidden;min-height:235px;animation:courses-rise .62s cubic-bezier(.2,.8,.2,1) var(--enter-delay) both}
.course-card-v2:hover{transform:translateY(-7px) rotate(-.25deg)}
.course-card-v2 .course-card-glow{position:absolute;width:150px;height:150px;right:-80px;top:-82px;border-radius:50%;background:radial-gradient(circle,rgba(58,195,190,.21),transparent 69%);transition:transform .35s ease}
.course-card-v2:hover .course-card-glow{transform:scale(1.35)}
.course-card-v2 h3{max-width:92%;font-size:1.25rem;line-height:1.14}
.course-card-v2 .mini-progress{height:7px;margin-top:25px;background:#e8eff9}
.course-card-v2 .mini-progress span{background:linear-gradient(90deg,#387ce8,#40b5a6);box-shadow:0 0 12px rgba(61,162,183,.4)}
.course-card-v2 .course-card-footer a{display:inline-flex;gap:6px;align-items:center;color:#126f7b;font-weight:800}
.course-card-v2 .course-card-footer a i{font-style:normal;transition:transform .2s ease}
.course-card-v2 .course-card-footer a:hover i{transform:translateX(4px)}
.course-empty-v2{grid-column:1/-1;padding:58px 24px;background:linear-gradient(135deg,#f9fcff,#effaf8)}
.course-nav-label{margin:18px 0 10px;color:var(--course-muted);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.course-dashboard-link{display:block;width:100%;padding:11px 12px;border:1px solid var(--course-line);border-radius:10px;background:rgba(82,217,219,.08);color:inherit;font:inherit;font-weight:750;text-align:left;cursor:pointer}.course-dashboard-link:hover,.course-dashboard-link:focus-visible{background:rgba(82,217,219,.18)}
.course-add-part{display:block;width:100%;margin:16px 0 2px;padding:12px;border:1px dashed #46bdbc;border-radius:11px;background:rgba(82,217,219,.08);color:inherit;font:inherit;font-weight:750;cursor:pointer}.course-add-part:hover,.course-add-part:focus-visible{background:rgba(82,217,219,.17)}.course-part-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:10px 0 20px}.course-part-types label{display:flex;align-items:center;gap:7px;padding:9px;border:1px solid var(--course-line);border-radius:9px;cursor:pointer}.course-part-types input{accent-color:#218c90}.course-part-types label:has(input:disabled){opacity:.55;cursor:not-allowed}
@keyframes courses-float{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-18px,18px,0) scale(1.08)}}
@keyframes courses-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:760px){
  .courses-hero-v2{grid-template-columns:1fr;padding:32px 22px 22px;border-radius:23px}
  .courses-hero-v2 h1{font-size:clamp(2.3rem,11vw,3.7rem)}
  .courses-orbit-card{justify-self:start;width:100%;display:grid;grid-template-columns:auto 1fr;column-gap:16px;text-align:left}
  .courses-orbit-card .orbit-label{grid-column:1/-1}
  .courses-orbit-card .progress-orbit{width:95px;margin:10px 0 0}
  .courses-orbit-card .progress-orbit>div{width:79px}
  .courses-orbit-card p{align-self:center}
  .courses-hero-action{justify-content:stretch}
  .courses-hero-action button{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .courses-aurora i,.courses-orbit-card,.course-card-v2{animation:none}
  .course-card-v2:hover{transform:none}
  .course-card-v2 .course-card-glow,.course-card-v2 .course-card-footer a i{transition:none}
}


/* Схемы курса: видимый статус ожидания и автоматическое обновление после генерации. */
.diagram-pending{display:flex;align-items:center;gap:20px;min-height:138px;padding:26px}
.diagram-pending .eyebrow{margin:0 0 5px}
.diagram-pending h3{margin:0;color:var(--course-text)}
.diagram-pending p:last-child{margin:7px 0 0}
.course-spinner{flex:0 0 auto;width:44px;height:44px;border:3px solid rgba(42,164,183,.2);border-top-color:var(--course-cyan);border-right-color:#5086e8;border-radius:50%;animation:course-spinner-spin .82s linear infinite}
@keyframes course-spinner-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.course-spinner{animation:none;border-top-color:var(--course-cyan);border-right-color:var(--course-cyan)}}
@media (max-width:520px){.diagram-pending{align-items:flex-start;padding:21px;gap:15px}.course-spinner{width:36px;height:36px}}


/* Подтверждение завершения элемента курса. */
.course-completion-dialog{width:min(440px,100%);padding:0;overflow:hidden;background:linear-gradient(145deg,#0b2437,#102e4a 62%,#0b1e35);border:1px solid rgba(113,239,219,.32);box-shadow:0 28px 80px rgba(0,0,0,.48);animation:course-completion-in .38s cubic-bezier(.2,.9,.25,1) both}
.course-completion{position:relative;overflow:hidden;padding:45px 32px 32px;text-align:center}
.course-completion:before{content:"";position:absolute;width:270px;height:270px;left:50%;top:-150px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(87,226,197,.27),transparent 67%);pointer-events:none}
.course-completion>*{position:relative;z-index:1}
.course-completion-mark{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;border:1px solid rgba(157,255,234,.75);border-radius:50%;background:linear-gradient(145deg,#2fbba4,#197c85);box-shadow:0 0 0 9px rgba(103,234,208,.09),0 15px 33px rgba(20,195,165,.22);color:white;font-size:37px;font-weight:800;animation:course-completion-mark .52s .16s cubic-bezier(.2,1.55,.45,1) both}
.course-completion .eyebrow{margin:0;color:#8af4dc}
.course-completion h2{margin:8px 0 12px;color:#fff;font-size:clamp(1.65rem,5vw,2.1rem)}
.course-completion p:not(.eyebrow){margin:0 auto 26px;max-width:320px;color:#bcd1df;line-height:1.58}
.course-completion .course-primary{min-height:47px}
@keyframes course-completion-in{from{opacity:0;transform:translateY(22px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes course-completion-mark{from{opacity:0;transform:scale(.45) rotate(-18deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media (prefers-reduced-motion:reduce){.course-completion-dialog,.course-completion-mark{animation:none}}


/* Карточка персонального AI-наставника в панели курса. */
.tutor-head{position:relative;display:block}
.tutor-identity{display:flex;align-items:center;min-width:0;gap:13px;padding:12px;border:1px solid rgba(99,219,207,.22);border-radius:18px;background:linear-gradient(125deg,rgba(23,77,101,.46),rgba(13,37,57,.72));box-shadow:inset 0 1px rgba(185,255,246,.08)}
.tutor-avatar{display:block;flex:0 0 auto;width:82px;height:82px;border:1px solid rgba(129,246,224,.55);border-radius:13px;object-fit:cover;object-position:center 25%;box-shadow:0 11px 25px rgba(5,12,29,.36);background:#0d2639}
.tutor-identity .eyebrow{margin-bottom:5px;color:#8df7e1;line-height:1.28}
.tutor-identity strong{display:block;color:#ecfbff;font-size:13px;line-height:1.38}
.tutor-head button{position:absolute;right:8px;top:7px;padding:3px}
@media(max-width:420px){.tutor-identity{gap:10px;padding:10px}.tutor-avatar{width:68px;height:68px;border-radius:11px}.tutor-identity .eyebrow{font-size:9px;letter-spacing:.09em}.tutor-identity strong{font-size:12px}}


/* Встроенный чат клинической задачи внутри курса. */
.clinical-case-loading{display:flex;align-items:center;gap:20px;min-height:150px}
.course-clinical-chat{max-width:860px}
.course-case-patient{display:flex;align-items:center;gap:13px;margin:20px 0 14px;padding:12px;border:1px solid var(--course-line);border-radius:16px;background:linear-gradient(135deg,rgba(44,116,142,.18),rgba(18,47,68,.48))}
.course-case-patient img,.course-case-patient>span{display:grid;place-items:center;width:52px;height:52px;flex:0 0 auto;border:1px solid rgba(105,230,214,.42);border-radius:14px;object-fit:cover;background:#0c2638}
.course-case-patient b{color:#eefbff}.course-case-patient p{margin:4px 0 0;color:var(--course-muted);font-size:12px}
.course-case-history{display:flex;flex-direction:column;gap:9px;min-height:190px;max-height:420px;overflow:auto;padding:5px 2px}
.course-case-message{max-width:86%;padding:11px 13px;border:1px solid var(--course-line);border-radius:14px;background:#0a2030}
.course-case-message.doctor{align-self:flex-end;background:rgba(60,132,199,.18);border-color:rgba(89,167,230,.28)}
.course-case-message small{color:var(--course-cyan);font-size:10px;font-weight:800}.course-case-message p{margin:4px 0 0;color:#dbeaf0;line-height:1.52;white-space:pre-wrap}
.course-case-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin-top:13px}
.course-case-composer textarea{min-height:58px;max-height:150px;width:100%;resize:vertical;border:1px solid var(--course-line);border-radius:12px;background:#081b29;color:white;padding:11px;font:inherit}
@media(max-width:560px){.clinical-case-loading{align-items:flex-start;gap:14px}.course-case-composer{grid-template-columns:1fr}.course-case-composer button{width:100%}.course-case-message{max-width:94%}}


/* Единый индикатор ожидания для материалов и фоновых действий курса. */
.lesson-placeholder.material-loading{display:flex;align-items:center;gap:20px;min-height:138px;padding:26px}
.material-loading .eyebrow{margin:0 0 5px}
.material-loading h3{margin:0;color:var(--course-text)}
.material-loading p:last-child{margin:7px 0 0}
.course-button-spinner,.course-inline-spinner{display:inline-block;flex:0 0 auto;border:2px solid rgba(10,42,57,.27);border-top-color:currentColor;border-radius:50%;animation:course-spinner-spin .82s linear infinite}
.course-button-spinner{width:14px;height:14px;margin-right:7px;vertical-align:-2px}
.course-inline-spinner{width:12px;height:12px;margin-right:7px;vertical-align:-1px;color:var(--course-cyan)}
.course-primary:disabled,.course-secondary:disabled{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:520px){.lesson-placeholder.material-loading{align-items:flex-start;padding:21px;gap:15px}}
@media(prefers-reduced-motion:reduce){.course-button-spinner,.course-inline-spinner{animation:none;border-top-color:currentColor}}


/* Крупная вертикальная карточка AI-наставника. */
.tutor-identity{display:block;padding:0;overflow:hidden;border-radius:20px}
.tutor-avatar{width:100%;height:228px;border:0;border-bottom:1px solid rgba(129,246,224,.3);border-radius:0;object-position:center 18%;box-shadow:none}
.tutor-copy{padding:15px 16px 17px}
.tutor-copy .eyebrow{margin:0 0 6px;font-size:10px;letter-spacing:.12em}
.tutor-copy strong{font-size:14px}
@media(max-width:1120px){.tutor-avatar{height:260px}}
@media(max-width:420px){.tutor-avatar{height:210px}.tutor-copy{padding:14px}.tutor-copy .eyebrow{font-size:9px}.tutor-copy strong{font-size:13px}}


/* Разбор теста: акцент на подсказке и чистый результат без радиокнопок. */
.question-explanation{border:1px solid rgba(91,220,151,.28);background:linear-gradient(135deg,rgba(28,139,108,.26),rgba(14,61,68,.66));box-shadow:inset 0 1px rgba(174,255,221,.08)}
.question-explanation>b{color:#b8f7d4}
.quiz-question[data-checked="1"] input[type="radio"]{display:none}
.quiz-question[data-checked="1"] label{cursor:default}
.quiz-question[data-checked="1"] .right-option{position:relative;border-color:rgba(105,238,171,.64);background:linear-gradient(90deg,rgba(42,169,112,.22),rgba(91,220,151,.07))}
.quiz-question[data-checked="1"] .right-option::before{content:"✓";display:grid;place-items:center;flex:0 0 auto;width:18px;height:18px;border-radius:50%;background:#45c982;color:#062b24;font-size:13px;font-weight:900;box-shadow:0 0 0 3px rgba(69,201,130,.12)}


/* Навигация курса: отдельные визуальные блоки вместо длинного списка. */
.course-nav{padding:14px;background:linear-gradient(155deg,rgba(12,39,57,.96),rgba(7,25,40,.98))}
.course-nav-head{padding:5px 5px 12px}
.course-nav-overview{position:relative;padding:14px;margin:0 0 15px;border:1px solid rgba(96,213,207,.19);border-radius:15px;background:linear-gradient(140deg,rgba(26,74,91,.3),rgba(11,36,52,.6))}
.course-nav-overview h2{margin:0 0 13px;font-size:16px;line-height:1.32;color:#ecfaff}
.course-nav-overview .course-progress b{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:#d8f1f1;font-size:12px}
.course-nav-overview .course-progress b::after{content:"пройдено";color:#80a7b3;font-size:10px;font-weight:600}
.course-nav-overview .course-search{margin:15px 0 0;height:42px;border-color:rgba(87,211,207,.25);border-radius:12px;background:rgba(5,28,43,.64)}
.course-nav .course-nav-label{margin:18px 6px 10px;color:#9cc7cf;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.course-nav .module-list{display:flex;flex-direction:column;gap:11px;margin:0}
.course-nav .nav-module{margin:0;padding:11px 9px 9px;border:1px solid rgba(91,177,189,.17);border-radius:14px;background:linear-gradient(145deg,rgba(20,57,76,.52),rgba(8,29,45,.46));box-shadow:inset 0 1px rgba(180,244,239,.035)}
.course-nav .module-title-row{align-items:center;min-height:26px;padding:0 4px 7px;border-bottom:1px solid rgba(104,196,198,.15)}
.course-nav .nav-module h3{margin:0;color:#e1f3f6;font-size:12px;line-height:1.35}
.course-nav .module-more{width:25px;height:25px;border-radius:7px;color:#9ec3cb}
.course-nav .module-more:hover{background:rgba(102,221,213,.11);color:#dffffb}
.course-nav .lesson-row{margin-top:6px;border:1px solid transparent;border-radius:10px;transition:border-color .18s ease,background .18s ease}
.course-nav .lesson-link{margin:0;padding:9px 8px;border-radius:9px;color:#acc5cd;line-height:1.35}
.course-nav .lesson-link small{margin-bottom:3px;color:#69d7d3;font-size:8px;font-weight:800;letter-spacing:.035em}
.course-nav .lesson-link span{margin:0;font-size:13px}
.course-nav .lesson-row:hover{border-color:rgba(89,211,207,.2);background:rgba(53,151,157,.075)}
.course-nav .lesson-link.active{background:linear-gradient(90deg,rgba(47,164,159,.24),rgba(27,91,111,.14));color:#f1ffff;box-shadow:inset 3px 0 #66ded7}
.course-nav .element-more{align-self:center;width:26px;height:31px;border-radius:7px;color:#78a4af}
.course-nav .element-more:hover{background:rgba(102,221,213,.11);color:#dffffb}
@media(max-width:760px){.course-nav{padding:12px}.course-nav-overview{padding:13px}.course-nav .lesson-link span{font-size:14px}}


/* Учебные элементы: чёткая визуальная иерархия на тёмном фоне. */
.lesson .course-table-wrap{border-color:rgba(79,193,200,.4);border-radius:16px;background:#0a2030;box-shadow:0 12px 28px rgba(0,0,0,.12)}
.lesson .course-table-wrap table{background:#0a2030}
.lesson .course-table-wrap th{padding:14px 13px;border-bottom-color:rgba(106,218,213,.3);background:linear-gradient(100deg,#123d51,#104353);color:#b9fbf2;font-size:12px;letter-spacing:.025em}
.lesson .course-table-wrap td{padding:13px;border-bottom-color:rgba(106,218,213,.16);background:rgba(11,35,51,.74);color:#d2e4ea;line-height:1.42}
.lesson .course-table-wrap tbody tr:nth-child(even) td{background:rgba(17,53,70,.78)}
.lesson .course-table-wrap tbody tr:hover td{background:rgba(32,96,105,.34)}
.lesson .course-callout{position:relative;overflow:hidden;padding:18px 19px;border-color:rgba(81,196,203,.34);border-left-width:4px;border-radius:0 16px 16px 0;background:linear-gradient(112deg,rgba(26,99,111,.3),rgba(10,40,57,.88));box-shadow:0 10px 24px rgba(0,0,0,.1)}
.lesson .course-callout b{display:flex;align-items:center;gap:8px;color:#eefdfd;font-size:14px}
.lesson .course-callout b::before{content:"✦";color:#6ce3dc;font-size:13px}
.lesson .course-callout.key_point{border-left-color:#58dcd6;background:linear-gradient(112deg,rgba(27,112,121,.38),rgba(10,42,59,.9))}
.lesson .course-callout.clinical_pearl{border-left-color:#62dfa4;background:linear-gradient(112deg,rgba(28,115,83,.32),rgba(10,47,57,.9))}
.lesson .course-callout.clinical_pearl b::before{content:"◆";color:#77e5ab}
.lesson .course-callout.warning{border-left-color:#f6c96e;background:linear-gradient(112deg,rgba(116,84,34,.32),rgba(50,40,23,.7))}
.lesson .course-callout.warning b::before{content:"!";display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#f6c96e;color:#513708;font-size:11px}
.lesson .course-algorithm{display:flex;flex-direction:column;gap:9px;margin:20px 0}
.lesson .course-algorithm li{margin:0;padding:15px 17px 15px 55px;border-color:rgba(72,187,194,.32);border-radius:14px;background:linear-gradient(100deg,rgba(17,57,76,.92),rgba(8,31,47,.94));box-shadow:0 7px 16px rgba(0,0,0,.09);color:#e0eff3;line-height:1.45}
.lesson .course-algorithm li::before{left:15px;top:50%;width:28px;height:28px;transform:translateY(-50%);background:linear-gradient(145deg,#1e7181,#145364);box-shadow:0 0 0 4px rgba(82,217,219,.09);color:#c4fff7;font-weight:800}
.lesson .course-checkpoint{padding:0;border-color:rgba(89,191,198,.34);border-radius:15px;background:#0c293c;overflow:hidden;box-shadow:0 8px 19px rgba(0,0,0,.08)}
.lesson .course-checkpoint summary{padding:15px 17px;color:#c4f5ef;background:linear-gradient(90deg,rgba(20,79,93,.68),rgba(13,49,67,.82));line-height:1.45}
.lesson .course-checkpoint[open] summary{border-bottom:1px solid rgba(104,215,209,.25)}
.lesson .course-checkpoint p{margin:0;padding:15px 17px 17px;color:#d7e8ed;line-height:1.6;background:rgba(7,28,43,.58)}
.lesson .comparison-card,.lesson .comparison-head>*,.lesson .comparison-row>*{border:1px solid rgba(80,189,197,.26);border-radius:11px;background:rgba(13,45,62,.86)}
.lesson .comparison-head>*{color:#b9f9f0;background:linear-gradient(120deg,#144152,#145061);font-weight:800}
.lesson .quiz-view{padding:clamp(20px,3vw,32px);border:1px solid rgba(77,184,191,.32);border-radius:22px;background:linear-gradient(145deg,rgba(11,38,56,.96),rgba(7,28,43,.96));box-shadow:0 18px 40px rgba(0,0,0,.12)}
.lesson .quiz-meta{margin:0 0 24px;padding:12px 14px;border-left:3px solid #5ddcd5;border-radius:0 10px 10px 0;background:rgba(35,104,114,.24);color:#b6d3db;line-height:1.45}
.lesson .quiz-question{padding:18px;border-color:rgba(76,184,191,.34);border-radius:17px;background:rgba(8,31,47,.76);box-shadow:inset 0 1px rgba(204,255,250,.035),0 8px 18px rgba(0,0,0,.08)}
.lesson .quiz-question legend{color:#eef9fb;font-size:15px}
.lesson .quiz-question legend span{width:27px;height:27px;background:linear-gradient(145deg,#176878,#135263);box-shadow:0 0 0 4px rgba(82,217,219,.08);color:#c1fff7;font-weight:800}
.lesson .quiz-question label{padding:12px 13px;border-color:rgba(60,144,158,.25);background:linear-gradient(100deg,rgba(15,52,70,.9),rgba(10,35,51,.92));color:#d9eaf0;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.lesson .quiz-question label:hover{border-color:rgba(101,224,215,.5);background:rgba(28,88,101,.88);transform:translateX(2px)}
.lesson .quiz-question label:has(input:checked){border-color:#61dcd5;background:linear-gradient(100deg,rgba(27,112,113,.45),rgba(17,69,83,.9));box-shadow:inset 3px 0 #62ded6}


/* Меню действий раздела и режим карточек со свайпами. */
.lesson-section-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 20px}
.lesson-section-head h1{margin:10px 0 0}
.lesson-section-menu{position:relative;flex:0 0 auto}
.lesson-settings{display:grid;place-items:center;width:39px;height:39px;border:1px solid rgba(96,218,211,.28);border-radius:12px;background:linear-gradient(145deg,rgba(20,74,92,.92),rgba(10,40,57,.98));color:#b8f8f2;font-size:18px;line-height:1;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.lesson-settings:hover,.lesson-settings[aria-expanded="true"]{border-color:rgba(105,238,222,.66);background:#155e6d;transform:rotate(18deg)}
.lesson-settings-popover{position:absolute;right:0;top:46px;z-index:20;display:none;min-width:250px;padding:7px;border:1px solid rgba(99,222,212,.3);border-radius:13px;background:#0b293b;box-shadow:0 18px 42px rgba(0,0,0,.38)}
.lesson-settings-popover.open{display:block;animation:course-menu-in .16s ease both}
.lesson-settings-popover button{width:100%;min-height:38px;border:0;border-radius:9px;background:transparent;color:#d9f5f2;padding:8px 10px;text-align:left;font:inherit;font-size:11px;font-weight:750;line-height:1.35;cursor:pointer}
.lesson-settings-popover button:hover{background:rgba(77,207,195,.13);color:#a9fff2}
.lesson-settings-popover button:disabled{cursor:wait;opacity:.74}
@keyframes course-menu-in{from{opacity:0;transform:translateY(-5px) scale(.97)}to{opacity:1;transform:none}}

.inline-flashcards{max-width:780px}
.inline-flashcards .quiz-meta{margin-bottom:15px}
.inline-flashcard-stage{position:relative;height:clamp(305px,46dvh,420px);isolation:isolate;overflow:hidden;border-radius:22px}
.inline-flashcard-stage::after{content:"";position:absolute;z-index:-1;left:14%;right:14%;bottom:4px;height:30px;border-radius:50%;background:rgba(0,0,0,.42);filter:blur(18px)}
.inline-flashcard-stage .inline-flashcard{position:absolute;inset:0;z-index:4;min-height:0;margin:0;border-color:rgba(98,209,209,.38);border-radius:21px;box-shadow:0 18px 50px rgba(0,0,0,.3);transform-origin:50% 85%;will-change:transform,opacity;touch-action:none}
.inline-flashcard-stage .inline-flashcard.dragging{cursor:grabbing;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.inline-flashcard-stage .inline-flashcard.face-flip{animation:courseFlashcardFlip .26s ease both}
@keyframes courseFlashcardFlip{0%{transform:perspective(900px) rotateY(0)}48%{transform:perspective(900px) rotateY(82deg)}52%{transform:perspective(900px) rotateY(-82deg)}100%{transform:perspective(900px) rotateY(0)}}
.inline-flashcard-stage .inline-flashcard small{font-weight:850}
.inline-flashcard-stage .inline-flashcard p{max-width:90%;font-size:clamp(20px,2.7vw,31px)}
.inline-flashcard-stage .inline-flashcard-next{z-index:2;inset:10px 12px 0;display:flex;opacity:.5;pointer-events:none;transform:scale(.965) translateY(8px);filter:saturate(.72)}
.inline-flashcard-stage .inline-flashcard-next p{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#91b1ba;font-size:18px}
.inline-flashcard-feedback{position:absolute;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:4px;opacity:0;transition:opacity .12s ease,transform .16s ease;border-radius:21px;pointer-events:none}
.inline-flashcard-feedback strong{font-size:18px;letter-spacing:-.02em}.inline-flashcard-feedback small{font-size:10px;opacity:.76}
.inline-feedback-unknown{inset:0 48% 0 0;align-items:flex-start;padding-left:22px;color:#ff9aae;background:linear-gradient(90deg,rgba(255,78,104,.24),rgba(255,78,104,.02));transform:translateX(-10px)}
.inline-feedback-known{inset:0 0 0 48%;align-items:flex-end;padding-right:22px;color:#6ce99b;background:linear-gradient(270deg,rgba(34,211,110,.24),rgba(34,211,110,.02));transform:translateX(10px)}
.inline-feedback-forgot{inset:54% 0 0;align-items:center;justify-content:flex-end;padding-bottom:20px;color:#f3cd6d;background:linear-gradient(0deg,rgba(246,196,83,.22),rgba(246,196,83,.02));transform:translateY(10px)}
.inline-flashcard-stage[data-intent="unknown"] .inline-feedback-unknown,.inline-flashcard-stage[data-intent="known"] .inline-feedback-known,.inline-flashcard-stage[data-intent="forgot"] .inline-feedback-forgot{opacity:1;transform:none}
.inline-flashcard-stage[data-intent="unknown"]>#inline-flashcard{border-color:rgba(255,105,140,.72);box-shadow:0 22px 60px rgba(255,78,104,.13)}
.inline-flashcard-stage[data-intent="known"]>#inline-flashcard{border-color:rgba(34,211,110,.68);box-shadow:0 22px 60px rgba(34,211,110,.12)}
.inline-flashcard-stage[data-intent="forgot"]>#inline-flashcard{border-color:rgba(246,196,83,.65);box-shadow:0 22px 60px rgba(246,196,83,.1)}
.inline-flashcard-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px;color:var(--course-muted);font-size:10.5px;font-weight:800}
.inline-flashcard-legend span{display:flex;align-items:center;justify-content:center;min-height:32px;border:1px solid var(--course-line);border-radius:999px;background:rgba(8,29,43,.8)}
.inline-flashcard-legend .unknown{color:#ff9aae;border-color:rgba(255,78,104,.2)}
.inline-flashcard-legend .forgot{color:#f3cd6d;border-color:rgba(246,196,83,.2)}
.inline-flashcard-legend .known{color:#6ce99b;border-color:rgba(34,211,110,.2)}
@media(max-width:520px){.lesson-section-head{gap:10px;margin-bottom:16px}.lesson-settings{width:36px;height:36px}.lesson-settings-popover{min-width:225px}.inline-flashcard-stage{height:clamp(290px,43dvh,380px);border-radius:18px}.inline-flashcard-stage .inline-flashcard,.inline-flashcard-feedback{border-radius:18px}.inline-flashcard-stage .inline-flashcard-next{inset:8px 9px 0}.inline-feedback-unknown{padding-left:15px}.inline-feedback-known{padding-right:15px}.inline-feedback-forgot{padding-bottom:15px}.inline-flashcard-legend{gap:5px;font-size:9.3px}.inline-flashcard-legend span{min-height:29px}}
@media(prefers-reduced-motion:reduce){.inline-flashcard-stage .inline-flashcard.face-flip{animation:none}}


/* Персональный наставник: карточка-переход и чат внутри открытого раздела. */
.course-tutor{display:block;padding:12px}
.course-tutor .tutor-identity{border-radius:16px}
.course-tutor .tutor-avatar{height:185px}
.course-tutor-note{margin:13px 3px 0;color:#aac4cd;font-size:12px;line-height:1.5}
.course-tutor .course-primary{margin-top:13px}
.course-element-tutor{scroll-margin-top:18px;margin-top:38px;padding:18px;border:1px solid rgba(98,217,209,.31);border-radius:20px;background:linear-gradient(145deg,rgba(14,53,70,.96),rgba(7,30,46,.98));box-shadow:0 18px 42px rgba(0,0,0,.16)}
.course-element-tutor>header{display:flex;align-items:center;gap:13px;padding-bottom:15px;border-bottom:1px solid rgba(108,220,211,.17)}
.element-tutor-avatar{display:block;flex:0 0 auto;width:58px;height:58px;border:1px solid rgba(126,244,222,.5);border-radius:15px;object-fit:cover;object-position:center 18%;background:#0d2639}
.course-element-tutor .eyebrow{margin:0 0 4px;color:#8df7e1}
.course-element-tutor h2{margin:0;color:#f0feff;font-size:18px}
.course-element-tutor header>div>p:last-child{margin:5px 0 0;color:#a7c2cb;font-size:12px;line-height:1.4}
.element-tutor-history{display:flex;flex-direction:column;gap:10px;min-height:108px;max-height:440px;overflow:auto;margin:15px 0;padding-right:3px}
.element-tutor-message{max-width:min(92%,720px);padding:11px 13px;border:1px solid rgba(92,181,190,.22);border-radius:14px;background:rgba(7,28,43,.78)}
.element-tutor-message.user{align-self:flex-end;border-color:rgba(80,153,225,.3);background:linear-gradient(145deg,rgba(39,100,152,.35),rgba(18,57,86,.55))}
.element-tutor-message.assistant{align-self:flex-start;background:linear-gradient(145deg,rgba(16,70,80,.44),rgba(8,37,53,.82))}
.element-tutor-message small{display:block;margin-bottom:5px;color:#7fe6dd;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.element-tutor-message.user small{color:#b6d8ff}
.element-tutor-message-content{color:#dcecf1;font-size:13px;line-height:1.58;overflow-wrap:anywhere}
.element-tutor-message-content p{margin:0 0 9px}.element-tutor-message-content p:last-child{margin-bottom:0}
.element-tutor-message-content h1,.element-tutor-message-content h2,.element-tutor-message-content h3{margin:12px 0 7px;color:#effeff;font-size:1.08em}
.element-tutor-message-content ul,.element-tutor-message-content ol{margin:7px 0;padding-left:20px}
.element-tutor-message-content blockquote{margin:8px 0;padding:7px 10px;border-left:2px solid #64d9d2;background:rgba(74,201,191,.08);color:#c4dfe5}
.element-tutor-message-content pre{max-width:100%;overflow:auto;padding:10px;border-radius:9px;background:#061c2a}
.element-tutor-message-content table{display:block;max-width:100%;overflow:auto;margin:9px 0;border-collapse:collapse}
.element-tutor-message-content th,.element-tutor-message-content td{padding:7px;border:1px solid rgba(107,202,204,.24);font-size:11px}
.element-tutor-message-content th{background:rgba(32,111,117,.35);color:#c7fff7}
.element-tutor-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding-top:13px;border-top:1px solid rgba(108,220,211,.14)}
.element-tutor-form textarea{width:100%;min-height:66px;max-height:160px;resize:vertical;border:1px solid rgba(96,207,202,.28);border-radius:13px;background:#071f30;color:#effcff;padding:11px;font:inherit;line-height:1.45}
.element-tutor-form .course-primary{min-width:112px}
@media(max-width:1120px){.course-tutor{display:none}.tutor-fab{display:grid;place-items:center;text-decoration:none}.course-player .tutor-fab{cursor:pointer}}
@media(max-width:560px){.course-element-tutor{margin-top:28px;padding:14px;border-radius:17px}.course-element-tutor>header{align-items:flex-start}.element-tutor-avatar{width:51px;height:51px;border-radius:13px}.course-element-tutor h2{font-size:16px}.element-tutor-history{max-height:380px}.element-tutor-message{max-width:96%;padding:10px 11px}.element-tutor-form{grid-template-columns:1fr}.element-tutor-form .course-primary{width:100%}}


/* Выбор модели и текущая стоимость ответа наставника. */
.element-tutor-controls{min-width:0}
.element-tutor-controls label{display:block;margin:0 0 8px;color:#9fc4cc;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.element-tutor-controls select{width:100%;height:36px;margin-top:5px;border:1px solid rgba(96,207,202,.28);border-radius:10px;background:#0a2a3d;color:#eafcff;padding:0 9px;font:inherit;font-size:12px;outline:0}
.element-tutor-controls select:focus{border-color:#6aded7;box-shadow:0 0 0 3px rgba(91,220,213,.1)}
.element-tutor-controls small{display:block;min-height:14px;margin-top:4px;color:#77dcd3;font-size:10px;letter-spacing:normal;text-transform:none}
.element-tutor-form textarea{margin-top:4px}
@media(max-width:560px){.element-tutor-controls label{font-size:9px}.element-tutor-controls select{height:39px}}


/* Встроенная клиническая задача: компактный интерфейс клинического тренажёра. */
.course-clinical-chat{max-width:920px}
.course-clinical-chat .lesson-section-head{margin-bottom:14px}
.course-case-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 13px;padding:11px 13px;border:1px solid rgba(72,159,223,.23);border-radius:14px;background:linear-gradient(110deg,rgba(13,48,76,.74),rgba(7,27,46,.9))}
.course-case-toolbar>p{margin:0;max-width:620px;color:#94b7ce;font-size:11px;line-height:1.45}
.course-case-progress-wrap{position:relative;flex:0 0 auto}
.course-case-progress-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-width:68px;height:36px;border:1px solid rgba(56,157,245,.48);border-radius:11px;background:linear-gradient(145deg,rgba(25,100,181,.34),rgba(9,31,57,.96));color:#e7f4ff;font:inherit;font-size:11px;font-weight:850;cursor:pointer}
.course-case-progress-toggle b{color:#79befd;transition:transform .18s ease}.course-case-progress-toggle[aria-expanded="true"] b{transform:rotate(180deg)}
.course-case-progress-menu{position:absolute;right:0;top:44px;z-index:30;width:min(322px,calc(100vw - 46px));padding:12px;border:1px solid rgba(76,149,226,.35);border-radius:16px;background:linear-gradient(155deg,rgba(8,25,46,.99),rgba(5,17,33,.995));box-shadow:0 20px 48px rgba(0,0,0,.48);backdrop-filter:blur(18px)}
.course-case-progress-menu>strong{display:block;color:#e7f3ff;font-size:12px}.course-case-progress-track{height:5px;margin:10px 0;border-radius:999px;background:#10233d;overflow:hidden}.course-case-progress-track span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#258dff,#3dd6b4);transition:width .25s ease}
.course-case-progress-list{display:grid;grid-template-columns:1fr 1fr;gap:5px}.course-case-progress-item{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 8px;border-radius:9px;background:#0a1b31;color:#6f8ba9;font-size:9.5px;line-height:1.25}.course-case-progress-item i{display:grid;place-items:center;width:16px;height:16px;flex:0 0 16px;border:1px solid #294b6d;border-radius:50%;font-style:normal;font-size:9px;color:#6984a2}.course-case-progress-item.done{background:rgba(29,112,90,.16);color:#b9ead9}.course-case-progress-item.done i{border-color:#38d9ad;background:rgba(56,217,173,.14);color:#82ebca}
.course-case-patient{display:grid;grid-template-columns:98px minmax(0,1fr);gap:15px;align-items:center;margin:0 0 16px;padding:14px;border-color:rgba(66,154,229,.35);border-radius:18px;background:linear-gradient(145deg,rgba(12,43,71,.98),rgba(7,24,42,.99));box-shadow:0 13px 31px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.035);position:relative;overflow:hidden}.course-case-patient::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#46bafa,#42dbb7,transparent)}
.course-case-patient-media{width:98px;height:98px;overflow:hidden;border:1px solid rgba(91,184,255,.38);border-radius:15px;background:#0a2038;box-shadow:0 8px 22px rgba(0,0,0,.24)}.course-case-patient-media img,.course-case-patient-media>span{display:grid;place-items:center;width:100%;height:100%;object-fit:cover}.course-case-patient-media>span{font-size:35px;background:radial-gradient(circle at 35% 25%,rgba(56,189,248,.22),transparent 45%),#0a2038}
.course-case-patient-body{min-width:0}.course-case-patient-body small{display:block;color:#69c8f8;font-size:9px;font-weight:900;letter-spacing:.12em}.course-case-patient b{display:block;margin-top:5px;color:#eef8ff;font-size:18px;line-height:1.2}.course-case-patient p{margin:7px 0 0;color:#94b2c7;font-size:11px;line-height:1.4}
.course-case-history{gap:13px;min-height:250px;max-height:min(55vh,560px);margin:0;padding:3px 2px 16px;scroll-behavior:smooth}.course-case-message{max-width:min(88%,720px);padding:10px 12px;border-color:rgba(77,135,184,.24);border-radius:6px 15px 15px 15px;background:#0c1b2e;box-shadow:0 7px 17px rgba(0,0,0,.08)}.course-case-message.doctor{border-color:rgba(47,133,234,.64);border-radius:15px 6px 15px 15px;background:linear-gradient(135deg,#145cbd,#176bd5)}.course-case-message small{display:block;margin-bottom:4px;color:#76bef4;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.course-case-message.doctor small{color:#d5eaff}.course-case-message p{margin:0;color:#e8f3fa;font-size:14px;line-height:1.52}
.course-case-dock{position:relative;margin:0 -2px;padding:10px 2px 4px;border-top:1px solid rgba(75,139,195,.18);background:linear-gradient(180deg,rgba(6,22,39,.72),#071625 26%);box-shadow:0 -15px 25px rgba(4,16,29,.35)}.course-case-composer{display:flex;align-items:flex-end;gap:7px;margin:0}.course-case-composer textarea{min-height:46px;height:46px;max-height:140px;resize:vertical;border-color:#294e75;border-radius:13px;background:#071527;color:#f2faff;padding:11px 12px;font-size:16px;line-height:1.4}.course-case-composer textarea:focus{border-color:#3a94fa;box-shadow:0 0 0 3px rgba(58,148,250,.1)}
.course-case-actions-toggle{height:46px;min-width:86px;border:1px solid rgba(67,141,222,.4);border-radius:13px;background:linear-gradient(145deg,rgba(14,43,76,.98),rgba(8,25,46,.99));color:#c4e0fb;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.course-case-actions-toggle[aria-expanded="true"],.course-case-actions-toggle:hover{border-color:rgba(61,163,255,.68);background:#123d6b}
.course-case-send{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border:1px solid rgba(75,169,255,.62);border-radius:50%;background:linear-gradient(145deg,#218cf6,#176bd8);color:#fff;box-shadow:0 8px 20px rgba(23,110,216,.28);font-size:17px;font-weight:900;cursor:pointer}.course-case-send:disabled{opacity:.58;cursor:wait}.course-case-send span{transform:translateX(1px)}
.course-case-actions-menu{position:absolute;left:2px;bottom:calc(100% + 8px);z-index:35;width:min(560px,calc(100vw - 48px));max-height:min(62vh,520px);overflow:auto;padding:12px;border:1px solid rgba(72,145,229,.35);border-radius:17px;background:linear-gradient(155deg,rgba(8,25,46,.995),rgba(5,17,33,.998));box-shadow:0 22px 54px rgba(0,0,0,.48);backdrop-filter:blur(18px)}.course-case-actions-menu header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-12px -12px 10px;padding:12px;border-bottom:1px solid rgba(77,142,211,.18);background:rgba(7,20,38,.96)}.course-case-actions-menu strong,.course-case-actions-menu small{display:block}.course-case-actions-menu strong{color:#edf7ff;font-size:13px}.course-case-actions-menu small{margin-top:2px;color:#7995b3;font-size:9.5px}.course-case-actions-menu header button{width:30px;height:30px;border:1px solid rgba(80,133,192,.34);border-radius:9px;background:#0b1e34;color:#a9c6e4;font-size:18px;cursor:pointer}.course-case-actions-menu>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.course-case-actions-menu [data-case-action]{display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:9px;min-height:48px;padding:8px 9px;border:1px solid rgba(65,122,182,.3);border-radius:12px;background:#091a2f;color:#dcecff;text-align:left;cursor:pointer}.course-case-actions-menu [data-case-action]:hover{border-color:rgba(59,154,249,.6);background:#0d2a4b}.course-case-actions-menu [data-case-action]>span{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(68,157,246,.3);border-radius:9px;background:rgba(35,113,190,.16);color:#9bd0ff;font-size:12px;font-weight:900}.course-case-actions-menu [data-case-action]>b{font-size:10.5px;line-height:1.25}
.course-case-finish{display:flex;align-items:center;justify-content:center;width:100%;height:38px;margin-top:8px;border:1px solid rgba(255,110,133,.36);border-radius:12px;background:rgba(126,31,48,.18);color:#ffc1ca;font:inherit;font-size:11px;font-weight:850;cursor:pointer}.course-case-finish:hover{border-color:rgba(255,118,140,.58);background:rgba(151,35,55,.28)}.course-case-finish:disabled{opacity:.58;cursor:wait}
@media(max-width:620px){.course-case-toolbar{align-items:flex-start}.course-case-toolbar>p{font-size:10px}.course-case-patient{grid-template-columns:78px minmax(0,1fr);gap:11px;padding:11px;border-radius:15px}.course-case-patient-media{width:78px;height:78px;border-radius:13px}.course-case-patient b{font-size:15px}.course-case-history{min-height:230px;max-height:52vh}.course-case-message{max-width:94%;font-size:13px}.course-case-composer{gap:6px}.course-case-actions-toggle{min-width:72px;padding:0 8px;font-size:9px}.course-case-actions-menu{width:calc(100vw - 36px);padding:10px}.course-case-actions-menu header{margin:-10px -10px 9px;padding:10px}.course-case-actions-menu>div{gap:6px}.course-case-actions-menu [data-case-action]{grid-template-columns:28px minmax(0,1fr);gap:7px;min-height:45px;padding:7px 8px}.course-case-actions-menu [data-case-action]>span{width:28px;height:28px}.course-case-actions-menu [data-case-action]>b{font-size:9.5px}.course-case-progress-menu{right:-1px}}
@media(max-width:380px){.course-case-toolbar>p{display:none}.course-case-actions-menu>div,.course-case-progress-list{grid-template-columns:1fr}.course-case-actions-toggle{min-width:65px}.course-case-send{width:44px;height:44px;flex-basis:44px}}


/* В Courses нет общего .hidden из тренажёра: скрываем оба всплывающих меню до нажатия. */
.course-clinical-chat .course-case-progress-menu.hidden,
.course-clinical-chat .course-case-actions-menu.hidden{display:none!important}


/* Наставник: аватар у каждого ответа и селектор модели внутри поля ввода. */
.element-tutor-message-row{display:flex;align-items:flex-end;gap:8px;max-width:min(92%,760px)}
.element-tutor-message-row.user{align-self:flex-end}
.element-tutor-message-row.assistant{align-self:flex-start}
.element-tutor-message-row.pending{opacity:.72}
.element-tutor-message-row .element-tutor-message{max-width:100%}
.element-tutor-message-avatar{display:block;flex:0 0 auto;width:30px;height:30px;border:1px solid rgba(126,244,222,.45);border-radius:50%;object-fit:cover;object-position:center 18%;background:#0d2639;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.element-tutor-form .element-tutor-controls{position:relative;display:block}
.element-tutor-form .element-tutor-controls textarea{display:block;min-height:76px;padding:12px 12px 43px}
.element-tutor-model-inline{position:absolute;right:9px;bottom:8px;display:flex;align-items:center;gap:7px;max-width:calc(100% - 18px);padding:3px 7px;border:1px solid rgba(101,209,207,.22);border-radius:9px;background:rgba(9,38,55,.94)}
.element-tutor-model-inline select{width:auto!important;max-width:min(220px,52vw);height:25px!important;margin:0!important;padding:0 20px 0 4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#a8d9e5!important;font-size:10px!important;font-weight:800;box-shadow:none!important}
.element-tutor-model-inline small{display:block;min-height:0!important;margin:0!important;color:#70d9cf!important;font-size:9px!important;white-space:nowrap}
.element-tutor-form .course-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.element-tutor-form .course-primary span{font-size:15px;line-height:1}
@media(max-width:560px){.element-tutor-message-row{max-width:96%;gap:6px}.element-tutor-message-avatar{width:27px;height:27px}.element-tutor-form .element-tutor-controls textarea{min-height:80px}.element-tutor-model-inline select{max-width:44vw}.element-tutor-model-inline small{font-size:8px!important}}


/* Чат наставника: спокойный однотонный фон и контрастные сообщения. */
.course-element-tutor{background:#0b3443!important;box-shadow:none!important}
.course-element-tutor>header{border-bottom-color:rgba(137,222,218,.24)}
.element-tutor-history{padding:14px 4px;background:#0b3443}
.element-tutor-message-row{width:100%}
.element-tutor-message-row.user{justify-content:flex-end}
.element-tutor-message.assistant{border-color:#2b7280!important;background:#123f4b!important;color:#f1fbfc;box-shadow:none}
.element-tutor-message.user{border-color:#327cb1!important;background:#124b72!important;color:#fff;box-shadow:none}
.element-tutor-message small{color:#8df1e4!important}
.element-tutor-message.user small{color:#d7ecff!important}
.element-tutor-message-content{color:#eef9fb!important;font-size:14px;line-height:1.62}
.element-tutor-message-content p,.element-tutor-message-content li{color:inherit}
.element-tutor-form{border-top-color:rgba(137,222,218,.24)}
.course-assistant-unavailable-dialog{max-width:430px!important}
.course-assistant-unavailable{text-align:center;padding:8px 4px}
.course-assistant-unavailable>div:first-child{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border:1px solid rgba(112,229,214,.58);border-radius:50%;background:#124d5b;color:#b9fff5;font-size:17px;font-weight:900}
.course-assistant-unavailable .eyebrow{margin:0;color:#91f4df}
.course-assistant-unavailable h2{margin:8px 0 10px;color:#efffff;font-size:23px}
.course-assistant-unavailable p:not(.eyebrow){margin:0 auto 22px;max-width:330px;color:#b8d3d8;line-height:1.55}


/* Карточка наставника: портретное фото 3:4 (ширина:высота). */
.course-tutor .tutor-avatar{height:auto!important;aspect-ratio:3 / 4;object-fit:cover;object-position:center 18%}


/* Карточки курса: одна активная карточка без фонового стека. */
.inline-flashcard-stage{background:#0b2b3c}
.inline-flashcard-stage .inline-flashcard-next{display:none!important}


/* Главная «Мои курсы»: карточка кликабельна целиком и показывает ход по разделам. */
.course-card-v2{cursor:pointer;min-height:300px}
.course-card-v2:focus-visible{outline:3px solid rgba(63,181,166,.58);outline-offset:3px}
.course-card-progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;color:#557183;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.course-card-progress-head b{color:#197582;font-size:10px;white-space:nowrap}
.course-card-v2 .mini-progress{margin-top:8px}
.course-card-modules{display:flex;flex-direction:column;gap:5px;margin-top:12px}
.course-card-module{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:5px 7px;border:1px solid rgba(47,118,142,.16);border-radius:8px;background:rgba(231,243,249,.72);color:#517082;font-size:10px;line-height:1.2}
.course-card-module>span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.course-card-module i{display:grid;place-items:center;width:16px;height:16px;flex:0 0 16px;border:1px solid rgba(33,117,144,.26);border-radius:50%;color:#39738b;font-size:9px;font-style:normal;font-weight:900}
.course-card-module b{color:#446777;font-size:9px}
.course-card-module.done{border-color:rgba(49,157,127,.23);background:rgba(209,246,232,.62);color:#28765f}.course-card-module.done i{border-color:rgba(47,167,132,.42);background:#39aa83;color:#fff}.course-card-module.done b{color:#23795f}
.course-card-more{padding-left:7px;color:#688291;font-size:9px;font-weight:700}
.course-card-v2 .course-card-footer{margin-top:12px}
@media(max-width:560px){.course-card-v2{min-height:0}.course-card-progress-head{margin-top:15px}.course-card-modules{margin-top:10px}}


/* Компактная карта прогресса на карточке курса. */
.course-card-v2{min-height:0!important}
.course-card-progress-visual{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;align-items:center;margin-top:18px;padding:12px;border:1px solid rgba(42,121,145,.17);border-radius:14px;background:linear-gradient(135deg,rgba(238,249,252,.88),rgba(221,241,246,.72))}
.course-overall-orbit{--course-progress:0;display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:conic-gradient(#27a8aa calc(var(--course-progress)*1%),#d1e4e9 0);box-shadow:0 7px 16px rgba(25,96,115,.12)}
.course-overall-orbit::before{content:"";position:absolute;width:66px;height:66px;border-radius:50%;background:#f5fcfd}.course-overall-orbit{position:relative}.course-overall-orbit>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;line-height:1}.course-overall-orbit b{color:#155e70;font-size:17px}.course-overall-orbit small{margin-top:5px;color:#7794a0;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.course-card-progress-copy{display:flex;flex-direction:column;min-width:0}.course-card-progress-copy>span{color:#62808e;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.course-card-progress-copy>b{margin-top:4px;color:#26566a;font-size:12px;line-height:1.25}.course-card-progress-copy>small{margin-top:7px;overflow:hidden;color:#6d8995;font-size:10px;white-space:nowrap;text-overflow:ellipsis}
.course-module-orbits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px}.course-module-orbit{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:6px;border:1px solid rgba(44,120,142,.15);border-radius:10px;background:rgba(245,252,253,.66);color:#5e7e8d}.course-module-orbit-ring{--module-progress:0;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:conic-gradient(#55adad calc(var(--module-progress)*1%),#d9e9ec 0)}.course-module-orbit-ring i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#f6fcfd;color:#397080;font-size:7px;font-style:normal;font-weight:900}.course-module-orbit b{overflow:hidden;font-size:9px;font-weight:750;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}.course-module-orbit.done{border-color:rgba(38,150,111,.25);background:rgba(220,247,236,.75);color:#21735c}.course-module-orbit.done .course-module-orbit-ring{background:conic-gradient(#35aa7e 100%,#d9e9ec 0)}.course-module-orbit.done .course-module-orbit-ring i{background:#35aa7e;color:#fff}.course-module-orbit-more{display:grid;place-items:center;min-height:39px;border:1px dashed rgba(46,115,137,.24);border-radius:10px;color:#5d7d8b;font-size:9px;font-weight:800}
.course-card-v2 .course-card-footer{margin-top:14px}
@media(max-width:700px){.course-module-orbits{grid-template-columns:repeat(2,minmax(0,1fr))}.course-card-progress-visual{grid-template-columns:78px minmax(0,1fr)}.course-overall-orbit{width:74px;height:74px}.course-overall-orbit::before{width:60px;height:60px}}


/* Тёмная палитра прогресса: карточки не должны выбеливаться на фоне курса. */
.course-card-v2{background:linear-gradient(145deg,#0d2637 0%,#0a2030 72%,#0b3340 100%)!important;border-color:rgba(75,190,207,.23)!important;box-shadow:0 14px 32px rgba(0,0,0,.18)!important}
.course-card-v2 h3{color:#effbff!important}.course-card-v2>p{color:#a9c7d3!important}.course-card-v2 .course-card-top>b{color:#dbfbff!important}.course-card-v2 .course-level{background:rgba(48,191,188,.14)!important;color:#8ef5e8!important}
.course-card-progress-visual{border-color:rgba(73,203,207,.28)!important;background:linear-gradient(135deg,rgba(15,55,70,.98),rgba(10,37,52,.98))!important;box-shadow:inset 0 1px rgba(157,255,246,.035)}
.course-overall-orbit{background:conic-gradient(#59e3d6 calc(var(--course-progress)*1%),#1d5264 0)!important;box-shadow:0 7px 18px rgba(0,0,0,.24)!important}.course-overall-orbit::before{background:#102e40!important}.course-overall-orbit b{color:#b3fff3!important}.course-overall-orbit small{color:#7db2be!important}
.course-card-progress-copy>span{color:#7ac9ce!important}.course-card-progress-copy>b{color:#e2f9fc!important}.course-card-progress-copy>small{color:#a1c5cf!important}
.course-module-orbit{border-color:rgba(74,181,198,.24)!important;background:rgba(10,43,57,.96)!important;color:#c1dce3!important}.course-module-orbit b{color:#bfd9e1!important}.course-module-orbit-ring{background:conic-gradient(#50d7d1 calc(var(--module-progress)*1%),#244e60 0)!important}.course-module-orbit-ring i{background:#102e40!important;color:#a7dce2!important}.course-module-orbit.done{border-color:rgba(64,211,157,.38)!important;background:rgba(23,83,74,.9)!important;color:#bff4db!important}.course-module-orbit.done b{color:#c7f8e2!important}.course-module-orbit.done .course-module-orbit-ring{background:conic-gradient(#42d79f 100%,#244e60 0)!important}.course-module-orbit.done .course-module-orbit-ring i{background:#19835f!important;color:#fff!important}.course-module-orbit-more{border-color:rgba(83,181,197,.34)!important;color:#8ebbc5!important;background:rgba(8,35,50,.5)}
.course-card-v2 .course-card-footer{border-top-color:rgba(80,181,195,.18)!important}.course-card-v2 .course-card-footer span{color:#8fb5c1!important}.course-card-v2 .course-card-footer a{color:#72e4da!important}


/* Производительность «Моих курсов»: статичный фон и изоляция крупных карточек. */
.courses-hero-v2,.course-card-v2{backdrop-filter:none!important}
.courses-hero-v2{background:linear-gradient(116deg,#102a55 0%,#10486e 58%,#127e88 100%)!important}
.courses-aurora i{animation:none!important;filter:none!important;opacity:.32!important}
.course-card-v2{contain:layout paint style}
.course-card-v2 .course-card-glow{will-change:auto}
.course-player .course-nav,.course-player .course-content,.course-player .course-tutor{backdrop-filter:none}
.module-list{content-visibility:auto;contain-intrinsic-size:auto 900px}
@media(prefers-reduced-motion:no-preference){.course-card-v2{animation-duration:.36s!important}}


/* Полный Markdown в ответах пациента и наставника внутри курса. */
.course-case-message-content{color:#e8f3fa;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.course-case-message-content>p{margin:0 0 10px}.course-case-message-content>p:last-child{margin-bottom:0}
.course-case-message-content h1,.course-case-message-content h2,.course-case-message-content h3{margin:12px 0 8px;color:#f3fcff;line-height:1.28}.course-case-message-content h1{font-size:1.3em}.course-case-message-content h2{font-size:1.16em}.course-case-message-content h3{font-size:1.06em}
.course-case-message-content strong{color:#fff;font-weight:800}.course-case-message-content ul,.course-case-message-content ol{margin:8px 0;padding-left:21px}.course-case-message-content li+li{margin-top:4px}.course-case-message-content blockquote{margin:10px 0;padding:8px 11px;border-left:3px solid #58d9c7;border-radius:0 9px 9px 0;background:rgba(76,202,187,.1);color:#cce9e5}.course-case-message-content code{padding:1px 5px;border-radius:5px;background:rgba(5,18,34,.58);color:#b7fcf2;font-size:.9em}.course-case-message-content pre{max-width:100%;overflow:auto;margin:10px 0;padding:10px;border-radius:10px;background:#071524}.course-case-message-content .table-scroll{max-width:100%;margin:11px 0;overflow:auto;border:1px solid rgba(84,177,210,.28);border-radius:10px}.course-case-message-content table{width:max-content;min-width:100%;border-collapse:collapse;background:#0a2235;font-size:12px}.course-case-message-content th,.course-case-message-content td{padding:8px 10px;border-right:1px solid rgba(93,165,196,.2);border-bottom:1px solid rgba(93,165,196,.2);text-align:left;vertical-align:top}.course-case-message-content th{background:#12415a;color:#c4fff4;font-weight:800}.course-case-message-content tr:last-child td{border-bottom:0}.course-case-message-content th:last-child,.course-case-message-content td:last-child{border-right:0}
.element-tutor-message-content .table-scroll{max-width:100%;margin:10px 0;overflow:auto;border:1px solid rgba(102,211,205,.3);border-radius:10px}.element-tutor-message-content table{min-width:100%;border-collapse:collapse;background:#0b3542}.element-tutor-message-content th,.element-tutor-message-content td{padding:8px 10px;border:1px solid rgba(112,217,210,.2);text-align:left;vertical-align:top}.element-tutor-message-content th{background:#15515d;color:#c5fff5}


/* Встроенные карточки: состояние интервального обучения. */
.inline-flashcards-status{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.inline-flashcards-status span{padding:6px 9px;border:1px solid rgba(84,196,196,.22);border-radius:999px;background:rgba(11,47,61,.72);color:#a8cbd1;font-size:10px;font-weight:700}.inline-flashcards-status b{color:#8ff2df}.flashcards-session-complete{max-width:620px;margin:34px auto;padding:30px;text-align:center;border:1px solid rgba(81,213,179,.34);border-radius:20px;background:linear-gradient(145deg,rgba(14,67,69,.84),rgba(8,39,55,.94));box-shadow:0 18px 42px rgba(0,0,0,.2)}.flashcards-session-complete>div{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 15px;border-radius:50%;background:#1c9b7c;color:#fff;font-size:28px;font-weight:900;box-shadow:0 0 0 8px rgba(57,211,168,.1)}.flashcards-session-complete h2{margin:0;color:#efffff}.flashcards-session-complete p{max-width:440px;margin:10px auto 20px;color:#b9d6dc;line-height:1.55}


/* Публикация и каталог курсов. */
.course-card-v2{position:relative}
.course-card-v2 .course-card-top{padding-right:42px}
.course-card-settings{position:absolute;top:14px;right:14px;z-index:8;display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid rgba(93,204,210,.28);border-radius:10px;background:rgba(8,34,49,.9);color:#9adbdc;font:inherit;font-size:15px;line-height:1;cursor:pointer;box-shadow:0 5px 14px rgba(0,0,0,.18);transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}
.course-card-settings:hover{transform:rotate(18deg);border-color:rgba(102,234,221,.55);background:#104456;color:#d4fffa}
.course-card-settings:focus-visible{outline:2px solid rgba(104,235,222,.75);outline-offset:2px}
.course-published-badge{display:inline-flex;align-items:center;width:max-content;margin:9px 0 -2px;padding:5px 8px;border:1px solid rgba(66,210,163,.28);border-radius:999px;background:rgba(29,139,104,.15);color:#93f4d1;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.course-settings-status{margin:7px 0 20px;color:#8fb0bd;font-size:12px;line-height:1.5}
.course-settings-actions{display:grid;gap:9px}
.course-settings-actions .course-primary,.course-settings-actions .course-danger-action{width:100%;min-height:43px}
.course-danger-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,104,126,.42);border-radius:12px;background:rgba(118,26,43,.18);color:#ffc2cc;font:inherit;font-size:11px;font-weight:850;cursor:pointer}
.course-danger-action:hover:not(:disabled){border-color:rgba(255,114,136,.68);background:rgba(145,31,51,.3)}
.course-danger-action:disabled{opacity:.58;cursor:wait}

.published-courses-section{margin-top:8px;padding-bottom:46px}
.published-section-title{align-items:flex-end}
.published-course-search{display:flex;align-items:center;gap:9px;max-width:620px;margin:0 0 18px;padding:0 13px;border:1px solid rgba(80,186,199,.2);border-radius:13px;background:rgba(8,34,48,.68)}
.published-course-search>span{color:#70cfd1;font-size:18px}
.published-course-search input{width:100%;height:44px;border:0!important;outline:0!important;background:transparent!important;color:#e9fbfd!important;font:inherit;font-size:12px;box-shadow:none!important}
.published-course-search input::placeholder{color:#6e929f}
.course-card-public{cursor:default!important;min-height:0!important}
.course-card-public .course-card-top{padding-right:0}
.course-public-label{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid rgba(62,211,164,.28);border-radius:999px;background:rgba(26,133,99,.15);color:#8df0cd;font-size:8px;font-weight:900;letter-spacing:.07em}
.course-public-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:18px;padding:12px;border:1px solid rgba(71,178,193,.2);border-radius:12px;background:rgba(9,42,56,.7)}
.course-public-meta span{min-width:0;color:#c3dce2;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.course-public-meta b{display:block;margin-bottom:4px;color:#6ebfc6;font-size:8px;letter-spacing:.07em;text-transform:uppercase}
.course-public-topic{margin-top:10px;padding:7px 9px;border-radius:9px;background:rgba(82,190,190,.07);color:#88aeb8;font-size:9px;line-height:1.35}
.course-card-public .course-card-footer strong{color:#71ddd4;font-size:9px;font-weight:850}
.published-empty{grid-column:1/-1}
@media(max-width:560px){.course-card-settings{top:11px;right:11px}.published-course-search{max-width:none}.course-public-meta{grid-template-columns:1fr}}


/* Переключатель День / Ночь только внутри открытого курса. */
.course-player-toolbar{
  grid-column:1/-1;position:sticky;top:8px;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:52px;padding:7px 9px 7px 11px;border:1px solid rgba(91,196,207,.22);border-radius:16px;
  background:rgba(7,24,37,.9);box-shadow:0 14px 34px rgba(0,0,0,.18);backdrop-filter:blur(18px)
}
.course-home-button{display:inline-flex;align-items:center;gap:9px;min-height:36px;padding:0 12px;border:1px solid rgba(102,210,214,.2);border-radius:11px;background:rgba(18,53,70,.72);color:#d9f6f7!important;text-decoration:none!important;font-size:11px;font-weight:850;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.course-home-button span{color:#69dfda;font-size:16px}.course-home-button:hover{transform:translateY(-1px);border-color:rgba(111,231,223,.48);background:#123d4d}
.course-nav-kicker{color:#7fb7c2;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.course-theme-switch{
  position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:0;width:176px;height:38px;padding:3px;border:1px solid rgba(101,203,210,.22);
  border-radius:12px;background:#0a2030;color:#87a7b3;cursor:pointer;overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.03)
}
.course-theme-switch::before{content:"";position:absolute;z-index:-1;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:9px;background:linear-gradient(145deg,#16465a,#11616a);box-shadow:0 4px 12px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1),background .28s ease}
.course-theme-switch.is-day::before{transform:translateX(0)}
.course-theme-option{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;position:relative;z-index:2;opacity:.54;transition:opacity .2s ease,color .2s ease}
.course-theme-option i{font-style:normal;font-size:15px;line-height:1;filter:saturate(.9)}.course-theme-option b{font-size:10px;font-weight:900}
.course-theme-switch.is-night .course-theme-night-option,.course-theme-switch.is-day .course-theme-day-option{opacity:1;color:#efffff}
.course-player>.course-nav{top:72px;max-height:calc(100dvh - 86px)}
.course-nav,.course-content,.course-player-toolbar,.lesson .course-table-wrap,.lesson .quiz-view,.course-element-tutor{transition:background .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease}
@media(max-width:760px){
  .course-player-toolbar{top:5px;min-height:48px;padding:6px 7px 6px 8px;border-radius:14px}
  .course-home-button{min-height:34px;padding:0 9px}.course-theme-switch{width:154px;height:36px}.course-theme-option b{font-size:9px}
}

/* Дневная тема. Скоуп только Courses — глобальная тема сайта не меняется. */
.courses-root.course-theme-day,.course-modal.course-theme-day{
  --course-bg:#eef5f8;--course-panel:#ffffff;--course-panel2:#f6fafc;--course-line:rgba(45,105,126,.18);
  --course-text:#173447;--course-muted:#607b8a;--course-cyan:#118b8e;--course-blue:#356fc4;--course-danger:#cf4b61;
  color-scheme:light
}
.courses-root.course-theme-day{
  color:var(--course-text);
  background:
    radial-gradient(circle at 7% 0,rgba(76,159,192,.12),transparent 31rem),
    radial-gradient(circle at 95% 34%,rgba(52,174,164,.10),transparent 28rem),
    linear-gradient(180deg,#f4f9fb 0%,#eaf3f6 100%)
}
.courses-root.course-theme-day .course-player-toolbar{
  border-color:rgba(45,120,142,.18);background:rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(41,84,103,.10)
}
.courses-root.course-theme-day .course-home-button{
  border-color:rgba(43,118,141,.18);background:#f1f8fa;color:#1f566b!important;box-shadow:0 3px 8px rgba(36,88,108,.05)
}
.courses-root.course-theme-day .course-home-button span{color:#168e91}.courses-root.course-theme-day .course-home-button:hover{border-color:rgba(19,139,145,.38);background:#e8f5f5}
.courses-root.course-theme-day .course-nav-kicker{color:#567b89}
.courses-root.course-theme-day .course-theme-switch{border-color:rgba(50,113,134,.18);background:#e7f0f3;color:#6e8793;box-shadow:inset 0 1px rgba(255,255,255,.8)}
.courses-root.course-theme-day .course-theme-switch::before{background:linear-gradient(145deg,#fff4ba,#ffd56c);box-shadow:0 4px 11px rgba(168,120,31,.15)}
.courses-root.course-theme-day .course-theme-switch.is-day .course-theme-day-option{color:#694b08}
.courses-root.course-theme-day .course-theme-switch.is-night .course-theme-night-option{color:#28445d}

/* Каркас курса. */
.courses-root.course-theme-day .course-nav,.courses-root.course-theme-day .course-content,.courses-root.course-theme-day .course-tutor{
  border-color:rgba(47,111,132,.17)!important;background:#ffffff!important;box-shadow:0 14px 36px rgba(41,83,102,.09)!important
}
.courses-root.course-theme-day .course-nav{background:linear-gradient(155deg,#fbfdfe,#f3f9fb)!important}
.courses-root.course-theme-day .course-nav-head{border-color:rgba(49,111,132,.12)}
.courses-root.course-theme-day .dots,.courses-root.course-theme-day .module-more,.courses-root.course-theme-day .element-more{color:#668693!important}
.courses-root.course-theme-day .dots:hover,.courses-root.course-theme-day .module-more:hover,.courses-root.course-theme-day .element-more:hover{background:#e8f3f5!important;color:#176f7a!important}
.courses-root.course-theme-day .course-nav-overview{
  border-color:rgba(43,128,145,.17)!important;background:linear-gradient(140deg,#edf7f8,#f7fbfc)!important;box-shadow:inset 0 1px #fff
}
.courses-root.course-theme-day .course-nav-overview h2{color:#173e52!important}.courses-root.course-theme-day .course-nav-overview .course-progress b{color:#28596c!important}
.courses-root.course-theme-day .course-nav-overview .course-progress b::after{color:#718a96!important}
.courses-root.course-theme-day .mini-progress,.courses-root.course-theme-day .course-progress i{background:#d9e7eb!important}
.courses-root.course-theme-day .course-nav-overview .course-search,.courses-root.course-theme-day .course-search{
  border-color:rgba(41,111,132,.18)!important;background:#fff!important;color:#173b4e!important;box-shadow:inset 0 1px 2px rgba(45,88,103,.04)
}
.courses-root.course-theme-day .course-search::placeholder{color:#8499a2}
.courses-root.course-theme-day .course-search-results{border-color:rgba(43,110,130,.18)!important;background:#fff!important;box-shadow:0 18px 38px rgba(34,72,90,.14)!important}
.courses-root.course-theme-day .course-search-results button{color:#244b5d!important}.courses-root.course-theme-day .course-search-results button:hover{background:#edf6f7!important}
.courses-root.course-theme-day .course-search-results span{color:#738b96!important}
.courses-root.course-theme-day .course-nav .course-nav-label{color:#668794!important}
.courses-root.course-theme-day .course-nav .nav-module{
  border-color:rgba(50,119,139,.15)!important;background:linear-gradient(145deg,#f7fbfc,#eef6f8)!important;box-shadow:inset 0 1px #fff!important
}
.courses-root.course-theme-day .course-nav .module-title-row{border-bottom-color:rgba(48,116,137,.12)!important}
.courses-root.course-theme-day .course-nav .nav-module h3{color:#254f62!important}
.courses-root.course-theme-day .course-nav .lesson-link{color:#587682!important}
.courses-root.course-theme-day .course-nav .lesson-link small{color:#11898b!important}
.courses-root.course-theme-day .course-nav .lesson-row:hover{border-color:rgba(32,137,141,.19)!important;background:#ebf6f6!important}
.courses-root.course-theme-day .course-nav .lesson-link.active{background:linear-gradient(90deg,#d9f1ef,#e9f6f7)!important;color:#164b59!important;box-shadow:inset 3px 0 #1ca6a2!important}
.courses-root.course-theme-day .nav-module.search-highlight{background:#eaf8f5!important;outline-color:rgba(24,145,142,.48)!important}

/* Общий текст, dashboard и библиотека. */
.courses-root.course-theme-day .course-content h1,.courses-root.course-theme-day .course-content h2,.courses-root.course-theme-day .course-content h3{color:#17394b}
.courses-root.course-theme-day .course-dashboard header>p:last-child,.courses-root.course-theme-day .library-view p{color:#647f8c!important}
.courses-root.course-theme-day .metric-grid article,.courses-root.course-theme-day .dashboard-panels article{
  border-color:rgba(49,111,132,.15)!important;background:#f6fafb!important;box-shadow:0 5px 13px rgba(41,79,96,.035)
}
.courses-root.course-theme-day .metric-grid small{color:#718994!important}.courses-root.course-theme-day .metric-grid b{color:#173e53!important}.courses-root.course-theme-day .metric-date{color:#2b5869!important}
.courses-root.course-theme-day .dashboard-panels p{color:#637d89}.courses-root.course-theme-day .weak-topics span{background:#fff3e8!important;color:#9a5526!important}
.courses-root.course-theme-day .course-secondary{border-color:rgba(41,105,125,.2)!important;background:#f3f8fa!important;color:#255367!important}
.courses-root.course-theme-day .course-secondary:hover{border-color:rgba(20,139,143,.34)!important;background:#e8f5f5!important}
.courses-root.course-theme-day .course-complete-pill{border-color:rgba(30,150,130,.24)!important;background:#e8f8f3!important;color:#267b68!important}

/* Уроки и учебные блоки. */
.courses-root.course-theme-day .course-paragraph{color:#304f5e!important}
.courses-root.course-theme-day .lesson .course-callout{
  border-color:rgba(43,132,145,.20)!important;border-left-color:#2ca9a6!important;background:linear-gradient(112deg,#eaf7f6,#f8fbfc)!important;box-shadow:0 7px 18px rgba(50,91,106,.05)!important
}
.courses-root.course-theme-day .lesson .course-callout b{color:#214b5b!important}.courses-root.course-theme-day .lesson .course-callout p{color:#385967!important}
.courses-root.course-theme-day .lesson .course-callout.key_point{border-left-color:#19a6a2!important;background:linear-gradient(112deg,#e4f6f4,#f8fbfc)!important}
.courses-root.course-theme-day .lesson .course-callout.clinical_pearl{border-left-color:#38a978!important;background:linear-gradient(112deg,#e7f7ef,#f8fbfc)!important}
.courses-root.course-theme-day .lesson .course-callout.warning{border-left-color:#d7a231!important;background:linear-gradient(112deg,#fff5dc,#fffaf0)!important}
.courses-root.course-theme-day .lesson .course-callout.warning b{color:#704f0a!important}
.courses-root.course-theme-day .lesson .course-algorithm li{border-color:rgba(45,119,139,.18)!important;background:linear-gradient(100deg,#f5fafb,#edf6f8)!important;color:#315361!important;box-shadow:0 5px 13px rgba(45,80,94,.04)!important}
.courses-root.course-theme-day .lesson .course-algorithm li::before{background:linear-gradient(145deg,#d7f0ef,#bfe5e3)!important;color:#176b70!important;box-shadow:0 0 0 4px rgba(31,153,149,.08)!important}
.courses-root.course-theme-day .lesson .course-table-wrap{border-color:rgba(41,119,140,.20)!important;background:#fff!important;box-shadow:0 10px 24px rgba(41,83,101,.06)!important}
.courses-root.course-theme-day .lesson .course-table-wrap table{background:#fff!important}
.courses-root.course-theme-day .lesson .course-table-wrap th{border-bottom-color:rgba(39,123,143,.18)!important;background:linear-gradient(100deg,#dff2f2,#e8f5f7)!important;color:#205d68!important}
.courses-root.course-theme-day .lesson .course-table-wrap td{border-bottom-color:rgba(49,111,131,.12)!important;background:#fff!important;color:#385663!important}
.courses-root.course-theme-day .lesson .course-table-wrap tbody tr:nth-child(even) td{background:#f6fafb!important}
.courses-root.course-theme-day .lesson .course-table-wrap tbody tr:hover td{background:#edf7f7!important}
.courses-root.course-theme-day .lesson .comparison-card,.courses-root.course-theme-day .lesson .comparison-head>*,.courses-root.course-theme-day .lesson .comparison-row>*{border-color:rgba(43,111,132,.16)!important;background:#f8fbfc!important;color:#385866!important}
.courses-root.course-theme-day .lesson .comparison-head>*{background:linear-gradient(120deg,#dff1f2,#e9f6f7)!important;color:#205a66!important}
.courses-root.course-theme-day .comparison-card p{color:#617d89!important}
.courses-root.course-theme-day .lesson .course-checkpoint{border-color:rgba(40,115,135,.18)!important;background:#fff!important;box-shadow:0 6px 15px rgba(36,73,89,.04)!important}
.courses-root.course-theme-day .lesson .course-checkpoint summary{color:#205967!important;background:linear-gradient(90deg,#e8f5f5,#f3f9fa)!important}
.courses-root.course-theme-day .lesson .course-checkpoint[open] summary{border-bottom-color:rgba(40,115,135,.15)!important}
.courses-root.course-theme-day .lesson .course-checkpoint p{color:#3c5c69!important;background:#fff!important}
.courses-root.course-theme-day .course-diagram{border-color:rgba(42,108,128,.18)!important;background:#f5f9fb!important;color:#244b5d!important}
.courses-root.course-theme-day .lesson-placeholder{border-color:rgba(45,111,132,.16)!important;background:linear-gradient(120deg,#edf6fb,#eef8f5)!important}
.courses-root.course-theme-day .lesson-placeholder p,.courses-root.course-theme-day .course-empty-inline{color:#637d89!important}

/* Тесты. */
.courses-root.course-theme-day .lesson .quiz-view{border-color:rgba(42,115,135,.18)!important;background:linear-gradient(145deg,#ffffff,#f6fafb)!important;box-shadow:0 12px 30px rgba(42,78,94,.06)!important}
.courses-root.course-theme-day .lesson .quiz-meta{border-left-color:#179fa0!important;background:#e8f6f5!important;color:#4b6a77!important}
.courses-root.course-theme-day .lesson .quiz-question{border-color:rgba(43,111,132,.17)!important;background:#f8fbfc!important;box-shadow:none!important}
.courses-root.course-theme-day .lesson .quiz-question legend{color:#24495b!important}
.courses-root.course-theme-day .lesson .quiz-question legend span{background:linear-gradient(145deg,#d8eeee,#c8e6e6)!important;color:#176b70!important;box-shadow:0 0 0 4px rgba(34,145,145,.07)!important}
.courses-root.course-theme-day .lesson .quiz-question label{border-color:rgba(45,105,126,.13)!important;background:#fff!important;color:#365563!important}
.courses-root.course-theme-day .lesson .quiz-question label:hover{border-color:rgba(23,145,146,.32)!important;background:#edf7f7!important}
.courses-root.course-theme-day .lesson .quiz-question label:has(input:checked){border-color:#2ca7a5!important;background:#e6f5f3!important;box-shadow:inset 3px 0 #2ca7a5!important}
.courses-root.course-theme-day .question-explanation{border-color:rgba(53,157,113,.24)!important;background:linear-gradient(135deg,#e8f7ef,#f5fbf8)!important;box-shadow:none!important}
.courses-root.course-theme-day .question-explanation>b{color:#28735a!important}.courses-root.course-theme-day .question-explanation p{color:#3d6154!important}.courses-root.course-theme-day .question-explanation small{color:#a24f5d!important}
.courses-root.course-theme-day .quiz-source,.courses-root.course-theme-day .wrong-reasons{color:#587482!important}.courses-root.course-theme-day .quiz-source a{color:#087b80!important}
.courses-root.course-theme-day .quiz-score{border-color:rgba(44,112,132,.17)!important;background:#f7fbfc}.courses-root.course-theme-day .quiz-score b{color:#167d80!important}.courses-root.course-theme-day .quiz-score p{color:#9b633c!important}

/* Карточки и интервальное повторение. */
.courses-root.course-theme-day .flashcard-launch{border-color:rgba(43,111,132,.16)!important;background:#f4faf9!important}
.courses-root.course-theme-day .inline-flashcard-stage{background:#e8f2f5!important}
.courses-root.course-theme-day .inline-flashcard{border-color:rgba(42,116,136,.18)!important;background:linear-gradient(145deg,#ffffff,#eef7f8)!important;color:#274b5b!important;box-shadow:0 16px 36px rgba(45,78,94,.10)!important}
.courses-root.course-theme-day .inline-flashcard.back{background:linear-gradient(145deg,#effaf6,#e7f5f2)!important}
.courses-root.course-theme-day .inline-flashcard small{color:#16888b!important}.courses-root.course-theme-day .inline-flashcard-hint{color:#667f8b!important}
.courses-root.course-theme-day .inline-flashcard-stage::after{background:rgba(69,95,107,.18)!important}
.courses-root.course-theme-day .inline-flashcard-legend span{border-color:rgba(45,111,132,.16)!important;background:#fff!important;color:#617b88}
.courses-root.course-theme-day .inline-flashcards-status span{border-color:rgba(43,123,137,.18)!important;background:#edf7f7!important;color:#587582!important}.courses-root.course-theme-day .inline-flashcards-status b{color:#157b72!important}
.courses-root.course-theme-day .flashcards-session-complete{border-color:rgba(45,158,119,.22)!important;background:linear-gradient(145deg,#edf9f4,#f9fcfb)!important;box-shadow:0 14px 32px rgba(42,82,96,.07)!important}
.courses-root.course-theme-day .flashcards-session-complete h2{color:#234d5b!important}.courses-root.course-theme-day .flashcards-session-complete p{color:#5d7a84!important}

/* Меню разделов и формы. */
.courses-root.course-theme-day .lesson-settings{border-color:rgba(45,125,140,.18)!important;background:linear-gradient(145deg,#edf7f8,#e1f1f2)!important;color:#176e77!important}
.courses-root.course-theme-day .lesson-settings:hover,.courses-root.course-theme-day .lesson-settings[aria-expanded="true"]{border-color:rgba(24,145,145,.38)!important;background:#d8efee!important}
.courses-root.course-theme-day .lesson-settings-popover{border-color:rgba(45,111,132,.18)!important;background:#fff!important;box-shadow:0 16px 34px rgba(38,73,89,.15)!important}
.courses-root.course-theme-day .lesson-settings-popover button{color:#315566!important}.courses-root.course-theme-day .lesson-settings-popover button:hover{background:#edf7f7!important;color:#0d777a!important}
.courses-root.course-theme-day .action-stack button{border-color:rgba(45,111,132,.18)!important;background:#f5f9fa!important;color:#315566!important}
.courses-root.course-theme-day .action-stack .danger{border-color:rgba(204,75,96,.24)!important;background:#fff4f5!important;color:#ad4053!important}

/* Карточка наставника и чат наставника. */
.courses-root.course-theme-day .course-tutor .tutor-identity{border-color:rgba(41,123,136,.18)!important;background:linear-gradient(145deg,#edf7f7,#f8fbfc)!important;box-shadow:inset 0 1px #fff!important}
.courses-root.course-theme-day .tutor-identity strong{color:#244b59!important}.courses-root.course-theme-day .course-tutor-note{color:#607b88!important}
.courses-root.course-theme-day .course-element-tutor{border-color:rgba(41,119,134,.19)!important;background:#f4f9fa!important;box-shadow:0 13px 30px rgba(43,76,90,.06)!important}
.courses-root.course-theme-day .course-element-tutor>header{border-bottom-color:rgba(43,112,132,.15)!important}.courses-root.course-theme-day .course-element-tutor h2{color:#214b59!important}.courses-root.course-theme-day .course-element-tutor header>div>p:last-child{color:#69838e!important}
.courses-root.course-theme-day .element-tutor-history{background:#f4f9fa!important}
.courses-root.course-theme-day .element-tutor-message.assistant{border-color:rgba(45,122,135,.18)!important;background:#ffffff!important;color:#244b59!important}
.courses-root.course-theme-day .element-tutor-message.user{border-color:rgba(58,119,181,.22)!important;background:#eaf3fc!important;color:#234a66!important}
.courses-root.course-theme-day .element-tutor-message small{color:#167f7c!important}.courses-root.course-theme-day .element-tutor-message.user small{color:#3a6f9e!important}
.courses-root.course-theme-day .element-tutor-message-content{color:#31515e!important}.courses-root.course-theme-day .element-tutor-message-content h1,.courses-root.course-theme-day .element-tutor-message-content h2,.courses-root.course-theme-day .element-tutor-message-content h3{color:#214858!important}
.courses-root.course-theme-day .element-tutor-message-content blockquote{border-left-color:#3ba5a1!important;background:#eaf6f4!important;color:#3d5f69!important}
.courses-root.course-theme-day .element-tutor-message-content pre{background:#edf3f6!important;color:#294b5b!important}
.courses-root.course-theme-day .element-tutor-message-content .table-scroll{border-color:rgba(44,114,131,.17)!important}.courses-root.course-theme-day .element-tutor-message-content table{background:#fff!important}
.courses-root.course-theme-day .element-tutor-message-content th{background:#dff0f1!important;color:#215965!important}.courses-root.course-theme-day .element-tutor-message-content td{border-color:rgba(46,111,130,.14)!important;color:#365560!important}
.courses-root.course-theme-day .element-tutor-form{border-top-color:rgba(43,112,132,.14)!important}
.courses-root.course-theme-day .element-tutor-form textarea{border-color:rgba(43,119,136,.20)!important;background:#fff!important;color:#244858!important}
.courses-root.course-theme-day .element-tutor-controls label{color:#607f8a!important}.courses-root.course-theme-day .element-tutor-controls select{border-color:rgba(45,119,136,.20)!important;background:#fff!important;color:#244a59!important}
.courses-root.course-theme-day .element-tutor-controls small{color:#167f7d!important}
.courses-root.course-theme-day .element-tutor-model-inline{border-color:rgba(43,119,136,.18)!important;background:rgba(240,248,249,.97)!important}
.courses-root.course-theme-day .element-tutor-model-inline select{color:#315c69!important}.courses-root.course-theme-day .element-tutor-model-inline small{color:#168784!important}

/* Клиническая задача. */
.courses-root.course-theme-day .course-case-toolbar{border-color:rgba(52,113,173,.17)!important;background:linear-gradient(110deg,#eef5fc,#f7fbfd)!important}
.courses-root.course-theme-day .course-case-toolbar>p{color:#617a8e!important}
.courses-root.course-theme-day .course-case-progress-toggle{border-color:rgba(54,124,191,.24)!important;background:linear-gradient(145deg,#e9f3fc,#f7fbfe)!important;color:#315a7b!important}
.courses-root.course-theme-day .course-case-progress-toggle b{color:#337fb9!important}
.courses-root.course-theme-day .course-case-progress-menu,.courses-root.course-theme-day .course-case-actions-menu{border-color:rgba(50,109,169,.18)!important;background:linear-gradient(155deg,#ffffff,#f4f8fc)!important;box-shadow:0 18px 42px rgba(45,72,99,.16)!important}
.courses-root.course-theme-day .course-case-progress-menu>strong,.courses-root.course-theme-day .course-case-actions-menu strong{color:#2b4e6b!important}
.courses-root.course-theme-day .course-case-progress-track{background:#dce6ef!important}
.courses-root.course-theme-day .course-case-progress-item{background:#edf3f8!important;color:#687f95!important}.courses-root.course-theme-day .course-case-progress-item i{border-color:#adc2d3!important;color:#5d7991!important}
.courses-root.course-theme-day .course-case-progress-item.done{background:#e8f7f0!important;color:#34715f!important}
.courses-root.course-theme-day .course-case-patient{border-color:rgba(54,122,184,.20)!important;background:linear-gradient(145deg,#edf5fc,#f8fbfe)!important;box-shadow:0 10px 25px rgba(43,73,101,.07)!important}
.courses-root.course-theme-day .course-case-patient-media{border-color:rgba(56,128,190,.22)!important;background:#e7f0f7!important;box-shadow:0 6px 14px rgba(48,78,103,.08)!important}
.courses-root.course-theme-day .course-case-patient-media>span{background:radial-gradient(circle at 35% 25%,rgba(56,189,248,.15),transparent 45%),#e7f0f7!important}
.courses-root.course-theme-day .course-case-patient-body small{color:#347eaa!important}.courses-root.course-theme-day .course-case-patient b{color:#294b64!important}.courses-root.course-theme-day .course-case-patient p{color:#6b8294!important}
.courses-root.course-theme-day .course-case-message:not(.doctor){border-color:rgba(54,105,145,.16)!important;background:#f2f6f9!important;box-shadow:0 5px 12px rgba(41,70,91,.04)!important}
.courses-root.course-theme-day .course-case-message:not(.doctor) small{color:#3b789d!important}.courses-root.course-theme-day .course-case-message:not(.doctor) p,.courses-root.course-theme-day .course-case-message:not(.doctor) .course-case-message-content{color:#345466!important}
.courses-root.course-theme-day .course-case-message.doctor{background:linear-gradient(135deg,#2f7fca,#357fc1)!important;border-color:#4d91cf!important}.courses-root.course-theme-day .course-case-message.doctor p,.courses-root.course-theme-day .course-case-message.doctor .course-case-message-content{color:#fff!important}
.courses-root.course-theme-day .course-case-dock{border-top-color:rgba(54,111,163,.15)!important;background:linear-gradient(180deg,rgba(246,250,253,.82),#f5f9fc 26%)!important;box-shadow:0 -12px 22px rgba(45,68,88,.07)!important}
.courses-root.course-theme-day .course-case-composer textarea{border-color:rgba(55,112,166,.20)!important;background:#fff!important;color:#294b61!important}
.courses-root.course-theme-day .course-case-actions-toggle{border-color:rgba(55,117,174,.22)!important;background:linear-gradient(145deg,#eef5fb,#f9fbfd)!important;color:#355c7a!important}
.courses-root.course-theme-day .course-case-actions-toggle:hover,.courses-root.course-theme-day .course-case-actions-toggle[aria-expanded="true"]{background:#e5f0f8!important}
.courses-root.course-theme-day .course-case-actions-menu header{border-bottom-color:rgba(55,112,166,.14)!important;background:#f5f8fb!important}
.courses-root.course-theme-day .course-case-actions-menu small{color:#74889b!important}.courses-root.course-theme-day .course-case-actions-menu header button{border-color:rgba(54,104,153,.18)!important;background:#edf3f8!important;color:#52728e!important}
.courses-root.course-theme-day .course-case-actions-menu [data-case-action]{border-color:rgba(51,108,165,.16)!important;background:#f7fafc!important;color:#31536c!important}
.courses-root.course-theme-day .course-case-actions-menu [data-case-action]:hover{border-color:rgba(48,129,201,.30)!important;background:#edf5fb!important}
.courses-root.course-theme-day .course-case-actions-menu [data-case-action]>span{border-color:rgba(55,124,190,.20)!important;background:#e8f2fb!important;color:#3779ae!important}
.courses-root.course-theme-day .course-case-message-content{color:#345466!important}.courses-root.course-theme-day .course-case-message-content h1,.courses-root.course-theme-day .course-case-message-content h2,.courses-root.course-theme-day .course-case-message-content h3{color:#274a5d!important}
.courses-root.course-theme-day .course-case-message.doctor .course-case-message-content h1,.courses-root.course-theme-day .course-case-message.doctor .course-case-message-content h2,.courses-root.course-theme-day .course-case-message.doctor .course-case-message-content h3{color:#fff!important}
.courses-root.course-theme-day .course-case-message-content blockquote{border-left-color:#2fa29c!important;background:#e7f5f3!important;color:#3e5f69!important}
.courses-root.course-theme-day .course-case-message-content code{background:#e9f0f3!important;color:#235568!important}.courses-root.course-theme-day .course-case-message-content pre{background:#edf3f6!important;color:#294b5b!important}
.courses-root.course-theme-day .course-case-message-content .table-scroll{border-color:rgba(50,108,139,.16)!important}.courses-root.course-theme-day .course-case-message-content table{background:#fff!important}.courses-root.course-theme-day .course-case-message-content th{background:#dfeef2!important;color:#215868!important}.courses-root.course-theme-day .course-case-message-content td{border-color:rgba(53,109,137,.13)!important;color:#345564!important}

/* Модальные окна, открытые из дневного курса. */
.course-modal.course-theme-day{background:rgba(30,49,59,.42)}
.course-modal.course-theme-day .course-dialog{border-color:rgba(44,107,126,.18)!important;background:#fff!important;color:#173447!important;box-shadow:0 24px 70px rgba(33,61,73,.20)!important}
.course-modal.course-theme-day .dialog-close{color:#45636f!important}
.course-modal.course-theme-day .field-wide,.course-modal.course-theme-day .course-options label{color:#4b6875!important}
.course-modal.course-theme-day .field-wide textarea,.course-modal.course-theme-day .field-wide input,.course-modal.course-theme-day .field-wide select,.course-modal.course-theme-day .course-options select{border-color:rgba(44,108,127,.18)!important;background:#f8fbfc!important;color:#244b5b!important}
.course-modal.course-theme-day .course-secondary{border-color:rgba(44,107,126,.18)!important;background:#f3f8fa!important;color:#285468!important}
.course-modal.course-theme-day .action-stack button{border-color:rgba(44,107,126,.18)!important;background:#f6fafb!important;color:#315566!important}
.course-modal.course-theme-day .course-completion-dialog{background:linear-gradient(145deg,#ffffff,#edf7f7)!important;border-color:rgba(46,142,127,.24)!important;box-shadow:0 25px 70px rgba(35,67,79,.20)!important}
.course-modal.course-theme-day .course-completion h2{color:#224b59!important}.course-modal.course-theme-day .course-completion p:not(.eyebrow){color:#617c88!important}
.course-modal.course-theme-day .course-assistant-unavailable>div:first-child{border-color:rgba(52,156,143,.30)!important;background:#e4f5f1!important;color:#247462!important}
.course-modal.course-theme-day .course-assistant-unavailable h2{color:#234b59!important}.course-modal.course-theme-day .course-assistant-unavailable p:not(.eyebrow){color:#637d89!important}


/* 2026-09-23: click-only course flashcards and day-theme polish. */

/* Open course navigation is intentionally sidebar-based; flashcard behavior follows below. */
/* Course flashcards: click flips the card; learning decision is made only with buttons below. */
.inline-flashcard{
  touch-action:manipulation!important;
  cursor:pointer!important;
  transform:none!important
}
.inline-flashcard.dragging,
.inline-flashcard.swiping-left,
.inline-flashcard.swiping-right{
  transform:none!important
}
.inline-flashcard-feedback,
.inline-flashcard-legend{display:none!important}
.inline-flashcard-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  max-width:680px;
  margin:14px auto 0
}
.inline-flashcard-rate{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid var(--course-line);
  border-radius:13px;
  background:#0b2232;
  color:#dcebf0;
  font:inherit;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:transform .15s ease,border-color .15s ease,background .15s ease,opacity .15s ease
}
.inline-flashcard-rate span{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  font-size:12px
}
.inline-flashcard-rate.unknown{border-color:rgba(255,104,126,.26);background:rgba(112,28,46,.18);color:#ffc0ca}
.inline-flashcard-rate.unknown span{background:rgba(255,104,126,.13)}
.inline-flashcard-rate.known{border-color:rgba(61,211,151,.28);background:rgba(24,102,77,.20);color:#bff5da}
.inline-flashcard-rate.known span{background:rgba(61,211,151,.14)}
.inline-flashcard-rate:hover:not(:disabled){transform:translateY(-1px)}
.inline-flashcard-rate:disabled{opacity:.42;cursor:not-allowed;transform:none}

/* Day theme: the late dark card palette must not win over the light course design. */
.courses-root.course-theme-day .courses-section-v2 .section-title h2{color:#153c50!important}
.courses-root.course-theme-day .courses-section-v2 .section-title>span{
  background:#f7fbfc!important;
  border-color:rgba(47,111,132,.18)!important;
  color:#426674!important
}
.courses-root.course-theme-day .course-card-v2{
  background:linear-gradient(145deg,#ffffff 0%,#f7fbfc 74%,#eef7f8 100%)!important;
  border-color:rgba(47,111,132,.18)!important;
  box-shadow:0 14px 32px rgba(42,78,94,.08)!important;
  color:#173b4e!important
}
.courses-root.course-theme-day .course-card-v2:hover{
  border-color:rgba(26,139,145,.28)!important;
  box-shadow:0 18px 38px rgba(42,78,94,.11)!important
}
.courses-root.course-theme-day .course-card-v2 h3{color:#173b4e!important}
.courses-root.course-theme-day .course-card-v2>p{color:#4e6d7b!important}
.courses-root.course-theme-day .course-card-v2 .course-card-top>b{color:#21566b!important}
.courses-root.course-theme-day .course-card-v2 .course-level{
  background:#e7f6f5!important;
  border:1px solid rgba(28,145,142,.13)!important;
  color:#177a79!important
}
.courses-root.course-theme-day .course-card-settings{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.18)!important;
  color:#315e70!important;
  box-shadow:0 5px 14px rgba(43,77,92,.07)!important
}
.courses-root.course-theme-day .course-card-settings:hover{
  background:#e9f5f6!important;
  border-color:rgba(28,145,142,.28)!important;
  color:#147479!important
}
.courses-root.course-theme-day .course-card-progress-visual{
  border-color:rgba(47,119,139,.17)!important;
  background:linear-gradient(135deg,#f5fbfc,#eaf5f7)!important;
  box-shadow:inset 0 1px #fff!important
}
.courses-root.course-theme-day .course-overall-orbit{
  background:conic-gradient(#2aa8a1 calc(var(--course-progress)*1%),#dbeaec 0)!important;
  box-shadow:0 7px 18px rgba(41,91,106,.10)!important
}
.courses-root.course-theme-day .course-overall-orbit::before{background:#ffffff!important}
.courses-root.course-theme-day .course-overall-orbit b{color:#176b70!important}
.courses-root.course-theme-day .course-overall-orbit small{color:#557884!important}
.courses-root.course-theme-day .course-card-progress-copy>span{color:#36777d!important}
.courses-root.course-theme-day .course-card-progress-copy>b{color:#234f60!important}
.courses-root.course-theme-day .course-card-progress-copy>small{color:#567583!important}
.courses-root.course-theme-day .course-module-orbit{
  border-color:rgba(47,119,139,.16)!important;
  background:#ffffff!important;
  color:#456b79!important
}
.courses-root.course-theme-day .course-module-orbit b{color:#365f70!important}
.courses-root.course-theme-day .course-module-orbit-ring{
  background:conic-gradient(#49b7b0 calc(var(--module-progress)*1%),#dcebed 0)!important
}
.courses-root.course-theme-day .course-module-orbit-ring i{
  background:#ffffff!important;
  color:#397181!important
}
.courses-root.course-theme-day .course-module-orbit.done{
  border-color:rgba(42,157,112,.23)!important;
  background:#eaf8f1!important;
  color:#267159!important
}
.courses-root.course-theme-day .course-module-orbit.done b{color:#246a55!important}
.courses-root.course-theme-day .course-module-orbit.done .course-module-orbit-ring{background:conic-gradient(#38aa80 100%,#dcebed 0)!important}
.courses-root.course-theme-day .course-module-orbit.done .course-module-orbit-ring i{background:#38aa80!important;color:#fff!important}
.courses-root.course-theme-day .course-module-orbit-more{
  border-color:rgba(47,111,132,.22)!important;
  background:#f7fbfc!important;
  color:#527483!important
}
.courses-root.course-theme-day .course-card-v2 .course-card-footer{
  border-top-color:rgba(47,111,132,.13)!important;
  color:#557381!important
}
.courses-root.course-theme-day .course-card-v2 .course-card-footer span{color:#557381!important}
.courses-root.course-theme-day .course-card-v2 .course-card-footer a{color:#127a82!important}
.courses-root.course-theme-day .published-course-search{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.18)!important;
  box-shadow:0 7px 18px rgba(42,78,94,.05)!important
}
.courses-root.course-theme-day .published-course-search>span{color:#24858e!important}
.courses-root.course-theme-day .published-course-search input{color:#244d5f!important}
.courses-root.course-theme-day .published-course-search input::placeholder{color:#718b96!important}

/* Day theme horizontal curriculum: dark text and visible staged cards. */
.courses-root.course-theme-day .course-player>.course-nav{
  background:linear-gradient(155deg,#ffffff,#f3f9fb)!important;
  border-color:rgba(47,111,132,.18)!important;
  box-shadow:0 12px 30px rgba(42,78,94,.08)!important
}
.courses-root.course-theme-day .course-nav-overview{
  background:linear-gradient(145deg,#f4fafb,#ffffff)!important;
  border-color:rgba(47,111,132,.17)!important
}
.courses-root.course-theme-day .course-nav-label{color:#3e6675!important}
.courses-root.course-theme-day .course-nav .nav-module{
  background:#f7fbfc!important;
  border-color:rgba(47,111,132,.16)!important;
  box-shadow:0 5px 14px rgba(42,78,94,.04)!important
}
.courses-root.course-theme-day .course-nav .module-title-row{border-bottom-color:rgba(47,111,132,.12)!important}
.courses-root.course-theme-day .course-nav .nav-module h3{color:#244d5f!important}
.courses-root.course-theme-day .course-nav .lesson-row{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.12)!important
}
.courses-root.course-theme-day .course-nav .lesson-row:hover{
  background:#edf7f7!important;
  border-color:rgba(28,145,142,.22)!important
}
.courses-root.course-theme-day .course-nav .lesson-link{color:#365e6d!important}
.courses-root.course-theme-day .course-nav .lesson-link small{
  background:#eaf7f5!important;
  border-color:rgba(28,145,142,.16)!important;
  color:#137b7b!important
}
.courses-root.course-theme-day .course-nav .lesson-link span{color:#365e6d!important}
.courses-root.course-theme-day .course-nav .lesson-link.active{
  background:linear-gradient(90deg,#dff4f1,#eef9f8)!important;
  color:#174f5d!important;
  box-shadow:inset 3px 0 #20a69f!important
}
.courses-root.course-theme-day .course-nav .lesson-link.active span{color:#174f5d!important}
.courses-root.course-theme-day .course-content{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.17)!important;
  box-shadow:0 14px 36px rgba(41,83,102,.08)!important
}
.courses-root.course-theme-day .course-content :is(p,li,td){color:#365866}
.courses-root.course-theme-day .course-content :is(h1,h2,h3,strong,b){color:#173e50}
.courses-root.course-theme-day .course-content .quiz-meta{color:#557482!important}

/* Day flashcards and explicit rating controls. */
.courses-root.course-theme-day .inline-flashcard-stage{
  background:#f1f7f9!important
}
.courses-root.course-theme-day .inline-flashcard{
  background:linear-gradient(145deg,#ffffff,#f1f8f9)!important;
  border-color:rgba(47,111,132,.18)!important;
  color:#244d5d!important;
  box-shadow:0 14px 32px rgba(42,78,94,.09)!important
}
.courses-root.course-theme-day .inline-flashcard.back{background:linear-gradient(145deg,#eef9f5,#ffffff)!important}
.courses-root.course-theme-day .inline-flashcard small{color:#127e81!important}
.courses-root.course-theme-day .inline-flashcard p{color:#244d5d!important}
.courses-root.course-theme-day .inline-flashcard-hint{color:#5c7884!important}
.courses-root.course-theme-day .inline-flashcard-rate{
  background:#ffffff!important;
  box-shadow:0 6px 16px rgba(42,78,94,.05)!important
}
.courses-root.course-theme-day .inline-flashcard-rate.unknown{
  border-color:rgba(194,67,89,.24)!important;
  background:#fff4f6!important;
  color:#a83b51!important
}
.courses-root.course-theme-day .inline-flashcard-rate.known{
  border-color:rgba(31,145,96,.24)!important;
  background:#ecf8f1!important;
  color:#247257!important
}
.courses-root.course-theme-day .inline-flashcard-rate:disabled{opacity:.48!important}

@media(max-width:560px){
  .inline-flashcard-actions{gap:8px}
  .inline-flashcard-rate{min-height:45px;font-size:11px}
}


/* 2026-09-23: styled SVG course type badges. */
.course-type-badge{
  --type-rgb:82,217,219;
  --type-ink:#8ff4ee;
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:max-content;
  max-width:100%;
  min-height:26px;
  padding:3px 8px 3px 4px;
  border:1px solid rgba(var(--type-rgb),.20);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(var(--type-rgb),.10),rgba(var(--type-rgb),.045));
  color:var(--type-ink);
  box-shadow:inset 0 1px rgba(255,255,255,.035);
  font-size:8.5px;
  font-weight:850;
  line-height:1;
  letter-spacing:.025em;
  white-space:nowrap
}
.course-type-icon{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  flex:0 0 20px;
  border:1px solid rgba(var(--type-rgb),.22);
  border-radius:7px;
  background:rgba(var(--type-rgb),.11);
  color:currentColor
}
.course-type-icon svg{
  width:13px;
  height:13px;
  display:block;
  overflow:visible;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke
}
.course-type-label{overflow:hidden;text-overflow:ellipsis}
.course-type-done{
  display:grid;
  place-items:center;
  width:15px;
  height:15px;
  flex:0 0 15px;
  border-radius:50%;
  background:#2bb17c;
  color:#fff;
  font-size:9px;
  font-weight:950;
  box-shadow:0 0 0 3px rgba(43,177,124,.09)
}
.course-type-lesson{--type-rgb:69,153,224;--type-ink:#9ed2ff}
.course-type-quiz{--type-rgb:163,117,236;--type-ink:#d2b9ff}
.course-type-flashcards{--type-rgb:47,196,177;--type-ink:#96f1e1}
.course-type-clinical_case{--type-rgb:65,190,126;--type-ink:#a9f1c8}
.course-type-diagram{--type-rgb:68,180,211;--type-ink:#a5e7f8}

.lesson-link>.course-type-badge{
  margin:0 0 5px!important;
  max-width:calc(100% - 2px)
}
.lesson-link>.course-type-badge+.lesson-link span,
.lesson-link>.course-type-badge~span{margin-top:0!important}
.lesson-section-head .course-type-badge{
  min-height:30px;
  padding:4px 10px 4px 5px;
  font-size:9.5px;
  letter-spacing:.055em;
  text-transform:uppercase
}
.lesson-section-head .course-type-icon{
  width:22px;
  height:22px;
  flex-basis:22px;
  border-radius:8px
}
.lesson-section-head .course-type-icon svg{width:14px;height:14px}

/* Override the old text-only small badge rule in the horizontal course rail. */
.course-nav .lesson-link small.course-type-badge{display:inline-flex!important}

/* Day theme: crisp pastel med-tech chips on white cards. */
.courses-root.course-theme-day .course-type-badge{
  background:linear-gradient(135deg,rgba(var(--type-rgb),.12),rgba(255,255,255,.94))!important;
  border-color:rgba(var(--type-rgb),.24)!important;
  color:#245366!important;
  box-shadow:0 3px 9px rgba(42,78,94,.035),inset 0 1px #fff!important
}
.courses-root.course-theme-day .course-type-icon{
  background:rgba(var(--type-rgb),.13)!important;
  border-color:rgba(var(--type-rgb),.24)!important;
  color:rgb(var(--type-rgb))!important
}
.courses-root.course-theme-day .course-type-label{color:#2e5667!important}
.courses-root.course-theme-day .course-type-lesson{--type-rgb:47,126,193}
.courses-root.course-theme-day .course-type-quiz{--type-rgb:126,88,191}
.courses-root.course-theme-day .course-type-flashcards{--type-rgb:29,145,132}
.courses-root.course-theme-day .course-type-clinical_case{--type-rgb:35,145,93}
.courses-root.course-theme-day .course-type-diagram{--type-rgb:32,137,174}
.courses-root.course-theme-day .course-type-done{
  background:#2c9e70!important;
  color:#fff!important;
  box-shadow:0 0 0 3px rgba(44,158,112,.08)!important
}
.courses-root.course-theme-day .lesson-link.active .course-type-badge{
  background:#ffffff!important;
  border-color:rgba(var(--type-rgb),.30)!important
}

@media(max-width:560px){
  .course-type-badge{gap:5px;padding-right:7px;font-size:8px}
  .course-type-icon{width:19px;height:19px;flex-basis:19px}
  .lesson-section-head .course-type-badge{font-size:8.8px}
}


/* 2026-09-23: day overall progress card. */

/* Dashboard hero: overall progress must be genuinely light in day mode. */
.courses-root.course-theme-day .courses-orbit-card{
  background:linear-gradient(150deg,#ffffff 0%,#f4fafb 100%)!important;
  border-color:rgba(43,116,135,.18)!important;
  box-shadow:0 16px 36px rgba(42,78,94,.10),inset 0 1px #fff!important;
  backdrop-filter:none!important
}
.courses-root.course-theme-day .courses-orbit-card .orbit-label{
  color:#397181!important
}
.courses-root.course-theme-day .courses-orbit-card .progress-orbit{
  background:conic-gradient(#32b6a4 calc(var(--progress) * 1%),#dbeaec 0)!important;
  box-shadow:0 8px 22px rgba(43,91,105,.10),0 0 0 1px rgba(47,111,132,.08)!important
}
.courses-root.course-theme-day .courses-orbit-card .progress-orbit>div{
  background:linear-gradient(145deg,#ffffff,#eef7f8)!important;
  box-shadow:inset 0 0 0 1px rgba(47,111,132,.08)!important
}
.courses-root.course-theme-day .courses-orbit-card .progress-orbit b{
  color:#176a70!important;
  text-shadow:none!important
}
.courses-root.course-theme-day .courses-orbit-card .progress-orbit small{
  color:#637f8b!important
}
.courses-root.course-theme-day .courses-orbit-card p{
  color:#55717f!important
}

/* 2026-09-23: restored vertical course sidebar with search. */
.course-player{
  display:grid!important;
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  max-width:1600px!important;
  margin:0 auto!important
}
.course-player-toolbar{
  grid-column:1/-1!important
}
.course-player>.course-nav{
  position:sticky!important;
  top:72px!important;
  z-index:20!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-height:calc(100dvh - 88px)!important;
  overflow:auto!important;
  padding:14px!important;
  border-radius:18px!important;
  scrollbar-width:thin!important
}
.course-nav-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0!important;
  padding:0 0 10px!important;
  border-bottom:1px solid var(--course-line)!important
}
.course-nav-kicker{
  display:block!important;
  margin:0!important
}
.course-nav-head .dots{
  width:32px!important;
  height:32px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 32px!important;
  padding:0!important;
  border:1px solid var(--course-line)!important;
  border-radius:10px!important
}
.course-nav-overview{
  position:relative!important;
  display:block!important;
  margin:12px 0 0!important;
  padding:12px!important;
  border:1px solid var(--course-line)!important;
  border-radius:14px!important
}
.course-nav-overview h2{
  margin:0 0 9px!important;
  font-size:13px!important;
  line-height:1.35!important
}
.course-progress{
  display:block!important
}
.course-progress b{
  display:block!important;
  margin:0 0 7px!important;
  font-size:11px!important
}
.course-progress i{
  display:block!important;
  width:100%!important;
  height:6px!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:999px!important
}
.course-search{
  display:block!important;
  width:100%!important;
  height:38px!important;
  margin:12px 0 0!important;
  padding:0 11px!important;
  border:1px solid var(--course-line)!important;
  border-radius:10px!important;
  outline:0!important
}
.course-search-results{
  left:12px!important;
  right:12px!important;
  top:calc(100% - 2px)!important;
  max-height:320px!important;
  z-index:40!important
}
.course-nav-label{
  display:block!important;
  margin:14px 2px 8px!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important
}
.module-list{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  max-height:none!important
}
.nav-module{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0 0 10px!important;
  padding:8px!important;
  border:1px solid var(--course-line)!important;
  border-radius:13px!important
}
.module-title-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 26px!important;
  align-items:center!important;
  gap:5px!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:2px 2px 7px!important;
  border-right:0!important;
  border-bottom:1px solid rgba(105,202,220,.10)!important
}
.nav-module h3{
  min-width:0!important;
  margin:0!important;
  font-size:11px!important;
  line-height:1.35!important
}
.module-title-row .module-more{
  width:26px!important;
  height:28px!important;
  padding:0!important
}
.lesson-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:2px!important;
  min-width:0!important;
  min-height:0!important;
  margin:5px 0 0!important;
  border:1px solid transparent!important;
  border-radius:10px!important
}
.lesson-link{
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:7px 8px!important;
  border-radius:9px!important
}
.lesson-link>.course-type-badge{
  min-height:22px!important;
  margin:0 0 5px!important;
  padding:2px 7px 2px 3px!important;
  gap:4px!important;
  font-size:7.5px!important
}
.lesson-link>.course-type-badge .course-type-icon{
  width:17px!important;
  height:17px!important;
  flex-basis:17px!important;
  border-radius:5px!important
}
.lesson-link>.course-type-badge .course-type-icon svg{
  width:10px!important;
  height:10px!important
}
.lesson-link>span{
  display:block!important;
  margin:0!important;
  font-size:10.5px!important;
  line-height:1.35!important
}
.element-more{
  width:24px!important;
  min-width:24px!important;
  padding:0!important
}
.course-content{
  width:100%!important;
  min-width:0!important;
  min-height:650px!important;
  padding:clamp(22px,3vw,38px)!important;
  border-radius:20px!important
}

/* Light theme for the restored sidebar. */
.courses-root.course-theme-day .course-player>.course-nav{
  background:linear-gradient(155deg,#ffffff,#f4f9fb)!important;
  border-color:rgba(47,111,132,.17)!important;
  box-shadow:0 12px 30px rgba(42,78,94,.08)!important
}
.courses-root.course-theme-day .course-nav-head{
  border-bottom-color:rgba(47,111,132,.12)!important
}
.courses-root.course-theme-day .course-nav-head .dots{
  background:#f5fafb!important;
  border-color:rgba(47,111,132,.16)!important;
  color:#527483!important
}
.courses-root.course-theme-day .course-nav-overview{
  background:linear-gradient(145deg,#f4fafb,#ffffff)!important;
  border-color:rgba(47,111,132,.16)!important;
  box-shadow:inset 0 1px #fff!important
}
.courses-root.course-theme-day .course-nav-overview h2{color:#244d5f!important}
.courses-root.course-theme-day .course-progress b{color:#24757a!important}
.courses-root.course-theme-day .course-progress i{background:#dbe9ed!important}
.courses-root.course-theme-day .course-progress i span{
  background:linear-gradient(90deg,#258bd0,#31ae9b)!important
}
.courses-root.course-theme-day .course-search{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.18)!important;
  color:#244d5f!important;
  box-shadow:inset 0 1px 2px rgba(42,78,94,.035)!important
}
.courses-root.course-theme-day .course-search::placeholder{color:#78909a!important}
.courses-root.course-theme-day .course-search-results{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.18)!important;
  box-shadow:0 16px 34px rgba(42,78,94,.13)!important
}
.courses-root.course-theme-day .course-search-results button{color:#244d5f!important}
.courses-root.course-theme-day .course-search-results button:hover{background:#eef7f8!important}
.courses-root.course-theme-day .course-search-results span{color:#718a95!important}
.courses-root.course-theme-day .course-nav-label{color:#567784!important}
.courses-root.course-theme-day .course-nav .nav-module{
  background:linear-gradient(145deg,#f8fbfc,#eef6f8)!important;
  border-color:rgba(47,111,132,.14)!important;
  box-shadow:inset 0 1px #fff!important
}
.courses-root.course-theme-day .course-nav .module-title-row{
  border-bottom-color:rgba(47,111,132,.11)!important
}
.courses-root.course-theme-day .course-nav .nav-module h3{color:#254f62!important}
.courses-root.course-theme-day .course-nav .lesson-row{
  background:#ffffff!important;
  border-color:rgba(47,111,132,.08)!important
}
.courses-root.course-theme-day .course-nav .lesson-row:hover{
  background:#eef7f7!important;
  border-color:rgba(28,145,142,.18)!important
}
.courses-root.course-theme-day .course-nav .lesson-link{color:#4e6e7b!important}
.courses-root.course-theme-day .course-nav .lesson-link>span{color:#426575!important}
.courses-root.course-theme-day .course-nav .lesson-link.active{
  background:linear-gradient(90deg,#dff4f1,#eef9f8)!important;
  box-shadow:inset 3px 0 #20a69f!important
}
.courses-root.course-theme-day .course-nav .lesson-link.active>span{color:#174f5d!important}

@media(max-width:980px){
  .course-player{grid-template-columns:260px minmax(0,1fr)!important}
}
@media(max-width:760px){
  .course-player{grid-template-columns:1fr!important}
  .course-player>.course-nav{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important
  }
  .course-content{min-height:450px!important}
}


/* 2026-09-23: normalize sidebar SVG type badges so icons never escape their cards. */
.course-nav .lesson-link{
  overflow:hidden!important
}
.course-nav .lesson-link>.course-type-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:24px!important;
  height:24px!important;
  margin:0 0 6px!important;
  padding:2px 7px 2px 3px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border-radius:8px!important;
  white-space:nowrap!important;
  vertical-align:top!important
}

/* Older .lesson-link span rules must not reshape the nested SVG badge parts. */
.course-nav .lesson-link>.course-type-badge>span{
  display:flex!important;
  margin:0!important;
  box-sizing:border-box!important
}
.course-nav .lesson-link>.course-type-badge>.course-type-icon{
  display:grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  flex:0 0 18px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:5px!important;
  line-height:0!important
}
.course-nav .lesson-link>.course-type-badge>.course-type-icon svg{
  display:block!important;
  width:11px!important;
  height:11px!important;
  max-width:11px!important;
  max-height:11px!important;
  margin:0!important;
  overflow:hidden!important;
  flex:none!important
}
.course-nav .lesson-link>.course-type-badge>.course-type-icon svg *{
  vector-effect:non-scaling-stroke
}
.course-nav .lesson-link>.course-type-badge>.course-type-label{
  display:block!important;
  min-width:0!important;
  max-width:110px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:850!important
}
.course-nav .lesson-link>.course-type-badge>.course-type-done{
  display:grid!important;
  place-items:center!important;
  width:13px!important;
  height:13px!important;
  min-width:13px!important;
  max-width:13px!important;
  flex:0 0 13px!important;
  margin:0 0 0 1px!important;
  padding:0!important;
  border-radius:4px!important;
  box-shadow:none!important;
  font-size:8px!important;
  line-height:1!important
}

/* The lesson title is independent from the badge and may wrap normally. */
.course-nav .lesson-link>span:not(.course-type-badge){
  display:-webkit-box!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  font-size:10.5px!important;
  line-height:1.35!important
}

/* Softer, compact type treatment in the light sidebar. */
.courses-root.course-theme-day .course-nav .course-type-badge{
  background:rgba(var(--type-rgb),.07)!important;
  border-color:rgba(var(--type-rgb),.18)!important;
  box-shadow:none!important
}
.courses-root.course-theme-day .course-nav .course-type-icon{
  background:rgba(var(--type-rgb),.10)!important;
  border-color:rgba(var(--type-rgb),.20)!important;
  color:rgb(var(--type-rgb))!important
}
.courses-root.course-theme-day .course-nav .course-type-label{
  color:#355f70!important
}
.courses-root.course-theme-day .course-nav .course-type-done{
  background:#2f9e70!important;
  color:#ffffff!important
}

/* Keep every row clipped to its own card on iPad/Edge fractional scaling. */
.course-nav .lesson-row{
  overflow:hidden!important;
  isolation:isolate!important
}
.course-nav .lesson-row .element-more{
  position:relative!important;
  z-index:2!important
}

@media(max-width:980px){
  .course-nav .lesson-link>.course-type-badge>.course-type-label{max-width:92px!important}
}
@media(max-width:760px){
  .course-nav .lesson-link>.course-type-badge{
    height:23px!important;
    min-height:23px!important
  }
  .course-nav .lesson-link>.course-type-badge>.course-type-icon{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    max-width:17px!important;
    flex-basis:17px!important
  }
  .course-nav .lesson-link>.course-type-badge>.course-type-label{
    max-width:150px!important
  }
}


.course-publication-actions { padding: .65rem 1rem; display: flex; align-items: center; gap: .65rem; color: var(--text-muted, #7c98a8); font-size: .85rem; }
.course-publication-actions button { width: 100%; text-align: center; }
.course-card-public [data-enroll] { padding: .55rem .75rem; cursor: pointer; }

/* Course contents drawer: keep the opened material at the top on every screen. */
body.course-nav-open{overflow:hidden}
.course-player{grid-template-columns:minmax(0,1fr)!important}
.course-player>.course-content{grid-column:1;min-width:0}
.course-player>.course-player-toolbar{grid-column:1!important;display:flex;align-items:center;gap:10px;z-index:51}
.course-nav-toggle,.course-nav-close{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid var(--course-line);border-radius:11px;background:rgba(24,80,92,.8);color:#eefcfd;cursor:pointer;font:inherit;font-size:12px;font-weight:750}
.course-nav-close{width:35px;padding:0;font-size:24px;line-height:1}
.course-player>.course-nav{position:fixed!important;top:0!important;bottom:0!important;left:0!important;z-index:1002!important;display:block!important;width:min(380px,calc(100vw - 24px))!important;max-height:100dvh!important;overflow-y:auto!important;overscroll-behavior:contain;border-radius:0 18px 18px 0!important;transform:translateX(-105%);visibility:hidden;pointer-events:none;transition:transform .23s ease,visibility .23s ease!important}
.course-player.nav-open>.course-nav{transform:translateX(0);visibility:visible;pointer-events:auto}
.course-nav-backdrop{position:fixed;inset:0;z-index:1001;border:0;background:rgba(4,16,25,.65);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .23s ease,visibility .23s ease}
.course-player.nav-open>.course-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto;cursor:pointer}
.courses-root.course-theme-day .course-nav-toggle,.courses-root.course-theme-day .course-nav-close{background:#e8f5f6;color:#245263}
@media(max-width:760px){.course-player{grid-template-columns:minmax(0,1fr)!important}.course-player>.course-nav{position:fixed!important;top:0!important;max-height:100dvh!important;overflow-y:auto!important}.course-player>.course-player-toolbar{position:sticky;top:0;gap:6px}.course-nav-toggle{padding:0 9px;font-size:11px}.course-player-toolbar .course-home-button{padding:0 8px}}
@media(prefers-reduced-motion:reduce){.course-player>.course-nav,.course-nav-backdrop{transition:none!important}}

/* Readable course drawer labels on desktop and phones. */
.course-player>.course-nav .course-nav-overview h2{font-size:15px!important;line-height:1.4!important}
.course-player>.course-nav .nav-module h3{font-size:14px!important;line-height:1.4!important}
.course-player>.course-nav .lesson-link>span:not(.course-type-badge){font-size:13px!important;line-height:1.4!important}
.course-player>.course-nav .course-dashboard-link{font-size:14px!important}
.course-player>.course-nav .course-nav-label,.course-player>.course-nav .course-nav-kicker{font-size:11px!important}

/* Keep the modal backdrop dark when the site's day-theme button hover rule applies. */
.course-player>.course-nav-backdrop,
.course-player>.course-nav-backdrop:hover,
.course-player>.course-nav-backdrop:focus-visible{
  background-color:rgba(4,16,25,.65)!important;
  border-color:transparent!important;
  box-shadow:none!important
}

/* The course scrolls with the document, so its toolbar can stick to the viewport. */
.courses-root.course-player-page{overflow:visible}
.course-player>.course-player-toolbar{position:sticky!important;top:0!important;z-index:80!important;justify-content:space-between}
.course-toolbar-links{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}
.course-toolbar-links .course-dashboard-link{display:inline-flex;width:auto;min-height:36px;padding:0 12px;font-size:12px;white-space:nowrap}
@media(max-width:640px){
  .course-player>.course-player-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:7px;top:0!important}
  .course-toolbar-links{grid-column:1/-1;grid-row:2;justify-content:center}
  .course-player-toolbar [data-site-theme-mount]{grid-column:2;grid-row:1;justify-self:end}
  .course-player-toolbar .course-nav-toggle{grid-column:1;grid-row:1;justify-self:start}
}

/* AI tutor Markdown uses its own code block markup; give every nested surface day colors. */
.courses-root.course-theme-day .element-tutor-message-content .md-code-block{
  border-color:rgba(47,111,132,.2)!important;background:#f4f9fb!important
}
.courses-root.course-theme-day .element-tutor-message-content .md-code-head{
  background:#e7f1f5!important;color:#365c6a!important;border-bottom-color:rgba(47,111,132,.18)!important
}
.courses-root.course-theme-day .element-tutor-message-content .md-code-block pre,
.courses-root.course-theme-day .element-tutor-message-content .md-code-block code{
  background:#f4f9fb!important;color:#234659!important
}
.courses-root.course-theme-day .element-tutor-message-content .md-copy-code{color:#176f83!important;background:transparent!important}
.courses-root.course-theme-day .element-tutor-message-content .md-copy-code:hover{color:#0c596b!important;background:#d9edf0!important}
.courses-root.course-theme-day .element-tutor-message-content code:not(pre code){background:#eaf3f6!important;color:#205265!important}
.courses-root.course-theme-day .element-tutor-message-content :is(strong,b){color:#214657!important}
.courses-root.course-theme-day .element-tutor-message-content :is(p,li,td){color:#31515e!important}

.course-player-toolbar .course-toolbar-links .course-dashboard-link{
  align-items:center!important;
  justify-content:center!important;
  line-height:1.2!important;
  text-align:center!important
}

/* Course creation progress is mounted on body, outside .courses-root. */
html[data-site-theme="day"] .course-creation-modal{
  background:rgba(12,27,37,.62)!important;
}
html[data-site-theme="day"] .course-creation-dialog{
  background:#fff!important;
  border-color:#cbdfe9!important;
  color:#233f50!important;
  box-shadow:0 22px 65px rgba(43,79,99,.16)!important;
}
html[data-site-theme="day"] .course-creation-dialog:before{
  background:radial-gradient(ellipse at center,rgba(71,181,195,.12),transparent 68%)!important;
}
html[data-site-theme="day"] .course-creation-dialog .eyebrow{color:#356b7b!important}
html[data-site-theme="day"] .course-creation-dialog h2{color:#233f50!important}
html[data-site-theme="day"] .course-creation-dialog .creation-topic{color:#496579!important}
html[data-site-theme="day"] .course-creation-dialog .creation-progress-head,
html[data-site-theme="day"] .course-creation-dialog .creation-progress-head strong{color:#294b5e!important}
html[data-site-theme="day"] .course-creation-dialog .creation-progress-track{
  background:#e4eff3!important;
  border-color:#c6dce6!important;
  box-shadow:inset 0 1px 3px rgba(40,83,105,.12)!important;
}
html[data-site-theme="day"] .course-creation-dialog .creation-logs{
  background:#f1f8fa!important;
  border-color:#d4e5eb!important;
}
html[data-site-theme="day"] .course-creation-dialog .creation-log{color:#537082!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log.active{color:#205b70!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log.done{color:#365f6c!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log.failed{color:#a93045!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log-dot{background:#839fac!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log.active .creation-log-dot{background:#138e9e!important}
html[data-site-theme="day"] .course-creation-dialog .creation-log.done .creation-log-dot{background:#269b70!important}
html[data-site-theme="day"] .course-creation-dialog .creation-lock-note{color:#4d6979!important}
html[data-site-theme="day"] .course-creation-dialog .creation-lock-note span{color:#176c7b!important}
html[data-site-theme="day"] .course-creation-dialog .creation-orbit b{color:#e6fcff!important}


/* Published-course empty state: keep the catalogue readable in both site themes. */
#published-course-grid .published-empty{
  grid-column:1/-1;
  display:grid;
  place-items:center;
  align-content:center;
  min-height:240px;
  padding:42px 24px;
}
#published-course-grid .published-empty h3{margin:0 0 8px}
#published-course-grid .published-empty p{margin:0}
.courses-root:not(.course-theme-day) #published-course-grid .published-empty{
  background:linear-gradient(145deg,rgba(10,31,46,.96),rgba(7,25,37,.94))!important;
  border-color:rgba(88,217,217,.20)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.22)!important;
}
.courses-root:not(.course-theme-day) #published-course-grid .published-empty h3{color:#e9fbff!important}
.courses-root:not(.course-theme-day) #published-course-grid .published-empty p{color:#a9c6d1!important}
.courses-root.course-theme-day #published-course-grid .published-empty{
  background:linear-gradient(145deg,#ffffff,#f0f8fa)!important;
  border-color:rgba(47,111,132,.17)!important;
  box-shadow:0 12px 30px rgba(42,78,94,.08)!important;
}
.courses-root.course-theme-day #published-course-grid .published-empty h3{color:#244d5f!important}
.courses-root.course-theme-day #published-course-grid .published-empty p{color:#607b87!important}
.courses-root.course-theme-day #published-course-grid .published-empty .empty-orbit{
  background:#edf8fa!important;
  border-color:rgba(47,111,132,.16)!important;
  color:#168e99!important;
}

/* The personal-course empty card follows the same theme as the catalogue card. */
.courses-root:not(.course-theme-day) .course-empty-v2:not(.published-empty){
  background:linear-gradient(145deg,rgba(10,31,46,.96),rgba(7,25,37,.94))!important;
  border-color:rgba(88,217,217,.20)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.22)!important;
}
.courses-root:not(.course-theme-day) .course-empty-v2:not(.published-empty) h3{color:#e9fbff!important}
.courses-root:not(.course-theme-day) .course-empty-v2:not(.published-empty) p{color:#a9c6d1!important}
.courses-root.course-theme-day .course-empty-v2:not(.published-empty){
  background:linear-gradient(145deg,#ffffff,#f0f8fa)!important;
  border-color:rgba(47,111,132,.17)!important;
  box-shadow:0 12px 30px rgba(42,78,94,.08)!important;
}
.courses-root.course-theme-day .course-empty-v2:not(.published-empty) h3{color:#244d5f!important}
.courses-root.course-theme-day .course-empty-v2:not(.published-empty) p{color:#607b87!important}
.courses-root.course-theme-day .course-empty-v2:not(.published-empty) .empty-orbit{
  background:#edf8fa!important;
  border-color:rgba(47,111,132,.16)!important;
  color:#168e99!important;
}

.course-share-dialog{text-align:center;max-width:470px;margin:0 auto}.course-share-dialog h2{margin:6px 0 10px}.course-share-dialog>p:not(.eyebrow){color:#b9d0d8;line-height:1.5;margin:0 auto 18px}.course-share-qr{display:grid;place-items:center;width:220px;height:220px;padding:16px;box-sizing:border-box;margin:0 auto 18px;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18)}.course-share-qr img,.course-share-qr canvas{max-width:188px;max-height:188px}.course-share-link{display:block;text-align:left;margin:0 0 13px;color:#bcd3da;font-size:12px;font-weight:750}.course-share-link input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:11px 12px;border:1px solid var(--course-line);border-radius:11px;background:#091c2b;color:#eafcff;font:inherit}.course-modal.course-theme-day .course-share-dialog>p:not(.eyebrow),.course-modal.course-theme-day .course-share-link{color:#587682!important}.course-modal.course-theme-day .course-share-link input{background:#f8fbfc!important;color:#244b5b!important}

.course-nav-pages{display:grid;gap:7px;margin:0 0 15px}
.course-nav-page{width:100%;padding:11px 13px;border:1px solid rgba(91,177,189,.2);border-radius:11px;background:rgba(39,126,145,.08);color:#cee5e9;text-align:left;font:inherit;font-weight:750;cursor:pointer}
.course-nav-page:hover,.course-nav-page:focus-visible,.course-nav-page.active{border-color:rgba(75,208,204,.5);background:rgba(66,197,190,.16);color:#e8ffff}
.course-roster-page{padding:24px;min-height:320px}
.course-roster-page header h1{margin:4px 0 8px;font-size:clamp(25px,3vw,36px)}
.course-roster-page header>p:last-child{color:#a6c6cd;line-height:1.5}
.course-roster-search{display:block;margin:22px 0 14px;color:#9bc6cf;font-size:12px;font-weight:750}
.course-roster-search input{display:block;box-sizing:border-box;width:100%;max-width:440px;margin-top:7px;padding:12px 14px;border:1px solid var(--course-line);border-radius:12px;background:rgba(9,30,45,.75);color:#eaffff;font:inherit;font-size:14px}
.course-roster-count{margin:18px 0 10px;color:#8ebbc5;font-size:13px}
.course-roster-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--course-line);border-radius:14px}
.course-roster-table{width:100%;min-width:570px;border-collapse:collapse;text-align:left;font-size:13px}
.course-roster-table th,.course-roster-table td{padding:14px 15px;border-bottom:1px solid var(--course-line);vertical-align:middle}
.course-roster-table tr:last-child td{border-bottom:0}
.course-roster-table th{color:#8fbdc5;font-size:11px;text-transform:uppercase;letter-spacing:.07em;background:rgba(34,115,135,.12)}
.course-roster-table td{color:#d7e9ed}.course-roster-table td strong{font-weight:750}.course-roster-table td small{display:block;margin-top:4px;color:#82aeb8}
.course-roster-percent{color:#66dbd4;font-weight:850;white-space:nowrap}
.course-roster-empty{margin:20px 0;padding:18px;border:1px solid var(--course-line);border-radius:12px;color:#a6c6cd}
.course-roster-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin:18px 0;color:#a6c6cd}
.course-roster-pagination button{padding:8px 13px;border:1px solid var(--course-line);border-radius:10px;background:rgba(39,126,145,.14);color:inherit;font:inherit;cursor:pointer}
.course-roster-pagination button:disabled{opacity:.4;cursor:default}
.courses-root.course-theme-day .course-nav-page{background:#f4fafb;color:#315669;border-color:#cbdfe4}
.courses-root.course-theme-day .course-nav-page.active,.courses-root.course-theme-day .course-nav-page:hover{background:#e3f6f5;color:#087f86}
.courses-root.course-theme-day .course-roster-page header>p:last-child,.courses-root.course-theme-day .course-roster-count,.courses-root.course-theme-day .course-roster-empty,.courses-root.course-theme-day .course-roster-pagination{color:#52717c}
.courses-root.course-theme-day .course-roster-search{color:#52717c}
.courses-root.course-theme-day .course-roster-search input{background:#fff;color:#244d5f}
.courses-root.course-theme-day .course-roster-table th{background:#edf7f8;color:#4b6c77}
.courses-root.course-theme-day .course-roster-table td{color:#254c5c}
.courses-root.course-theme-day .course-roster-table td small{color:#64818b}
.courses-root.course-theme-day .course-roster-percent{color:#087f86}
.courses-root.course-theme-day .course-roster-pagination button{background:#edf7f8}
@media(max-width:760px){.course-roster-page{padding:17px}.course-roster-table{min-width:520px}}

.course-plan-review>p:not(.eyebrow){color:#a6c6cd;line-height:1.55}
.course-plan-list{max-height:min(55vh,560px);overflow:auto;display:grid;gap:14px;margin:20px 0;padding-right:4px}
.course-plan-module{padding:16px;border:1px solid var(--course-line);border-radius:16px;background:rgba(38,128,145,.07)}
.course-plan-module h3{margin:0 0 6px;font-size:1.06rem}
.course-plan-module>p{margin:0 0 12px;color:#a6c6cd;font-size:.89rem}
.course-plan-elements{display:grid;gap:7px}
.course-plan-element{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--course-line);border-radius:11px;cursor:pointer}
.course-plan-element:has(input:not(:checked)){opacity:.55}
.course-plan-element input{width:19px;height:19px;margin:0;flex:none;accent-color:#1ab9b3}
.course-plan-element-copy{display:grid;gap:2px;min-width:0}
.course-plan-element-copy small{color:#68cfc8}
.course-plan-element-copy b{font-size:.93rem;font-weight:650}
.course-plan-count{margin:0 0 10px;color:#8bdad4;font-weight:700}
.course-plan-error{color:#ff9d9d;margin:0 0 10px}
.course-modal.course-theme-day .course-plan-review>p:not(.eyebrow),.course-modal.course-theme-day .course-plan-module>p{color:#53717c}
.course-modal.course-theme-day .course-plan-module{background:#eff8f9}
.course-modal.course-theme-day .course-plan-element-copy small,.course-modal.course-theme-day .course-plan-count{color:#087f86}
@media(max-width:760px){.course-plan-list{max-height:52vh}.course-plan-module{padding:12px}}

/* Keep the page visible behind all course dialogs in the light site theme. */
html[data-site-theme="day"] .course-modal.course-theme-day{background:rgba(12,27,37,.62)!important}


/* The optional course brief can hold a detailed teaching prompt without squeezing the dialog. */
.course-field-optional{font-weight:600;color:var(--course-muted);font-size:12px}
.course-creation-preferences{min-height:190px;resize:vertical;line-height:1.5}
@media(max-width:600px){.course-creation-preferences{min-height:155px}}


/* Lesson editor for course authors. */
.lesson-editor{max-width:860px;margin:0 auto}
.lesson-editor>p:not(.eyebrow){color:var(--course-muted);line-height:1.5}
.lesson-editor-blocks{display:grid;gap:12px;max-height:min(55vh,620px);overflow:auto;margin:18px 0}
.lesson-editor-card{padding:14px;border:1px solid var(--course-line);border-radius:14px;background:rgba(35,117,137,.08)}
.lesson-editor-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.lesson-editor-card label{display:grid;gap:6px;margin-top:10px;color:var(--course-muted);font-size:12px;font-weight:700}
.lesson-editor-card input,.lesson-editor-card textarea,.lesson-editor-card select{width:100%;border:1px solid var(--course-line);border-radius:10px;background:rgba(8,28,42,.75);color:var(--course-text);padding:10px 11px;font:inherit;font-size:14px;resize:vertical}
.lesson-editor-card small{font-weight:500;color:var(--course-muted)}
.lesson-editor-card-actions{display:flex;gap:6px}.lesson-editor-card-actions button{width:30px;height:30px;padding:0;border:1px solid var(--course-line);border-radius:8px;background:rgba(40,141,159,.13);color:var(--course-text);font:inherit;cursor:pointer}.lesson-editor-card-actions button:disabled{opacity:.35;cursor:default}
.lesson-editor-add{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.lesson-editor-empty{margin:0;padding:24px;text-align:center;color:var(--course-muted);border:1px dashed var(--course-line);border-radius:12px}.lesson-editor-toolbar{display:flex;justify-content:flex-end;margin:0 0 14px}
.course-theme-day .lesson-editor-card{background:#f0f8f9!important}.course-theme-day .lesson-editor-card input,.course-theme-day .lesson-editor-card textarea,.course-theme-day .lesson-editor-card select{background:#fff!important;color:#244d5f!important;border-color:#c6dce4!important}
@media(max-width:600px){.lesson-editor-blocks{max-height:50vh}.lesson-editor-toolbar{justify-content:stretch}.lesson-editor-toolbar button{width:100%}}

.lesson-editor-ai-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.lesson-editor-image img{display:block;width:100%;max-height:280px;object-fit:contain;border-radius:10px;background:var(--course-card);margin:10px 0}

.course-editable-block{position:relative;padding:8px 0 2px;border-radius:14px;transition:background .18s ease}
.course-editable-block:hover{background:rgba(35,117,137,.06)}
.course-editable-block-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:28px;padding:0 4px}
.course-editable-block-bar small{margin-right:auto;color:var(--course-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.lesson-block-menu{position:relative}.lesson-block-settings{width:29px;height:29px;border:1px solid var(--course-line);border-radius:9px;background:var(--course-card);color:var(--course-muted);cursor:pointer}
.lesson-block-settings:hover{color:var(--course-text);border-color:var(--course-accent)}
.lesson-block-popover{display:none;position:absolute;right:0;top:34px;z-index:12;width:230px;padding:6px;border:1px solid var(--course-line);border-radius:12px;background:var(--course-card);box-shadow:0 14px 32px rgba(0,0,0,.22)}
.lesson-block-popover.open{display:grid}.lesson-block-popover button{padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--course-text);text-align:left;cursor:pointer}.lesson-block-popover button:hover{background:rgba(35,117,137,.1)}.lesson-block-popover button:disabled{opacity:.35;cursor:default}.lesson-block-popover button.danger{color:#d85b5b}
.course-theme-day .course-editable-block:hover{background:#edf7fa}.course-theme-day .lesson-block-popover,.course-theme-day .lesson-block-settings{background:#fff}

.lesson-block-dialog{display:grid;gap:14px;min-width:min(620px,100%)}
.lesson-block-dialog label{display:grid;gap:6px;color:var(--course-text);font-weight:650}
.lesson-block-dialog label small{font-weight:500;color:var(--course-muted)}
.lesson-block-dialog input,.lesson-block-dialog textarea,.lesson-block-dialog select{box-sizing:border-box;width:100%;border:1px solid var(--course-line);border-radius:10px;background:rgba(8,28,42,.75);color:var(--course-text);padding:10px 11px;font:inherit;font-size:14px}
.lesson-block-dialog textarea{resize:vertical;min-height:76px}
.course-theme-day .lesson-block-dialog input,.course-theme-day .lesson-block-dialog textarea,.course-theme-day .lesson-block-dialog select{background:#fff!important;color:#244d5f!important;border-color:#c6dce4!important}
@media(max-width:680px){.lesson-block-dialog{min-width:0}.lesson-block-dialog textarea{min-height:96px}}

.lesson-block-popover{background:#0b2230!important;opacity:1!important;backdrop-filter:none!important}
.course-theme-day .lesson-block-popover{background:#fff!important}
.lesson-ai-current{padding:10px 12px;border:1px solid var(--course-line);border-radius:10px;background:rgba(35,117,137,.08);max-height:170px;overflow:auto}.lesson-ai-current small{color:var(--course-muted);text-transform:uppercase;letter-spacing:.08em}.lesson-ai-current p{margin:6px 0 0;white-space:pre-wrap;line-height:1.45}
.lesson-ai-dialog-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.lesson-ai-dialog-actions button{min-width:140px}

.course-editable-block{cursor:context-menu}
.course-editable-block .lesson-block-popover{position:fixed}

.course-file-attachment{display:flex;align-items:center;gap:10px;padding:13px 15px;margin:12px 0;border:1px solid var(--course-line);border-radius:13px;background:rgba(35,117,137,.09);color:var(--course-text);text-decoration:none}.course-file-attachment:hover{border-color:var(--course-accent);background:rgba(35,117,137,.15)}.course-file-attachment b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-file-attachment small{margin-left:auto;color:var(--course-muted);white-space:nowrap}


/* Block editor: dialogs only close through the visible controls. */
.course-dialog{max-height:calc(100vh - 36px);overflow:auto}
.dialog-close{z-index:4;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(173,231,238,.22);border-radius:50%;background:#102d3d;color:#fff;font-size:25px;line-height:1;transition:background .16s,transform .16s}
.dialog-close:hover{background:#1b5368;transform:scale(1.06)}
.course-theme-day .dialog-close{background:#edf7fa;color:#174252;border-color:#c6dce4}
.lesson-block-popover{width:252px;z-index:10020}
.lesson-block-popover hr{width:100%;height:1px;margin:3px 0;border:0;background:var(--course-line)}
.lesson-action-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lesson-action-buttons button{min-height:48px}
.lesson-action-dialog .course-muted{margin:0;color:var(--course-muted);line-height:1.45}

.course-file-attachment{gap:13px;min-height:64px}
.course-file-copy{display:grid;gap:3px;min-width:0}.course-file-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-file-copy small{color:var(--course-muted)}
.course-file-icon{position:relative;display:grid;place-items:center;flex:none;width:46px;height:52px;border-radius:10px;background:#38586d;color:#fff;overflow:hidden}.course-file-icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:1.55}.course-file-icon i{position:absolute;right:0;bottom:0;left:0;padding:2px 0;background:rgba(0,0,0,.26);font-style:normal;font-size:9px;font-weight:850;letter-spacing:.05em;text-align:center}.course-file-icon.file-pdf{background:#c74b4b}.course-file-icon.file-doc{background:#3575c4}.course-file-icon.file-sheet{background:#279868}.course-file-icon.file-slides{background:#d87939}.course-file-icon.file-text{background:#687a87}.course-file-icon.file-archive{background:#865cba}

.course-checklist{list-style:none;padding-left:0}.course-checklist li{position:relative;padding-left:29px}.course-checklist li:before{content:"✓";position:absolute;left:0;top:.08em;display:grid;place-items:center;width:18px;height:18px;border:1px solid var(--course-accent);border-radius:50%;color:var(--course-accent);font-size:12px}
.course-timeline{display:grid;gap:12px;margin:16px 0;padding:0;list-style:none}.course-timeline li{display:grid;grid-template-columns:minmax(82px,auto) 1fr;gap:12px;align-items:start;padding-left:14px;border-left:2px solid var(--course-accent)}.course-timeline b{color:var(--course-accent);font-size:13px}.course-timeline span{line-height:1.5}
.course-accordion,.course-flashcards{display:grid;gap:9px;margin:14px 0}.course-accordion details,.course-flashcards details{border:1px solid var(--course-line);border-radius:12px;background:rgba(35,117,137,.08);padding:11px 13px}.course-accordion summary,.course-flashcards summary{cursor:pointer;font-weight:760}.course-accordion p,.course-flashcards p{margin:10px 0 2px;line-height:1.5}.course-flashcards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.course-flashcards details{background:linear-gradient(145deg,rgba(60,132,162,.17),rgba(35,117,137,.05))}
.course-formula,.course-task,.course-source,.course-video{display:grid;gap:8px;margin:15px 0;padding:15px 17px;border:1px solid var(--course-line);border-radius:14px;background:rgba(35,117,137,.08)}
.course-video-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:#08141d}.course-video-frame iframe{display:block;width:100%;height:100%;border:0}.course-video .course-secondary{max-width:100%}
.course-video-file{min-width:0;gap:14px;padding:16px}
.course-video-heading{display:flex;align-items:center;gap:10px;min-width:0}
.course-video-heading b{min-width:0;overflow-wrap:anywhere;line-height:1.5}
.course-video-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;background:rgba(35,117,137,.14);color:var(--course-accent);font-size:13px}
.course-video-player{width:100%;aspect-ratio:16/9;max-height:65vh;border-radius:12px;overflow:hidden;background:#080f17}
.course-video-player video{display:block;width:100%;height:100%;object-fit:contain}
.course-upload-stack{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));right:20px;width:min(380px,calc(100vw - 40px));display:grid;gap:10px;max-height:50vh;overflow:auto;z-index:100002;pointer-events:none}
.course-upload-progress{padding:15px 17px;border-radius:14px;background:#13243a!important;color:#f4f8ff!important;border:1px solid #43576d;box-shadow:0 8px 30px #0003;font:13px/1.5 system-ui,sans-serif;pointer-events:auto}
.course-upload-progress strong{color:#f4f8ff!important;font-size:14px}
.course-upload-name{margin:5px 0 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.course-upload-progress progress{display:block;width:100%;height:8px;margin-bottom:8px;accent-color:#259b81}
.course-upload-progress.failed{border-color:#c34c4c}
.course-upload-progress.failed progress{accent-color:#c34c4c}
@media(max-width:600px){.course-video-file{padding:10px;gap:10px}.course-upload-stack{right:12px;width:calc(100vw - 24px)}}
.course-formula b,.course-task b,.course-source b,.course-video b{color:var(--course-accent)}.course-formula code{display:block;white-space:pre-wrap;padding:11px;border-radius:9px;background:rgba(3,15,23,.36);color:#c5fbf4;font:600 14px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.course-source a,.course-video a{width:max-content;text-decoration:none}.course-task p,.course-source span,.course-video p{margin:0;line-height:1.5}.course-callout.red_flags{border-color:rgba(227,91,91,.55);background:rgba(180,54,54,.12)}.course-callout.red_flags b{color:#ff9999}.course-callout.pitfalls{border-color:rgba(230,173,71,.48);background:rgba(184,129,25,.1)}.course-callout.mnemonic{border-color:rgba(139,119,229,.48);background:rgba(90,69,180,.11)}
.course-theme-day .course-accordion details,.course-theme-day .course-flashcards details,.course-theme-day .course-formula,.course-theme-day .course-task,.course-theme-day .course-source,.course-theme-day .course-video{background:#fff}.course-theme-day .course-formula code{background:#eef6f8;color:#174252}
@media(max-width:560px){.lesson-action-buttons{grid-template-columns:1fr}.course-file-attachment{align-items:flex-start}.course-file-attachment small{margin-left:0}.course-timeline li{grid-template-columns:1fr}.course-timeline b{margin-bottom:-6px}}


/* New lesson blocks: readable in both colour schemes. */
.course-theme-day .course-file-attachment{background:#fff;border-color:#c8dce4;color:#174252;box-shadow:0 2px 9px rgba(20,67,82,.05)}
.course-theme-day .course-file-attachment:hover{background:#f3fafb;border-color:#6fa5b5}
.course-theme-day .course-timeline li{border-left-color:#348da1}.course-theme-day .course-timeline b{color:#196a7b}
.course-theme-day .course-checklist li:before{border-color:#227b8e;color:#227b8e}
.course-theme-day .course-accordion details[open],.course-theme-day .course-flashcards details[open]{background:#eff9fb}
.course-theme-day .course-callout.red_flags{background:#fff3f3;border-color:#e5a2a2;color:#642c2c}.course-theme-day .course-callout.red_flags b{color:#a53030}
.course-theme-day .course-callout.pitfalls{background:#fff9eb;border-color:#e5c77c;color:#654d18}.course-theme-day .course-callout.mnemonic{background:#f6f2ff;border-color:#b9a8e5;color:#49347d}
.course-theme-day .course-source a,.course-theme-day .course-video a{color:#176a7d}
.course-theme-day .course-file-copy small{color:#5d7884}
.course-theme-day .lesson-action-dialog .course-muted{color:#5d7884}


/* Close control inside the block context menu. */
.lesson-block-popover{padding-top:39px}
.lesson-block-popover .lesson-menu-close{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:27px;height:27px;padding:0!important;border:1px solid rgba(174,229,237,.25)!important;border-radius:50%!important;background:#16384a!important;color:#fff!important;font-size:21px!important;line-height:1!important;text-align:center!important}
.lesson-block-popover .lesson-menu-close:hover{background:#27647a!important;transform:scale(1.06)}
.course-theme-day .lesson-block-popover .lesson-menu-close{background:#eef7fa!important;border-color:#b9d3dc!important;color:#174252!important}

.course-element-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:18px 0 6px;border-top:1px solid var(--course-line)}
.course-element-navigation[hidden],.course-element-navigation button[hidden]{display:none}
.course-element-navigation .course-element-next{margin-left:auto}
#lesson-content{scroll-margin-top:96px}
@media(max-width:640px){.course-element-navigation{gap:8px}.course-element-navigation .course-secondary{min-height:42px;padding:0 12px}}

/* Compact spacing between the blocks of an open lesson. */
.lesson [data-lesson-content] > *{margin-top:0;margin-bottom:0}
.lesson [data-lesson-content] > * + *{margin-top:12px}
.lesson [data-lesson-content] > h2 + *{margin-top:8px}
.lesson [data-lesson-content] > .course-editable-block > :first-child{margin-top:0;margin-bottom:0}
.lesson .lesson-section-head{margin-bottom:14px}
.lesson .lesson-actions{margin-top:18px}

.lesson .course-sublist{display:grid;gap:5px;margin:9px 0 0;padding-left:22px;list-style:disc}
.lesson .course-sublist > li{display:list-item;position:static;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;line-height:1.45}
.lesson .course-sublist > li::before{content:none;counter-increment:none}
.lesson .course-sublist > li::marker{color:var(--course-cyan)}
.lesson .course-list-label strong{font-weight:800}
.lesson .course-list-intro{margin:0 0 9px;line-height:1.55}

.course-dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.course-dashboard-heading h1{flex:1 1 360px;margin-bottom:8px}
.course-dashboard-heading .course-dashboard-edit{flex:0 0 auto;margin-top:5px}
.course-dashboard header>p.course-dashboard-description{color:var(--course-muted);line-height:1.55;white-space:pre-wrap}

.lesson-title-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.lesson-title-row h1{margin:10px 0 0}
.lesson-title-edit{margin-top:10px;white-space:nowrap;font-size:12px}
.course-empty-lesson{padding:24px;border:1px dashed var(--course-line);border-radius:16px;background:rgba(82,217,219,.04)}
.course-empty-lesson p{margin:0 0 16px;color:var(--course-muted)}
@media(max-width:600px){.lesson-title-edit{width:100%}}

/* Keep line breaks entered in lesson text, including lists and table cells. */
.lesson [data-lesson-content]{white-space:pre-line}

/* A saved font size belongs only to the content of its lesson block. */
.lesson .course-block-font,
.lesson .course-block-font :is(h2,p,ol,ul,li,span,b,strong,em,a,th,td,summary,code,small){font-size:var(--course-block-font-size)!important}
.lesson .course-block-font > :first-child{margin-top:0}
.lesson .course-block-font > :last-child{margin-bottom:0}
.course-font-preview{max-height:320px;overflow:auto;padding:16px;border:1px solid var(--course-line);border-radius:12px;margin:16px 0}

/* Course media library. */
.course-library-page{max-width:1160px;margin:0 auto;padding:28px 22px 64px}
.course-library-page header h1{margin:4px 0 10px}
.course-library-page header>p:last-child{max-width:740px;color:var(--course-muted);line-height:1.55}
.course-library-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:24px 0 12px}
.course-library-toolbar input[type=search]{flex:1;min-width:180px;max-width:460px;padding:12px 14px;border:1px solid var(--course-line);border-radius:12px;background:var(--course-panel);color:inherit}
.course-library-message{min-height:22px;margin:0 0 14px;color:var(--course-muted)}
.course-library-message.error{color:#ee7979}
.course-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}
.course-library-card{min-width:0;overflow:hidden;border:1px solid var(--course-line);border-radius:16px;background:var(--course-panel)}
.course-library-preview{height:168px;display:grid;place-items:center;background:rgba(76,157,172,.10)}
.course-library-preview img{width:100%;height:100%;object-fit:contain}
.course-library-file-icon{font-size:56px;color:var(--course-cyan)}
.course-library-info{display:grid;gap:5px;padding:14px 15px 10px}
.course-library-info b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.course-library-info small{overflow:hidden;color:var(--course-muted);text-overflow:ellipsis;white-space:nowrap}
.course-library-actions{display:flex;gap:7px;flex-wrap:wrap;padding:4px 15px 15px}
.course-library-actions .course-primary,.course-library-actions .course-secondary{font-size:12px;padding:8px 11px;min-height:34px;text-decoration:none}
.course-library-empty{grid-column:1/-1;padding:28px;border:1px dashed var(--course-line);border-radius:16px;color:var(--course-muted)}
.course-library-page [hidden]{display:none!important}
@media(max-width:600px){.course-library-page{padding:18px 12px 48px}.course-library-toolbar{align-items:stretch;flex-direction:column}.course-library-toolbar input[type=search]{max-width:none;width:100%}.course-library-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}}

.course-library-picker{display:grid;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--course-line)}
.course-library-picker>div{display:grid;gap:10px}
.course-library-picker label{display:grid;gap:6px}
.course-block-drag-bar{display:flex;justify-content:flex-end;padding:0 4px 4px}
.course-block-drag-handle{display:grid;place-items:center;width:32px;height:30px;padding:0;border:1px solid var(--course-line);border-radius:8px;background:var(--course-card);color:var(--course-muted);font-size:24px;line-height:1;cursor:grab;user-select:none}
.course-block-drag-handle:hover,.course-block-drag-handle:focus-visible{color:var(--course-accent);border-color:var(--course-accent)}
.course-block-drag-handle:active{cursor:grabbing}
.course-editable-block.course-block-dragging{opacity:.45}
.course-editable-block.course-block-drop-before::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;border-radius:3px;background:var(--course-accent);pointer-events:none;z-index:2}

.course-youtube-progress{display:block;width:100%;height:12px;margin:12px 0 4px;accent-color:var(--course-accent)}
.course-youtube-progress[hidden]{display:none!important}


/* Visual media pickers and manually paged lecture photos. */
.course-media-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;max-height:55vh;overflow:auto;white-space:normal}
.course-media-grid[hidden]{display:none!important}
.course-media-tile{display:flex;flex-direction:column;gap:9px;min-width:0;padding:10px;border:1px solid var(--course-line);border-radius:12px;background:var(--course-card);color:var(--course-text);font:inherit;text-align:left}
button.course-media-tile{cursor:pointer}
.course-media-tile:hover,.course-media-tile.selected{border-color:var(--course-accent)}
.course-media-tile:disabled{opacity:.55}
.course-media-tile>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px}
.course-media-tile .course-library-preview{position:relative;display:flex;flex-direction:column;width:100%;height:130px;overflow:hidden;border-radius:8px}
.course-library-preview{position:relative;overflow:hidden}
.course-library-preview video{width:100%;height:100%;object-fit:contain}
.course-media-kind{position:absolute;right:7px;bottom:7px;border-radius:6px;padding:3px 7px;background:#102333cc;color:white;font-size:12px}
.course-slide-actions{display:flex;gap:8px}
.course-slide-actions button{padding:6px 12px;border:1px solid var(--course-line);border-radius:7px;background:var(--course-card);color:var(--course-text);cursor:pointer}
.course-slideshow{margin:12px 0;padding:14px;border:1px solid var(--course-line);border-radius:14px;background:var(--course-card);white-space:normal;touch-action:pan-y}
.course-slideshow figure{margin:12px 0}
.course-slideshow figure[hidden]{display:none!important}
.course-slideshow figure>button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.course-slideshow img{display:block;width:100%;height:min(55vh,500px);object-fit:contain;border-radius:9px}
.course-slideshow figcaption{margin-top:9px;text-align:center;white-space:pre-wrap}
.course-slideshow-nav{display:flex;align-items:center;justify-content:center;gap:18px}
.course-slide-full{display:block;max-width:100%;max-height:85vh;object-fit:contain}
.course-theme-day .course-media-tile,.course-theme-day .course-slideshow{background:#fff;color:#174252}
@media(max-width:600px){.course-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-slideshow{padding:9px}.course-slideshow img{height:38vh}}
