/* Semantic surfaces and states shared by every tenant. No color inversion. */
:root{--surface:var(--white);--surface-raised:#f0f4ee;--text:var(--ink);--text-secondary:var(--muted);--border:var(--line);--success-bg:#e8f4eb;--success-text:#245c37;--warning-bg:#fff3df;--warning-text:#795014;--error-bg:#fff0ed;--error-text:#963c30;--info-bg:#edf2fc;--info-text:#345682;color-scheme:light}
html[data-theme=dark]{color-scheme:dark;--bg:#0f1715;--white:#192420;--surface:#192420;--surface-raised:#22322b;--ink:#edf5ef;--text:#edf5ef;--muted:#b6c6bd;--text-secondary:#b6c6bd;--line:#3b5045;--border:#3b5045;--mint:#22372d;--link:#a5dfc6;--success-bg:#203d2b;--success-text:#b3e9bc;--warning-bg:#42351e;--warning-text:#f4d597;--error-bg:#422a29;--error-text:#ffb9ac;--info-bg:#253348;--info-text:#bdcff7;--shadow-panel:0 12px 40px #0003}
body{background:var(--bg);color:var(--text)}
.brand img{display:block;max-width:100%;height:auto}.brand .brand-dark{display:none}html[data-theme=dark] .brand .brand-light{display:none}html[data-theme=dark] .brand .brand-dark{display:block}
.theme-toggle{width:44px;min-width:44px;min-height:44px;padding:0;font-size:22px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:50%}.theme-toggle:hover{background:var(--surface-raised);color:var(--ink)}
.public-header{gap:16px}.public-header .brand{max-width:204px}.topbar-right{gap:10px}.topbar-brand{min-width:0}
.login-layout{gap:clamp(28px,6vw,100px);align-items:center}.login-story h1{font-size:clamp(32px,4vw,52px);line-height:1.15;max-width:580px}.login-story p{max-width:500px;font-size:1rem}.login-panel{border:1px solid var(--line);box-shadow:var(--shadow-panel);background:var(--surface);padding:36px;max-width:460px;width:100%;border-radius:20px}.login-panel h2{font-size:27px;line-height:1.2}.login-panel .eyebrow{font-size:12px;letter-spacing:1.1px}.login-art{display:flex;align-items:center;gap:24px;height:auto;min-height:180px;margin:32px 0}.login-art img{max-width:36%;height:auto}.login-art strong{font-size:18px}.login-art p{font-size:14px;margin:8px 0}.story-tags{display:flex;flex-wrap:wrap;gap:12px}.story-tags span{border:1px solid var(--line);border-radius:24px;padding:8px 12px;background:var(--surface);font-size:12px;color:var(--muted)}.delivery-help{font-size:12px;margin-top:20px}.login-note{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;color:var(--muted)}
html[data-theme=dark] :is(.topbar,.public-header,.panel,.stats article,.continue-card,.course-card,.table-wrap,.table-wrap tr,.login-panel,.result,.drawer-panel,.question,.answer,.study-outline,.course-syllabus details[open],.course-syllabus details[open]>summary,.study-outline details>summary,.study-outline details[open]>summary,.company-switch-bar,.admin-item,.preview-banner,.modal,.skip){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(input,select,textarea,.button.secondary,.icon-button){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.workspace,.help-card,.avatar,.login-note,.filter-bar,thead,th,.lesson-nav a:hover,.lesson-nav a.active,.sidebar nav>a[aria-current],.sidebar nav>a:hover,.drawer-panel nav>a[aria-current],.drawer-panel nav>a:hover){background:var(--surface-raised);color:var(--ink)}
html[data-theme=dark] :is(a,.profile-link,.text-button,.sidebar nav>a,.drawer-panel nav>a,.breadcrumb,.eyebrow,.nav-label,.meta-row,.course-meta,.stats article div>span){color:var(--link)}
html[data-theme=dark] :is(.button,button){color:var(--on-primary)}
html[data-theme=dark] :is(.button.secondary,.theme-toggle,.icon-button,.text-button){color:var(--ink)}
html[data-theme=dark] :is(.badge,.mint,.peach,.lavender,.sand,.module-number){background:var(--surface-raised);color:var(--ink)}
html[data-theme=dark] :is(.badge.success,.message.success,.learning-block.correct){background:var(--success-bg);color:var(--success-text)}
html[data-theme=dark] :is(.message,.message.info,.learning-block.definition){background:var(--info-bg);color:var(--info-text)}
html[data-theme=dark] :is(.badge.warning,.message.warning,.learning-block.warning,.learning-block.avoid){background:var(--warning-bg);color:var(--warning-text)}
html[data-theme=dark] :is(.danger,.message.error,.errorlist){background:var(--error-bg)!important;color:var(--error-text)!important;border-color:var(--error-text)!important}
html[data-theme=dark] :is(.learning-block,.rich-content blockquote,.rich-content pre){background:var(--surface-raised);color:var(--ink)}
html[data-theme=dark] :is(.answer:hover,.answer:has(input:checked)){background:var(--mint);color:var(--ink)}
html[data-theme=dark] .button.cream{background:var(--accent);color:var(--on-accent)}
html[data-theme=dark] .journey-hero{background:var(--mint);color:var(--ink)}
.error-page{max-width:620px;margin:10vh auto;padding:32px}.error-page>img{width:72px;height:72px}
.sidebar>.tenant-workspace{order:-2;margin:0 0 14px;padding:13px}.sidebar>.powered-brand{order:-1;border-bottom:1px solid var(--line);padding:0 8px 18px;margin-bottom:4px}.sidebar>.powered-brand .brand img{width:132px}.tenant-workspace .company-logo{max-width:42px;max-height:42px;object-fit:contain}.tenant-workspace strong{display:block;font-size:14px}.tenant-workspace small{font-size:11px}.topbar-brand strong{font-size:15px}.topbar-brand small{font-size:11px}.eyebrow i{font-family:Georgia,serif;text-transform:none;font-weight:400;letter-spacing:0;font-size:1.15em}
@media(max-width:767px){.login-story h1 br{display:none}.login-art,.story-tags{display:none}.login-panel{padding:24px;max-width:none}.login-story{padding-bottom:24px}.login-story p{font-size:14px}.public-header{padding:16px 20px}.topbar{gap:8px}.topbar-brand strong{font-size:12px}.topbar-brand small{font-size:12px}.topbar-right .avatar{display:none}}

html[data-theme=dark] :is(.study-progress,.reading,.certificate-card,.path-card,.course-progress,.editor-preview,.module-list a,.switcher button){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .mobile-nav[open]>.drawer-panel{background:var(--surface)}
html[data-theme=dark]:not(.js-enabled) .mobile-nav[open]>summary{background:var(--surface);color:var(--ink)}

html[data-theme=dark] :is(label,.continue-body p b){color:var(--ink)}
html[data-theme=dark] :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
html[data-theme=dark] :is(.empty-card,.module-list,.achievement-card,.editor-preview:not(:empty),.admin-item button,.editor-toolbar button){background:var(--surface-raised);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .rich-content a{color:var(--link)}
.tenant-workspace small,.topbar-brand small{font-size:12px}
.login-commercial{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);display:grid;gap:3px;font-size:12px;color:var(--muted)}.login-commercial a{font-weight:600;font-size:12px}
