@font-face { font-family: "Nunito Sans"; font-style: normal; font-weight: 400 900; font-display: optional; src: url("../__apprendeu_static_assets/29e389049684/assets/fonts/nunito-sans-latin.woff2") format("woff2"); }
@font-face { font-family: "Sora"; font-style: normal; font-weight: 500 900; font-display: optional; src: url("../__apprendeu_static_assets/811e11966d29/assets/fonts/sora-latin.woff2") format("woff2"); }
:root {
  color-scheme: dark;
  --font-title: "Sora", "Trebuchet MS", sans-serif;
  --font-body: "Nunito Sans", "Segoe UI", sans-serif;
  --ui-bg: #080b10;
  --ui-surface: #11161d;
  --ui-raised: #1a222c;
  --ui-text: #f5f6f8;
  --ui-muted: #a5afbd;
  --ui-accent: #9cf1df;
  --ui-line: rgba(207,224,235,.14);
  --ui-soft: rgba(156,241,223,.09);
  --ui-shadow: 0 26px 60px rgba(0,0,0,.28);
  --ui-radius: 18px;
  --bg-1: var(--ui-bg); --bg-2: var(--ui-surface);
  --ink-900: var(--ui-text); --ink-700: var(--ui-muted); --ink-500: var(--ui-muted);
  --line: var(--ui-line); --card: var(--ui-surface);
  --brand: var(--ui-accent); --brand-strong: var(--ui-accent);
  --app-blue: var(--ui-accent); --app-logo-blue: var(--ui-accent);
  --shadow-lg: var(--ui-shadow); --shadow-sm: 0 8px 24px rgba(0,0,0,.12);
}
html[data-theme="light"] {
  color-scheme: light;
  --ui-bg: #f7f8fa; --ui-surface: #fff; --ui-raised: #eef2f3;
  --ui-text: #151c27; --ui-muted: #536172; --ui-accent: #087d70;
  --ui-line: rgba(25,48,67,.15); --ui-soft: rgba(8,125,112,.07);
  --ui-shadow: 0 26px 60px rgba(35,67,86,.12);
}
body.site-identity {
  --disc-a: var(--ui-accent); --disc-b: var(--ui-accent);
  --disc-bg: var(--ui-bg); --disc-panel: var(--ui-surface);
  --disc-ink: var(--ui-text); --disc-muted: var(--ui-muted);
  background: var(--ui-bg); color: var(--ui-text);
  font-family: var(--font-body); overflow-x: clip;
}
.site-identity :where(h1,h2,h3,h4) { color: var(--ui-text); font-family: var(--font-title); letter-spacing: -.045em; text-shadow: none; }
.site-identity :where(input,select,textarea,button) { font-family: inherit; }
.site-identity :where(input,select,textarea) { accent-color: var(--ui-accent); }
.site-identity :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) { background: var(--ui-bg); color: var(--ui-text); border-color: var(--ui-line); box-shadow: none; border-radius: 10px; }
.site-identity :where(input,select,textarea):focus-visible { outline: 2px solid var(--ui-accent); outline-offset: 3px; }
.site-identity :where(input,textarea)::placeholder { color: var(--ui-muted); }
.site-identity :where(select option) { background: var(--ui-surface); color: var(--ui-text); }
.site-identity :where(.btn,.open-btn,.play-launch,.auth-submit,.account-submit,.contact-submit,.contact-modal-button,.runtime-back,.not-found__link) {
  min-height: 48px; border-radius: 100px; border: 1px solid var(--ui-line);
  font-weight: 750; font-size: .9rem; text-shadow: none; box-shadow: none;
  background: var(--ui-surface); color: var(--ui-text);
  transition: transform .2s, background .2s, border-color .2s;
}
.site-identity :where(.btn-primary,.open-btn,.play-launch,.auth-submit,.account-submit,.contact-submit,.contact-modal-button,.not-found__link) {
  background: var(--ui-accent); color: var(--ui-bg); border-color: transparent;
}
.site-identity :where(.btn,.open-btn,.play-launch,.auth-submit,.contact-submit):hover:not(:disabled) { transform: translateY(-2px); box-shadow: none; filter: none; }
.site-identity :where(.eyebrow,.game-kicker,.auth-kicker,.legal-eyebrow,.simulados-kicker,.materiais-kicker) {
  background: none; border: 0; padding: 0; color: var(--ui-accent); font-size: .72rem; font-weight: 800;
  letter-spacing: .14em; text-transform: uppercase; text-shadow: none; box-shadow: none;
}
.site-identity :where(.site-footer) { flex-shrink: 0; }
.site-identity :where(.header-account-menu,.class-code-panel,.privacy-consent-card) {
  background: var(--ui-surface); border-color: var(--ui-line); color: var(--ui-text); box-shadow: var(--ui-shadow);
}
.site-identity :where(.privacy-consent-copy p,.privacy-consent-preferences small,.footer-content p) { color: var(--ui-muted); }
.site-identity :where(.privacy-consent-kicker,.privacy-consent a,.class-code-panel h2) { color: var(--ui-accent); }
.site-identity :where(.privacy-consent-button--primary,.class-code-button--primary) { background: var(--ui-accent); color: var(--ui-bg); border-color: transparent; box-shadow: none; }
.site-identity :where(.privacy-consent-button--secondary,.class-code-button--secondary) { background: var(--ui-raised); color: var(--ui-text); border-color: var(--ui-line); box-shadow: none; }


/* Shared Apprendeu visual identity. Legacy component layouts live in @layer legacy. */
body.site-identity .site-header {
  position: sticky;
  top: 0;
  background: color-mix(in srgb, var(--ui-bg) 88%, transparent);
  border-bottom: 1px solid var(--ui-line);
  box-shadow: none;
  backdrop-filter: blur(20px);
}
body.site-identity .nav-wrapper { width: min(1460px, calc(100% - 3rem)); min-height: 60px; }
body.site-identity .brand { margin-left: 0; font-size: 1.1rem; }
body.site-identity .brand-mark { width: 28px; height: 28px; filter: none; }
body.site-identity .brand-text .app { color: var(--ui-accent); text-shadow: none; }
body.site-identity .brand-text .rest { color: var(--ui-text); text-shadow: none; }
body.site-identity .site-nav { gap: .35rem; }
body.site-identity .site-nav a { min-height: 34px; font-size: .82rem; font-weight: 650; color: var(--ui-muted); padding: .35rem .55rem; border-radius: 8px; }
body.site-identity .site-nav a:hover { color: var(--ui-text); background: var(--ui-line); }
body.site-identity .site-nav a[aria-current="page"] {
  color: var(--ui-text); background: transparent; border-color: transparent; box-shadow: none; text-shadow: none;
}
body.site-identity .theme-toggle,
body.site-identity .header-account,
body.site-identity .menu-toggle { background: var(--ui-surface); border-color: var(--ui-line); box-shadow: none; color: var(--ui-text); }
body.site-identity .header-actions { gap: .4rem; margin-right: 0; }
body.site-identity .header-actions .theme-toggle { width: 36px; height: 36px; border-radius: 9px; }
body.site-identity .header-actions .header-account { min-height: 36px; padding: .3rem .6rem; font-size: .82rem; border-radius: 9px; }
body.site-identity .header-actions .header-account[data-authenticated="true"] { width: 36px; max-width: 36px; padding: .25rem; }
body.site-identity .header-actions .header-account-avatar { width: 26px; height: 26px; border-radius: 6px; }
body.site-identity .theme-toggle i,
body.site-identity .menu-toggle::before { color: var(--ui-text); }
.site-identity a:focus-visible, .site-identity button:focus-visible { outline: 3px solid var(--ui-accent); outline-offset: 5px; }
body.site-identity .site-footer { background: var(--ui-bg); border-top: 1px solid color-mix(in srgb, var(--ui-line) 65%, transparent); margin: 0; padding-block: 10px; }
body.site-identity .site-footer .container { width: min(1280px, calc(100% - 6rem)); }
body.site-identity .footer-content { gap: 4px 24px; line-height: 1.5; }
body.site-identity .site-footer p { width: auto; margin: 0; text-wrap: pretty; }
body.site-identity .footer-legal-links { width: auto; margin: 0; gap: 2px 14px; }
body.site-identity .site-footer p, body.site-identity .footer-legal-links a, body.site-identity .footer-legal-links button { color: var(--ui-muted); font-size: .75rem; font-weight: 400; }
body.site-identity .footer-legal-links a,
body.site-identity .footer-legal-links button { display: inline-flex; align-items: center; min-height: 28px; text-decoration: none; }
body.site-identity .footer-legal-links a:hover,
body.site-identity .footer-legal-links button:hover,
body.site-identity .footer-legal-links a:focus-visible,
body.site-identity .footer-legal-links button:focus-visible { color: var(--ui-text); text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 1200px) {
  body.site-identity .nav-wrapper { width: calc(100% - 2rem); }
  body.site-identity .site-nav a { font-size: .76rem; padding-inline: .45rem; }
  body.site-identity .brand { font-size: 1rem; gap: .3rem; }}
@media (max-width: 900px) {
  body.site-identity .site-header { pointer-events: auto; }
  body.site-identity .nav-wrapper { width: calc(100% - 2rem); min-height: 56px; position: relative; }
  body.site-identity .brand { display: inline-flex; font-size: 1.05rem; order: 0; }
  body.site-identity .header-actions { position: relative; top: auto; right: auto; margin-left: auto; order: 1; }
  body.site-identity .header-account { min-height: 38px; max-width: 130px; }
  body.site-identity .menu-toggle { position: relative; top: auto; right: auto; order: 2; margin-left: 8px; width: 40px; min-width: 40px; height: 40px; min-height: 40px; }
  body.site-identity .site-nav { top: calc(100% + 8px); right: 0; max-height: calc(100dvh - 80px); overflow-y: auto; background: var(--ui-surface); border-color: var(--ui-line); }
  body.site-identity .site-nav a { font-size: .95rem; padding: .8rem; }}
@media (max-width: 700px) {
  body.site-identity .site-footer .container { width: calc(100% - 2.5rem); }
  body.site-identity .footer-content { flex-direction: column; gap: 4px; }
  body.site-identity .footer-legal-links { column-gap: 12px; }
  body.site-identity .footer-legal-links a,
  body.site-identity .footer-legal-links button { min-height: 32px; }}


/* Public pages: editorial spacing and a consistent, quiet component surface. */
.site-identity:not(.home-page) :where(main > .section,.game-start.section,.about-hero,.simulados-hero) { padding-block: clamp(48px,6vw,88px); }
.site-identity :where(.discipline-title,.discipline-hero h1,.about-hero h1,.simulados-copy h1,.auth-copy h1) {
  font-size: clamp(2.3rem,4.7vw,4.1rem); line-height: 1.13; font-weight: 600;
  color: var(--ui-text); text-shadow: none; letter-spacing: -.05em; background: none; -webkit-text-fill-color: currentColor;
}
.site-identity :where(.discipline-lede,.about-lead,.game-lead,.auth-lede,.legal-summary,.legal-meta,.simulados-copy p,.game-seo-summary p,.legal-content p,.legal-content li,.about-narrative p,.purpose-copy p,.pillar-card p) {
  color: var(--ui-muted); line-height: 1.75; text-shadow: none;
}
.site-identity :where(.app-card,.simulados-product-card,.pillar-card,.purpose-panel,.contact-panel,.contact-point,.auth-panel,.account-dashboard,.account-modal-card,.auth-message-card,.contact-modal-dialog,.legal-document,.legal-toc,.simulados-digital-code-card,.simulados-answer-panel,.simulados-pdf-panel,.simulados-exam-header,.simulados-question-card,.runtime-card,.not-found__card) {
  background: var(--ui-surface); border: 1px solid var(--ui-line); border-radius: var(--ui-radius);
  box-shadow: none; color: var(--ui-text); backdrop-filter: none;
}
.site-identity :where(.app-card,.simulados-product-card,.pillar-card,.purpose-panel,.auth-panel,.materiais-teaser-card,.game-cover-wrap,.game-seo-summary .container,.discipline-hero .container)::before,
.site-identity :where(.app-card,.simulados-product-card,.materiais-teaser-card,.auth-panel)::after { display: none; }
.site-identity :where(.text-logo-app .app) { color: var(--ui-accent); text-shadow: none; }
.site-identity :where(.text-logo-app .rest) { color: var(--ui-text); text-shadow: none; }
.site-identity :where(.text-logo-mark,.about-identity-free,.contato-logo) { filter: none; animation: none; }
.site-identity :where(.about-identity-free p,.contato-mail,.contact-point-label,.pillar-card i) { color: var(--ui-accent); text-shadow: none; filter: none; }
.site-identity :where(.pillar-card i) { background: var(--ui-soft); box-shadow: none; border-color: var(--ui-line); }
.site-identity :where(.about-narrative,.contato-copy) { background: none; border: 0; box-shadow: none; }
.site-identity :where(.about-story,.about-purpose,.contato-section) { padding-block: 60px; }
.site-identity :where(.about-narrative h2,.purpose-panel h2,.contato-copy h2) { color: var(--ui-text); font-weight: 600; font-size: clamp(1.7rem,3vw,2.8rem); text-shadow: none; }
.site-identity :where(.about-actions .btn-ghost,.game-back-link) { background: transparent; color: var(--ui-text); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.legal-content h2,.legal-content h3,.legal-document h1,.auth-panel-head strong,.auth-message-content h2,.contact-modal-dialog h2) { color: var(--ui-text); text-shadow: none; }
.site-identity :where(.legal-content a,.legal-toc a,.auth-link-button,.account-link) { color: var(--ui-accent); }
.site-identity :where(.legal-toc,.legal-document) { border-radius: 18px; }
.site-identity :where(.legal-content section + section) { border-color: var(--ui-line); }
.site-identity :where(.legal-nav,.legal-contact,.social-complete-card) { background: var(--ui-surface); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.legal-nav strong,.social-complete-card h1) { color: var(--ui-text); }
.site-identity :where(.legal-nav a,.legal-contact a,.social-complete-kicker) { color: var(--ui-accent); }
.site-identity :where(.legal-nav a:hover,.legal-nav a:focus-visible,.legal-note) { background: var(--ui-soft); color: var(--ui-text); border-color: var(--ui-accent); }
.site-identity :where(.social-complete-copy,.social-complete-email,.social-complete-form label,.social-session-label) { color: var(--ui-muted); }
.site-identity .social-auth-button { background: var(--ui-raised); color: var(--ui-text); border-color: var(--ui-line); border-radius: 100px; box-shadow: none; }
.site-identity .social-auth-button:hover:not(:disabled) { background: var(--ui-soft); border-color: var(--ui-accent); box-shadow: none; filter: none; transform: translateY(-2px); }
.site-identity .auth-message-ok { background: var(--ui-accent); color: var(--ui-bg); border-radius: 100px; box-shadow: none; }
.site-identity :where(.auth-panel-head p,.auth-form label,.account-form label,.account-name,.auth-message-content p,.contact-modal-dialog p) { color: var(--ui-muted); }
.site-identity :where(.auth-tabs,.auth-divider,.account-modal-head) { background: transparent; border-color: var(--ui-line); }
.site-identity :where(.auth-tab) { background: transparent; color: var(--ui-muted); border-color: transparent; box-shadow: none; text-shadow: none; }
.site-identity :where(.auth-tab[aria-selected="true"],.auth-tab.is-active) { background: var(--ui-soft); color: var(--ui-accent); border-color: var(--ui-line); }
.site-identity :where(.account-action-card) { background: var(--ui-surface); border-color: var(--ui-line); color: var(--ui-text); box-shadow: none; }
.site-identity :where(.account-action-card span,.account-action-card i) { color: var(--ui-text); text-shadow: none; }
.site-identity :where(.account-action-card i) { color: var(--ui-accent); }
.site-identity :where(.auth-main) { padding-block: 64px; }
.site-identity :where(.auth-panel) { padding: clamp(24px,4vw,40px); }
.site-identity :where(.auth-main .auth-copy) { max-width: 550px; }
.site-identity :where(.simulados-product-body,.card-body) { background: transparent; }
.site-identity :where(.simulados-product-body h3,.card-body h3) { color: var(--ui-text); font-size: 1.25rem; text-shadow: none; }
.site-identity :where(.simulados-product-body p,.card-body p) { color: var(--ui-muted); text-shadow: none; }
.site-identity :where(.simulados-product-body p,.card-body p,.about-lead,.about-narrative p,.purpose-copy p,.pillar-card p,.game-seo-summary p) { text-align: left; hyphens: none; }
.site-identity :where(.app-cover img,.simulados-product-media img) { border: 0; border-radius: 12px; filter: none; box-shadow: none; }
.site-identity .coming-soon-stamp { position: absolute; top: 50%; left: 50%; z-index: 4; display: inline-flex; align-items: center; justify-content: center; min-width: min(72%, 12rem); padding: .62rem 1.1rem; border: 3px solid #fff; border-radius: .45rem; color: #fff; background: #c62828; box-shadow: 0 .45rem 1.1rem rgba(92,8,8,.42), 0 0 0 .2rem rgba(198,40,40,.2); font-size: clamp(1rem, 2.2vw, 1.3rem); font-weight: 950; letter-spacing: .08em; line-height: 1; text-align: center; text-transform: uppercase; transform: translate(-50%,-50%) rotate(-8deg); pointer-events: none; }
.site-identity :where(.app-card:hover,.app-card:focus-within,.simulados-product-card:hover,.simulados-product-card:focus-within) { border-color: var(--ui-accent); box-shadow: none; transform: translateY(-5px); }
.site-identity :where(.app-card:hover .app-cover img,.app-card:focus-within .app-cover img,.simulados-product-card:hover img) { filter: none; box-shadow: none; transform: scale(1.025); }
.site-identity :where(.app-cover,.simulados-product-media) { border-radius: 12px; }
.site-identity :where(.game-cover-wrap) { border-radius: 18px; border: 1px solid var(--ui-line); background: var(--ui-surface); box-shadow: var(--ui-shadow); padding: 0; }
.site-identity.game-page .game-cover { border-radius: 18px; filter: none; box-shadow: none; }
.site-identity :where(.game-meta-card) { background: var(--ui-surface); box-shadow: none; border-color: var(--ui-line); border-radius: 12px; }
.site-identity :where(.game-meta-card span,.game-seo-summary span) { color: var(--ui-accent); text-shadow: none; }
.site-identity :where(.game-meta-card strong,.game-cover-caption strong) { color: var(--ui-text); text-shadow: none; }
.site-identity :where(.game-seo-summary .container) { background: transparent; border: 0; border-top: 1px solid var(--ui-line); border-radius: 0; box-shadow: none; padding-block: 44px; }
.site-identity :where(.game-seo-summary .bncc-highlight) { background: var(--ui-soft); border-color: var(--ui-line); color: var(--ui-muted); }
.site-identity :where(.game-seo-summary .bncc-highlight strong) { color: var(--ui-accent); }
.site-identity :where(.play-launch i) { background: none; box-shadow: none; color: inherit; }
.site-identity .game-actions { background: transparent; border: 0; padding: 0; box-shadow: none; backdrop-filter: none; }
.site-identity .game-start-shell::before,.site-identity .game-cover-wrap::after { display: none; }
.site-identity .game-cover-caption { background: var(--ui-surface); border-color: var(--ui-line); }
.site-identity .game-back-link { border-radius: 100px; min-height: 44px; }
.site-identity :where(.simulados-digital-code-icon) { color: var(--ui-bg); background: var(--ui-accent); }
.site-identity :where(.simulados-copy h1 i) { color: var(--ui-accent); filter: none; }
.site-identity :where(.simulados-panel-head strong,.simulados-pdf-toolbar strong) { color: var(--ui-text); }
.site-identity :where(.simulados-panel-head span,.simulados-pdf-toolbar span) { color: var(--ui-accent); }
/* Catalog: a spacious grid, using the artwork already associated with each subject. */
.site-identity .discipline-menu.section { min-height: auto; }
.site-identity .discipline-menu .container { width: min(1280px,calc(100% - 6rem)); gap: 2.8rem; }
.site-identity .discipline-hero-copy { max-width: 800px; width: 100%; text-align: left; justify-self: start; }
.site-identity .discipline-title { max-width: 800px; margin: 0; }
.identity-kicker { color: var(--ui-accent); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 1.5rem; }
.identity-lead { max-width: 560px; margin-top: 1.5rem; color: var(--ui-muted); font-size: 1.1rem; line-height: 1.7; }
.site-identity .discipline-grid { width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.3rem; }
.site-identity .discipline-link { grid-template-columns: 1fr auto; grid-template-rows: 170px auto; gap: 0; padding: 0; border: 1px solid var(--ui-line); border-radius: 16px; background: var(--ui-surface); box-shadow: none; transition: transform .25s,border-color .25s; }
.site-identity .discipline-link::before { display: none; }
.site-identity .discipline-link-icon { grid-column: 1/-1; width: 100%; height: 170px; border: 0; border-radius: 0; background: var(--subject-art) center/cover; }
.site-identity .discipline-link-icon i { display: none; }
.site-identity .discipline-link-copy { padding: 1.5rem; }
.site-identity .discipline-link-name { color: var(--ui-text); font-size: 1.15rem; font-weight: 600; }
.site-identity .discipline-link-action { margin-right: 1.4rem; width: 34px; height: 34px; border: 1px solid var(--ui-line); border-radius: 50%; color: var(--ui-accent); background: transparent; box-shadow: none; }
.site-identity .discipline-link:hover { transform: translateY(-5px); border-color: var(--ui-accent); box-shadow: none; background: var(--ui-surface); }
.discipline-link[data-discipline="ciencias"] { --subject-art: url("../__apprendeu_static_assets/a439214e4796/assets/disciplinas/banner_ciencias.webp"); }
.discipline-link[data-discipline="historia"] { --subject-art: url("../__apprendeu_static_assets/5b938f5ff1a6/assets/disciplinas/banner_historia_pg.webp"); }
.discipline-link[data-discipline="fisica"] { --subject-art: url("../__apprendeu_static_assets/3ba19eab0388/assets/disciplinas/banner_fisica_pg.webp"); }
.discipline-link[data-discipline="libras"] { --subject-art: url("../__apprendeu_static_assets/5071717d5c5e/assets/disciplinas/banner_libras_pg.webp"); }
.discipline-link[data-discipline="lingua-portuguesa"] { --subject-art: url("../__apprendeu_static_assets/01b6094a6333/assets/disciplinas/banner_lportuguesa_pg.webp"); }
.discipline-link[data-discipline="quimica"] { --subject-art: url("../__apprendeu_static_assets/a439214e4796/assets/disciplinas/banner_quimica_pg.webp"); }
.site-identity .discipline-coming-soon { order: 3; width: 100%; background: var(--ui-soft); border: 1px solid var(--ui-line); border-radius: 16px; box-shadow: none; }
.site-identity .discipline-coming-soon::before { display: none; }
.site-identity :where(.discipline-coming-soon-title,.discipline-coming-soon-copy p) { color: var(--ui-text); text-shadow: none; }
.site-identity .discipline-coming-soon-status { color: var(--ui-accent); background: transparent; border-color: var(--ui-line); box-shadow: none; }
.site-identity .discipline-coming-soon-icon { color: var(--ui-accent); border-color: var(--ui-line); background: var(--ui-soft); box-shadow: none; }
/* Subject headings stay editorial; game covers carry the color. */
.site-identity[data-discipline] main::before { display: none; }
.site-identity .discipline-showcase.section { padding-top: 0; }
.site-identity .discipline-hero .container { background: none; border: 0; border-radius: 0; box-shadow: none; padding: 0; overflow: visible; }
.site-identity .discipline-hero h1 { max-width: 900px; color: var(--ui-text); text-shadow: none; padding: 0; }
.site-identity .discipline-hero h1 br { display: none; }
.site-identity :where(.discipline-mobile-logo,.discipline-hero-banner-mobile) { display: none; }
.site-identity .apps-grid { --app-card-width: 100%; --app-card-height: auto; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 24px; }
.site-identity .apps-grid.tool-grid-single { grid-template-columns: minmax(0,440px); justify-content: start; }
.site-identity .app-card { min-block-size: 0; max-block-size: none; block-size: auto; min-inline-size: 0; max-inline-size: none; inline-size: 100%; padding-bottom: 18px; }
.site-identity .app-cover { margin: 10px; }
.site-identity .card-body { padding: 12px 22px 0; }
.site-identity :where(.seo-link-list a) { background: var(--ui-surface); border-color: var(--ui-line); color: var(--ui-accent); box-shadow: none; }
.site-identity :where(.seo-link-list h2) { color: var(--ui-text); }
.site-identity :where(.seo-link-list p,.empty-tools) { color: var(--ui-muted); }
/* Materials and transient screens. */
body.site-identity[data-page="materiais"] { height: auto; min-height: 100svh; overflow-y: auto; }
.site-identity .materiais-empty { width: 100%; }
.site-identity .materiais-teaser-card { background: var(--ui-surface); border: 1px solid var(--ui-line); border-radius: 24px; box-shadow: none; padding: clamp(28px,5vw,64px); }
.site-identity .materiais-title { color: var(--ui-text); text-shadow: none; font-size: clamp(2rem,4vw,3.5rem); line-height: 1.15; font-weight: 600; }
.site-identity .materiais-highlights span { background: var(--ui-bg); color: var(--ui-muted); border-color: var(--ui-line); box-shadow: none; }
.site-identity .materiais-highlights i { color: var(--ui-accent); text-shadow: none; }
.site-identity .materiais-footnote--accent { background: transparent; border-color: var(--ui-line); color: var(--ui-accent); box-shadow: none; animation: none; text-shadow: none; }
.site-identity .materiais-footnote--accent::before,.site-identity .materiais-footnote--accent::after { display: none; }
.site-identity .materiais-floating-robot { filter: drop-shadow(0 20px 20px rgba(0,0,0,.15)); animation: none; }
.site-identity :where(#loader-status,.runtime-card h1,.not-found__title) { color: var(--ui-text); text-shadow: none; }
.site-identity :where(.runtime-card p,.not-found__description) { color: var(--ui-muted); }
.site-identity :where(.loader-track) { background: var(--ui-surface); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.loader-bar) { background: var(--ui-accent); box-shadow: none; }
.site-identity :where(.not-found__code) { color: var(--ui-accent); }
@media (max-width: 900px) {
  .site-identity .discipline-menu .container { width: calc(100% - 2.5rem); }
  .site-identity .discipline-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-identity .discipline-link-icon { height: 150px; }
  .site-identity .discipline-link { grid-template-rows: 150px auto; }
  .site-identity .discipline-hero h1 { font-size: clamp(2.2rem,7vw,3.4rem); }
  .site-identity .discipline-hero .container { width: calc(100% - 2.5rem); }
  .site-identity:not(.home-page) :where(main > .section,.about-hero,.simulados-hero) { padding-block: 48px; }
}
@media (max-width: 600px) {
  .site-identity main .container { width: calc(100% - 2.5rem); }
  .site-identity .discipline-grid { grid-template-columns: 1fr; }
  .site-identity .discipline-link { grid-template-rows: 180px auto; }
  .site-identity .discipline-link-icon { height: 180px; }
  .site-identity .discipline-title { font-size: 2.35rem; }
  .site-identity .discipline-coming-soon { grid-template-columns: 1fr auto; padding: 22px; }
  .site-identity .discipline-coming-soon-title { font-size: 1.35rem; }
  .site-identity .discipline-coming-soon-icon { width: 42px; height: 42px; font-size: 1.3rem; }
  .site-identity .apps-grid { grid-template-columns: minmax(0,1fr); }
  .site-identity .app-card { width: 100%; }
  .site-identity .about-hero h1 { font-size: 2.35rem; }
  .site-identity .auth-main { padding: 40px 0; }
  .site-identity .materiais-floating-robot { position: relative; top: auto; right: auto; width: 100px; margin: -15px auto 20px; display: block; }
  .site-identity .materiais-title { font-size: 2rem; }
  .site-identity .game-start h1 { font-size: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .site-identity :where(.discipline-link,.app-card,.simulados-product-card,.btn,.open-btn,.play-launch,.materiais-floating-robot) { animation: none; transition: none; }
}


/* Dashboard adapters preserve the existing layout and semantic status colors. */
:root {
  --teacher-header-height: 76px; --student-header-height: 76px;
  --teacher-font-title: var(--font-title); --teacher-font-body: var(--font-body);
  --teacher-bg: var(--ui-bg); --teacher-surface: var(--ui-surface);
  --teacher-surface-raised: var(--ui-raised); --teacher-surface-soft: var(--ui-surface);
  --teacher-ink: var(--ui-text); --teacher-ink-soft: var(--ui-muted); --teacher-muted: var(--ui-muted);
  --teacher-line: var(--ui-line); --teacher-line-strong: var(--ui-line);
  --teacher-primary: var(--ui-accent); --teacher-primary-strong: var(--ui-accent); --teacher-primary-soft: var(--ui-soft);
  --teacher-shadow-sm: none; --teacher-shadow-md: var(--ui-shadow);
  --student-font-title: var(--font-title); --student-font-body: var(--font-body);
  --student-page: var(--ui-bg); --student-surface: var(--ui-surface);
  --student-surface-raised: var(--ui-raised); --student-surface-soft: var(--ui-surface);
  --student-ink: var(--ui-text); --student-ink-soft: var(--ui-muted); --student-muted: var(--ui-muted);
  --student-border: var(--ui-line); --student-border-strong: var(--ui-line);
  --student-purple: var(--ui-accent); --student-purple-strong: var(--ui-accent);
  --student-purple-soft: var(--ui-soft); --student-purple-line: var(--ui-line);
  --student-shadow-sm: none; --student-shadow-md: var(--ui-shadow);
  --admin-bg: var(--ui-bg); --admin-surface: var(--ui-surface);
  --admin-surface-raised: var(--ui-raised); --admin-surface-soft: var(--ui-surface);
  --admin-text: var(--ui-text); --admin-muted: var(--ui-muted); --admin-dim: var(--ui-muted);
  --admin-line: var(--ui-line); --admin-line-strong: var(--ui-line);
  --admin-neon: var(--ui-accent); --admin-green: var(--ui-accent);
  --admin-font: var(--font-body); --admin-shadow: var(--ui-shadow);
}
.site-identity :where(.teacher-button--primary,.student-button--primary) { background: var(--ui-accent); color: var(--ui-bg); border-color: transparent; box-shadow: none; border-radius: 100px; }
.site-identity :where(.teacher-button,.student-button) { font-family: var(--font-body); }
.site-identity :where(.teacher-sidebar,.student-sidebar) { background: var(--ui-surface); color: var(--ui-text); border-color: var(--ui-line); }
.site-identity :where(.teacher-sidebar-brand strong,.student-sidebar-brand strong) { color: var(--ui-text); }
.site-identity :where(.teacher-scope-field > span:first-child,.teacher-nav-item,.student-nav-item) { color: var(--ui-muted); }
.site-identity :where(.teacher-nav-item:hover,.student-nav-item:hover) { background: var(--ui-raised); color: var(--ui-text); }
.site-identity :where(.teacher-nav-item.is-active,.student-nav-item.is-active) { background: var(--ui-soft); color: var(--ui-accent); border-color: var(--ui-line); box-shadow: inset 3px 0 var(--ui-accent); }
.site-identity :where(.teacher-scope-field,.teacher-sidebar-close,.student-sidebar-close) { background: var(--ui-raised); color: var(--ui-text); border-color: var(--ui-line); }
.site-identity :where(.student-sidebar-logo) { background: var(--ui-accent); color: var(--ui-bg); box-shadow: none; }
.site-identity .admin-sidebar { background: var(--ui-surface); }
.site-identity .admin-nav a.is-active { background: var(--ui-soft); border-color: var(--ui-line); }
@media (max-width: 900px) {
  :root { --teacher-header-height: 64px; --student-header-height: 64px; }
}

/* Assessment workspace: shared surfaces, with answer/status states retained. */
.site-identity .simulados-runner-stage {
  --runner-page-background: var(--ui-bg);
  --runner-ink: var(--ui-text); --runner-muted: var(--ui-muted);
  --runner-panel: var(--ui-surface); --runner-panel-raised: var(--ui-raised);
  --runner-panel-card: var(--ui-raised); --runner-panel-border: var(--ui-line);
  --runner-panel-text: var(--ui-text); --runner-panel-muted: var(--ui-muted);
  background: var(--ui-bg);
}
.site-identity :where(.simulados-exam-header,.simulados-pdf-panel,.simulados-answer-panel) { border-radius: 0; }
.site-identity .simulados-exam-header::after { height: 1px; background: var(--ui-line); }
.site-identity :where(.simulados-exam-brand,.simulados-exam-title strong,.simulados-pause-cover strong) { color: var(--ui-text); }
.site-identity :where(.simulados-exam-title span,.simulados-exam-status span) { color: var(--ui-muted); }
.site-identity :where(.simulados-exam-status,.simulados-pdf-toolbar,.simulados-panel-head,.simulados-runner-card,.simulados-current-card,.simulados-language-options,.simulados-pause-cover,.simulados-confirm-card,.simulados-access-card) { background: var(--ui-surface); color: var(--ui-text); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.simulados-exam-status strong,.simulados-pause-cover span) { color: var(--ui-accent); }
.site-identity .simulados-runner-loading { background: var(--ui-surface); color: var(--ui-muted); border-color: var(--ui-line); border-radius: 18px; box-shadow: none; }
.site-identity :where(.simulados-pdf-viewer,.simulados-mobile-pdf) { background: var(--ui-raised); }
.site-identity :where(.simulados-icon-link,.simulados-step-button,.simulados-action-button,.simulados-language-trigger,.simulados-language-options button) { background: var(--ui-raised); color: var(--ui-text); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.simulados-action-button--primary,.simulados-action-button--finish) { background: var(--ui-accent); color: var(--ui-bg); }
.site-identity :where(.simulados-action-button--quiet,.simulados-language-options button[aria-selected="true"],.simulados-language-trigger[aria-expanded="true"]) { background: var(--ui-soft); color: var(--ui-accent); border-color: var(--ui-accent); }
.site-identity .simulados-progress { background: var(--ui-surface); border-color: var(--ui-line); box-shadow: none; }
.site-identity .simulados-progress-track { background: var(--ui-raised); }
.site-identity .simulados-progress-track span { background: var(--ui-accent); box-shadow: none; }
.site-identity .simulados-progress-track strong { padding: .25rem .5rem; border-radius: 100px; background: var(--ui-surface); color: var(--ui-text); text-shadow: none; }
.site-identity .simulados-login-card { background: var(--ui-surface); border-color: var(--ui-line); box-shadow: none; }
.site-identity :where(.simulados-confirm-card h2,.simulados-confirm-summary strong,.simulados-login-card h2) { color: var(--ui-text); }
.site-identity :where(.simulados-confirm-card p,.simulados-confirm-summary span,.simulados-login-card p) { color: var(--ui-muted); }
