/* «Радуга» · расширенный режим для слабовидящих.
   Загружается последним и применяется ко ВСЕМ разделам, не только шапке. */
body.raduga-vision{
 --rv-bg:#fff;--rv-ink:#111;--rv-link:#004baf;--rv-edge:#202020;
 background:#fff!important;color:#111!important;
 font-family:Arial,Tahoma,sans-serif!important;
 font-size:18px!important;line-height:1.67!important;
}
body.raduga-vision.rv-size-1{font-size:20px!important}
body.raduga-vision.rv-size-2{font-size:22px!important}
body.raduga-vision.rv-size-3{font-size:24px!important}
body.raduga-vision :is(main,header,footer,nav,aside,section,article,
  .approved-header,.approved-nav,.approved-menu,.approved-hero,.approved-copy,
  .ri-inner,.ri-article,.ri-legal-page,.rd-legal-heading,.rd-legal-sidebar,
  .rd-index-card,.rd-teacher-card,.rd-team-intro,.rd-team-stats>div,
  .news-tile,.news-tile-body,.rd-important-safety-link,.raduga-direction-card,
  .raduga-link-card,.raduga-social-card,.raduga-contact-card,
  .rd-edu-program-card,.rd-edu-document,.rd-edu-doc-group,.rd-edu-group-heading,
  .rd-safety-card,.rd-legal-documents,.rd-rainbow-news,.rd-related-card,
  .rd-gallery-photo,.rd-featured-photo,.raduga-govbar,.raduga-cookie,
  .rd-news-all-cta){
 background:#fff!important;background-image:none!important;
 color:var(--rv-ink)!important;border-color:#777!important;
 box-shadow:none!important;text-shadow:none!important;
}
body.raduga-vision :is(h1,h2,h3,h4,h5,h6,p,li,small,strong,em,b,span,time,label,
  figcaption,summary,td,th,.ri-muted,.eyebrow,.rd-important-index,
  .news-tile-body>small,.rd-teacher-field,.rd-edu-field,.rd-edu-source-label,
  .raduga-direction-card strong,.raduga-direction-card small,
  .rd-important-safety-label strong,.rd-important-safety-label small){
 color:var(--rv-ink)!important;letter-spacing:normal!important;
 text-shadow:none!important;overflow-wrap:anywhere;
}
body.raduga-vision :is(p,li,dd,dt,td,th,summary,figcaption,label){
 font-family:Arial,Tahoma,sans-serif!important;
 font-size:1em!important;line-height:1.7!important;
}
body.raduga-vision :is(small,.eyebrow,time,.news-tile-body>small,
  .raduga-direction-card small,.rd-important-safety-label small,
  .rd-safety-card p,.rd-edu-document-text){
 font-size:.86em!important;line-height:1.6!important;
}
body.raduga-vision :is(h1){font:800 clamp(31px,4vw,48px)/1.24 Arial,Tahoma,sans-serif!important}
body.raduga-vision :is(h2){font:800 clamp(26px,3.2vw,39px)/1.28 Arial,Tahoma,sans-serif!important}
body.raduga-vision :is(h3){font:800 clamp(22px,2.6vw,30px)/1.32 Arial,Tahoma,sans-serif!important}
body.raduga-vision :is(h4,h5,h6){font:800 1.22em/1.4 Arial,Tahoma,sans-serif!important}
body.raduga-vision a,
body.raduga-vision a :is(span,strong,small,b,em),
body.raduga-vision .raduga-link-more,
body.raduga-vision .news-tile-cta a,
body.raduga-vision .rd-important-section-head a{
 color:var(--rv-link)!important;text-decoration:underline!important;
 text-underline-offset:3px!important;
}
body.raduga-vision :is(a,button,input,select,textarea,summary):focus-visible{
 outline:4px solid #ffb100!important;outline-offset:4px!important;
}
body.raduga-vision :is(.approved-menu a,.approved-family,.raduga-link-card,
  .rd-important-safety-link,.raduga-direction-card,.news-tile,.news-tile-cta a,
  .rd-news-all-button,.rd-safety-primary-link,.raduga-social-card,
  .ri-list>a,.rd-edu-toc a,.rd-edu-document-link,.rd-edu-signature summary){
 font-family:Arial,Tahoma,sans-serif!important;
 font-size:max(17px,.87em)!important;line-height:1.5!important;
 min-height:44px!important;
}
body.raduga-vision :is(button,[role=button],input,select,textarea){
 font-family:Arial,Tahoma,sans-serif!important;
 font-size:max(17px,.92em)!important;
 color:var(--rv-ink)!important;
 background:var(--rv-bg)!important;
 border:2px solid var(--rv-edge)!important;border-radius:8px!important;
 box-shadow:none!important;
}
body.raduga-vision :is(img,video,iframe){filter:none!important;opacity:1!important}
body.raduga-vision :is(.approved-hero-scene,.raduga-hero-overlay,
 .raduga-directions::before,.news-tile::before,.news-tile::after,
 .rd-important-safety-link::before,.rd-important-safety-link::after,
 .rd-safety-scene,.rd-edu-lead-decoration,.raduga-link-card::before){
 background:none!important;box-shadow:none!important;opacity:0!important;
}
body.raduga-vision .preview-ribbon{
 background:#121212!important;color:#fff!important;
}
body.raduga-vision :is(.news-grid,.rd-important-safety-grid,.raduga-direction-grid,
  .rd-important-other-grid,.raduga-resource-grid,.raduga-link-grid,.ri-list,
  .rd-team-grid,.rd-edu-program-grid,.rd-photo-grid){
 gap:17px!important;
}
body.raduga-vision .raduga-access-btn[aria-pressed=true]{
 background:#111!important;color:#fff!important;border-color:#111!important;
}
body.raduga-vision .raduga-access-btn[aria-pressed=true] span{color:#fff!important}
body.raduga-vision .rd-vision-panel{
 --rv-bg:#fff;--rv-ink:#101010;--rv-edge:#111;
}
/* Dark contrast: no dim low-contrast pastel cards, only black / near-white / gold. */
body.raduga-vision.rv-dark{--rv-bg:#080808;--rv-ink:#fff;--rv-link:#ffe65c;--rv-edge:#ececec;background:#080808!important;color:#fff!important;}
body.raduga-vision.rv-dark :is(main,header,footer,nav,aside,section,article,
 .approved-header,.approved-nav,.approved-menu,.approved-hero,.approved-copy,
 .ri-inner,.ri-article,.ri-legal-page,.rd-legal-heading,.rd-legal-sidebar,
 .rd-index-card,.rd-teacher-card,.rd-team-intro,.rd-team-stats>div,
 .news-tile,.news-tile-body,.rd-important-safety-link,.raduga-direction-card,
 .raduga-link-card,.raduga-social-card,.raduga-contact-card,.rd-edu-program-card,
 .rd-edu-document,.rd-edu-doc-group,.rd-edu-group-heading,.rd-safety-card,
 .rd-legal-documents,.rd-rainbow-news,.rd-related-card,.rd-gallery-photo,
 .rd-featured-photo,.raduga-govbar,.raduga-cookie,.rd-news-all-cta){
 background:#080808!important;background-image:none!important;color:#fff!important;
 border-color:#ddd!important;box-shadow:none!important;
}
body.raduga-vision.rv-dark :is(h1,h2,h3,h4,h5,h6,p,li,small,strong,em,b,span,time,label,
 figcaption,summary,td,th,.ri-muted,.eyebrow,.rd-important-index,
 .news-tile-body>small,.rd-teacher-field,.rd-edu-field,
 .raduga-direction-card strong,.raduga-direction-card small,
 .rd-important-safety-label strong,.rd-important-safety-label small){
 color:#fff!important;
}
body.raduga-vision.rv-dark :is(button,[role=button],input,select,textarea){
 background:#080808!important;color:#fff!important;border-color:#fff!important;
}
body.raduga-vision.rv-dark .raduga-access-btn[aria-pressed=true]{background:#fff!important;color:#111!important}
body.raduga-vision.rv-dark .raduga-access-btn[aria-pressed=true] span{color:#111!important}
/* Fixed accessible settings dock, only rendered for visual mode. */
.rd-vision-panel{
 position:fixed;z-index:90;right:14px;bottom:84px;width:min(378px,calc(100vw - 28px));
 padding:18px;border:2px solid #111;border-radius:18px;
 background:#fff!important;color:#111!important;
 box-shadow:0 10px 45px #061b3c33!important;
 font-family:Arial,Tahoma,sans-serif!important
}
.rd-vision-panel[hidden]{display:none!important}
.rd-vision-panel *{box-sizing:border-box}
.rd-vision-panel-title{font:bold 20px/1.4 Arial,sans-serif!important;color:#111!important;margin:0 0 12px!important}
.rd-vision-panel-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rd-vision-panel-actions button{
 background:#fff!important;color:#111!important;
 border:2px solid #111!important;box-shadow:none!important;
 padding:10px 12px!important;border-radius:9px!important;
 font:bold 17px/1.2 Arial,sans-serif!important;min-height:44px;flex:1 1 90px
}
.rd-vision-panel-actions button[aria-pressed=true]{background:#101010!important;color:#fff!important}
.rd-vision-panel-actions button:focus-visible{outline:3px solid #ef9d00!important;outline-offset:3px}
.rd-vision-panel-hint{display:block;margin:12px 0 0!important;font:15px/1.5 Arial,sans-serif!important;color:#333!important}
body.rv-dark .rd-vision-panel{background:#080808!important;color:#fff!important;border-color:#fff!important}
body.rv-dark .rd-vision-panel-title,body.rv-dark .rd-vision-panel-hint{color:#fff!important}
body.rv-dark .rd-vision-panel-actions button{background:#080808!important;color:#fff!important;border-color:#fff!important}
body.rv-dark .rd-vision-panel-actions button[aria-pressed=true]{background:#fff!important;color:#111!important}
@media(max-width:750px){
 body.raduga-vision :is(.news-grid,.rd-important-safety-grid,.raduga-direction-grid,
 .rd-important-other-grid,.raduga-link-grid,.rd-team-grid,.rd-edu-program-grid){grid-template-columns:1fr!important}
 body.raduga-vision :is(.approved-menu,.raduga-govbar,.raduga-link-card,
 .news-tile,.rd-edu-program-card){max-width:100%!important}
 .rd-vision-panel{bottom:70px;padding:15px;right:10px;width:min(375px,calc(100vw - 20px))}
}
@media(prefers-reduced-motion:reduce){.rd-vision-panel *{transition:none!important}}

/* Strong specificity for nested links, which otherwise inherited the old blue theme. */
body.raduga-vision.rv-dark :is(a,a:link,a:visited,a:hover),
body.raduga-vision.rv-dark :is(a,a:link,a:visited,a:hover) :is(span,strong,small,b,em),
body.raduga-vision.rv-dark :is(.approved-menu a,.approved-family,
  .news-tile-body h3 a,.rd-news-all-button,.rd-edu-document-text a,
  .raduga-link-card a,.rd-important-safety-link,.raduga-direction-card,
  .rd-safety-primary-link,.rd-related-card a,.ri-list>a){
 color:#ffe65c!important;text-decoration:underline!important;text-underline-offset:4px!important;
}
body.raduga-vision.rv-dark :is(.approved-menu a.current,.approved-menu a[aria-current="page"]){
 background:#fff!important;color:#111!important;
}
body.raduga-vision.rv-dark :is(.approved-menu a.current,.approved-menu a[aria-current="page"]) *{color:#111!important}
body.raduga-vision.rv-dark .approved-family{
 border:2px solid #ffe65c!important;background:#080808!important;
}
body.raduga-vision.rv-dark :is(.raduga-gov-toggle,.raduga-gov-activate,
 .rd-news-all-button,button,summary,[role=button]){opacity:1!important;color:#ffe65c!important}
body.raduga-vision.rv-dark .rd-vision-panel-actions button[aria-pressed="true"]{
 color:#111!important;background:#fff!important;
}
body.raduga-vision.rv-dark .rd-vision-panel-actions button:disabled{
 opacity:.7!important;color:#bbb!important;
}
body.raduga-vision .rd-vision-panel-actions button:disabled{cursor:not-allowed;opacity:.65!important}
body.raduga-vision.rv-dark .rd-vision-panel-actions button[aria-pressed="true"]{color:#111!important}
/* An important plain-text annotation is not a navigable control. */
body.raduga-vision.rv-dark .raduga-govbar span,
body.raduga-vision.rv-dark .raduga-govbar strong{color:#fff!important}

/* Explicit ID selectors trump older navigation/link themes in both contrast modes. */
body.raduga-vision.rv-dark #siteNav a[href],
body.raduga-vision.rv-dark #main a[href],
body.raduga-vision.rv-dark #news a[href],
body.raduga-vision.rv-dark #directions a[href],
body.raduga-vision.rv-dark .ri-inner a[href],
body.raduga-vision.rv-dark .raduga-govbar a[href],
body.raduga-vision.rv-dark .raduga-subfooter-links a[href]{
 color:#ffe65c!important;text-decoration:underline!important;text-underline-offset:4px!important
}
body.raduga-vision.rv-dark #siteNav a[aria-current="page"],
body.raduga-vision.rv-dark #siteNav a.current{color:#111!important}
body.raduga-vision.rv-dark #main a[href] :is(span,strong,b,em,small),
body.raduga-vision.rv-dark #news a[href] :is(span,strong,b,em,small),
body.raduga-vision.rv-dark #directions a[href] :is(span,strong,b,em,small),
body.raduga-vision.rv-dark .ri-inner a[href] :is(span,strong,b,em,small) {
 color:#ffe65c!important
}
body.raduga-vision #main :is(img,video),
body.raduga-vision .ri-inner :is(img,video){max-width:100%;height:auto}
body.raduga-vision :is(.rd-news-all-button,.raduga-access-btn,
  .approved-family,.raduga-gov-activate,.raduga-gov-toggle){
  border-radius:11px!important;border:2px solid currentColor!important
}
body.raduga-vision a,
body.raduga-vision a *,
body.raduga-vision button,
body.raduga-vision input,
body.raduga-vision summary {
 transition:none!important;
 animation:none!important;
}
