/* A aparência escura é opcional e mantém intactos navegação, permissões e estados. */
html[data-theme="prisma"][data-prisma-mode="dark"] {
  color-scheme:dark;
  --bg:#080f19; --surface:#142130; --surface-2:#192938;
  --text:#e9f3fb; --muted:#a3b7c9; --line:#a8cae026; --line-bright:#75d9dc70;
  --green:#72e5ca; --green-dim:#4ac2ac; --amber:#edc079; --orange:#edc079; --red:#ff9bb0;
  --prisma-glass:linear-gradient(135deg,#1b2c3ee8,#121d2bec 65%,#20263ce0);
  --prisma-shadow:0 18px 35px -25px #000c,0 1px 0 #b3e6fc1f inset;
}
html[data-theme="prisma"][data-prisma-mode="dark"] body {
  background:radial-gradient(ellipse at 90% 5%,#2823455e,transparent 43%),
    radial-gradient(ellipse at 8% 25%,#105c6424,transparent 45%),
    linear-gradient(145deg,#080f19,#0c1622 60%,#101322);
  background-attachment:fixed; color:var(--text);
}
html[data-theme="prisma"][data-prisma-mode="dark"] ::selection { background:#72e5ca; color:#082327; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(button,a,input,select,textarea):focus-visible { outline-color:#88e2e6; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.logo,.prisma-brand) { color:#e9f3fb; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.logo .x,.prisma-brand em) { color:#85ead5; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(input,select,textarea) {
  background:#0d1927; color:#e9f3fb; border-color:#53758d; box-shadow:inset 0 1px 4px #0003;
}
html[data-theme="prisma"][data-prisma-mode="dark"] :is(input,select,textarea):focus { background:#132335; border-color:#79dad1; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(input,textarea)::placeholder { color:#9bb1c4; opacity:1; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.btn,.prisma-primary) {
  background:linear-gradient(130deg,#9af0d8,#64cec5); border-color:#a4f3e2;
  color:#092b30; box-shadow:0 7px 24px -13px #50e5d280,inset 0 1px 1px #d7fff7;
}
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.btn,.prisma-primary):hover { background:#b0f7e8; box-shadow:0 10px 28px -14px #71f0db80; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.btn--ghost,.prisma-link) {
  color:#c0e6ed; background:linear-gradient(145deg,#243747b0,#172635d9);
  border-color:#5e849660; box-shadow:inset 0 1px 0 #c5f1ff15;
}
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.btn--ghost,.prisma-link):hover { color:#e5fbff; background:#264150; border-color:#84c9c5; }
html[data-theme="prisma"][data-prisma-mode="dark"] .role-pill.is-active { background:#153b3a; color:#a8f3e0; }

/* O vidro fumê preserva a profundidade do Prisma sem criar painéis brancos no escuro. */
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma { --p-ink:#e9f3fb; --p-muted:#a3b7c9; --p-green:#85ead5; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.prisma,.prisma-demo-detail,.prisma-dialog) { color:#e9f3fb; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-tag { color:#b0c7da; background:#182b3e80; border-color:#5f839a5c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-round {
  color:#c5e2ed; border-color:#7aadc54a; background:linear-gradient(140deg,#314b60,#132535);
  box-shadow:0 7px 15px -10px #000c,inset 0 1px 1px #c9efff36,inset 0 -2px 3px #050d1855;
}
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-round--avatar { color:#b3f5de; background:linear-gradient(140deg,#2d6663,#18303b); border-color:#92e5d34a; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma h1 span { color:#afc5da; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-eyebrow { color:#a1c3d7; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-search { background:#142536a6; border-color:#61859c5a; color:#b0cddd; box-shadow:0 8px 20px -15px #0009,inset 0 1px 1px #b4e5ff12; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-search input { color:#e9f3fb; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-search input::placeholder { color:#a4bbce; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-search:focus-within { outline-color:#81dcd4; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-glass { background:var(--prisma-glass); border-color:#98c5df38; box-shadow:var(--prisma-shadow),inset 0 -3px 3px #07122380; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian { background:linear-gradient(120deg,#193343ee,#182332ee 59%,#292940d9); }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian::before { border-color:#8dcde42b; box-shadow:0 0 0 25px #94d6f00b,0 0 0 60px #9eb8ff08,0 0 0 95px #adbbff05; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian .prisma-eyebrow { color:#93ead7; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-dot { background:#94ead8; box-shadow:0 0 10px #75f4dd70; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian p:not(.prisma-eyebrow) { color:#b5cbda; }
/* O atlas preto é composto por luz: screen integra os ícones ao vidro, sem quadrados. */
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-icon { background-image:url("prisma-icons-dark.png"); mix-blend-mode:screen; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian > .prisma-icon { filter:drop-shadow(0 10px 20px #8fd9eb16); }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-section-head span { color:#9eb7cb; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-section-head button { color:#a4d9df; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-module {
  color:#eaf5fd; background:linear-gradient(150deg,#243748bd,#182435ba 60%,#262a4380);
  border-color:#8fbed638; box-shadow:0 16px 24px -16px #000a,inset 0 1px 1px #bddaf826,inset 0 -4px 2px #070e1a70;
}
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-module:hover { border-color:#94dfd5a8; background:linear-gradient(140deg,#29485bbd,#1c3043e0); box-shadow:0 18px 28px -18px #000e,0 0 23px -10px #62c5cb35,inset 0 1px 1px #b9f5ef40; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-module small { color:#aec3d5; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-module-arrow { color:#a1c6d4; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-learning-art { color:#a0eddd; border-color:#90c8d340; background:radial-gradient(at 15% 10%,#305754,#25324f 70%); box-shadow:inset 0 1px 1px #c7ffef30; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-learning-copy p { color:#a9bfd2; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.prisma-demo-note,.prisma-dialog p) { color:#a6bdcf; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-note a { color:#98e7d9; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-empty { color:#b5cedf; background:#1c3041; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-dock { background:#132334e8; border-color:#8ec4dd42; box-shadow:0 18px 40px -12px #000b,inset 0 1px 1px #bcf0ff32,inset 0 -3px 2px #050d1b80; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-dock button { color:#a4bfd2; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-dock button[aria-current="page"] { color:#a3f5df; background:linear-gradient(140deg,#2c5c58d9,#243d4bd9); box-shadow:inset 0 1px 0 #a4f7df45; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-dock button:hover { background:#294452; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.prisma-dialog,dialog,[role="dialog"]) { color:#e9f3fb; background:#142233; border-color:#84bdd352; box-shadow:0 30px 80px -20px #000c; }
html[data-theme="prisma"][data-prisma-mode="dark"] dialog::backdrop { background:#020812b8; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-explore-list button { color:#d0e5f0; background:#1b3042; border-color:#668ba54d; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-explore-list button:hover { color:#c6fff1; border-color:#79cdbf; background:#244348; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-login-links { color:#afc5d6; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-login-links a { color:#adf0df; background:#19333e; border-color:#82c7c247; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-skip { background:#92efd9; color:#092b30; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-appearance { color:#abc4d8; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-appearance :is([role="group"],.prisma-appearance-group) { background:#132535c9; border-color:#87bbd04a; box-shadow:inset 0 1px 1px #d5f0ff16; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-appearance [data-prisma-set-mode] { color:#c5d8e6; background:transparent; border-color:transparent; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-appearance [data-prisma-set-mode][aria-pressed="true"] { color:#b7ffeb; background:linear-gradient(145deg,#36594f,#274254); border-color:#95d8d85c; box-shadow:inset 0 1px 1px #caffef38,0 3px 8px -5px #000b; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-appearance [data-prisma-set-mode]:hover { color:#e1fff8; background:#2b4b54; }

/* A demonstração usa o mesmo vocabulário visual, sem modificar ações nem exemplos. */
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.prisma-demo-hero p,.prisma-demo-card p,.prisma-demo-grid small,.prisma-demo-metrics span,.prisma-demo-lesson small,.prisma-demo-answer) { color:#abc2d4; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-tabs button { color:#bad0e0; background:#192d3d; border-color:#698eaa4d; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-tabs button[aria-pressed="true"] { color:#aef2dc; background:#224b45; border-color:#76c3ad; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-pill { color:#abefd7; background:#1d4539; border-color:#6fb79a; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.prisma-demo-metrics,.prisma-demo-switch) { border-color:#7aabc22e; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-switch-indicator { background:#426078; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-switch-indicator::before { background:#c4d7e3; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-lesson { color:#e9f3fb; background:#192c3cc9; border-color:#83b7cd38; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-lesson:hover { border-color:#84d2c8; background:#233e4c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-lesson > span:first-child { color:#9debd9; background:#264b50; border-color:#a7e9db38; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-player { background:radial-gradient(at 40% 15%,#2c465f,#070e18); border:1px solid #668da044; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-bubble { color:#d5e6f1; border-color:#98cfe335; background:linear-gradient(135deg,#233a4b,#1b2a3f); }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-prompts button { color:#c1eeed; border-color:#75b9bf6b; background:#1b3744; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-prompts button:hover { background:#2b4a54; border-color:#a4e5d8; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-demo-upload { color:#a2e1d7; background:#122d3580; border-color:#8cc8c7; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian-periods > div { background:#142c3c99; border-color:#78afc03d; }
html[data-theme="prisma"][data-prisma-mode="dark"] .prisma-guardian-periods small { color:#adc4d5; }

/* Os módulos existentes continuam usando seus próprios controles de acesso. */
html[data-theme="prisma"][data-prisma-mode="dark"] #login-canvas-wrap { opacity:.12; mix-blend-mode:screen; }
html[data-theme="prisma"][data-prisma-mode="dark"] #screen-login::before { border-color:#8cb5db1c; box-shadow:0 0 0 60px #92c4f008,0 0 0 120px #87cee005; }
html[data-theme="prisma"][data-prisma-mode="dark"] #screen-login form { border-color:#88b8d045; box-shadow:0 24px 70px -33px #000c,inset 0 1px 0 #c4eaff30; }
html[data-theme="prisma"][data-prisma-mode="dark"] .proto-note { background:#16333b70; border-color:#79b8bd47; }
html[data-theme="prisma"][data-prisma-mode="dark"] .pulse-dot { box-shadow:0 0 0 3px #72e5ca1c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .status-line { color:#a2c3d5; }
html[data-theme="prisma"][data-prisma-mode="dark"] #sidebar { background:linear-gradient(175deg,#132437ed,#0e1a29ed); border-right-color:#86b6d32b; box-shadow:8px 0 30px -27px #000; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-status { color:#b1ccda; }
html[data-theme="prisma"][data-prisma-mode="dark"] .lang-switch { background:#24374b; }
html[data-theme="prisma"][data-prisma-mode="dark"] .lang-switch button.is-active { background:#335349; color:#b3f3df; border-color:#79bda7; box-shadow:0 2px 5px #0003; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-indicator { border-color:#a1d7d938; border-left-color:#95e6d5; background:linear-gradient(105deg,#285047df,#233448b8); box-shadow:0 6px 13px -9px #0009; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item { color:#aabfce; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item:hover { color:#e1f5f8; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item.is-active { color:#b9f5e4; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item__slot { color:#a4d8e9; border-color:#a1d7e838; background:linear-gradient(145deg,#375068,#203247); box-shadow:0 4px 8px -5px #000b,inset 0 1px 0 #bce8ff2b; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item.is-active .sb-item__slot { background:linear-gradient(140deg,#447269,#294953); border-color:#a4e5d766; box-shadow:0 4px 9px -6px #000a; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-item.is-active svg :is(path,line,circle) { stroke:#b1f6e3; }
html[data-theme="prisma"][data-prisma-mode="dark"] .avatar { background:linear-gradient(145deg,#476f64,#213e42); color:#c3ffec; border-color:#98d6c654; box-shadow:0 4px 10px -7px #0009; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-logout { background:#472b405c; border-color:#b776913d; color:#ffc1d0; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sb-logout:hover { background:#573346; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.view-header__eyebrow,.section-label) { color:#9dc7d7; }
html[data-theme="prisma"][data-prisma-mode="dark"] .icon-btn { color:#c1e0f1; background:var(--prisma-glass); border-color:var(--line); }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.card,.lesson-row,.product-card,.request-card,.post,.news-item,.stat-box,.alert-card,.component-card,.assert-panel,.hero-panel) { border-color:#9ac5db35; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.card,.lesson-row,.product-card,.request-card,.post,.news-item,.alert-card):hover { border-color:#8dcdc776; }
html[data-theme="prisma"][data-prisma-mode="dark"] .hero-panel { background:linear-gradient(125deg,#20394ce6,#193438d9 57%,#262a449c); }
html[data-theme="prisma"][data-prisma-mode="dark"] .lesson-row.is-done { background:linear-gradient(115deg,#1b3a35,#182c3cd6); }
html[data-theme="prisma"][data-prisma-mode="dark"] .lesson-num { color:#bbdded; background:linear-gradient(155deg,#304c60,#233648); border-color:#aacfe638; box-shadow:0 4px 8px -5px #000a; }
html[data-theme="prisma"][data-prisma-mode="dark"] .lesson-row.is-done .lesson-num { color:#b0f3da; background:#2c5449; border-color:#9adeca50; }
html[data-theme="prisma"][data-prisma-mode="dark"] .tool-card { border-color:#7cb9b645; background:linear-gradient(135deg,#1e423dc9,#182d3ac9); }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.tool-card__icon,.new-signal-banner__icon) { background:linear-gradient(145deg,#49786a,#285952); box-shadow:0 4px 11px -7px #000a,inset 0 1px 0 #b9f9e655; }
html[data-theme="prisma"][data-prisma-mode="dark"] .badge-owned { background:#1b4538; color:#b2f5d9; border-color:#72bd9c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .video-frame { border-color:#7da6bd3d; background:#070f18; box-shadow:0 15px 26px -20px #000c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .play-circle { background:#315e53; border-color:#95deca; color:#bcf9e4; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.risk-banner,.announce-item) { background:#3d311d8c; border-color:#cfaf715c; color:#edc079; }
html[data-theme="prisma"][data-prisma-mode="dark"] .msg--bot { color:#d6e8f4; background:#1a2d3ee6; border-color:#84afc347; }
html[data-theme="prisma"][data-prisma-mode="dark"] .msg--user { color:#d7fff4; background:#226359; }
html[data-theme="prisma"][data-prisma-mode="dark"] .chat-input-bar { background:#122130e6; }
html[data-theme="prisma"][data-prisma-mode="dark"] .send-btn { color:#13382e; background:linear-gradient(140deg,#b1f2da,#79cdbd); }
html[data-theme="prisma"][data-prisma-mode="dark"] .calc-table-wrap { background:#0f1c2bb0; }
html[data-theme="prisma"][data-prisma-mode="dark"] thead th { background:#233b4c; color:#a9dfdf; }
html[data-theme="prisma"][data-prisma-mode="dark"] tbody tr:nth-child(even) { background:#5e8ba714; }
html[data-theme="prisma"][data-prisma-mode="dark"] .alert-subtab { background:#192d3cb8; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.alert-subtab,.hist-pagination button).is-active { color:#b3f1dd; background:#2c5147; border-color:#83bea8; }
html[data-theme="prisma"][data-prisma-mode="dark"] .alert-card:hover { box-shadow:0 13px 25px -18px #000c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .alert-card__tf { background:#2b4155; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.alert-dir--compra,.hist-result--hit,.bias-chip.bullish) { background:#214638; color:#a8efd0; border-color:#72aa8f; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.alert-dir--venda,.hist-result--miss,.bias-chip.bearish) { background:#502a39; color:#ffc0d0; border-color:#b07891; }
html[data-theme="prisma"][data-prisma-mode="dark"] .hist-result--pending { background:#2b3e50; color:#c2d7e6; border-color:#7a94a9; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.bias-chip.neutral,.assert-panel__admin-badge) { background:#473b24; color:#f9d596; border-color:#ad9161; }
html[data-theme="prisma"][data-prisma-mode="dark"] .assert-panel { background:linear-gradient(140deg,#233e42ed,#152b38d9); border-color:#8fc5c94d; }
html[data-theme="prisma"][data-prisma-mode="dark"] .assert-ring-fg { stroke:#8de4cd; }
html[data-theme="prisma"][data-prisma-mode="dark"] .new-signal-banner { background:linear-gradient(120deg,#214b3e,#1b3343); border-color:#9bceb58c; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.phantom-toggle__label,.phantom-coin-chip span) { background:#172938c9; color:#c0d4e2; border-color:#7996b052; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(.phantom-toggle__input:checked + .phantom-toggle__label,.phantom-coin-chip input:checked + span) { background:#2a5145; color:#b6f3dd; border-color:#8ec8af; box-shadow:inset 0 1px 0 #bcf6df44; }
html[data-theme="prisma"][data-prisma-mode="dark"] .sentimento-suggestions { background:#192c3d; box-shadow:0 14px 32px -18px #000c; }
html[data-theme="prisma"][data-prisma-mode="dark"] .professor-foto-3d { box-shadow:0 16px 26px -18px #000c,0 0 0 3px #24384a,0 0 0 5px #79b8b878; }
html[data-theme="prisma"][data-prisma-mode="dark"] .admin-section__toggle { color:#b0cbdc; }
html[data-theme="prisma"][data-prisma-mode="dark"] .admin-section.is-open > .admin-section__toggle { color:#a2ebd7; }
html[data-theme="prisma"][data-prisma-mode="dark"] .toast { color:#e4f4f8; background:#1d3943; border-color:#97d8cd; box-shadow:0 12px 40px -15px #000e; }
/* Apenas os neutros inline já tratados pelo tema claro precisam de prioridade aqui. */
html[data-theme="prisma"][data-prisma-mode="dark"] [style*="background:#0E1B13"] { background:#152b35!important; border-color:#89b5c440; }
html[data-theme="prisma"][data-prisma-mode="dark"] [style*="background:var(--green); color:#04170D"] { color:#0b302e!important; }
html[data-theme="prisma"][data-prisma-mode="dark"] :is(#hist-goto-input,#hist-busca-input) { border-color:#6d9bb4!important; background:#122535!important; }
