/* Shared application theme. Media and answer colours retain their meaning. */
html.dark-theme{background:#18181b;color-scheme:dark}
body.dark-theme{--ui-accent:#a7c7a0;--ui-focus:#6B8F6B;--ui-ink:#f0f0f2;--ui-muted:#a6a6ad;--ui-border:#414146;--ui-surface:#242427;--ui-soft:#2e2e32;--ui-danger:#ffa79f;--brand-main:#6B8F6B;--brand-ink:#f0f0f2;--brand-bg:#18181b;--brand-border:#414146;--brand-muted:#a6a6ad;--builder-ink:#f0f0f2;--builder-muted:#a6a6ad;--builder-border:#414146;--builder-green:#6B8F6B;--builder-badge:#6B8F6B;background:#18181b!important;color:#f0f0f2!important;color-scheme:dark}
body.dark-theme:not(.live-lesson) :is(.home,.shell-main,.shell-content,.builder-workspace,.lesson-builder,.work-heading,.library-heading,.materials-section,.material-tabs,.section-editor-actions){background:transparent;color:var(--ui-ink)}
body.dark-theme #app-header{background:#202023!important;border-color:var(--ui-border)!important;color:var(--ui-ink)}
body.dark-theme #app-header :is(a,button,summary){color:var(--ui-ink)}
body.dark-theme #app-header :is(.notification-menu>summary,.account-menu>summary){background:var(--ui-soft)!important;color:var(--ui-ink)!important}
body.dark-theme :is(.account-dropdown,.notification-panel,.catalog-dropdown,.block-actions-dropdown,.section-actions-popover,.ui-dialog,.cover-dialog,.inline-gap-popup,.field-help-content,.image-options-popup,dialog){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:0 12px 32px #0005}
body.dark-theme dialog::backdrop{background:#09090baa;backdrop-filter:blur(3px)}
body.dark-theme:not(.live-lesson) :is(.ui-card,.catalog-course,.library-module,.admin-course,.editor-block,.builder-outline,.section-editor-header,.student-form,.homework-editor-info,#import-panel,.exercise,.class-card,.material-card,.subscription-current,.subscription-card,.homework-students,.assignment-card-wrap,.homework-summary-card,.profile-editor){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:none}
body.dark-theme:not(.live-lesson) :is(h1,h2,h3,h4,label,strong,summary,.work-details,.catalog-course-title,.library-title,.section-nav-button,.block-title-input,.builder-card-heading){color:var(--ui-ink)!important}
body.dark-theme:not(.live-lesson) :is(p,small,time,.form-note,.library-eyebrow,.catalog-description,.catalog-course-meta,.student-latest,.class-presence,.work-date,.editor-field-caption,.editor-options-caption,.block-move-field,.section-breadcrumb,.notification-empty){color:var(--ui-muted)}
body.dark-theme:not(.live-lesson) :is(a,.text-button,.editor-add,.editor-add-question){color:var(--ui-accent)}
body.dark-theme:not(.live-lesson) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea,select,[contenteditable=true]){background:#202023!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;caret-color:#c4deb9;box-shadow:none}
body.dark-theme :is(input,textarea,[contenteditable])::placeholder{color:#a6a6ad!important;opacity:1}
body.dark-theme :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:#6B8F6B}
body.dark-theme:not(.live-lesson) :is(button,.ui-button,.home-actions a,.work-actions a,.catalog-back,.copy-invite){background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:none}
body.dark-theme:not(.live-lesson) :is(button,.ui-button,.work-actions a,.catalog-back):hover:not(:disabled){background:#39393e!important;border-color:#626269!important}
body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-lesson,#auth-submit){background:#6B8F6B!important;color:#fff!important;border-color:#6B8F6B!important}
body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-lesson,#auth-submit):hover:not(:disabled){background:#6B8F6B!important}
body.dark-theme:not(.live-lesson) :is(.ui-danger,.danger,.editor-remove,[data-action=delete]){color:#ffaaa3!important}
body.dark-theme:not(.live-lesson) :is(.class-add-card,.student-avatar,.catalog-course-cover,.library-icon,.catalog-module-icon,.gap-chip,.inline-gap-token,.block-ask-ai,.editor-segments,.editor-picture,.editor-picture-add,.choice-question-editor,.column-editor-card,.builder-array-row,.image-editor-card,.gap-editor-card,.rich-toolbar,.rich-editor,.cover-preview,.ui-empty,.embed-access-hint){background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme:not(.live-lesson) :is(.section-nav-button[aria-current=true],.editor-segments [aria-pressed=true],.editor-segments input:checked+label,.correct-option){background:#354d3b!important;color:#d6ebce!important;border-color:#8aaa7e!important}
body.dark-theme:not(.live-lesson) :is(.material-tabs,.admin-course-item,.library-row,.rich-toolbar,.block-move-field,hr){border-color:var(--ui-border)!important}
body.dark-theme:not(.live-lesson) :is(.save-state,.save-status,#save-status){background:#2d4132;color:#c2ddbb}
body.dark-theme :is(.notification-item,.account-dropdown p){color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme .notification-item.unread{background:#304737!important}
body.dark-theme .profile-theme input{background:#626269!important;border:0!important}
body.dark-theme .profile-theme input:checked{background:#6B8F6B!important}
body.dark-theme .profile-theme input:before{background:#fff}
body.dark-theme:not(.live-lesson) :is(.builder-card-heading,.block-editor-body,.block-editor-toggle,.block-actions-dropdown>button,.section-actions-menu>summary){background:transparent!important}
body.dark-theme:not(.live-lesson) .block-editor-toggle h3{background:#6B8F6B!important;color:#fff!important}
body.dark-theme .builder-design-icon{filter:brightness(1.3) saturate(.7)}

body.dark-theme :is(button,input,select):disabled{opacity:.48}
body.dark-theme .ui-audio-player{background:#2e2e32!important;border-color:var(--ui-border)!important;color:var(--ui-ink)}
body.dark-theme .audio-settings :is(summary,.ui-audio-rates){background:#39393e!important;color:var(--ui-ink)!important}
body.dark-theme:not(.live-lesson) :is([role=alert],.error,#admin-error,#account-status:not(:empty)){color:#ffb7af}
body.dark-theme ::selection{background:#6B8F6B;color:#fff}
/* Authentication uses the same typography, quiet surfaces and spacing in both themes. */
body.auth-screen{font-family:Manrope,system-ui,sans-serif;background:#fafaf7;color:#2c3e2c;min-height:100dvh;margin:0}
.auth-screen #app-header{background:transparent;border:0;padding:28px max(24px,calc((100vw - 1200px)/2));min-height:0}
.auth-screen .auth-layout{max-width:1100px;margin:30px auto 70px;padding:24px;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:90px}
.auth-screen .auth-story{max-width:460px}.auth-screen .auth-eyebrow{font-size:12px;letter-spacing:.1em;font-weight:700;color:#6B8F6B;margin:0 0 24px}
.auth-screen .auth-story h1{font-size:clamp(32px,4vw,48px);font-weight:750;line-height:1.18;letter-spacing:-.045em;margin:0 0 24px}
.auth-screen .auth-story p{font-size:16px;line-height:1.8;color:#6b7a6b;margin:0 0 32px}
.auth-screen .auth-story-list{display:grid;gap:14px;padding:0;list-style:none;font-size:14px;color:#506650}.auth-story-list li{display:flex;align-items:center;gap:12px}.auth-story-list span{display:grid;place-items:center;width:28px;height:28px;background:#eaf0e5;border-radius:9px;color:#6B8F6B}
.auth-screen .auth-card{background:#fff;border:1px solid #e1e6dc;border-radius:28px;padding:36px;box-shadow:0 12px 45px #2d3b2d0a;min-width:0}
.auth-screen .auth-card h2{font-size:28px;letter-spacing:-.03em;line-height:1.25;margin:0 0 10px;color:inherit}
.auth-screen .auth-subtitle{font-size:14px;line-height:1.65;margin:0 0 28px;color:#6b7a6b}
.auth-screen #auth-form label{display:block;font-size:13px;font-weight:600;margin:20px 0 8px}
.auth-screen #auth-form input{width:100%;box-sizing:border-box;padding:13px 15px;height:48px;border:1px solid #dce3d6;border-radius:12px;background:#fafbf8;color:#2c3e2c;font:inherit;font-size:15px;margin:0}
.auth-screen .password-field{position:relative}.auth-screen .password-field input{padding-right:75px!important}
.auth-screen .password-toggle{position:absolute;right:7px;top:7px;height:34px;padding:0 9px;font:inherit;font-size:11px;border:0;border-radius:8px;color:#617b5c;background:transparent;cursor:pointer}
.auth-screen .form-note{font-size:12px;margin:10px 0 24px;line-height:1.5;color:#6b7a6b}
.auth-screen #auth-submit{width:100%;min-height:48px;border:1px solid #6B8F6B;border-radius:12px;background:#6B8F6B;color:white;font:600 14px Manrope,system-ui;cursor:pointer;padding:13px 18px;transition:background .15s}
.auth-screen #auth-submit:hover{background:#6B8F6B}.auth-screen #auth-submit:disabled{opacity:.65;cursor:wait}
.auth-screen #account-status{margin:16px 0 0;padding:12px 14px;background:#fff3f0;color:#9d3932;border-radius:12px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.auth-screen #account-status:empty{display:none}
.auth-screen .auth-alternate{margin:24px 0 0;text-align:center;font-size:13px}.auth-screen #auth-switch{color:#52734e;text-decoration:none;font-weight:600}.auth-screen #auth-switch:hover{text-decoration:underline}
.auth-screen .auth-back{display:inline-flex;gap:8px;text-decoration:none;color:#6b7a6b;font-size:13px;margin-top:30px}.auth-screen .auth-back:hover{color:#355b37}
body.dark-theme.auth-screen .auth-card{background:var(--ui-surface);border-color:var(--ui-border);box-shadow:none}
body.dark-theme.auth-screen .auth-story-list{color:var(--ui-muted)}body.dark-theme.auth-screen .auth-story-list span{background:var(--ui-soft);color:var(--ui-accent)}
body.dark-theme.auth-screen #account-status:not(:empty){background:#472d2b;color:#ffb7af}
@media(max-width:850px){.auth-screen .auth-layout{gap:36px;grid-template-columns:1fr 390px}.auth-screen .auth-story h1{font-size:34px}}
@media(max-width:680px){.auth-screen #app-header{padding:22px}.auth-screen .auth-layout{display:block;max-width:470px;padding:20px;margin:0 auto 35px}.auth-screen .auth-story{margin-bottom:30px}.auth-screen .auth-story h1{font-size:30px;margin-bottom:14px}.auth-screen .auth-story p{font-size:14px;margin:0}.auth-screen .auth-eyebrow,.auth-screen .auth-story-list{display:none}.auth-screen .auth-card{padding:26px 22px;border-radius:22px}.auth-screen .auth-card h2{font-size:25px}.auth-screen .auth-back{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.auth-screen *{transition:none!important}}
/* Remaining editor surfaces and compact menus. */
body.dark-theme:not(.live-lesson) :is(.section-editor-heading,.text-question-editor,.inline-gap-options,.image-options-popup,.editor-segments,.field-help-content,.block-actions-menu>summary,.catalog-menu>summary,.section-actions-menu>summary){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme:not(.live-lesson) :is(p,small,time,.catalog-count,.library-count,.library-row-meta,.catalog-course-meta,.section-breadcrumb,.class-presence,.form-note){color:var(--ui-muted)!important}
body.dark-theme:not(.live-lesson) :is(.class-add-card b,.catalog-course-cover:before,.catalog-course-cover>span,.catalog-course-cover svg,.library-row-icon){color:var(--ui-accent)!important}
body.dark-theme:not(.live-lesson) .class-add-card>span{background:#405c43!important;color:#e4eee0!important}
body.dark-theme:not(.live-lesson) #material-list{background:transparent!important;box-shadow:none!important}
body.dark-theme:not(.live-lesson) :is(.block-title-input,#section-title){background:transparent!important;border-color:transparent!important}
body.dark-theme:not(.live-lesson) :is(.block-title-input,#section-title):focus{border-color:#87aa7b!important}
body.dark-theme:not(.live-lesson) :is(.section-editor-heading,.builder-outline){box-shadow:none}
body.dark-theme:not(.live-lesson) .material-tabs a{background:transparent!important}
body.dark-theme:not(.live-lesson) .material-tabs a[aria-current=page]{color:#d6ebce!important}
body.dark-theme:not(.live-lesson) :is(#section-lesson-label,.editor-field-caption,.editor-options-caption,.library-count,.catalog-count){color:var(--ui-muted)!important}
body.dark-theme:not(.live-lesson) #section-name{background:transparent!important;border-color:transparent!important;color:var(--ui-ink)!important}
body.dark-theme:not(.live-lesson) #save-state{color:#b4d3aa!important;background:transparent!important}
body.dark-theme:not(.live-lesson) #save-state[data-dirty=true]{color:#ecd59f!important;background:transparent!important}
body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-material,#auth-submit){background:#6B8F6B!important;border-color:#6B8F6B!important;color:#fff!important}
body.dark-theme:not(.live-lesson) .note-color-swatch,body.dark-theme:not(.live-lesson) .note-color-swatch:hover:not(:disabled){background:var(--swatch)!important;border-color:#414146!important;box-shadow:none}
body.dark-theme:not(.live-lesson) .note-color-swatch[aria-pressed=true]{outline:2px solid #b4d3aa;outline-offset:2px}
body.dark-theme:not(.live-lesson) .section-nav-button:not([aria-current=true]){background:transparent!important}
body.dark-theme:not(.live-lesson) .section-nav-row:hover{background:var(--ui-soft)!important}
body.dark-theme:not(.live-lesson) .rich-input{border-radius:10px}
body.dark-theme:not(.live-lesson) .rich-input p{color:var(--ui-ink)!important}
body.dark-theme:not(.live-lesson) :is(.sentence-number,.word-order-index,.editor-array-number){background:var(--ui-soft)!important;color:var(--ui-accent)!important}
body.dark-theme .assignment-status[data-status=submitted]{background:#263e54;color:#c2d7fa}
body.dark-theme :is(.assignment-status[data-status=needs_revision],.assignment-revise-tag){background:#493d24;color:#efd5a4}
body.dark-theme .assignment-status[data-status=accepted]{background:#284531;color:#b8dbbb}
body.dark-theme.builder-screen #editor-fields #editor-blocks button.note-color-swatch,body.dark-theme.builder-screen #editor-fields #editor-blocks button.note-color-swatch:hover:not(:disabled){background:var(--swatch)!important;color:#28452c!important;border-color:#414146!important}
body.dark-theme.builder-screen #editor-fields #editor-blocks .catalog-menu>summary{background:var(--ui-surface)!important;color:var(--ui-muted)!important;border-color:var(--ui-border)!important;box-shadow:none!important}
body.dark-theme.builder-screen #editor-fields #editor-blocks .block-actions-dropdown>button{border:0!important;background:transparent!important;text-align:left}
body.dark-theme.builder-screen #editor-fields #editor-blocks .block-actions-dropdown>button:hover:not(:disabled){background:var(--ui-soft)!important}
body.dark-theme.builder-screen #editor-fields #editor-blocks .block-actions-dropdown>button[data-action=delete]{color:#ffaaa3!important}
body.dark-theme.builder-screen #editor-fields #editor-blocks .block-actions-dropdown>button.block-ask-ai{background:#304737!important;color:#c6dfbe!important}
body.dark-theme .catalog-design{--catalog-ink:#f0f0f2;--catalog-muted:#a6a6ad;--catalog-line:#414146}
body.dark-theme.auth-screen #account-status:not(:empty){color:#ffb7af!important}
body.dark-theme.student-preview-screen .preview-toolbar{background:#202023;border-color:var(--ui-border);color:var(--ui-ink)}
body.dark-theme.student-preview-screen .preview-progress span{color:var(--ui-muted)}
body.dark-theme.student-preview-screen #preview-structure [aria-current=true],body.dark-theme.student-preview-screen .preview-toolbar [aria-pressed=true]{background:#405b43!important;color:#f0f0f2!important}
body.dark-theme.student-preview-screen #student-preview-content .teacher-note[data-note-color=green]{background:#243e2d!important;border-color:#526e59!important}
body.dark-theme.student-preview-screen #student-preview-content .teacher-note[data-note-color=yellow]{background:#423c24!important;border-color:#807243!important}
body.dark-theme.student-preview-screen #student-preview-content .teacher-note[data-note-color=blue]{background:#25394b!important;border-color:#4a728b!important}
body.dark-theme.student-preview-screen #student-preview-content .teacher-note[data-note-color=red]{background:#472d2c!important;border-color:#8c5653!important}
body.dark-theme.student-preview-screen #student-preview-content [data-result=correct]{background:#214b36!important;color:#b9f2cc!important;border-color:#6B8F6B!important}
body.dark-theme.student-preview-screen #student-preview-content [data-result=wrong]{background:#502d2c!important;color:#ffd0cb!important;border-color:#d88177!important}
body.dark-theme.student-preview-screen #student-preview-content :is(.answer-feedback,.attempt-symbols span,.sentence-slot)[data-result]{background:transparent!important;border-color:transparent!important}
body.dark-theme:not(.live-lesson) .catalog-empty{background:var(--ui-surface)!important;color:var(--ui-muted)!important;border-color:var(--ui-border)!important}
body.dark-theme.materials-screen .material-tabs a,body.dark-theme.materials-screen .material-tabs a[aria-current=page]{background:transparent!important;box-shadow:none!important;border-radius:0}
body.dark-theme .catalog-course-cover:not(.has-cover)>img{filter:brightness(1.6) saturate(.5)}
body.dark-theme #admin-dialog{width:min(480px,calc(100vw - 32px));padding:28px;border-radius:20px;border:1px solid var(--ui-border)}
body.dark-theme #admin-fields label{display:flex;flex-direction:column;gap:10px;margin:18px 0}
body.dark-theme #admin-fields input{width:100%}

/* One brand green across light and dark application surfaces. */
:root{--brand-main:#6B8F6B}
body :is(.primary,.ui-primary,.ui-audio-play),body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-material,#auth-submit){background:#6B8F6B!important;border-color:#6B8F6B!important;color:#fff!important}
body .app-symbol{background:#6B8F6B;color:#101B13}
body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-material,#auth-submit):hover:not(:disabled){background:#6B8F6B!important;filter:brightness(1.08)}

body.auth-screen #auth-submit{color:#fff!important}

/* Structural wrappers stay clear; only cards and floating panels own a surface. */
body.dark-theme{--ui-text:var(--ui-ink);--ui-bg:#18181b;--ui-shadow:none;--catalog-ink:var(--ui-ink);--catalog-muted:var(--ui-muted);--catalog-line:var(--ui-border)}
body.dark-theme #app-header nav :is(a,button),body.dark-theme #app-header nav :is(a,button):hover:not(:disabled){background:transparent!important;box-shadow:none!important;border-radius:0;color:var(--ui-muted)!important;filter:none}
body.dark-theme #app-header nav :is(a[aria-current=page],button[aria-current=page]),body.dark-theme #app-header nav :is(a,button):hover{color:var(--ui-ink)!important}
body.dark-theme #app-header nav a[aria-current=page]{border-bottom-color:var(--ui-accent)!important}
body.dark-theme #app-header .header-soon{background:var(--ui-soft);color:#b0c7ad}
body.dark-theme:not(.live-lesson) :is(.work-row,.room-row,.library-row,.catalog-course-content,.catalog-course-detail,.builder-section-heading,.section-toolbar,.lesson-header,.lesson-sections,#lesson-details,.module-frame-heading,.public-course-heading,.homework-page-heading,.assignment-heading,.section-nav-row){background:transparent!important;box-shadow:none!important;color:var(--ui-ink);border-color:var(--ui-border)!important}
body.dark-theme:not(.live-lesson) :is(.clean-course-detail,.catalog-grid,.library-group,.builder-workspace,.section-editor-actions,.homework-dashboard-layout){box-shadow:none!important;background:transparent!important}
body.dark-theme.app-ui:not(.live-lesson) :is(.block-editor-toggle,.editor-add,.editor-add-question,.editor-remove,.outline-handle,.section-remove,.outline-remove,.profile-edit,.profile-logout,.password-toggle,.assignment-delete,.homework-student,.block-focus-button),body.dark-theme.app-ui:not(.live-lesson) :is(.block-editor-toggle,.editor-add,.editor-add-question,.editor-remove,.outline-handle,.section-remove,.outline-remove,.profile-edit,.profile-logout,.password-toggle,.assignment-delete,.homework-student,.block-focus-button):hover:not(:disabled){background:transparent!important;box-shadow:none!important;filter:none}
body.dark-theme:not(.live-lesson) :is(.profile-edit,.profile-logout,.homework-student):hover:not(:disabled),body.dark-theme:not(.live-lesson) .homework-student[aria-current=true]{background:var(--ui-soft)!important}
body.dark-theme:not(.live-lesson) :is(.material-tabs a,.material-tabs a[aria-current=page]){background:transparent!important;box-shadow:none!important;border-radius:0}
body.dark-theme:not(.live-lesson) .material-tabs a[aria-current=page]{color:var(--ui-ink)!important;border-bottom-color:var(--ui-accent)!important}
body.dark-theme:not(.live-lesson) :is(.rich-editor,.choice-question-editor,.text-question-editor,.column-editor-card,.builder-array-row,.image-editor-card,.gap-editor-card){background:#202023!important;box-shadow:none!important;border-color:var(--ui-border)!important}
body.dark-theme:not(.live-lesson) :is(.rich-toolbar,.rich-input,.rich-input[contenteditable=true]){background:transparent!important;box-shadow:none!important}
body.dark-theme:not(.live-lesson) .rich-input[contenteditable=true]{border-color:transparent!important}
body.dark-theme:not(.live-lesson) :is(.section-editor-heading,.builder-outline,.editor-block,.module-frame,.subscription-card,.subscription-current,.homework-students,.assignment-card-wrap,.auth-card,.class-card,.catalog-course){box-shadow:none!important}
body.dark-theme :is(.catalog-menu,.section-actions-menu,.block-actions-menu,.account-menu,.notification-menu){background:transparent!important;box-shadow:none!important}
body.dark-theme :is(.catalog-menu>summary,.section-actions-menu>summary,.block-actions-menu>summary){border-radius:10px;box-shadow:none!important;background:var(--ui-soft)!important;border-color:var(--ui-border)!important}
body.dark-theme :is(.catalog-dropdown,.section-actions-popover,.account-dropdown,.notification-panel,.teacher-block-menu[open],.selection-translation,.ai-panel){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:0 12px 32px #0005!important}
body.dark-theme :is(.catalog-dropdown,.section-actions-popover,.account-dropdown,.notification-panel) button:not(.primary){background:transparent!important;box-shadow:none!important}
body.dark-theme :is(.catalog-dropdown,.section-actions-popover,.account-dropdown,.notification-panel) button:hover:not(:disabled):not(.primary){background:var(--ui-soft)!important}
body.dark-theme :is(.subscription-card,.tariffs-details,.legal-document,.homework-summary-card,.homework-student-info) :is(h1,h2,h3,strong){color:var(--ui-ink)}
body.dark-theme hr{border-color:var(--ui-border)!important;box-shadow:none}
body.dark-theme :is(.student-unread,.homework-student-new,.block-editor-toggle h3,.ai-launcher){box-shadow:none!important}
body.dark-theme :is(.ai-log,.ai-message,.ai-context){background:transparent!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme .ai-message p{color:var(--ui-ink)!important}
body.dark-theme:not(.live-lesson) :is(.primary,.ui-primary,button[type=submit],#save-material,#auth-submit):hover:not(:disabled){background:#779a77!important;filter:none}
body.dark-theme.live-lesson :is(.call-panel,.exercise,.lesson-sections,.ui-audio-player,.word-bank,.assignment-card-wrap){box-shadow:none!important}
body.dark-theme.live-lesson :is(.lesson-header,.teacher-actions,.section-list,.section-list>button,.student-header nav button){box-shadow:none!important}
body.dark-theme .student-header nav button,body.dark-theme .student-header nav button:hover{background:transparent!important;border-radius:0}

/* Compact actions and separators use the same quiet dark palette. */
body.dark-theme.app-ui:not(.live-lesson) :is(.rich-toolbar button,.section-nav-grip,.section-nav-delete),body.dark-theme.app-ui:not(.live-lesson) :is(.rich-toolbar button,.section-nav-grip,.section-nav-delete):hover:not(:disabled){background:transparent!important;box-shadow:none!important}
body.dark-theme:not(.live-lesson) .rich-toolbar button:hover:not(:disabled){background:var(--ui-soft)!important}
body.dark-theme.builder-screen #homework-outline{border-top-color:var(--ui-border)!important}
body.dark-theme.builder-screen .builder-outline .section-nav-button[aria-current=true]{background:transparent!important;color:var(--ui-ink)!important}
body.dark-theme.builder-screen .section-nav-row:has(.section-nav-button[aria-current=true]){background:var(--ui-soft)!important;border-radius:10px;margin:0 8px;padding-inline:4px}
body.dark-theme :is(.catalog-menu>summary,.section-actions-menu>summary,.block-actions-menu>summary){border-radius:10px!important}
body.dark-theme :is(.exercise-heading>.number,.inline-gap-token,.gap-chip,.matching-item,.sentence-slot,.sentence-slot>button){box-shadow:none!important}

body.dark-theme :is(.teacher-actions,#catalog-top-actions){background:transparent!important;box-shadow:none!important;border-color:var(--ui-border)!important}
body.dark-theme #create-menu>summary{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--ui-border);box-sizing:border-box}
body.dark-theme.app-ui:not(.live-lesson) .public-course-heading .catalog-back{background:transparent!important;padding:8px 0;box-shadow:none!important}
body.dark-theme :is(.module-square-cover:not(.has-cover),.library-icon) img{filter:brightness(2) saturate(.5)}
body.dark-theme.student-preview-screen #preview-structure button:not([aria-current=true]),body.dark-theme.student-preview-screen #preview-structure button:not([aria-current=true]):hover{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
body.dark-theme .ai-launcher{border-radius:24px!important}

/* Choice controls share dark colours in class, homework and preview. */
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices label{background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:none!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices label:has(input:checked){background:#354d3b!important;border-color:#8aaa7e!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices input:not(:checked){background:#202023!important;border-color:#626269!important;opacity:1!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices input:checked{background:#6B8F6B!important;border-color:#6B8F6B!important;opacity:1!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices label[data-result=correct]{background:#214b36!important;color:#b9f2cc!important;border-color:#6B8F6B!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise .choices label[data-result=wrong]{background:#502d2c!important;color:#ffd0cb!important;border-color:#d88177!important}
body.dark-theme :is(#lesson,#student-preview-content) .exercise :is(.statement-card,.choice-question,.sequence-exercise){border-color:var(--ui-border)!important;box-shadow:none!important}

/* Course actions and first-use cards retain contrast in dark mode. */
body.dark-theme .catalog-design #catalog-top-actions>a,body.dark-theme .catalog-design .library-row .library-row-actions>a,body.dark-theme .catalog-design .library-row .catalog-symbol{background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important;box-shadow:none!important}
body.dark-theme .welcome-state{background:var(--ui-surface)!important;border-color:var(--ui-border)!important;box-shadow:none!important}
body.dark-theme.app-ui .welcome-state .welcome-secondary,body.dark-theme.app-ui .welcome-state .welcome-secondary:hover:not(:disabled){background:transparent!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme .welcome-state .welcome-primary{background:#6B8F6B!important;color:#fff!important;border-color:#6B8F6B!important}
body.dark-theme .welcome-art,body.dark-theme .welcome-step-number{background:var(--ui-soft)!important;color:#a9c5a5!important}

/* Calm focus states: contained keyboard rings and a single field edge. */
body{--control-focus:#6B8F6B}
body.dark-theme{--control-focus:#9db993}
body :is(button,summary,a,[role=button]):focus:not(:focus-visible){outline:none!important}
body :is(button,summary,[role=button]):focus-visible{outline:1px solid var(--control-focus)!important;outline-offset:-3px!important}
body a:not([role=button]):focus-visible{outline:1px solid var(--control-focus)!important;outline-offset:2px!important}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),textarea,select,[contenteditable=true]):focus{outline:none!important;box-shadow:none!important;border-color:var(--control-focus)!important}
body.dark-theme:not(.live-lesson) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),textarea,select,[contenteditable=true]):focus{border-color:var(--control-focus)!important}
body :is(input[type=checkbox],input[type=radio],input[type=range],input[type=color],input[type=file]):focus-visible{outline:1px solid var(--control-focus)!important;outline-offset:1px!important}
body .ui-upload-picker:focus-within{outline:1px solid var(--control-focus)!important;outline-offset:-3px!important}
body.builder-screen #editor-fields #editor-blocks .rich-editor:has(.rich-input:focus){border-color:var(--control-focus)!important;box-shadow:none!important}
body.builder-screen :is(#section-name,#lesson-name,.block-title-input):focus{border-color:transparent!important;border-bottom-color:var(--control-focus)!important;outline:none!important;box-shadow:none!important}
body.builder-screen #editor-fields #editor-blocks .block-title-input:focus{outline:none!important;outline-offset:0!important}
body :is(input,textarea,select,.rich-editor){transition:border-color .14s ease}
@media(prefers-reduced-motion:reduce){body :is(input,textarea,select,.rich-editor){transition:none}}

body :is(.primary,.ui-primary,.ui-audio-play,.welcome-primary,button[type=submit],#save-material,#auth-submit):focus-visible,body .ai-panel form button:focus-visible{outline-color:#fff!important}

/* Lesson editor conversation panel. */
.editor-ai-panel{position:fixed;inset:78px 0 0 auto;z-index:1402;display:flex;flex-direction:column;width:400px;max-width:100vw;background:var(--ui-surface,#fff);color:var(--ui-ink,#20372b);border-left:1px solid var(--ui-border,#cfdbd2);font:14px/1.6 Manrope,system-ui,sans-serif}
.editor-ai-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 16px;flex-shrink:0}.editor-ai-head strong{display:block;font-size:17px}.editor-ai-head span{display:block;font-size:12px;color:var(--ui-muted);margin-top:3px}.editor-ai-head button{display:grid;place-items:center;min-height:32px;width:32px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--ui-muted);font-size:24px}.editor-ai-head button:hover{background:var(--ui-soft)}
.editor-ai-section{margin:0 24px;padding:0 0 14px;border-bottom:1px solid var(--ui-border);color:var(--ui-muted);font-size:12px;flex-shrink:0;overflow-wrap:anywhere}
.editor-ai-log{flex:1;min-height:0;overflow:auto;padding:22px 24px;overscroll-behavior:contain}.editor-ai-message{margin:0 0 24px;overflow-wrap:anywhere}.editor-ai-message p{white-space:pre-wrap;margin:6px 0 0;line-height:1.75}.editor-ai-role{font-size:11px;font-weight:650;color:var(--ui-muted)}.editor-ai-user{margin-left:24px;padding:14px 16px;border-radius:16px 16px 4px 16px;background:var(--ui-soft)}.editor-ai-user p{margin-top:3px}.editor-ai-result{display:block;margin-top:12px;font-size:12px;color:var(--ui-accent);border-left:2px solid var(--ui-accent);padding-left:10px}
.editor-ai-welcome{padding:36px 0 20px}.editor-ai-symbol{font-size:26px;color:var(--ui-accent);margin-bottom:16px}.editor-ai-welcome h2{font-size:22px;letter-spacing:-.5px;margin:0 0 12px}.editor-ai-welcome p{font-size:14px;color:var(--ui-muted);margin:0;line-height:1.8}.editor-ai-examples{display:grid;gap:8px;margin-top:24px}.editor-ai-examples button{text-align:left;padding:11px 13px;border:1px solid var(--ui-border);border-radius:12px;background:transparent;color:var(--ui-ink);font:inherit;font-size:12px}.editor-ai-examples button:hover{background:var(--ui-soft)}
.editor-ai-status{flex-shrink:0;margin:0;padding:6px 24px 10px;color:var(--ui-muted);font-size:12px}.editor-ai-compose{flex-shrink:0;margin:0 18px;padding:12px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface)}.editor-ai-compose:focus-within{border-color:var(--control-focus,var(--ui-accent))}.editor-ai-compose textarea{width:100%;min-height:76px;max-height:180px;resize:vertical;box-sizing:border-box;padding:2px 4px!important;margin:0!important;border:0!important;background:transparent!important;color:var(--ui-ink);font:inherit;line-height:1.6;outline:none!important;box-shadow:none!important}.editor-ai-compose-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.editor-ai-compose-tools span{font-size:10px;color:var(--ui-muted)}.editor-ai-compose-tools button{display:grid;place-items:center;width:32px;min-height:32px;padding:0;border-radius:10px;font-size:20px}.editor-ai-foot{flex-shrink:0;margin:10px 24px 18px;font-size:10px;color:var(--ui-muted);line-height:1.5}
body.editor-ai-open .lesson-builder{width:calc(100% - 432px);max-width:960px;margin-left:auto;margin-right:432px}body.editor-ai-open .builder-workspace{grid-template-columns:minmax(0,1fr)}body.editor-ai-open .builder-workspace>.builder-outline{display:none}body.editor-ai-open :is(.ai-launcher,.ai-panel){display:none!important}
body.dark-theme .editor-ai-panel{background:var(--ui-surface)}body.dark-theme .editor-ai-panel :is(.editor-ai-head button,.editor-ai-examples button){background:transparent!important;color:var(--ui-ink)!important}body.dark-theme .editor-ai-compose textarea{background:transparent!important}
@media(max-width:800px){.editor-ai-panel{inset:72px 0 0;width:100%;border-left:0}.editor-ai-head{padding:16px 20px 12px}.editor-ai-log{padding:20px}.editor-ai-welcome{padding-top:20px}body.editor-ai-open .lesson-builder{width:auto;margin:20px 0 72px}.editor-ai-compose-tools span{font-size:9px}}

body.builder-screen.editor-ai-open main.home.lesson-builder{width:calc(100% - 432px)!important;max-width:960px!important;margin:24px 432px 72px auto!important}
@media(max-width:1280px){body.editor-ai-open .section-heading-row{flex-wrap:wrap;gap:12px}body.editor-ai-open #section-name{flex-basis:100%}body.editor-ai-open .section-editor-actions{flex-wrap:wrap}}
@media(max-width:800px){body.builder-screen.editor-ai-open main.home.lesson-builder{width:100%!important;max-width:1180px!important;margin:0 auto!important}}
/* Shared card surfaces and header interactions in dark mode. */
body.dark-theme.classes-design #room-list .work-row{background:var(--ui-surface)!important;border:0!important;box-shadow:0 5px 24px #00000012!important}
body.dark-theme.classes-design #room-list .work-row:hover{background:#2e2e32!important}
body.dark-theme.classes-design .class-add-card{background:var(--ui-soft)!important;border:0!important}
body.dark-theme.classes-design .class-add-card:hover{background:#39393e!important}
body.dark-theme :is(.catalog-course,.material-card,.assignment-card-wrap,.shared-material-card){background:var(--ui-surface)!important;color:var(--ui-ink)!important}
body.dark-theme :is(.catalog-course-cover:not(.has-cover),.module-square-cover:not(.has-cover),.catalog-symbol,.course-empty-icon){background:var(--ui-soft)!important;color:var(--ui-muted)!important}
body.dark-theme .catalog-course{border:0!important;box-shadow:0 5px 24px #00000012!important}
body.dark-theme .catalog-course:hover{background:#2e2e32!important}
body.dark-theme #lesson-picker .material-tabs{background:var(--ui-soft)!important;border:0;border-radius:14px;padding:5px}
body.dark-theme #lesson-picker .material-tabs a{background:transparent!important;border-radius:10px!important;color:var(--ui-muted)!important;border:0!important}
body.dark-theme #lesson-picker .material-tabs a[aria-current=page],body.dark-theme #lesson-picker .material-tabs a:hover{background:#39393e!important;color:var(--ui-ink)!important;border-radius:10px!important}
body.dark-theme.app-ui #app-header nav :is(a,button):hover:not(:disabled){background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-radius:12px!important}
body.dark-theme.app-ui #app-header nav :is(a,button)[aria-current=page]{background:var(--ui-soft)!important;color:#bdd4b7!important;border-radius:12px!important}
body.dark-theme.app-ui.live-lesson #app-header.class-header nav .class-change-material{border:1px solid var(--ui-border)!important;border-radius:12px!important;color:var(--ui-ink)!important;background:transparent!important;box-shadow:none!important}
body.dark-theme.app-ui.live-lesson #app-header.class-header nav .class-change-material:hover{background:var(--ui-soft)!important}
body.dark-theme.app-ui #app-header :is(.account-menu>summary,.notification-menu>summary):hover{background:#39393e!important}
body.dark-theme .student-profile-dialog input{background:var(--ui-soft)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}
body.dark-theme .student-profile-dialog .primary{background:#6b8f6b!important;color:#fff!important}
body.dark-theme .call-start-actions #copy-class-link:hover,body.dark-theme .call-panel .controls button:hover{background:#39393e!important}
body.dark-theme #student-sections button:hover,body.dark-theme #homework-nav:hover{background:var(--ui-soft)!important}

body.dark-theme.live-lesson .call-panel #start{color:#fff!important}

body.dark-theme.app-ui.classes-design #room-list .work-actions a.work-continue{background:#6b8f6b!important;color:#fff!important}body.dark-theme.app-ui.classes-design #room-list .work-actions a.work-continue:hover{background:#5c7e5c!important}body.dark-theme.app-ui.classes-design .students-search input{background:transparent!important;border:0!important}body.dark-theme.app-ui.classes-design #room-list .student-menu summary{background:transparent!important}

/* Classroom welcome: a quiet, spacious first step. */
body.live-lesson #empty-material {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:10px;
  min-height:220px;
  margin:0;
  padding:32px;
  border:0;
  border-radius:16px;
  background:var(--ui-surface,#fff);
  box-shadow:0 8px 24px #2d3b2d0d;
  text-align:left;
}
body.live-lesson #empty-material[hidden] { display:none; }
body.live-lesson #empty-material h2 {
  max-width:540px;
  margin:0;
  color:var(--ui-ink,#26332d);
  font-family:Manrope,'Segoe UI',sans-serif;
  font-size:24px;
  font-weight:600;
  line-height:1.35;
  letter-spacing:-.025em;
  text-wrap:balance;
}
body.live-lesson #empty-material #choose-first-material {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin-top:14px;
  padding:12px 20px;
  border:0;
  border-radius:12px;
  background:#6b8f6b;
  color:#fff;
  font:600 15px/1.4 Manrope,'Segoe UI',sans-serif;
  cursor:pointer;
  transition:background .18s ease,box-shadow .18s ease;
}
body.live-lesson #empty-material #choose-first-material[hidden] { display:none; }
body.live-lesson #empty-material #choose-first-material:hover { background:#5d7f5d; }
body.live-lesson #empty-material #choose-first-material:focus-visible {
  outline:2px solid var(--ui-accent,#6b8f6b);
  outline-offset:4px;
}
body.live-lesson #empty-material #empty-material-student {
  margin:0;
  max-width:380px;
  color:var(--ui-muted,#758078);
  font:400 15px/1.65 Manrope,'Segoe UI',sans-serif;
}
body.live-lesson.dark-theme #empty-material { background:var(--ui-surface,#242427);border:0; }
@media(max-width:600px) {
  body.live-lesson #empty-material { min-height:220px;margin:0;padding:28px 24px;gap:10px;border-radius:16px; }
}
@media(prefers-reduced-motion:reduce) {
  body.live-lesson #empty-material #choose-first-material { transition:none; }
}

/* Remove the hidden lesson heading's reserved space in the welcome state. */
body.live-lesson #lesson:has(> #empty-material:not([hidden])) > .lesson-header {padding:0;}
body.live-lesson #empty-material-copy {margin:0;color:var(--ui-muted,#758078);font:400 15px/1.6 "Segoe UI",system-ui,sans-serif;}
body.live-lesson #empty-material #choose-first-material {gap:12px;font-family:"Segoe UI",system-ui,sans-serif;font-weight:600;}
body.live-lesson #empty-material #choose-first-material svg {width:18px;height:18px;flex-shrink:0;}
body.live-lesson #empty-material h2 {font-family:"Segoe UI",system-ui,sans-serif;letter-spacing:-.02em;}
body.live-lesson #empty-material h2[hidden],body.live-lesson #empty-material-copy[hidden] {display:none;}
body.live-lesson.dark-theme #empty-material {box-shadow:0 12px 32px #0003;}
body.live-lesson #lesson:has(> #empty-material:not([hidden])) > :is(#homework-error,#lesson-error):empty {display:none;}
@media(min-width:761px) {
  body.live-lesson .workspace:has(> #lesson > #empty-material:not([hidden])) {align-items:stretch;}
  body.live-lesson #lesson:has(> #empty-material:not([hidden])) {display:flex;flex-direction:column;}
  body.live-lesson #lesson > #empty-material:not([hidden]) {flex:1;}
  body.live-lesson .workspace:has(> #lesson > #empty-material:not([hidden])) > .call-panel {min-height:220px;}
}

/* Exercise chips move as whole cards; Alt keeps deliberate text selection. */
.exercise button.drag-source:not(:disabled) {user-select:none;-webkit-user-select:none;cursor:grab;}
.exercise button.drag-source:not(:disabled):active {cursor:grabbing;}
.exercise button.drag-source[data-selecting=true] {user-select:text;-webkit-user-select:text;cursor:text;}
.exercise .letter-space {min-width:42px;}

/* Quiet, borderless welcome cards and an explicit trial invitation. */
body.app-ui .welcome-state{border:0!important;box-shadow:0 8px 30px rgba(30,40,34,.06)!important;padding-bottom:40px}
body.dark-theme.app-ui .welcome-state{border:0!important;box-shadow:0 8px 30px rgba(0,0,0,.2)!important}
body .welcome-steps{display:none!important}
body .trial-promo{border:0;border-radius:12px;background:var(--ui-soft);color:var(--ui-ink);padding:11px 15px;font-size:13px;font-weight:600;cursor:pointer;transition:background .18s ease}
body .trial-promo:hover{background:var(--ui-border)}
body .trial-promo[hidden]{display:none!important}
@media(max-width:800px){body .trial-promo{max-width:170px;font-size:12px;padding:8px 10px}}

body.app-ui #create-menu{position:relative;flex-shrink:0}
body.app-ui #create-menu>summary{display:flex;gap:14px;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:0;border-radius:12px;background:#6b8f6b;color:#fff;font-size:14px;font-weight:600;cursor:pointer;list-style:none;transition:background .18s}
body.app-ui #create-menu>summary::-webkit-details-marker{display:none}
body.app-ui #create-menu>summary:hover{background:#5e815e}
body.app-ui #create-menu>summary:focus-visible{outline:3px solid #6b8f6b66;outline-offset:3px}
body.app-ui #create-menu>.catalog-dropdown{position:absolute;top:calc(100% + 10px);right:0;left:auto;width:230px;box-sizing:border-box;padding:8px;border:0;border-radius:16px;background:var(--ui-surface);box-shadow:0 12px 40px #17231c1f;z-index:50;animation:overview-enter .16s ease both}
body.app-ui #create-menu>.catalog-dropdown>button,body.app-ui #create-menu>.catalog-dropdown>a{display:block;box-sizing:border-box;width:100%;padding:13px 14px;margin:0;text-align:left;border:0;border-radius:10px;background:transparent;color:var(--ui-ink);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer}
body.app-ui #create-menu>.catalog-dropdown>button:hover,body.app-ui #create-menu>.catalog-dropdown>a:hover{background:var(--ui-soft)}
body.dark-theme.app-ui #create-menu>.catalog-dropdown{box-shadow:0 12px 40px #0006}
@media(prefers-reduced-motion:reduce){body.app-ui #create-menu>.catalog-dropdown{animation:none}}
body.app-ui #create-menu>summary{line-height:20px;white-space:nowrap;box-sizing:border-box}
body.app-ui #create-menu>summary>span{display:block;flex:0 0 6px;width:6px;height:6px;font-size:0;line-height:0;margin:0 0 3px 0;padding:0;border:solid currentColor;border-width:0 1.8px 1.8px 0;transform:rotate(45deg);align-self:center;position:static}
body.app-ui #create-menu[open]>summary>span{transform:rotate(225deg);margin:3px 0 0}

body .free-class-choice{padding:28px;margin:0 0 24px;background:var(--ui-surface);border-radius:20px;box-shadow:0 8px 30px #263e3209}body .free-class-choice[hidden]{display:none}body .free-class-choice h2{font-size:23px;margin:0 0 12px}body .free-class-choice p{color:var(--ui-muted);line-height:1.65;max-width:780px}body .free-class-choice>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}body .free-class-choice select{min-height:46px;min-width:220px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-ink);padding:10px 14px;font:inherit}body .plan-paused .work-continue{background:var(--ui-soft)!important;color:var(--ui-ink)!important}

body .free-class-notice{background:var(--ui-soft);color:var(--ui-ink);padding:16px 20px;border-radius:14px;margin:0 0 20px;line-height:1.6}body .free-class-notice a{display:inline-block;margin-left:14px;color:var(--ui-accent);text-decoration:underline}

/* Branded plan link and a deliberately designed student chooser. */
body.app-ui .account-dropdown .profile-plan-card{position:relative;display:flex!important;flex-direction:column;gap:7px;margin:10px 12px;padding:17px 18px!important;border:1px solid var(--ui-border)!important;border-radius:16px;background:var(--ui-soft)!important;text-decoration:none;color:var(--ui-ink)!important;box-shadow:none;transition:box-shadow .18s ease,border-color .18s ease}
body.app-ui .account-dropdown .profile-plan-card.is-pro{background:linear-gradient(125deg,var(--ui-soft),var(--ui-surface))!important;border-color:#6b8f6b66!important}
body.app-ui .account-dropdown .profile-plan-card strong{font-size:16px;letter-spacing:-.02em;color:var(--ui-ink)}
body.app-ui .account-dropdown .profile-plan-card span{font-size:12px;color:var(--ui-muted);line-height:1.4}
body.app-ui .account-dropdown .profile-plan-card::after{content:'↗';position:absolute;right:18px;top:18px;color:var(--ui-accent);font-size:18px}
body.app-ui .account-dropdown .profile-plan-card:hover{border-color:#6b8f6b!important;box-shadow:0 4px 16px #6b8f6b14}
body .free-student-dialog{box-sizing:border-box;width:540px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:28px;border:0;border-radius:24px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 80px #0003}
body .free-student-dialog::backdrop{background:#11182766;backdrop-filter:blur(4px)}
body .student-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
body .student-picker-kicker{color:var(--ui-accent);font-size:11px;font-weight:700;letter-spacing:.05em}
body .student-picker-heading h2{font-size:26px;line-height:1.25;letter-spacing:-.025em;margin:8px 0 0}
body .student-picker-close{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:10px;background:var(--ui-soft);color:var(--ui-muted);font-size:24px;cursor:pointer}
body .student-picker-intro{color:var(--ui-muted);font-size:14px;line-height:1.65;margin:18px 0 20px}
body .student-picker-list{display:grid;gap:6px;max-height:340px;overflow-y:auto;padding:2px;scrollbar-width:thin}
body .student-picker-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid transparent;border-radius:14px;cursor:pointer;transition:background .15s ease,border-color .15s ease}
body .student-picker-row:hover{background:var(--ui-soft)}body .student-picker-row:has(input:checked){background:var(--ui-soft);border-color:#6b8f6b66}
body .student-picker-row input{width:16px;height:16px;accent-color:#6b8f6b;flex-shrink:0}
body .student-picker-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:var(--ui-soft);color:var(--ui-accent);font-size:13px;font-weight:600}
body .student-picker-row strong{font-size:14px;font-weight:600;min-width:0;overflow-wrap:anywhere}
body .student-picker-status{margin-left:auto;flex-shrink:0;padding:5px 9px;border-radius:8px;background:var(--ui-soft);color:var(--ui-muted);font-size:11px}
body .student-picker-status.is-active{background:#6b8f6b1a;color:var(--ui-accent)}
body .student-picker-note{font-size:12px;line-height:1.6;color:var(--ui-muted);margin:18px 0 0}
body .student-picker-error{color:#b85c55;font-size:13px;margin:8px 0 0}body .student-picker-error:empty{display:none}
body .student-picker-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}body .student-picker-footer button{min-height:44px}
body .free-student-trigger::after{content:'⌄';margin-left:14px}
@media(max-width:540px){body .free-student-dialog{padding:22px 16px}body .student-picker-row{gap:8px;padding:10px 8px}body .student-picker-avatar{flex-basis:32px;height:32px}body .student-picker-footer{flex-wrap:wrap}body .student-picker-footer button{flex:1}}
