/* TEACHR brand system — centralised semantic colour system */
:root {
  --brand-navy:#0b1f3a; --brand-navy-deep:#06152b; --brand-blue:#159fe8; --brand-sky:#36bdf6;
  --brand-gold:#f7b928; --brand-orange:#ef7b22; --brand-indigo:#6366f1; --brand-emerald:#10b981;
  --brand-surface:#ffffff; --brand-text:#10233f; --brand-muted:#52657d; --brand-line:#d7e1eb;
  --workspace-bg:#f4f7fb; --workspace-surface:#ffffff; --workspace-surface-soft:#f8fafc;
  --workspace-text:#10233f; --workspace-muted:#52657d; --workspace-subtle:#6b7d93; --workspace-line:#d7e1eb;
  --workspace-input:#ffffff; --workspace-accent:#0b79b7; --workspace-shadow:0 18px 50px rgba(16,35,63,.10);
}
html[data-theme="dark"] {
  --workspace-bg:#08192d; --workspace-surface:#0e2540; --workspace-surface-soft:#122c49;
  --workspace-text:#f4f8fc; --workspace-muted:#c0cede; --workspace-subtle:#9fb2c8; --workspace-line:#35516d;
  --workspace-input:#123452; --workspace-accent:#69c9f7; --workspace-shadow:0 18px 50px rgba(0,0,0,.24);
}
.brand-logo{width:132px!important;height:auto;display:block}.brand-logo-light{display:none!important}.brand-logo-dark{display:block}
html[data-theme="light"] .brand-logo-dark{display:none!important}html[data-theme="light"] .brand-logo-light{display:block!important}
body{background:radial-gradient(circle at 78% 8%,rgba(247,185,40,.13),transparent 25%),radial-gradient(circle at 5% 42%,rgba(21,159,232,.16),transparent 30%),linear-gradient(135deg,#06152b 0%,#0b1f3a 52%,#081a31 100%);color:#f8fbff}
.topbar{background:rgba(6,21,43,.92);border-bottom:1px solid rgba(255,255,255,.10);min-height:92px;height:92px;padding-top:4px}.topnav a{color:#b7c6d8}.topnav a:hover{color:#fff}.eyebrow{color:#65c9fa}
.brand{display:flex;align-items:center;height:100%;min-width:150px}.brand img{width:132px!important;height:auto!important;max-height:84px;object-fit:contain;display:block}
.btn-primary{background:linear-gradient(135deg,#159fe8 0%,#f4ad25 100%);box-shadow:0 14px 34px rgba(21,159,232,.24)}.btn-ghost{color:#e8f1fb;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}
.glass{background:linear-gradient(145deg,rgba(17,43,75,.94),rgba(7,25,48,.94));border-color:rgba(128,196,241,.17)}
.hero-card{display:none!important}.hero-card-wrap{min-height:500px;height:500px;position:relative;isolation:isolate}.hero-card-wrap::before{content:"";position:absolute;inset:0;background:url("HERO.png") center bottom/contain no-repeat;z-index:2;filter:drop-shadow(0 24px 35px rgba(0,0,0,.28))}.hero-card-wrap .orb{z-index:1}

/* Workspace: every surface and text colour derives from semantic theme tokens. */
.teachr-app{color:var(--workspace-text)!important;background:var(--workspace-bg)!important;border-radius:0}
.teachr-app-head h1,.app-intro h2{color:var(--workspace-text)!important}.teachr-app-head>div>p:last-child,.app-intro p{color:var(--workspace-muted)!important}
.app-home-button{color:var(--workspace-text)!important;background:var(--workspace-surface)!important;border-color:var(--workspace-line)!important;box-shadow:0 8px 22px rgba(16,35,63,.06)}
.app-home-button:hover{background:var(--workspace-surface-soft)!important;border-color:var(--workspace-accent)!important}
.app-tool-grid{gap:18px}.app-tool-card{min-height:188px;color:var(--workspace-text)!important;background:var(--workspace-surface)!important;border:1px solid var(--workspace-line)!important;box-shadow:var(--workspace-shadow)!important}
.app-tool-card:hover,.app-tool-card.active{background:var(--workspace-surface-soft)!important;border-color:var(--workspace-accent)!important}.app-tool-card strong{color:var(--workspace-text)!important}.app-tool-card small{color:var(--workspace-muted)!important}.app-tool-arrow{color:var(--workspace-accent)!important}
.app-tool-icon.blue,.tool-icon.blue{background:#e5f5ff;color:#0879b2}.app-tool-icon.purple,.tool-icon.purple{background:#eee9ff;color:#6745d8}.app-tool-icon.cyan,.tool-icon.cyan{background:#e3f8ff;color:#087e9e}.app-tool-icon.violet,.tool-icon.violet{background:#eee9ff;color:#6848d5}.app-tool-icon.green,.tool-icon.green{background:#e3f8ef;color:#087c57}.app-tool-icon.orange,.tool-icon.orange{background:#fff1dc;color:#a95b08}.app-tool-icon.pink,.tool-icon.pink{background:#ffe7ee;color:#b92d52}.app-tool-icon.teal,.tool-icon.teal{background:#e1f8f5;color:#087c72}

/* Generator workspace: remove fixed white surfaces and fixed light-mode text. */
#appToolMount{color:var(--workspace-text)!important}
#appToolMount>.builder{background:var(--workspace-surface)!important;border:1px solid var(--workspace-line)!important;box-shadow:var(--workspace-shadow)!important;color:var(--workspace-text)!important}
#appToolMount .builder-header h3,#appToolMount .section-heading h2,#appToolMount .result h4,#appToolMount .result-item b,#appToolMount .result-item strong,#appToolMount .result-item h1,#appToolMount .result-item h2,#appToolMount .result-item h3,#appToolMount .result-item h4,#appToolMount .result-item h5,#appToolMount .result-item h6{color:var(--workspace-text)!important}
#appToolMount .builder-description,#appToolMount .section-sub,#appToolMount .result-sub,#appToolMount .result-item p,#appToolMount .result-item li,#appToolMount .result-item td,#appToolMount .result-item th,#appToolMount .result-item span{color:var(--workspace-muted)!important}
#appToolMount .field label{color:var(--workspace-text)!important}#appToolMount .field label span{color:var(--workspace-subtle)!important}
#appToolMount .field input,#appToolMount .field select,#appToolMount .field textarea,#appToolMount .library-actions input{background:var(--workspace-input)!important;color:var(--workspace-text)!important;border-color:var(--workspace-line)!important}
#appToolMount .field input::placeholder,#appToolMount .field textarea::placeholder,#appToolMount .library-actions input::placeholder{color:var(--workspace-subtle)!important;opacity:1}
#appToolMount .field input:focus,#appToolMount .field select:focus,#appToolMount .field textarea:focus{border-color:var(--workspace-accent)!important;box-shadow:0 0 0 3px rgba(21,159,232,.13)}
#appToolMount .online,#appToolMount .result,#appToolMount .result-item,#appToolMount .resource-card,#appToolMount .resource-preview span,#appToolMount .filter{background:var(--workspace-surface-soft)!important;color:var(--workspace-muted)!important;border-color:var(--workspace-line)!important}
#appToolMount .result table{background:var(--workspace-surface)!important;color:var(--workspace-text)!important;border-color:var(--workspace-line)!important}#appToolMount .result th,#appToolMount .result td{border-color:var(--workspace-line)!important}
#appToolMount .resource-card h4,#appToolMount .empty strong{color:var(--workspace-text)!important}#appToolMount .resource-card p,#appToolMount .empty{color:var(--workspace-muted)!important}
#appToolMount .filter.active,#appToolMount .filter:hover{color:var(--workspace-accent)!important;border-color:var(--workspace-accent)!important;background:var(--workspace-surface)!important}
#appToolMount .resource-actions button,#appToolMount .text-btn,.app-breadcrumb button{color:var(--workspace-accent)!important}.app-breadcrumb,.app-breadcrumb span{color:var(--workspace-muted)!important}

/* Curriculum objective and generated lesson output must follow the active theme. */
#appToolMount .curriculum-objective-panel,#appToolMount .curriculum-precision-panel,#appToolMount [class*="curriculum-objective"],#appToolMount [class*="curriculum-precision"]{background:var(--workspace-surface-soft)!important;color:var(--workspace-text)!important;border-color:var(--workspace-line)!important}
#appToolMount .curriculum-objective-panel *,#appToolMount .curriculum-precision-panel *{color:inherit}
#appToolMount .result-item{overflow:hidden}#appToolMount .result-item table{width:100%;border-collapse:collapse}

/* Dark mode uses dark panels rather than white cards, eliminating the large white workspace. */
html[data-theme="dark"] #appToolMount .lesson-design-panel,html[data-theme="dark"] #appToolMount #aiProviderPanel{background:var(--workspace-surface-soft)!important;border-color:var(--workspace-line)!important;color:var(--workspace-text)!important}
html[data-theme="dark"] #appToolMount .lesson-design-panel .lesson-design-head strong,html[data-theme="dark"] #appToolMount .lesson-design-panel .lesson-design-head span,html[data-theme="dark"] #appToolMount .lesson-design-panel .field label,html[data-theme="dark"] #appToolMount #aiProviderPanel .aip-head strong,html[data-theme="dark"] #appToolMount #aiProviderPanel .aip-head span,html[data-theme="dark"] #appToolMount #aiProviderPanel .aip-note,html[data-theme="dark"] #appToolMount #aiProviderPanel .field label{color:var(--workspace-text)!important}
html[data-theme="dark"] #appToolMount .lesson-design-panel .field input,html[data-theme="dark"] #appToolMount .lesson-design-panel .field select,html[data-theme="dark"] #appToolMount .lesson-design-panel .field textarea,html[data-theme="dark"] #appToolMount #aiProviderPanel .field input,html[data-theme="dark"] #appToolMount #aiProviderPanel .field select{background:var(--workspace-input)!important;color:var(--workspace-text)!important;border-color:var(--workspace-line)!important}

@media(max-width:900px){.topbar{height:82px;min-height:82px}.brand img{width:118px!important;max-height:74px}.brand{min-width:125px}.hero-card-wrap{min-height:420px;height:420px}}
