/* Preferences augment semantic accessibility; the default interface remains usable. */
html { font-size: calc(112.5% * var(--a11y-text-scale, 1)); }
body { font-family: var(--font-ui, system-ui, sans-serif); line-height: 1.6; }
html[lang="he"] body, [lang="he"] { font-family: var(--font-ui, system-ui, sans-serif); }
html[lang="ar"] body, [lang="ar"] { font-family: var(--font-ui, system-ui, sans-serif); }
html[lang="hi"] body, [lang="hi"] { font-family: var(--font-ui, system-ui, sans-serif); }
[lang="en"], [lang="ru"], [lang="es"], [lang="fr"] { font-family: var(--font-ui, system-ui, sans-serif); }
body :where(input,select,textarea,button) { font-family: inherit; }
body :where(h1,h2,h3,h4) { line-height: 1.35; }
html:is([lang="he"],[lang="ar"],[lang="hi"]) body :where(h1,h2,h3,h4,p,button,label,.eyebrow,.login-eyebrow,.login-brand) { letter-spacing: normal; }
html:is([lang="ar"],[lang="hi"]) body :where(h1,h2,h3,h4) { line-height: 1.5; }
.technical-chart text { font-family: inherit; }
#siteControls .a11y-section { display: grid; gap: 12px; margin-block: 20px; padding-block: 18px; border-block-start: 1px solid #707d75; min-width: 0; }
#siteControls .a11y-section h3 { margin: 0; font-size: 1.125rem; line-height: 1.5; overflow-wrap: anywhere; }
#siteControls .a11y-section p { margin: 0; }
#siteControls .a11y-section label { font-weight: 650; }
#siteControls .a11y-section select { width: 100%; min-width: 0; max-width: 100%; min-height: 44px; font: inherit; color: #172e27; background: #fff; padding: 10px; border: 1px solid #707d75; border-radius: 10px; }
#siteControls .a11y-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 165px), 1fr)); gap: 10px; }
#siteControls button:disabled { color: #526157; background: #ecefeb; border-style: dashed; cursor: not-allowed; }
#siteControls .a11y-transcript { padding: 14px; border-inline-start: 4px solid #356859; background: #e7f0eb; color: #172e27; white-space: pre-wrap; }
#siteControls .a11y-reset { justify-content: center; font-weight: 700; }
#siteControls .site-control-dialog { width: min(35rem, calc(100% - 24px)); max-width: calc(100% - 24px); }
#siteControls .site-control-dialog-head { align-items: start; }
#siteControls .site-control-close { flex-basis: max(44px, 2.75rem); width: max(44px, 2.75rem); }
#siteControls :where(select, input, textarea):focus-visible { outline: 3px solid #164e85 !important; outline-offset: 3px; box-shadow: 0 0 0 6px #fff !important; }
.toast { pointer-events: auto; border-radius: 16px; flex-wrap: wrap; }
.toast strong { min-width: 0; overflow-wrap: anywhere; flex: 1; }
.toast-dismiss { flex: 0 0 auto; min-width: 44px; min-height: 44px; font: inherit; border: 1px solid currentColor; border-radius: 8px; background: var(--surface); color: var(--ink); cursor: pointer; }
html[data-a11y-links="true"] a[href] { text-decoration: underline !important; text-decoration-thickness: .12em !important; text-underline-offset: .2em; }
html[data-a11y-spacing="true"] body :where(p,li,dt,dd,span,a,button,label,input,select,textarea,h1,h2,h3,h4,strong,td,th,summary) { line-height: 1.8 !important; letter-spacing: .12em !important; word-spacing: .16em !important; }
html[data-a11y-spacing="true"][lang="ar"] body * { letter-spacing: normal !important; }
html[data-a11y-spacing="true"] p { margin-block-end: 2em !important; }
html[data-a11y-enlarged="true"] body :where(h1,h2,h3,h4,p,a,button,label,strong,span,li) { overflow-wrap: anywhere; }
html[data-a11y-enlarged="true"] :where(input,select,textarea,fieldset) { min-width: 0; max-width: 100%; }
html[data-a11y-enlarged="true"] .shell { grid-template-columns: minmax(0, 1fr); }
html[data-a11y-enlarged="true"] body.has-site-controls .rail {
  position: static; inset: auto; width: auto; height: auto; max-height: none;
  grid-row: auto; grid-column: 1; display: flex; flex-wrap: wrap; gap: 16px; transform: none;
}
html[data-a11y-enlarged="true"] body.has-site-controls .main { grid-row: auto; grid-column: 1; min-width: 0; }
html[data-a11y-enlarged="true"] .rail-actions { display: flex; flex-wrap: wrap; flex: 1 1 100%; }
html[data-a11y-enlarged="true"] .rail-actions :where(a,button) { height: auto; overflow: visible; white-space: normal; flex: 1 1 140px; }
html[data-a11y-enlarged="true"] .rail-links { display: flex; flex-wrap: wrap; gap: 12px; }
html[data-a11y-enlarged="true"] .rail-links a { display: inline-flex; width: auto; padding: 8px; font-size: .875rem; overflow: visible; }
html[data-a11y-enlarged="true"] .rail-links a::before { display: none; }
html[data-a11y-enlarged="true"] .login-brand { flex-wrap: wrap; }
html[data-a11y-enlarged="true"] .mark { min-width: max(44px, 2.5rem); width: auto; height: auto; min-height: 2.5rem; padding: 8px; }
html[data-a11y-enlarged="true"] .push-settings-card { min-width: 0; }
html[data-a11y-enlarged="true"] .push-settings-card > * { min-width: 0; max-width: 100%; }
@media (max-width: 800px) {
  html[data-a11y-enlarged="true"] :where(.settings-language-grid,.portfolio-metrics,.settings-grid,.facts,.analysis-grid,.community-steps,.market-grid) { grid-template-columns: minmax(0, 1fr); }
}
html[data-a11y-contrast="light"] { --a11y-bg: #ffffff; --a11y-fg: #111111; --a11y-link: #074a86; --a11y-focus: #074a86; --a11y-up: #14532d; --a11y-down: #8b1d1d; color-scheme: light; }
html[data-a11y-contrast="dark"] { --a11y-bg: #121212; --a11y-fg: #ffffff; --a11y-link: #ffdf80; --a11y-focus: #ffdf80; --a11y-up: #7cf0ad; --a11y-down: #ffadad; color-scheme: dark; }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) {
  --bg: var(--a11y-bg); --surface: var(--a11y-bg); --surface-2: var(--a11y-bg); --ink: var(--a11y-fg); --muted: var(--a11y-fg); --line: var(--a11y-fg);
}
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) body,
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) body *:not(svg,svg *) {
  color: var(--a11y-fg) !important; background: var(--a11y-bg) !important;
  border-color: var(--a11y-fg) !important; text-shadow: none !important; box-shadow: none !important;
}
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) body a[href] { color: var(--a11y-link) !important; text-decoration: underline; }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) :where(button,input,select,textarea,summary) { border: 1px solid var(--a11y-fg) !important; }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) :is([aria-pressed="true"],[aria-current="page"]) { outline: 2px solid var(--a11y-focus); outline-offset: -4px; }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) body :focus-visible { outline: 3px solid var(--a11y-focus) !important; outline-offset: 3px !important; }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) .technical-chart text { fill: var(--a11y-fg); }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) .chart-up { fill: var(--a11y-up); stroke: var(--a11y-up); }
html:is([data-a11y-contrast="light"],[data-a11y-contrast="dark"]) .chart-down { fill: var(--a11y-bg); stroke: var(--a11y-down); }
@media (forced-colors: active) {
  html body.has-site-controls * { forced-color-adjust: auto; }
}
