/* Znavika unified theme 1. Scoped to explicitly enrolled pages. */
:root {
  --zn-ink:#172e4a; --zn-muted:#53667b; --zn-blue:#155cca;
  --zn-deep:#124b9f; --zn-bg:#f6f8fc; --zn-line:#dbe4ee;
  --zn-mint:#e0f4eb; --zn-green:#235d49;
  --ink:#172e4a; --ink2:#415873; --blue:#155cca; --blue2:#124b9f;
  --mint:#e0f4eb; --paper:#f6f8fc; --white:#fff; --line:#dbe4ee;
  --muted:#53667b; --red:#a92f2a;
  --shadow:0 5px 18px rgba(23,46,74,.055);
  --design-radius:18px; --design-focus:#155cca;
}
body[data-znavika-theme="1"] {
  margin:0;
  background:var(--zn-bg);
  color:var(--zn-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.6;
  color-scheme:light;
  text-rendering:optimizeLegibility;
}
body[data-znavika-theme="1"] *,
body[data-znavika-theme="1"] *::before,
body[data-znavika-theme="1"] *::after { box-sizing:border-box; }
body[data-znavika-theme="1"] :where(button,input,select,textarea) { font-family:inherit; }
body[data-znavika-theme="1"] :where(button,a,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--zn-blue);
  outline-offset:3px;
}
body[data-znavika-theme="1"] :where(h1,h2,h3) { color:inherit; overflow-wrap:break-word; }
body[data-znavika-theme="1"] :where(h1) { font-size:38px; line-height:1.16; letter-spacing:-.035em; }
body[data-znavika-theme="1"] :where(h2) { font-size:28px; line-height:1.25; letter-spacing:-.025em; }
body[data-znavika-theme="1"] :where(h3) { font-size:21px; line-height:1.35; }
body[data-znavika-theme="1"] :where(a) { text-underline-offset:3px; }
body[data-znavika-theme="1"] :where(button,a) { -webkit-tap-highlight-color:rgba(21,92,202,.15); }
body[data-znavika-theme="1"] :where(button):disabled { cursor:not-allowed; }
/* A single visibility rule is retained across every dynamic role and lesson. */
body[data-znavika-theme="1"] [hidden] { display:none!important; }
@media(max-width:700px) {
  body[data-znavika-theme="1"] :where(h1) { font-size:30px; }
  body[data-znavika-theme="1"] :where(h2) { font-size:25px; }
  body[data-znavika-theme="1"] :where(h3) { font-size:20px; }
}
@media(prefers-reduced-motion:reduce) {
  body[data-znavika-theme="1"] *,
  body[data-znavika-theme="1"] *::before,
  body[data-znavika-theme="1"] *::after {
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}


/* Public content theme. Strong scoped selectors also override SEO styles embedded in body.
   No content, component visibility, interactive state or source markup is changed. */
body[data-znavika-theme="1"].seo-catalog-body,
body[data-znavika-theme="1"].article-body {
  background: #f6f8fc;
  color: #172e4a;
  font-size: 16px;
  line-height: 1.65;
}

/* Preparation catalog and the eight subject indexes. */
body[data-znavika-theme="1"] .seo-catalog-hero {
  padding-block: 38px 36px;
  border-color: #dbe4ee;
  background: linear-gradient(145deg, #edf3ff, #f6f8fc 75%);
}
body[data-znavika-theme="1"] .seo-catalog-hero h1 {
  margin: 10px 0 16px;
  color: #172e4a;
  font-size: 38px;
  line-height: 1.18;
  letter-spacing: -.035em;
}
body[data-znavika-theme="1"] .seo-catalog-hero p {
  max-width: 72ch;
  color: #53667b;
  font-size: 17px;
  line-height: 1.65;
}
body[data-znavika-theme="1"] .seo-catalog-content { padding-block: 36px 56px; }
body[data-znavika-theme="1"] .seo-catalog-grid { gap: 16px; }
body[data-znavika-theme="1"] .seo-catalog-card {
  padding: 22px;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
  background: #fff;
  color: #172e4a;
  box-shadow: 0 5px 16px rgba(23, 46, 74, .035);
  transition: border-color .15s ease, background-color .15s ease;
}
body[data-znavika-theme="1"] .seo-catalog-card:hover {
  border-color: #6e98d3;
  background: #f5f8ff;
  transform: none;
}
body[data-znavika-theme="1"] .seo-catalog-card small { color: #155cca; font-size: 12px; font-weight: 700; }
body[data-znavika-theme="1"] .seo-catalog-card h2 {
  margin-bottom: 10px;
  color: #172e4a;
  font-size: 23px;
  line-height: 1.25;
  letter-spacing: -.02em;
}
body[data-znavika-theme="1"] .seo-catalog-card p { color: #53667b; font-size: 16px; line-height: 1.6; }
body[data-znavika-theme="1"] .seo-catalog-note { color: #53667b; font-size: 14px; }
body[data-znavika-theme="1"] .article-kicker { color: #155cca; font-size: 12px; letter-spacing: .065em; }
body[data-znavika-theme="1"] .breadcrumbs { gap: 8px; margin-bottom: 26px; color: #53667b; font-size: 14px; }
body[data-znavika-theme="1"] .breadcrumbs a { color: #155cca; text-underline-offset: 3px; }

/* Older long-form article: retain reading width, table scrolling and TOC layout. */
body[data-znavika-theme="1"] .article-hero {
  padding-block: 38px 36px;
  border-color: #dbe4ee;
  background: linear-gradient(145deg, #edf3ff, #f6f8fc 75%);
}
body[data-znavika-theme="1"] .article-hero h1 {
  color: #172e4a;
  margin-bottom: 18px;
  font-size: 38px;
  line-height: 1.18;
  letter-spacing: -.035em;
}
body[data-znavika-theme="1"] .article-lead { margin-bottom: 22px; color: #53667b; font-size: 17px; line-height: 1.65; }
body[data-znavika-theme="1"] .article-summary { padding: 20px 22px; border-color: #c6d8ef; border-radius: 18px; background: #edf3ff; }
body[data-znavika-theme="1"] .article-summary > strong { color: #124b9f; }
body[data-znavika-theme="1"] .article-layout { gap: 42px; padding-block: 38px 56px; }
body[data-znavika-theme="1"] .article-toc {
  top: 88px;
  gap: 5px;
  padding: 16px;
  border-color: #dbe4ee;
  border-radius: 18px;
  background: #fff;
}
body[data-znavika-theme="1"] .article-toc a { padding-block: 7px; color: #53667b; font-size: 14px; line-height: 1.5; }
body[data-znavika-theme="1"] .article-toc a:hover { color: #155cca; text-decoration: underline; text-underline-offset: 3px; }
body[data-znavika-theme="1"] .article-content { font-size: 16.5px; line-height: 1.65; }
body[data-znavika-theme="1"] .article-content section { margin-bottom: 40px; scroll-margin-top: 88px; }
body[data-znavika-theme="1"] .article-content h2 {
  margin-bottom: 18px;
  color: #172e4a;
  font-size: 28px;
  line-height: 1.25;
  letter-spacing: -.025em;
}
body[data-znavika-theme="1"] .article-content h3 { color: #172e4a; font-size: 20px; line-height: 1.35; }
body[data-znavika-theme="1"] .article-content p,
body[data-znavika-theme="1"] .article-content li { color: #53667b; }
body[data-znavika-theme="1"] .rule-steps li { gap: 14px; padding: 20px; border-color: #dbe4ee; border-radius: 18px; background: #fff; }
body[data-znavika-theme="1"] .rule-steps li > span { border-radius: 11px; color: #155cca; background: #e8f0ff; }
body[data-znavika-theme="1"] .rule-card { padding: 21px; border-color: #dbe4ee; border-radius: 18px; background: #fff; }
body[data-znavika-theme="1"] .rule-card-blue { background: #edf3ff; border-color: #c6d8ef; }
body[data-znavika-theme="1"] .rule-label { color: #155cca; font-size: 12px; }
body[data-znavika-theme="1"] .exception-note,
body[data-znavika-theme="1"] .article-note { border-left-color: #377b60; background: #eaf5ef; }
body[data-znavika-theme="1"] .example-list,
body[data-znavika-theme="1"] .comparison-table { border-color: #dbe4ee; border-radius: 18px; background: #fff; }
body[data-znavika-theme="1"] .example-list p { padding: 15px 18px; border-color: #dbe4ee; }
body[data-znavika-theme="1"] .comparison-table { max-width: 100%; overscroll-behavior-x: contain; }
body[data-znavika-theme="1"] .comparison-table th,
body[data-znavika-theme="1"] .comparison-table td { padding: 14px 16px; border-color: #dbe4ee; line-height: 1.55; }
body[data-znavika-theme="1"] .comparison-table th { background: #edf3ff; color: #172e4a; font-size: 14px; }
body[data-znavika-theme="1"] .self-check-list details { border-color: #dbe4ee; border-radius: 18px; }
body[data-znavika-theme="1"] .self-check-list summary { min-height: 44px; padding: 16px 18px; color: #172e4a; font-size: 16px; line-height: 1.5; }
body[data-znavika-theme="1"] .self-check-list details p { padding: 16px 18px; }
body[data-znavika-theme="1"] .sources-section { border-color: #dbe4ee; padding-top: 26px; }
body[data-znavika-theme="1"] .sources-section a { color: #155cca; overflow-wrap: anywhere; }
body[data-znavika-theme="1"] .article-cta { padding: 24px; border-radius: 18px; background: #172e4a; }
body[data-znavika-theme="1"] .article-content .article-cta h2 { color: #fff; font-size: 25px; }
body[data-znavika-theme="1"] .article-content .article-cta p { color: #dae5f2; }

/* Interactive SEO articles. Their inline CSS and JS selectors are preserved. */
body[data-znavika-theme="1"] .seo-scope {
  --navy: #172e4a;
  --ink: #172e4a;
  --muted: #53667b;
  --teal: #155cca;
  --cyan: #edf3ff;
  --paper: #fff;
  --bg: #f6f8fc;
  --line: #dbe4ee;
  background: #f6f8fc;
  color: #172e4a;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16.5px;
  line-height: 1.65;
}
body[data-znavika-theme="1"] .seo-scope a { color: #155cca; text-underline-offset: 3px; }
body[data-znavika-theme="1"] .seo-scope .hero {
  padding: 0;
  border-color: #dbe4ee;
  background: linear-gradient(135deg, #edf3ff, #edf7f1 80%, #fff5df);
}
body[data-znavika-theme="1"] .seo-scope .hero::before { content: none; }
body[data-znavika-theme="1"] .seo-scope .hero-inner { max-width: 1120px; padding-block: 38px; gap: 30px; }
body[data-znavika-theme="1"] .seo-scope .hero h1 {
  font-size: 38px;
  line-height: 1.18;
  letter-spacing: -.035em;
  color: #172e4a;
}
body[data-znavika-theme="1"] .seo-scope .hero p { color: #53667b; font-size: 17px; line-height: 1.65; }
body[data-znavika-theme="1"] .seo-scope .eyebrow { color: #155cca; font-size: 12px; letter-spacing: .065em; }
body[data-znavika-theme="1"] .seo-scope .pill { color: #35516f; border-color: #c8d8eb; background: #fff; }
body[data-znavika-theme="1"] .seo-scope .button {
  min-height: 46px;
  padding: 11px 17px;
  border: 1px solid #155cca;
  border-radius: 11px;
  background: #155cca;
  color: #fff;
  box-shadow: none;
  font-size: 15px;
  line-height: 1.45;
}
body[data-znavika-theme="1"] .seo-scope .button:hover,
body[data-znavika-theme="1"] .seo-scope .button:focus-visible { background: #124b9f; border-color: #124b9f; transform: none; }
body[data-znavika-theme="1"] .seo-scope .hero-art {
  padding: 20px;
  border-color: #dbe4ee;
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(23, 46, 74, .055);
  transform: none;
}
body[data-znavika-theme="1"] .seo-scope .word { border-radius: 11px; background: #f6f8fc; font-size: 18px; }
body[data-znavika-theme="1"] .seo-scope .hero-art .note { background: #eaf5ef; color: #235d49; }
body[data-znavika-theme="1"] .seo-scope .wrap { max-width: 1120px; gap: 28px; margin-block: 30px 52px; }
body[data-znavika-theme="1"] .seo-scope .toc { top: 88px; border-color: #dbe4ee; border-radius: 18px; padding: 16px; }
body[data-znavika-theme="1"] .seo-scope .toc a { padding-block: 8px; font-size: 14px; line-height: 1.5; }
body[data-znavika-theme="1"] .seo-scope .toc a:hover { text-decoration: underline; }
body[data-znavika-theme="1"] .seo-scope .section {
  margin-bottom: 18px;
  padding: 26px;
  border-color: #dbe4ee;
  border-radius: 18px;
  scroll-margin-top: 88px;
}
body[data-znavika-theme="1"] .seo-scope .section h2 { color: #172e4a; font-size: 28px; line-height: 1.25; letter-spacing: -.025em; }
body[data-znavika-theme="1"] .seo-scope .section h3 { color: #172e4a; font-size: 20px; line-height: 1.35; }
body[data-znavika-theme="1"] .seo-scope .section p { max-width: 72ch; }
body[data-znavika-theme="1"] .seo-scope .lead { font-size: 17px; line-height: 1.65; }
body[data-znavika-theme="1"] .seo-scope .source { color: #53667b; font-size: 13px; }
body[data-znavika-theme="1"] .seo-scope .source a { color: #155cca; overflow-wrap: anywhere; }
body[data-znavika-theme="1"] .seo-scope .stat { gap: 16px; border-radius: 18px; background: #edf3ff; }
body[data-znavika-theme="1"] .seo-scope .stat b { color: #155cca; font-size: 28px; }
body[data-znavika-theme="1"] .seo-scope .case { padding: 19px; border-color: #dbe4ee; border-radius: 18px; background: #f6f8fc; }
body[data-znavika-theme="1"] .seo-scope .case .phrase { color: #172e4a; font-size: 22px; line-height: 1.4; }
body[data-znavika-theme="1"] .seo-scope .step { border-color: #dbe4ee; border-radius: 18px; background: #f6f8fc; }
body[data-znavika-theme="1"] .seo-scope .step span { border-radius: 9px; background: #e8f0ff; color: #155cca; }
body[data-znavika-theme="1"] .seo-scope .visual-tree { border-color: #dbe4ee; border-radius: 18px; background: #edf3ff; }
body[data-znavika-theme="1"] .seo-scope .visual-tree text,
body[data-znavika-theme="1"] .seo-scope .scene-picture text { fill: #172e4a; }
body[data-znavika-theme="1"] .seo-scope .visual-tree .small { fill: #53667b; }
body[data-znavika-theme="1"] .seo-scope .visual-tree .result { fill: #155cca; }
body[data-znavika-theme="1"] .seo-scope .test { padding: 20px; border-color: #c6d8ef; border-radius: 18px; background: #edf3ff; }
body[data-znavika-theme="1"] .seo-scope .choice {
  min-height: 46px;
  padding: 10px 14px;
  border-color: #b9cce5;
  border-radius: 11px;
  color: #172e4a;
  background: #fff;
  font-size: 15px;
  line-height: 1.45;
}
body[data-znavika-theme="1"] .seo-scope .choice[aria-pressed="true"] { border-color: #155cca; background: #e4eeff; color: #124b9f; }
body[data-znavika-theme="1"] .seo-scope details { padding: 0 16px; border-color: #dbe4ee; border-radius: 18px; background: #f6f8fc; }
body[data-znavika-theme="1"] .seo-scope summary { min-height: 44px; padding-block: 14px; color: #172e4a; font-size: 16px; line-height: 1.5; }
body[data-znavika-theme="1"] .seo-scope details p { margin-top: 0; margin-bottom: 16px; }
body[data-znavika-theme="1"] .seo-scope .mini div { border-radius: 14px; background: #eaf5ef; font-size: 14px; }
body[data-znavika-theme="1"] .seo-scope .mini strong { color: #235d49; }
body[data-znavika-theme="1"] .seo-scope .scene { padding: 21px; border-color: #dbe4ee; border-radius: 18px; background: linear-gradient(140deg, #edf7f1, #edf3ff); }
body[data-znavika-theme="1"] .seo-scope .scene button { border-color: #b9cce5; border-radius: 11px; color: #172e4a; font-size: 15px; line-height: 1.45; }
body[data-znavika-theme="1"] .seo-scope .scene button[aria-pressed="true"] { border-color: #155cca; color: #fff; background: #155cca; }
body[data-znavika-theme="1"] .seo-scope .scene-note { color: #53667b; font-size: 13px; }
body[data-znavika-theme="1"] .seo-scope :is(a, button, summary):focus-visible,
body[data-znavika-theme="1"] .seo-scope .scene button:focus-visible,
body[data-znavika-theme="1"] .seo-scope .choice:focus-visible,
body[data-znavika-theme="1"] :is(.seo-catalog-card, .article-toc a, .article-content a, .article-content summary):focus-visible {
  outline: 3px solid #155cca;
  outline-offset: 4px;
}

/* Legacy school page keeps all original form controls and content. */
body[data-znavika-theme="1"]:has(.school-hero) { color: #172e4a; background: #f6f8fc; font-size: 16px; line-height: 1.6; }
body[data-znavika-theme="1"]:has(.school-hero) .shell { max-width: 1120px; }
body[data-znavika-theme="1"] .school-hero { padding-block: 38px 42px; }
body[data-znavika-theme="1"] .school-hero .audience-grid { gap: 38px; }
body[data-znavika-theme="1"] .school-hero h1 { margin: 14px 0 18px; font-size: 38px; line-height: 1.18; letter-spacing: -.035em; }
body[data-znavika-theme="1"] .school-hero h1 em { color: #155cca; }
body[data-znavika-theme="1"] .school-hero .hero-lead { color: #53667b; font-size: 17px; line-height: 1.6; margin-bottom: 22px; }
body[data-znavika-theme="1"] .school-panel { min-height: 0; padding: 25px; border-radius: 18px; background: #172e4a; transform: none; box-shadow: none; }
body[data-znavika-theme="1"] .school-panel > p { margin-top: 24px; font-size: 16px; line-height: 1.6; color: #dbe5f1; }
body[data-znavika-theme="1"] .school-panel .signal-list { margin-top: 24px; }
body[data-znavika-theme="1"] .school-panel .signal-list b { font-size: 32px; color: #a6e6c9; }
body[data-znavika-theme="1"]:has(.school-hero) :is(.problem-section, .beta-section, .process-section, .waitlist-section) { padding-block: 52px; }
body[data-znavika-theme="1"]:has(.school-hero) :is(.split-heading, .section-heading) { gap: 32px; margin-bottom: 26px; }
body[data-znavika-theme="1"]:has(.school-hero) h2 { font-size: 28px; line-height: 1.25; letter-spacing: -.025em; }
body[data-znavika-theme="1"]:has(.school-hero) :is(.split-heading > p, .section-heading > p, .beta-intro > p) { font-size: 16px; line-height: 1.6; }
body[data-znavika-theme="1"]:has(.school-hero) .section-number { margin-bottom: 12px; }
body[data-znavika-theme="1"] .school-benefits .reason-card { min-height: 0; padding: 21px; border-color: #dbe4ee; border-radius: 18px; transform: none; }
body[data-znavika-theme="1"] .school-benefits .reason-card h3 { margin-top: 22px; font-size: 20px; line-height: 1.3; }
body[data-znavika-theme="1"] .school-benefits .reason-card p { color: #53667b; font-size: 16px; }
body[data-znavika-theme="1"] .school-benefits .accent-card { background: #e0f4eb; }
body[data-znavika-theme="1"]:has(.school-hero) .process-section { background: #172e4a; }
body[data-znavika-theme="1"]:has(.school-hero) .process-list li { padding-block: 20px; }
body[data-znavika-theme="1"]:has(.school-hero) .process-list h3 { font-size: 20px; line-height: 1.3; }
body[data-znavika-theme="1"]:has(.school-hero) .process-list p { color: #dbe5f1; font-size: 16px; }
body[data-znavika-theme="1"]:has(.school-hero) .beta-grid,
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-grid { gap: 38px; }
body[data-znavika-theme="1"]:has(.school-hero) .beta-row { gap: 18px; padding-block: 18px; border-color: #dbe4ee; }
body[data-znavika-theme="1"]:has(.school-hero) .beta-row strong { color: #155cca; }
body[data-znavika-theme="1"]:has(.school-hero) .beta-row span { color: #53667b; font-size: 16px; }
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-section { background: linear-gradient(130deg, #172e4a, #155cca); }
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-copy > p { font-size: 16px; color: #dbe5f1; }
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-form { min-height: 0; padding: 25px; border-radius: 18px; box-shadow: none; }
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-form input:not([type="checkbox"]),
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-form select { min-height: 48px; border-color: #dbe4ee; border-radius: 11px; font-size: 16px; }
body[data-znavika-theme="1"]:has(.school-hero) .waitlist-form :is(input, select):focus-visible { outline: 3px solid #155cca; outline-offset: 3px; }
body[data-znavika-theme="1"]:has(.school-hero) .button { min-height: 46px; border-radius: 11px; font-size: 15px; line-height: 1.45; box-shadow: none; }
body[data-znavika-theme="1"]:has(.school-hero) .button-primary { background: #155cca; }
body[data-znavika-theme="1"]:has(.school-hero) .button-primary:hover { background: #124b9f; transform: none; }
body[data-znavika-theme="1"]:has(.school-hero) .text-link { color: #155cca; font-size: 15px; }

/* Existing public footer, outside the accepted landing/teacher implementation. */
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer { padding-block: 28px; border-top: 1px solid #dbe4ee; background: #fff; color: #53667b; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .footer-inner { gap: 24px; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .brand { color: #172e4a; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .brand-mark { background: #155cca; color: #fff; border-radius: 10px; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .brand-copy small { color: #53667b; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .footer-links { color: #155cca; font-size: 13px; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .footer-links a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 3px; }
body[data-znavika-theme="1"]:not(.zn-landing) .site-footer .footer-links a:hover { color: #124b9f; text-decoration: underline; }

@media (max-width: 900px) {
  body[data-znavika-theme="1"] .article-layout { gap: 26px; }
}
@media (max-width: 860px) {
  body[data-znavika-theme="1"] .seo-scope .hero-inner { gap: 24px; }
  body[data-znavika-theme="1"] .seo-scope .toc { padding: 10px; overscroll-behavior-x: contain; }
  body[data-znavika-theme="1"] .seo-scope .toc a { min-height: 44px; padding: 10px 12px; border-radius: 11px; }
}
@media (max-width: 720px) {
  body[data-znavika-theme="1"] :is(.seo-catalog-hero, .article-hero) { padding-block: 28px 30px; }
  body[data-znavika-theme="1"] :is(.seo-catalog-hero, .article-hero) h1,
  body[data-znavika-theme="1"] .seo-scope .hero h1,
  body[data-znavika-theme="1"] .school-hero h1 { font-size: 30px; line-height: 1.2; }
  body[data-znavika-theme="1"] :is(.article-content h2, .seo-scope .section h2),
  body[data-znavika-theme="1"]:has(.school-hero) h2 { font-size: 25px; }
  body[data-znavika-theme="1"] .seo-catalog-card { padding: 19px; }
  body[data-znavika-theme="1"] .seo-catalog-card h2 { font-size: 22px; }
  body[data-znavika-theme="1"] .seo-catalog-hero p,
  body[data-znavika-theme="1"] .article-lead,
  body[data-znavika-theme="1"] .article-content,
  body[data-znavika-theme="1"] .seo-scope,
  body[data-znavika-theme="1"] .seo-scope .hero p,
  body[data-znavika-theme="1"] .seo-scope .lead { font-size: 16px; }
  body[data-znavika-theme="1"] .article-layout { padding-block: 28px 44px; }
  body[data-znavika-theme="1"] .article-content section { margin-bottom: 32px; }
  body[data-znavika-theme="1"] .article-summary,
  body[data-znavika-theme="1"] .rule-card { padding: 18px; }
  body[data-znavika-theme="1"] .rule-steps li { grid-template-columns: 32px minmax(0, 1fr); gap: 12px; padding: 16px; }
  body[data-znavika-theme="1"] .rule-steps li > span { width: 32px; height: 32px; }
  body[data-znavika-theme="1"] .seo-scope .hero-inner { padding-block: 28px; padding-inline: 16px; }
  body[data-znavika-theme="1"] .seo-scope .wrap { margin-block: 24px 40px; padding-inline: 16px; gap: 18px; }
  body[data-znavika-theme="1"] .seo-scope .section { padding: 19px; }
  body[data-znavika-theme="1"] .seo-scope .case,
  body[data-znavika-theme="1"] .seo-scope .scene,
  body[data-znavika-theme="1"] .seo-scope .test { padding: 16px; }
  body[data-znavika-theme="1"] .seo-scope .case .phrase { font-size: 21px; }
  body[data-znavika-theme="1"] .school-hero { padding-block: 28px 34px; }
  body[data-znavika-theme="1"] .school-hero .audience-grid { gap: 26px; }
  body[data-znavika-theme="1"]:has(.school-hero) :is(.problem-section, .beta-section, .process-section, .waitlist-section) { padding-block: 36px; }
  body[data-znavika-theme="1"]:has(.school-hero) :is(.split-heading, .section-heading, .beta-grid, .waitlist-grid) { gap: 22px; }
  body[data-znavika-theme="1"]:has(.school-hero) .waitlist-form { padding: 20px; }
  body[data-znavika-theme="1"] .school-panel { padding: 22px; }
}
@media (max-width: 380px) {
  body[data-znavika-theme="1"] .seo-scope .section { padding: 16px; }
  body[data-znavika-theme="1"] .seo-scope .choice { padding-inline: 10px; }
  body[data-znavika-theme="1"] .seo-scope .stat { flex-wrap: wrap; gap: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-znavika-theme="1"] .seo-catalog-card { transition: none; }
  body[data-znavika-theme="1"] .seo-scope { scroll-behavior: auto; }
  body[data-znavika-theme="1"] .seo-scope .scene-picture { animation: none; }
}


/* Legacy demo workspaces only. Visibility, workflow and routes remain in the original files. */
body.app-body[data-znavika-theme="1"] {
  --ink:#172e4a; --ink2:#53667b; --blue:#155cca; --blue2:#104ca8;
  --mint:#dcecff; --paper:#f6f8fc; --white:#fff; --line:#dbe4ee;
  --muted:#53667b; --red:#b52c31; --shadow:0 8px 26px rgba(23,46,74,.06);
  color:var(--ink); background:var(--paper); font-size:16px; line-height:1.55;
}
body.app-body[data-znavika-theme="1"] :is(h1,h2,h3) { line-height:1.22; letter-spacing:-.025em; overflow-wrap:break-word; }
body.app-body[data-znavika-theme="1"] :is(.workspace-header h1,.kit-intro h1) { font-size:34px; line-height:1.2; letter-spacing:-.03em; }
body.app-body[data-znavika-theme="1"] :is(.section-title h2,.view-heading h2,.summary-heading h2,.student-home-intro h2,.school-board h2,.kit-section-head h2,.question-card h2,.session-loading h2) { font-size:28px; line-height:1.25; }
body.app-body[data-znavika-theme="1"] :is(.action-copy h2,.student-home-grid .action-copy h2,.school-intro h2,.school-next h2,.result-preview h3) { font-size:28px; line-height:1.25; letter-spacing:-.025em; }
body.app-body[data-znavika-theme="1"] :is(.goal-large h3,.teacher-class-grid h3,.assignment-grid h3,.recommendation h3,.kit-student-card h3,.kit-teacher-card h3,.phone-frame h3,.detail-head h2) { font-size:22px; line-height:1.3; }
body.app-body[data-znavika-theme="1"] :is(.app-workspace,.kit-page) { font-size:16px; }
body.app-body[data-znavika-theme="1"] .workspace-header { align-items:flex-start; gap:20px; margin-bottom:24px; }
body.app-body[data-znavika-theme="1"] .workspace-header>div:first-child { min-width:0; }
body.app-body[data-znavika-theme="1"] .workspace-header small { font-size:13px; line-height:1.45; }
body.app-body[data-znavika-theme="1"] .workspace-header h1 { margin-top:6px; }
body.app-body[data-znavika-theme="1"] .header-actions { flex-wrap:wrap; flex-shrink:0; gap:8px; }
body.app-body[data-znavika-theme="1"] :is(.view-heading,.summary-heading) { margin:24px 0; }
body.app-body[data-znavika-theme="1"] :is(.view-heading>span,.summary-heading>span,.student-home-intro p:last-child) { color:var(--muted); font-size:16px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] :is(.overline,.school-overline,.view-heading>p,.summary-heading>p,.kit-intro>p,.kit-section-head>p) { font-size:12px; letter-spacing:.04em; line-height:1.5; }

/* A light navigation rail keeps the same destinations and active state. */
body.app-body[data-znavika-theme="1"] .app-sidebar { color:var(--ink); background:#fff; border-right:1px solid var(--line); }
body.app-body[data-znavika-theme="1"] .app-brand { color:var(--ink); }
body.app-body[data-znavika-theme="1"] .app-brand>span { color:#fff; background:var(--blue); border-radius:11px; }
body.app-body[data-znavika-theme="1"] .demo-chip { margin:18px 0 24px; border-color:var(--line); color:var(--muted); background:#f6f8fc; }
body.app-body[data-znavika-theme="1"] .nav-item { color:var(--muted); border:1px solid transparent; border-radius:11px; }
body.app-body[data-znavika-theme="1"] .nav-item span { color:var(--muted); }
body.app-body[data-znavika-theme="1"] .nav-item:hover { color:var(--blue); background:#f0f5fc; }
body.app-body[data-znavika-theme="1"] .nav-item.is-active { color:#104ca8; border-color:#c6d9f5; background:#eaf2ff; }
body.app-body[data-znavika-theme="1"] .nav-item.is-active span { color:var(--blue); }
body.app-body[data-znavika-theme="1"] .role-switch { border-color:var(--line); background:#f6f8fc; color:var(--muted); border-radius:11px; }
body.app-body[data-znavika-theme="1"] .role-switch b { color:var(--blue); }

/* Consistent surfaces and less empty space. */
body.app-body[data-znavika-theme="1"] :is(.goal-card,.time-card,.chart-card,.profile-card,.goal-large,.progress-grid article,.school-stat-grid article,.school-board,.case-list,.case-detail,.question-card,.teacher-decision,.assignment-grid article,.result-grid article,.teacher-class-grid article,.component-card,.anatomy-grid article,.home-link-grid button,.subject-choice) {
  border-color:var(--line); border-radius:18px; box-shadow:var(--shadow);
}
body.app-body[data-znavika-theme="1"] :is(.goal-card,.time-card,.chart-card,.profile-card,.goal-large,.progress-grid article,.school-stat-grid article,.school-board,.case-detail,.teacher-decision,.assignment-grid article,.result-grid article,.teacher-class-grid article) { padding:22px; }
body.app-body[data-znavika-theme="1"] :is(.home-progress .goal-card,.goal-large,.teacher-class-grid article,.assignment-grid p,.school-stat-grid article,.time-options button,.anatomy-grid article,.component-card,.kit-component-grid .component-card) { min-height:0; }
body.app-body[data-znavika-theme="1"] .small-label { margin-bottom:16px; font-size:13px; }
body.app-body[data-znavika-theme="1"] :is(.goal-card>strong,.time-card strong) { font-size:21px; line-height:1.35; }
body.app-body[data-znavika-theme="1"] .time-card { gap:16px; }
body.app-body[data-znavika-theme="1"] .meter { margin:20px 0 10px; }
body.app-body[data-znavika-theme="1"] .home-progress .meter { margin:18px 0; }
body.app-body[data-znavika-theme="1"] .goal-large h3 { margin:28px 0 8px; }
body.app-body[data-znavika-theme="1"] :is(.progress-grid strong,.school-stat-grid strong,.result-grid strong) { margin:16px 0 6px; font-size:32px; line-height:1.2; }
body.app-body[data-znavika-theme="1"] .progress-grid .text-stat { font-size:25px; }
body.app-body[data-znavika-theme="1"] .time-options button { padding:22px; border-radius:18px; font-size:22px; }
body.app-body[data-znavika-theme="1"] .time-options button small { margin-top:20px; font-size:14px; }
body.app-body[data-znavika-theme="1"] .time-options button.selected { color:#104ca8; border-color:var(--blue); background:#eaf2ff; }
body.app-body[data-znavika-theme="1"] .status-strip { gap:18px; padding:18px; border-radius:18px; }
body.app-body[data-znavika-theme="1"] .status-strip small { font-size:14px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] .home-link-grid button { min-height:112px; padding:20px; }
body.app-body[data-znavika-theme="1"] .home-link-grid span { font-size:23px; margin-bottom:10px; }
body.app-body[data-znavika-theme="1"] .home-link-grid small { color:var(--muted); font-size:14px; line-height:1.45; }
body.app-body[data-znavika-theme="1"] .home-more { border-color:var(--line); border-radius:18px; }
body.app-body[data-znavika-theme="1"] .home-more summary { padding:18px 20px; }
body.app-body[data-znavika-theme="1"] .home-more-grid .time-card { text-decoration:none; color:var(--ink); }
body.app-body[data-znavika-theme="1"] .home-more-grid .time-card b { color:var(--blue); font-size:14px; }
body.app-body[data-znavika-theme="1"] .today-side a.time-card { min-height:0; }
body.app-body[data-znavika-theme="1"] .week-track article { border-radius:18px; min-height:128px; padding:18px; }
body.app-body[data-znavika-theme="1"] .week-track article>b { margin:18px 0 7px; }
body.app-body[data-znavika-theme="1"] .subject-choice { min-height:0; padding:22px; }
body.app-body[data-znavika-theme="1"] .subject-choice strong { font-size:22px; line-height:1.3; }

/* Blue teaching cards use white text and high contrast white actions. */
body.app-body[data-znavika-theme="1"] :is(.next-action,.student-home-grid .next-action,.school-intro,.school-next,.kit-student-card) {
  min-height:0; padding:26px; border:1px solid #1b549f; border-radius:18px;
  color:#fff; background:linear-gradient(135deg,#194a91,#155cca); box-shadow:var(--shadow);
}
body.app-body[data-znavika-theme="1"] .action-copy { margin:24px 0; }
body.app-body[data-znavika-theme="1"] .action-copy>p:last-child { margin-top:16px; color:#e5efff; font-size:16px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] :is(.next-action .overline,.school-intro .school-overline,.school-next>div>span) { color:#dfedff; }
body.app-body[data-znavika-theme="1"] :is(.next-action .duration,.next-action .question-hint,.action-footer>div span,.school-intro p,.school-next p,.kit-student-card p) { color:#e5efff; }
body.app-body[data-znavika-theme="1"] .subject-pill { padding:6px 10px; border-color:rgba(255,255,255,.4); color:#fff; font-size:13px; }
body.app-body[data-znavika-theme="1"] .card-top { flex-wrap:wrap; gap:10px; }
body.app-body.subject-starter[data-znavika-theme="1"] .action-copy .task-instruction { color:#e5efff; font-size:16px; font-weight:600; line-height:1.6; }
body.app-body.subject-starter[data-znavika-theme="1"] #prompt { margin-top:18px; font-size:22px; line-height:1.5; color:#fff; }
body.app-body[data-znavika-theme="1"] .next-action .question-hint { margin-top:18px; font-size:14px; line-height:1.55; text-align:left; }
body.app-body[data-znavika-theme="1"] :is(.school-intro,.school-next) h2 { margin:10px 0 14px; }
body.app-body[data-znavika-theme="1"] .school-checklist p { color:#e5efff; border-color:rgba(255,255,255,.25); background:rgba(8,37,83,.22); }

/* Style only established actions; never override hidden or panel display. */
body.app-body[data-znavika-theme="1"] :is(.primary-action,.demo-reset,.kit-secondary,.teacher-actions button,.assignment-grid button,.teacher-class-grid button) { min-height:46px; padding:11px 17px; border-radius:11px; font-size:15px; line-height:1.4; font-weight:700; text-decoration:none; }
body.app-body[data-znavika-theme="1"] :is(.primary-action,.teacher-actions .primary-action,.teacher-class-grid button) { border:1px solid var(--blue); color:#fff; background:var(--blue); box-shadow:none; }
body.app-body[data-znavika-theme="1"] :is(.demo-reset,.kit-secondary,.assignment-grid button,.teacher-actions button:not(.primary-action)) { color:var(--blue); border:1px solid #c6d6ec; background:#fff; }
body.app-body[data-znavika-theme="1"] :is(.next-action .primary-action,.school-intro .primary-action,.school-next .primary-action,.kit-student-card .primary-action) { color:#104ca8; border-color:#fff; background:#fff; box-shadow:none; }
body.app-body[data-znavika-theme="1"] :is(.next-action .primary-action,.school-intro .primary-action,.kit-student-card .primary-action):hover { background:#eaf2ff; border-color:#eaf2ff; }
body.app-body[data-znavika-theme="1"] .account-entry { border-radius:11px!important; background:#155cca!important; font-size:15px; }
body.app-body[data-znavika-theme="1"] :is(.back-button,.home-text-button,.time-card button,.time-card>a,.chart-card>a,.status-strip>a,.kit-link,.text-action) {
  padding:9px 12px; min-height:40px; border:1px solid #c6d6ec; border-radius:11px;
  color:#104ca8; background:#f3f7fe; font-size:14px; font-weight:700; line-height:1.4; text-decoration:none;
}
body.app-body[data-znavika-theme="1"] :is(.time-card>a,.chart-card>a,.status-strip>a,.kit-link):not([hidden]) { display:inline-flex; align-items:center; justify-content:center; }
body.app-body[data-znavika-theme="1"] :is(.back-button,.home-text-button,.time-card button,.time-card>a,.chart-card>a,.status-strip>a,.kit-link,.text-action):hover { background:#eaf2ff; border-color:#89afe8; }
body.app-body[data-znavika-theme="1"] .catalog-note a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; font-weight:650; }
body.app-body[data-znavika-theme="1"] .avatar { width:42px; height:42px; border-radius:11px; color:#fff; background:var(--blue); }
body.app-body[data-znavika-theme="1"] :is(button,a,input,select):focus-visible { outline:3px solid #155cca; outline-offset:3px; }
body.app-body[data-znavika-theme="1"] .next-action :is(button,a):focus-visible { outline-color:#fff; }
body.app-body[data-znavika-theme="1"] button:disabled { box-shadow:none; }

/* Questions and completed / review states remain distinguishable. */
body.app-body[data-znavika-theme="1"] .question-card { padding:28px; }
body.app-body[data-znavika-theme="1"] .question-card h2 { margin:14px 0 22px; }
body.app-body[data-znavika-theme="1"] .question-text { padding:20px; border-radius:14px; font-size:22px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] .task-instruction { font-size:16px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] .answer-grid { gap:12px; }
body.app-body[data-znavika-theme="1"] .answer-grid button { min-height:54px; padding:14px 16px; border-color:#c6d6ec; border-radius:11px; background:#fff; color:var(--ink); font-size:16px; font-weight:650; line-height:1.5; }
body.app-body[data-znavika-theme="1"] .answer-grid button:hover:not(:disabled) { border-color:var(--blue); background:#eaf2ff; color:#104ca8; }
body.app-body[data-znavika-theme="1"] .question-hint { color:var(--muted); font-size:14px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] .session-progress { margin:22px auto 28px; }
body.app-body[data-znavika-theme="1"] .session-layer .result-card { padding:28px; }
body.app-body[data-znavika-theme="1"] .session-layer .result-card h2 { font-size:28px; line-height:1.25; }
body.app-body[data-znavika-theme="1"] .result-card>p { font-size:16px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] .mini-evidence { flex-wrap:wrap; gap:12px; margin:22px 0; border-radius:14px; }
body.app-body[data-znavika-theme="1"] :is(.result-clarification,.automation-boundary) { border-radius:14px; color:#704d14; background:#fff7e8; border-color:#e2c17e; }
body.app-body[data-znavika-theme="1"] :is(.result-clarification strong,.result-clarification span,.automation-boundary strong) { font-size:14px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] .result-card #start-intervention { color:#104ca8; border:1px solid #c6d6ec; background:#eaf2ff; }
body.app-body[data-znavika-theme="1"] .intervention-card { border-color:#b5cce9; background:#f4f8fe; }
body.app-body[data-znavika-theme="1"] .intervention-rule { color:#214676; border-color:#c6d6ec; border-radius:14px; line-height:1.55; }
body.app-body[data-znavika-theme="1"] .session-loading { min-height:260px; }
body.app-body[data-znavika-theme="1"] .session-loading p { font-size:16px; }

/* Teacher and school demo surfaces retain their semantic status colours. */
body.app-body[data-znavika-theme="1"] .teacher-layout { gap:18px; }
body.app-body[data-znavika-theme="1"] .case-item { border-radius:14px; }
body.app-body[data-znavika-theme="1"] .case-item:is(:hover,.is-active) { border-color:#b8d0ef; background:#eef4fd; }
body.app-body[data-znavika-theme="1"] .case-item small { color:var(--muted); }
body.app-body[data-znavika-theme="1"] :is(.why-card,.recommendation,.teacher-insight) { border-radius:18px; }
body.app-body[data-znavika-theme="1"] :is(.recommendation,.teacher-insight,.goal-large.primary) { color:#fff; background:#172e4a; }
body.app-body[data-znavika-theme="1"] :is(.recommendation p,.teacher-insight p,.goal-large.primary p) { color:#e1ebf7; font-size:16px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] :is(.recommendation small,.teacher-insight span,.goal-large.primary small,.goal-range span) { color:#c7dcf5; }
body.app-body[data-znavika-theme="1"] .teacher-class-grid article { gap:4px; }
body.app-body[data-znavika-theme="1"] .teacher-class-grid h3 { margin:16px 0 8px; }
body.app-body[data-znavika-theme="1"] .teacher-class-grid button { margin-top:12px; }
body.app-body[data-znavika-theme="1"] .assignment-grid p { margin-bottom:18px; }
body.app-body[data-znavika-theme="1"] .decision-grid button { min-height:0; padding:16px; border-radius:14px; }
body.app-body[data-znavika-theme="1"] .decision-grid button[aria-pressed="true"] { color:var(--ink); border-color:var(--blue); background:#eaf2ff; box-shadow:0 0 0 1px var(--blue); }
body.app-body[data-znavika-theme="1"] .decision-grid span { font-size:13px; line-height:1.5; }
body.app-body[data-znavika-theme="1"] .school-board-note { font-size:14px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] .school-signal-list a { padding:8px 11px; border:1px solid #c6d6ec; border-radius:11px; color:#104ca8; background:#f3f7fe; line-height:1.4; }

/* Component previews follow the same typography without changing state logic. */
body.app-body[data-znavika-theme="1"] .kit-page { padding-top:28px; }
body.app-body[data-znavika-theme="1"] .kit-intro { margin:36px 0 40px; }
body.app-body[data-znavika-theme="1"] .kit-intro>span { font-size:16px; line-height:1.6; }
body.app-body[data-znavika-theme="1"] .kit-section { margin-top:36px; }
body.app-body[data-znavika-theme="1"] .result-preview { min-height:0; gap:22px; padding:26px; border-radius:18px; color:#fff; background:linear-gradient(135deg,#194a91,#155cca); }
body.app-body[data-znavika-theme="1"] .result-preview-content { margin:0; }
body.app-body[data-znavika-theme="1"] .result-preview-content>p:last-child { font-size:16px; line-height:1.6; color:#e5efff; }
body.app-body[data-znavika-theme="1"] .result-preview[data-state="next"] { background:linear-gradient(135deg,#194a91,#155cca); }
body.app-body[data-znavika-theme="1"] .result-preview[data-state="review"] { color:var(--ink); background:#fff7e8; border-color:#e2c17e; }
body.app-body[data-znavika-theme="1"] .result-preview[data-state="refresh"] { color:var(--ink); background:#eef2f7; border-color:var(--line); }
body.app-body[data-znavika-theme="1"] .result-preview:is([data-state="review"],[data-state="refresh"]) .result-preview-content>p:last-child { color:var(--muted); }
body.app-body[data-znavika-theme="1"] .result-preview .primary-action { color:#104ca8; background:#fff; border-color:#fff; }
body.app-body[data-znavika-theme="1"] .result-preview:is([data-state="review"],[data-state="refresh"]) .primary-action { color:#fff; background:var(--blue); border-color:var(--blue); }
body.app-body[data-znavika-theme="1"] .result-proof { border-radius:14px; margin:20px 0; }
body.app-body[data-znavika-theme="1"] .anatomy-grid strong { margin-top:18px; }
body.app-body[data-znavika-theme="1"] .component-label { margin-bottom:18px; }
body.app-body[data-znavika-theme="1"] .kit-teacher-card { min-height:0; padding:26px; border-radius:18px; }
body.app-body[data-znavika-theme="1"] :is(.kit-student-card h3,.kit-teacher-card h3) { margin:24px 0 12px; }
body.app-body[data-znavika-theme="1"] .phone-frame { border-radius:28px; background:linear-gradient(135deg,#194a91,#155cca); }
body.app-body[data-znavika-theme="1"] .phone-frame nav { border-top:1px solid var(--line); background:#fff; }
body.app-body[data-znavika-theme="1"] .phone-frame nav span { color:var(--muted); }
body.app-body[data-znavika-theme="1"] .phone-frame nav .is-current { color:var(--blue); }
body.app-body[data-znavika-theme="1"] .phone-frame>.primary-action { color:#104ca8; border-color:#fff; background:#fff; }

@media (min-width:1051px) {
  body.app-body[data-znavika-theme="1"] .nav-item { font-size:15px; }
}
@media (max-width:1050px) and (min-width:761px) {
  body.app-body[data-znavika-theme="1"] .workspace-header { flex-wrap:wrap; }
  body.app-body[data-znavika-theme="1"] .app-workspace { padding:28px 24px 64px; }
  body.app-body[data-znavika-theme="1"] .session-layer { padding:24px; }
}
@media (max-width:760px) {
  body.app-body[data-znavika-theme="1"] .app-sidebar { height:calc(80px + env(safe-area-inset-bottom)); padding:8px 12px calc(8px + env(safe-area-inset-bottom)); border-top:1px solid var(--line); border-right:0; box-shadow:0 -4px 20px rgba(23,46,74,.06); }
  body.app-body[data-znavika-theme="1"] :is(.app-nav,.subject-starter .app-nav,.teacher-sidebar .app-nav,.school-sidebar .app-nav) { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(74px,1fr); grid-template-rows:1fr; gap:4px; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#bfcee1 transparent; }
  body.app-body[data-znavika-theme="1"] :is(.nav-item,.nav-item.is-active,.nav-item:not(.is-active)) { min-width:0; min-height:58px; padding:5px 4px; font-size:11px; line-height:1.25; border-radius:11px; white-space:normal; overflow-wrap:normal; }
  body.app-body[data-znavika-theme="1"] .nav-item span { font-size:20px; }
  body.app-body[data-znavika-theme="1"] .app-workspace { padding:24px 16px calc(112px + env(safe-area-inset-bottom)); }
  body.app-body[data-znavika-theme="1"] .workspace-header { flex-wrap:wrap; gap:16px; margin-bottom:22px; }
  body.app-body[data-znavika-theme="1"] :is(.workspace-header h1,.kit-intro h1) { font-size:30px; line-height:1.24; }
  body.app-body[data-znavika-theme="1"] :is(.section-title h2,.view-heading h2,.summary-heading h2,.student-home-intro h2,.school-board h2,.kit-section-head h2,.question-card h2,.session-loading h2,.action-copy h2,.student-home-grid .action-copy h2,.school-intro h2,.school-next h2,.result-preview h3,.session-layer .result-card h2) { font-size:25px; line-height:1.28; }
  body.app-body[data-znavika-theme="1"] .header-actions { max-width:100%; flex-wrap:wrap; }
  body.app-body[data-znavika-theme="1"] :is(.next-action,.student-home-grid .next-action,.school-intro,.school-next,.kit-student-card,.result-preview) { min-height:0; padding:22px; }
  body.app-body[data-znavika-theme="1"] .action-copy { margin:22px 0; }
  body.app-body[data-znavika-theme="1"] .action-footer { gap:16px; }
  body.app-body[data-znavika-theme="1"] :is(.goal-card,.time-card,.chart-card,.profile-card,.case-detail,.school-board,.teacher-decision,.question-card,.session-layer .result-card) { padding:20px; }
  body.app-body[data-znavika-theme="1"] :is(.home-progress .goal-card,.home-progress .time-card,.today-side a.time-card) { min-height:0; }
  body.app-body[data-znavika-theme="1"] .home-progress .goal-card { gap:0; }
  body.app-body[data-znavika-theme="1"] .home-link-grid button { min-height:84px; padding:18px; }
  body.app-body[data-znavika-theme="1"] .home-link-grid span { margin-bottom:0; }
  body.app-body[data-znavika-theme="1"] .home-more-grid { grid-template-columns:1fr; padding-inline:16px; }
  body.app-body[data-znavika-theme="1"] .time-card { flex-wrap:wrap; }
  body.app-body[data-znavika-theme="1"] .session-layer { padding:22px 16px calc(112px + env(safe-area-inset-bottom)); }
  body.app-body[data-znavika-theme="1"] .session-top { gap:14px; align-items:flex-start; }
  body.app-body[data-znavika-theme="1"] .session-top>div { min-width:0; }
  body.app-body[data-znavika-theme="1"] .session-top strong { font-size:14px; }
  body.app-body[data-znavika-theme="1"] .session-progress { margin:20px auto 24px; }
  body.app-body[data-znavika-theme="1"] .question-text { padding:16px; font-size:22px; }
  body.app-body[data-znavika-theme="1"] .session-loading { min-height:240px; }
  body.app-body[data-znavika-theme="1"] .app-toast { bottom:calc(96px + env(safe-area-inset-bottom)); }
  body.app-body[data-znavika-theme="1"] .kit-page { padding:24px 16px 48px; }
  body.app-body[data-znavika-theme="1"] .kit-intro { margin:30px 0 36px; }
  body.app-body[data-znavika-theme="1"] .kit-section { margin-top:30px; }
}


/* Private student, teacher and administrator surfaces only.
 * The :has() scope intentionally matches the specificity of the legacy
 * body:has(.shell #login-panel) rules. No panel/form display or hidden state
 * is changed; all role navigation, field constraints and handlers stay intact.
 */
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) {
  background: #f6f8fc;
  color: #172e4a;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .shell,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .admin-shell {
  width: 100%;
  max-width: 1000px;
  min-width: 0;
  margin-inline: auto;
  padding: 24px 24px calc(56px + env(safe-area-inset-bottom));
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .admin-shell { max-width: 1168px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) h1 {
  max-width: 28ch;
  margin: 28px 0 14px;
  font-size: 34px;
  font-weight: 750;
  line-height: 1.18;
  letter-spacing: -.025em;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card h1 { margin-top: 0; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) h2,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card h2,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-task h2 {
  margin: 0 0 14px;
  font-size: 25px;
  line-height: 1.25;
  letter-spacing: -.02em;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) h3 {
  margin: 18px 0 10px;
  font-size: 20px;
  line-height: 1.35;
  letter-spacing: -.01em;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) p { line-height: 1.6; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .lead,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-intro .lead {
  max-width: 72ch;
  margin: 0 0 18px;
  color: #53667b;
  font-size: 16px;
  line-height: 1.6;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .eyebrow {
  margin: 0 0 10px;
  color: #155cca;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .025em;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) a { color: #155cca; text-underline-offset: 3px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-card {
  min-width: 0;
  margin-block: 20px;
  padding: 24px;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(23, 46, 74, .035);
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) #login-panel,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) #auth {
  max-width: 620px;
  margin-inline: auto;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar, .teacher-topbar) {
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #dbe4ee;
  border-radius: 14px;
  background: #fff;
  color: #172e4a;
  box-shadow: 0 3px 12px rgba(23, 46, 74, .045);
  font-size: 14px;
  line-height: 1.4;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar-title, .teacher-topbar > strong) {
  color: #172e4a;
  font-size: 14px;
  line-height: 1.4;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar-actions, .teacher-topbar-actions) { gap: 8px; min-width: 0; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) button:not(.password-toggle) {
  max-width: 100%;
  min-height: 44px;
  padding: 11px 16px;
  border: 1px solid #155cca;
  border-radius: 11px;
  background: #155cca;
  color: #fff;
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: break-word;
  cursor: pointer;
  box-shadow: none;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) button:not(.password-toggle):hover:not(:disabled) { background: #124b9f; border-color: #124b9f; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) button:not(.password-toggle):disabled { opacity: .6; cursor: not-allowed; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(button.secondary, .pilot-nav-button, .teacher-nav-button, #pilot-global-logout, .teacher-topbar #exit, .admin-nav a, .admin-nav button) {
  min-height: 44px;
  margin-top: 0;
  padding: 10px 14px;
  border: 1px solid #b9cdea;
  border-radius: 11px;
  background: #fff;
  color: #155cca !important;
  font: 700 14px/1.4 Inter, ui-sans-serif, system-ui, sans-serif;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: break-word;
  box-shadow: none;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(button.secondary, .pilot-nav-button, .teacher-nav-button, #pilot-global-logout, .teacher-topbar #exit, .admin-nav a, .admin-nav button):hover:not(:disabled) {
  background: #edf4ff;
  border-color: #155cca;
  color: #124b9f !important;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(button, a, input, select, textarea, summary):focus-visible {
  outline: 3px solid #155cca;
  outline-offset: 3px;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) select,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) textarea {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid #b7c8dc;
  border-radius: 11px;
  background-color: #fff;
  color: #172e4a;
  font: 400 16px/1.45 Inter, ui-sans-serif, system-ui, sans-serif;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) input::placeholder,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) textarea::placeholder { color: #65778b; opacity: 1; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(input, select, textarea):disabled { background-color: #edf1f6; color: #53667b; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(input[type="checkbox"], input[type="radio"]) {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  padding: 0;
  margin: 0 8px 0 0;
  vertical-align: middle;
  accent-color: #155cca;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) label {
  margin: 12px 0 6px;
  color: #172e4a;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(#login-panel, #auth) form { gap: 8px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) small,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.resume-note, .admin-muted, .pilot-explain) {
  color: #53667b;
  font-size: 13px;
  line-height: 1.55;
}
/* Password toggle dimensions/visibility are owned by password-visibility.css.
 * Keep its hit area and input padding; never style it as a submit button.
 */
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .password-field > input { padding-inline-end: 58px !important; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .password-field > .password-toggle { color: #155cca !important; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-flow { gap: 8px; margin: 20px 0; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-flow span {
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #dbe4ee;
  border-radius: 11px;
  background: #fff;
  color: #53667b;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.4;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-flow span.active { border-color: #155cca; background: #155cca; color: #fff; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices button:not(.password-toggle) {
  min-width: 0;
  min-height: 145px;
  gap: 9px;
  padding: 18px;
  border: 1px solid #dbe4ee;
  border-radius: 15px;
  background: #f4f8ff;
  color: #172e4a;
  text-align: left;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices button:not(.password-toggle):hover:not(:disabled) { background: #eaf2ff; border-color: #155cca; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices small { color: #53667b; font-size: 13px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices strong { font-size: 19px; line-height: 1.3; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices span { color: #155cca; font-size: 13px; line-height: 1.4; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .question-prompt {
  margin: 18px 0;
  padding: 20px;
  border: 1px solid #dbe4ee;
  border-radius: 15px;
  background: #f4f8ff;
  color: #172e4a;
  font-size: 22px;
  font-weight: 650;
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-stage { margin: 18px 0 7px; font-size: 12px; color: #53667b; letter-spacing: .035em; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .instruction,
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .review-help {
  padding: 14px 16px;
  border-radius: 12px;
  background: #edf4ff;
  color: #254974;
  font-size: 14px;
  line-height: 1.6;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .instruction { border-left: 3px solid #155cca; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .saved-badge { padding: 7px 11px; border-radius: 10px; background: #e0f4eb; color: #235d49; font-size: 12px; line-height: 1.4; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-feedback { border-radius: 12px; background: #edf4ff; color: #254974; font-size: 14px; font-weight: 650; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.today-card, .pilot-next) {
  margin-block: 18px;
  padding: 18px;
  border: 1px solid #bfdaca;
  border-radius: 15px;
  background: #eaf6ef;
  color: #235d49;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-next strong { font-size: 19px; line-height: 1.45; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-next small { color: #235d49; font-size: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-extra { margin-top: 18px; padding-top: 16px; border-color: #dbe4ee; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) summary {
  min-height: 44px;
  padding-block: 11px;
  color: #155cca;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.5;
  cursor: pointer;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .progress-row { min-width: 0; padding: 16px 0; border-color: #dbe4ee; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .progress-row p { margin-block: 8px; font-size: 14px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.state-list, .history-list) { margin-block: 10px; padding-left: 20px; font-size: 14px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .history-list button.secondary { margin: 6px 0 6px 8px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) #classes { display: grid; gap: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .private-code {
  min-width: 0;
  padding: 16px;
  border: 1px solid #dbe4ee;
  border-radius: 14px;
  background: #f4f8ff;
  overflow-wrap: anywhere;
}
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .private-code p { font-size: 14px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .review-card { padding-block: 20px; border-color: #dbe4ee; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .review-card h3 { margin-top: 0; font-size: 19px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .review-card textarea { min-height: 112px; margin-block: 6px; resize: vertical; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .review-card .actions { gap: 10px; margin-top: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-nav { gap: 9px; margin: 18px 0 22px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-nav a { display: inline-flex; align-items: center; justify-content: center; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-card form { max-width: 520px; gap: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-card label { margin: 0; gap: 6px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-tiles span { min-width: 0; padding: 15px; border: 1px solid #dbe4ee; border-radius: 13px; background: #f4f8ff; font-size: 13px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-tiles strong { color: #155cca; font-size: 26px; line-height: 1.3; margin-bottom: 4px; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-table { width: 100%; max-width: 100%; min-width: 0; border: 1px solid #dbe4ee; border-radius: 12px; overflow-x: auto; overscroll-behavior-x: contain; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-table table { min-width: 680px; font-size: 13px; line-height: 1.5; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-table :is(th, td) { padding: 12px; border-color: #dbe4ee; vertical-align: top; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-table th { color: #172e4a; background: #f4f8ff; font-weight: 700; }
body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-codes { padding: 16px; border: 1px solid #bfdaca; border-radius: 12px; background: #e0f4eb; color: #235d49; font: 500 16px/1.7 ui-monospace, SFMono-Regular, Consolas, monospace; }

@media (max-width: 760px) {
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .shell,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .admin-shell { padding: 18px 16px calc(42px + env(safe-area-inset-bottom)); }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) h1 { font-size: 30px; margin-top: 24px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) h2,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card h2,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-task h2 { font-size: 24px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-card { padding: 20px; margin-block: 17px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices { grid-template-columns: 1fr; gap: 10px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices button:not(.password-toggle) { min-height: 116px; padding: 16px 18px; gap: 7px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .choices strong { font-size: 19px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .question-prompt { padding: 17px; font-size: 21px; }
}
@media (max-width: 600px) {
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar, .teacher-topbar) { gap: 8px; padding: 10px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar-title, .teacher-topbar > strong) { width: 100%; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-topbar-actions, .teacher-topbar-actions) { flex: 1 1 100%; width: 100%; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(.pilot-nav-button, .teacher-nav-button) { flex: 1 1 auto; font-size: 13px; padding: 10px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) :is(#pilot-global-logout, .teacher-topbar #exit) { margin-left: 0; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .pilot-flow span { padding: 9px 5px; font-size: 12px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-nav :is(a, button) { flex: 1 1 140px; text-align: center; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .history-list button.secondary { margin-left: 0; }
}
@media (max-width: 380px) {
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .shell,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) > .admin-shell { padding-inline: 12px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .card,
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-card { padding: 17px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .question-prompt { padding: 14px; font-size: 20px; }
  body[data-znavika-theme="1"]:has(#login-panel, .teacher-topbar, .admin-shell) .admin-tiles span { padding: 12px; }
}

