#themeToggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;padding:0;margin:0;border:1px solid #cbd5df;border-radius:10px;background:#fff;color:#233447;font:24px/1 system-ui;cursor:pointer}
#themeToggle:focus-visible{outline:3px solid #1687c4;outline-offset:3px}
#themeToggle.theme-login-toggle{position:fixed;top:14px;right:14px;z-index:20}
html[data-theme=dark]{color-scheme:dark;--ink:#e7edf4;--blue:#65bfff;--paper:#101720;--line:#364455;--muted:#a8b6c6;background:#101720}
html[data-theme=dark] body,html[data-theme=dark] .setup{background:#101720!important;color:#e7edf4!important}
html[data-theme=dark] body>header{background:#182330!important;color:#e7edf4!important;border-color:#364455!important}
html[data-theme=dark] :is(.card,.login,.review-day,.apprentice-toolbar,.week-pager a,.review-switcher a,.lesson,.voice-stage,.voice-box,.week-status-tile){background:#1c2835!important;color:#e7edf4!important;border-color:#405064!important;box-shadow:none}
html[data-theme=dark] :is(h1,h2,h3,label,.user,.report-text,.review-title p,.card>p,.voice-head small,.link){color:#e7edf4!important}
html[data-theme=dark] :is(input,textarea,select){background:#111c28!important;color:#e7edf4!important;border-color:#4b5f73!important;-webkit-text-fill-color:#e7edf4!important}
html[data-theme=dark] :is(input,textarea)::placeholder{color:#9aabbd!important}
html[data-theme=dark] :is(input,textarea):disabled{opacity:1}
html[data-theme=dark] :is(.button,.day-type,.review-icon,.status,#themeToggle){background:#243a4d!important;color:#e7edf4!important;border-color:#4b647b!important}
html[data-theme=dark] :is(.week,.day-types){background:transparent!important}
html[data-theme=dark] .week :is(a,.release-tile){background:#202f3e!important;color:#e7edf4!important;border-color:#405064!important}
html[data-theme=dark] :is(.week a.active,.day-type.active,.review-switcher a[aria-current=page]){background:#164463!important;color:#e0f4ff!important;border-color:#65bfff!important}
html[data-theme=dark] :is(.week small,.week .day-kind){color:inherit!important}
html[data-theme=dark] :is(.week .pre-start,.week-pager .disabled){background:#1b232d!important;color:#8291a1!important;border-color:#354150!important}
html[data-theme=dark] :is(.week a.missing,.review-day.missing,.field-save-error,.correction-pending,.week a.correction-required,.week a.correction-required.active,.correction-pending a){background:#462830!important;color:#ffcad0!important;border-color:#ed8290!important}
html[data-theme=dark] .correction-required small{color:#ffcad0!important}
html[data-theme=dark] :is(.field-saved,.week .release-tile.done,.week-status-tiles .is-done,.week .week-check.complete,.status.current){background:#173d2d!important;color:#b5f3cf!important;border-color:#65bd8b!important}
html[data-theme=dark] .week .week-check{background:#223b30!important;color:#c4e3d1!important;border-color:#56876b!important}
html[data-theme=dark] .week .week-check.not-required{background:#28313b!important;color:#96a4b1!important;border-color:#465463!important}
html[data-theme=dark] :is(.unfinished-week-reminder,.unfinished-week-reminder a,.status.overdue){background:#40351e!important;color:#ffe0a5!important;border-color:#c29a4e!important}
html[data-theme=dark] .week-status-tiles button:not(:disabled),html[data-theme=dark] .week-status-tiles a:not(.is-done),html[data-theme=dark] .week .release-tile.ready:not(:disabled){background:#164463!important;color:#def3ff!important;border-color:#65bfff!important;box-shadow:0 0 0 2px #246084,0 0 14px #65bfff25!important}
html[data-theme=dark] .week-status-tiles button[form=correctionReturnForm]:not(:disabled){background:#49371b!important;color:#ffe0a0!important;border-color:#e3ad54!important;box-shadow:0 0 0 2px #715222!important}
html[data-theme=dark] .voice-draft-dialog,html[data-theme=dark] .voice-draft-dialog :is(.voice-box.expanded,.voice-stage,.voice-actions){background:#101720!important;color:#e7edf4!important}
html[data-theme=dark] .voice-draft-dialog::backdrop{background:#101720}
html[data-theme=dark] .voice-dialog-close{background:#28394a!important;color:#e7edf4!important}
html[data-theme=dark] .school-review :is(td,th),html[data-theme=dark] .review-day>header{background:transparent!important;color:#e7edf4!important;border-color:#405064!important}
html[data-theme=dark] .brand-mark{background:#fff!important}
@media print{#themeToggle{display:none!important}}

html[data-theme=dark] .apprentice-toolbar a{background:#243a4d!important;color:#def3ff!important;border-color:#4b647b!important}
.week-status-tiles a[href*="pdf=1"] svg{color:#df304a}

/* Neutral black/charcoal surfaces; semantic status colours stay distinct. */
html[data-theme=dark]{--ink:#ededed;--paper:#090909;--line:#383838;--muted:#aaa;background:#090909}
html[data-theme=dark] body,html[data-theme=dark] .setup{background:#090909!important;color:#ededed!important}
html[data-theme=dark] body>header{background:#111!important;border-color:#333!important}
html[data-theme=dark] :is(.card,.login,.review-day,.apprentice-toolbar,.week-pager a,.review-switcher a,.lesson,.voice-stage,.voice-box,.week-status-tile){background:#181818!important;border-color:#383838!important}
html[data-theme=dark] :is(input,textarea,select){background:#101010!important;border-color:#444!important}
html[data-theme=dark] :is(.button,.day-type,.review-icon,.status,#themeToggle),html[data-theme=dark] .apprentice-toolbar a{background:#262626!important;border-color:#484848!important}
html[data-theme=dark] .week :is(a,.release-tile){background:#202020!important;border-color:#383838!important}
html[data-theme=dark] :is(.week a.active,.day-type.active,.review-switcher a[aria-current=page]){background:#292929!important;border-color:#65bfff!important}
html[data-theme=dark] :is(.week .pre-start,.week-pager .disabled){background:#151515!important;color:#888!important;border-color:#303030!important}
html[data-theme=dark] .voice-draft-dialog,html[data-theme=dark] .voice-draft-dialog :is(.voice-box.expanded,.voice-stage,.voice-actions){background:#090909!important}
html[data-theme=dark] .voice-draft-dialog::backdrop{background:#090909}
html[data-theme=dark] .voice-dialog-close{background:#292929!important}
html[data-theme=dark] .brand-mark{background:transparent!important}
html[data-theme=dark] .company-wordmark img{filter:grayscale(1) invert(1)}

html[data-theme=dark] .trainees article{background:#202020!important;border-color:#3b3b3b;box-shadow:0 5px 18px #0003}
html[data-theme=dark] .trainees article p{color:#b8b8b8!important}
html[data-theme=dark] .trainees .avatar{background:#303030;color:#d9d9d9;border-color:#555}
html[data-theme=dark] .trainees .status.current{background:#173d2d!important;color:#b5f3cf!important;border-color:#65bd8b!important}
html[data-theme=dark] .trainees .status.overdue{background:#49371b!important;color:#ffe0a0!important;border-color:#e3ad54!important}

/* Separate daily reports clearly from the surrounding dark card. */
html[data-theme=dark] .review-days{gap:14px}
html[data-theme=dark] .review-days .review-day{background:#2a2a2a!important;border:1px solid #555!important;box-shadow:0 3px 10px #0005}
html[data-theme=dark] .review-days .review-day>header{border-bottom-color:#626262!important}
html[data-theme=dark] .review-days .review-day.missing{background:#3d2427!important;border-color:#a65c64!important}

/* Completed status is quiet; actionable controls are strongly highlighted. */
html[data-theme=dark] .week-status-tiles span.week-status-tile.is-done{background:#17221b!important;color:#a6c5b0!important;border-color:#3d5847!important;box-shadow:none!important}
html[data-theme=dark] .week-status-tiles button.week-status-tile:not(:disabled),html[data-theme=dark] .week-status-tiles a.week-status-tile{background:#85d4ff!important;color:#082638!important;border-color:#c2ebff!important;box-shadow:0 0 0 2px #3488ae,0 0 14px #65bfff45!important;font-weight:750}
html[data-theme=dark] .week-status-tiles button.week-status-tile[form=correctionReturnForm]:not(:disabled){background:#ffc34d!important;color:#302000!important;border-color:#ffe2a0!important;box-shadow:0 0 0 2px #a97618,0 0 14px #ffc34d50!important}

html[data-theme=dark] .week-status-tiles a.week-status-tile.is-done{background:#85d4ff!important;color:#082638!important;border-color:#c2ebff!important}

/* Calm, readable labels rather than heavy bold controls. */
.trainees .status,.trainee-actions .button,.week-status-tiles .week-status-tile,.recent-review-step{font-weight:500!important}
.trainee-actions .button{text-decoration:none}

/* Shared form surfaces — dark mode audit, 2026-09-28. */
html[data-theme=dark] :is(.user-row,.own-password,.password-menu form,.password-reset form,.correction-dialog){background:#202020!important;color:#ededed!important;border-color:#505050!important;box-shadow:0 8px 24px #0005}
html[data-theme=dark] :is(.password-reset summary,.password-menu summary,.overview-return .back-link,.profile-page>a){background:#2c2c2c!important;color:#c8e9ff!important;border-color:#606060!important}
html[data-theme=dark] :is(.password-reset[open] summary,.password-menu[open] summary){background:#303a40!important;color:#e3f4ff!important;border-color:#72bce7!important}
html[data-theme=dark] :is(.user-row p,.profile-fields small,.profile-page small,.correction-dialog p,.correction-return-controls p){color:#bdbdbd!important}
html[data-theme=dark] :is(.profile-admin summary,.user-management legend,.create-user legend){color:#ededed!important}
html[data-theme=dark] .profile-page a:not(.button){color:#8bcfff}
html[data-theme=dark] :is(input,textarea,select){caret-color:#fff;accent-color:#65bfff}
html[data-theme=dark] select :is(option,optgroup){background:#181818;color:#ededed}
html[data-theme=dark] :is(input,textarea,select):focus-visible{outline:2px solid #65bfff;outline-offset:2px;border-color:#65bfff!important}
html[data-theme=dark] :is(input,textarea,select):disabled{color:#c3c3c3!important;-webkit-text-fill-color:#c3c3c3!important;opacity:1}
html[data-theme=dark] :is(.button:disabled,.day-type:disabled){color:#b8b8b8!important;opacity:1}
html[data-theme=dark] :is(.password-reset summary,.profile-admin summary,.profile-link,.back-link):focus-visible{outline:2px solid #65bfff;outline-offset:3px}
html[data-theme=dark] :is(.notice,.profile-page .message,.card.saved-flash){background:#183426!important;color:#c2f2d3!important;border-color:#619b77!important}
html[data-theme=dark] .notice.error{background:#3d2225!important;color:#ffc4cb!important;border-color:#b46973!important}
html[data-theme=dark] .compact-status{background:#203542!important;color:#b8e4ff!important;border-color:#548bb0!important}
html[data-theme=dark] :is(.compact-status.locked,.status.locked){background:#30262a!important;color:#eac4ce!important;border-color:#82616c!important}
html[data-theme=dark] :is(.progress,.apprentice-toolbar>.disabled){background:#282828!important;color:#999!important;border-color:#444!important}
html[data-theme=dark] .remove-lesson{background:#42282c!important;color:#ffc4cb!important}
html[data-theme=dark] :is(.correction-delete,.correction-note-meta){color:#ffc0b9!important}
html[data-theme=dark] :is(.correction-day-input,.correction-note+.correction-note){border-color:#76504b!important}
html[data-theme=dark] .correction-dialog::backdrop{background:#0009}
html[data-theme=dark] .week a.correction-required.active{box-shadow:inset 0 0 0 2px #a35963!important}
html[data-theme=dark] .field-saved{background:#173d2d!important;border-color:#65bd8b!important;box-shadow:0 0 0 2px #407659!important}
