/*
Theme Name: RDA Theme
Description: Accessible block theme for the official RDA website.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: rda-theme
*/

@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 300; src: url("assets/fonts/e-Ukraine-Light.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 400; src: url("assets/fonts/e-Ukraine-Regular.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 500; src: url("assets/fonts/e-Ukraine-Medium.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 700; src: url("assets/fonts/e-Ukraine-Bold.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine Head"; font-style: normal; font-weight: 400; src: url("assets/fonts/e-UkraineHead-Regular.otf") format("opentype"); }

:root { --rda-focus: #0057b8; --rda-touch-target: 2.75rem; }
html { scroll-behavior: smooth; }
body { min-width: 20rem; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
a { text-decoration-thickness: .08em; text-underline-offset: .18em; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: .1875rem solid var(--rda-focus); outline-offset: .1875rem; }
.screen-reader-text { border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; }
#wp-skip-link { background: #000; color: #fff; left: .75rem; padding: .75rem 1rem; position: fixed; text-decoration: none; top: .75rem; transform: translateY(-200%); z-index: 1000; }
#wp-skip-link:focus { transform: translateY(0); }
#main-content:focus { outline: none; }

/* Header: utility, brand, navigation. */
.rda-site-header { background: linear-gradient(105deg, #a9e2dc 0%, #d8f5f0 50%, #bcece5 100%); color: #000; position: relative; }
.wp-site-blocks { padding-inline: 0 !important; }
.rda-header-container { box-sizing: border-box; margin-inline: auto; max-width: none; padding-inline: clamp(1rem, 5vw, 7rem); width: 100%; }
.rda-state-band { display: flex; height: .25rem; }
.rda-state-band span:first-child { background: #0057b8; flex: 1; }
.rda-state-band span:last-child { background: #ffb800; flex: 1; }
.rda-header-utility { background: transparent; border: 0; }
.rda-header-utility__inner { align-items: center; display: grid; gap: .25rem .75rem; grid-template-columns: 1fr auto; min-height: 2.75rem; padding-block: 0; }
.rda-header-utility__actions { align-items: center; display: contents; }
.rda-diia-link, .rda-accessibility-link { align-items: center; display: inline-flex; font-size: .8125rem; gap: .35rem; min-height: var(--rda-touch-target); text-decoration: none; }
.rda-diia-link { font-weight: 500; }
.rda-diia-link::before { background: #000; border-radius: .75rem; color: #fff; content: "Дія"; font-size: .8125rem; line-height: 1; padding: .6rem .7rem; }
.rda-diia-link { font-size: 0; }
.rda-accessibility-link { justify-self: end; }
.rda-search { grid-column: 1 / -1; max-width: 24rem; }
.rda-search .wp-block-search__inside-wrapper { border: 0; box-sizing: border-box; height: 2.75rem; }
.rda-search .wp-block-search__input { border: 0; box-sizing: border-box; min-height: 0; padding-inline: .75rem; }
.rda-search .wp-block-search__button { background: #000; border: 0; border-radius: .75rem; box-sizing: border-box; color: #fff; margin: 0; min-height: 0; padding: 0 .75rem; }
.rda-brand-row { height: 7.75rem; }
.rda-brand-row .rda-header-container { align-items: center; display: flex; height: 7.75rem; }
.rda-brand { align-items: center; color: #000; display: inline-flex; gap: 1.25rem; text-decoration: none; }
.rda-brand__emblem { display: block; flex: 0 0 auto; height: 56px; max-width: 100%; object-fit: contain; width: 44px; }
.rda-brand__text { display: grid; gap: .2rem; }
.rda-brand__name { font-family: "e-Ukraine Head", "e-Ukraine", system-ui, sans-serif; font-size: clamp(1.5rem, 2.4vw, 2.25rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.04; }
.rda-navigation-row { border: 0; }
.rda-primary-navigation { margin-block: 0 !important; min-height: 3.25rem; padding-block: 0; }
.rda-primary-navigation .wp-block-navigation__container { min-height: 3.25rem; }
.rda-primary-navigation .wp-block-navigation-item__content { align-items: center; box-sizing: border-box; display: inline-flex; font-size: .9375rem; min-height: 3.25rem; padding-inline: .7rem; text-decoration: none; }
.rda-primary-navigation .wp-block-navigation-item__content:hover { background: rgba(255, 255, 255, .35); color: #000; }
.rda-primary-navigation .current-menu-item > .wp-block-navigation-item__content, .rda-primary-navigation .current-menu-item > .wp-block-navigation-item__content:hover { border-bottom: .1875rem solid #0057b8; }
.wp-block-navigation__responsive-container.is-menu-open { background: #d8f5f0; color: #000; padding: 1.25rem; }

@media (min-width: 48rem) {
  .rda-header-utility { left: 0; position: absolute; right: 0; top: .25rem; z-index: 2; }
  .rda-header-utility__inner { display: flex; gap: 1.25rem; justify-content: flex-end; min-height: 0; padding-top: 1.25rem; }
  .rda-header-utility__actions { align-items: center; display: flex; gap: 1.25rem; }
  .rda-diia-link { order: 2; }
  .rda-search { max-width: 10rem; order: -1; }
  .rda-search .wp-block-search__inside-wrapper { background: transparent; }
  .rda-search .wp-block-search__input { background: transparent; font-size: .9375rem; min-width: 0; }
  .rda-accessibility-link { order: 1; white-space: nowrap; }
  .rda-accessibility-link::before { content: "◉"; font-size: 1rem; }
  .rda-brand-row, .rda-brand-row .rda-header-container { height: 7.75rem; }
  .rda-brand__text { max-width: min(44vw, 42rem); }
}

@media (max-width: 47.999rem) {
  .rda-brand-row, .rda-brand-row .rda-header-container { height: 5.5rem; }
  .rda-brand__emblem { height: 46px; width: 36px; }
}

/* Breadcrumbs. */
.rda-breadcrumbs { box-sizing: border-box; margin: 0 auto; max-width: none; padding: .625rem clamp(1rem, 5vw, 7rem); width: 100%; }
.rda-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .35rem; list-style: none; margin: 0; padding: 0; }
.rda-breadcrumbs li { color: #5e646a; font-size: .8125rem; }
.rda-breadcrumbs li + li::before { color: #5e646a; content: "/"; margin-right: .35rem; }
.rda-breadcrumbs [aria-current="page"] { color: #000; }

/* Homepage. */
.wp-site-blocks > main { box-sizing: border-box; max-width: none !important; padding-inline: clamp(1rem, 5vw, 7rem); width: 100%; }
.wp-site-blocks > main.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width: none !important; }
.rda-home, .rda-page { padding-block: 1rem 0; }
.rda-home { max-width: none !important; width: 100%; }
.rda-home > .wp-block-group, .rda-home > .rda-home-editorial { box-sizing: border-box; max-width: none !important; width: 100%; }
.rda-home-introduction { background: #e7eef3; border-left: .375rem solid #ffb800; padding-block: 2.5rem; }
.rda-eyebrow { font-size: .8125rem; letter-spacing: .06em; margin: 0 0 .75rem; text-transform: uppercase; }
.rda-home-introduction .wp-block-heading { max-width: 18ch; }
.rda-home-introduction .has-large-font-size { font-size: 1.125rem !important; line-height: 1.5; margin-bottom: 0; max-width: 52ch; }
.rda-home-section, .rda-home-next-step { padding-block: 2.5rem; }
.rda-section-heading { align-items: baseline; border-bottom: 1px solid #000; gap: .75rem; padding-bottom: .75rem; }
.rda-section-heading h2, .rda-section-heading p { margin: 0; }
.rda-section-heading p a { align-items: center; display: inline-flex; font-size: .8125rem; min-height: var(--rda-touch-target); }
.rda-quick-links { border-block: 1px solid #b8c2cc; }
.rda-quick-links-navigation { counter-reset: service; margin-top: 1rem; }
.rda-quick-links-navigation .wp-block-navigation__container { display: grid; gap: .75rem; width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item { counter-increment: service; width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item__content { align-items: center; background: #f2f2f2; border: 1px solid #b8c2cc; display: flex; font-size: 1.125rem; justify-content: space-between; min-height: 5.5rem; padding: 1rem; text-decoration: none; width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item__content::before { color: #5e646a; content: "0" counter(service); font-size: .8125rem; margin-right: .75rem; }
.rda-quick-links-navigation .wp-block-navigation-item__content::after { content: "→"; font-size: 1.5rem; margin-left: auto; }
.rda-quick-links-navigation .wp-block-navigation-item__content:hover { background: #e7eef3; border-color: #000; }
.rda-home-editorial { display: grid; gap: 1.5rem; }
.rda-editorial-section { min-width: 0; }
.rda-content-list .wp-block-post-template { display: grid; gap: 0; margin: 0; }
.rda-list-item { border-bottom: 1px solid #b8c2cc; padding: 1rem 0; }
.rda-list-item > * { margin-block: 0; }
.rda-list-item > * + * { margin-top: .35rem; }
.rda-list-item .wp-block-post-title { font-size: 1.25rem; line-height: 1.25; }
.rda-entry-date { color: #5e646a; font-size: .8125rem; }
.rda-home-editorial .rda-editorial-section:first-child .rda-list-item:first-child { background: #e7eef3; border-top: .25rem solid #ffb800; margin-top: 1rem; padding: 1.25rem; }
.rda-home-editorial .rda-editorial-section:first-child .rda-list-item:first-child .wp-block-post-title { font-size: 1.5rem; }
.rda-home-editorial .rda-editorial-section:last-child { background: transparent; border: 0; color: #000; padding-block: 2.5rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-section-heading { border-color: #000; }
.rda-home-editorial .rda-editorial-section:last-child a { color: #000; }
.rda-home-editorial .rda-editorial-section:last-child .wp-block-post-template { gap: .75rem; margin-top: 1rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-list-item { background: #eaf7f5; border-bottom: 1px solid #b7d8d3; border-top: .375rem solid #71bcb2; padding: 1.25rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-entry-date { color: #496865; }
.rda-home-empty-state { background: #f2f2f2; margin: 1rem 0 0; padding: 1rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-home-empty-state { background: #eaf7f5; color: #000; }
.rda-document-entry { background: #e7eef3; border-left: .375rem solid #0057b8; margin-top: 2.5rem; padding: 1.5rem; }
.rda-document-entry > :last-child, .rda-home-next-step > :last-child { margin-bottom: 0; }
.rda-home-next-step { border-top: 1px solid #b8c2cc; padding-bottom: 2.5rem; }
.rda-page { max-width: none; padding-bottom: 3rem; }
.rda-page > .wp-block-post-title { margin-bottom: 1.5rem; }
.rda-page .wp-block-post-content > :first-child { margin-top: 0; }
.rda-not-found .wp-block-search { max-width: 28rem; }

/* Shared archive and single presentation. */
.rda-news-archive, .rda-announcement-archive, .rda-document-archive, .rda-department-archive, .rda-official-archive, .rda-single-news, .rda-single-announcement, .rda-single-document, .rda-single-department, .rda-single-official { padding-block: 1.5rem 0; }
.rda-back-link { font-size: .8125rem; margin: 0 0 1rem; }
.rda-news-list, .rda-announcement-list, .rda-document-list, .rda-department-list, .rda-official-list { margin-top: 1.5rem; }
.rda-news-list .wp-block-post-template, .rda-announcement-list .wp-block-post-template, .rda-document-list .wp-block-post-template, .rda-department-list .wp-block-post-template, .rda-official-list .wp-block-post-template { display: grid; gap: 0; margin: 0; }
.rda-news-list-item, .rda-announcement-list-item, .rda-document-list-item, .rda-department-list-item, .rda-official-list-item { border-top: 1px solid #b8c2cc; padding-block: 1.25rem; }
.rda-news-list-item > *, .rda-announcement-list-item > *, .rda-document-list-item > *, .rda-department-list-item > *, .rda-official-list-item > * { margin-block: 0; }
.rda-news-list-item > * + *, .rda-announcement-list-item > * + *, .rda-document-list-item > * + *, .rda-department-list-item > * + *, .rda-official-list-item > * + * { margin-top: .65rem; }
.rda-news-list-item .wp-block-post-title, .rda-announcement-list-item .wp-block-post-title, .rda-document-list-item .wp-block-post-title, .rda-department-list-item .wp-block-post-title, .rda-official-list-item .wp-block-post-title { font-size: clamp(1.25rem, 2.5vw, 1.75rem); line-height: 1.2; }
.rda-news-list .wp-block-query-pagination, .rda-announcement-list .wp-block-query-pagination, .rda-document-list .wp-block-query-pagination, .rda-department-list .wp-block-query-pagination, .rda-official-list .wp-block-query-pagination { border-top: 1px solid #b8c2cc; gap: .75rem; padding-top: 1rem; }
.rda-document-filters { background: #f2f2f2; margin-block: 1.5rem; padding: 0; }
.rda-document-filters > summary { align-items: center; cursor: pointer; display: flex; font-size: 1.125rem; font-weight: 700; gap: .75rem; list-style: none; min-height: var(--rda-touch-target); padding: 1rem; }
.rda-document-filters > summary::-webkit-details-marker { display: none; }
.rda-document-filters > summary::after { content: "⌄"; font-size: 1.25rem; line-height: 1; margin-left: auto; transition: transform .15s ease; }
.rda-document-filters[open] > summary { border-bottom: 1px solid #b8c2cc; }
.rda-document-filters[open] > summary::after { transform: rotate(180deg); }
.rda-document-filters > form { padding: 1rem 1.25rem 1.25rem; }
.rda-document-filters fieldset { border: 0; margin: 0; padding: 0; }
.rda-document-filters legend, .rda-document-filters label { font-weight: 500; }
.rda-document-filters__grid { column-gap: .75rem; display: grid; row-gap: 1rem; }
.rda-document-filters__grid > p { margin: 0; }
.rda-document-filters input, .rda-document-filters select { background: #fff; border: 1px solid #7d858c; box-sizing: border-box; font: inherit; height: var(--rda-touch-target); line-height: 1.25; padding-inline: .75rem; width: 100%; }
.rda-document-filters select { -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E"); background-position: right .875rem center; background-repeat: no-repeat; background-size: .875rem; height: 3rem !important; min-height: 3rem !important; padding-right: 2.75rem !important; }
.rda-document-filters button { appearance: none; background: #000; border: 1px solid #000; border-radius: 0; box-sizing: border-box; color: #fff; font: inherit; font-weight: 500; height: 3rem !important; line-height: 1.25; min-height: 3rem !important; padding-inline: 1rem; }
.rda-document-filters button:hover { background: #0057b8; border-color: #0057b8; }
.rda-document-filters .rda-date-format { color: #5e646a; display: block; font-size: .75rem; margin-top: .35rem; }
.rda-document-filters__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem !important; }
.rda-document-meta, .rda-department-contacts, .rda-official-meta { border-left: .25rem solid #ffb800; display: grid; gap: .65rem; margin: 1.25rem 0; padding-left: 1rem; }
.rda-document-meta__item, .rda-department-contacts__item, .rda-official-meta__item { display: grid; gap: .125rem; }
.rda-document-meta dt, .rda-department-contacts dt, .rda-official-meta dt { color: #5e646a; font-size: .8125rem; }
.rda-document-meta dd, .rda-department-contacts dd, .rda-official-meta dd { margin: 0; }
.rda-document-article, .rda-department-article, .rda-official-article, .rda-news-article, .rda-announcement-article { padding-bottom: 3rem; }
.rda-news-featured-image img, .rda-announcement-featured-image img, .rda-official-featured-image img { height: auto; max-width: 100%; }
.rda-document-terms, .rda-official-terms, .rda-document-file, .rda-department-short-name, .rda-official-summary { margin-block: .75rem; }

.rda-site-footer { background: #000; color: #fff; margin-top: 4rem; }
.rda-site-footer a { color: #fff; }
.rda-footer-inner { display: grid; gap: 2rem; margin-inline: auto; max-width: none; padding: 2.5rem clamp(1rem, 5vw, 7rem) 1.5rem; }
.rda-footer-inner p { margin: 0; }
.rda-footer-heading { font-size: .8125rem; margin-bottom: .75rem !important; }
.rda-footer-brand__link { align-items: flex-start; display: flex; font-size: .9375rem; gap: .75rem; line-height: 1.35; text-decoration: none; }
.rda-footer-brand__link img { border: 2px solid currentColor; border-radius: .75rem; box-sizing: content-box; filter: invert(1); height: 2.875rem; object-fit: contain; padding: .35rem; width: 2.25rem; }
.rda-footer-brand__link small { color: #aeb7bd; display: block; font-size: .75rem; margin-top: .35rem; }
.rda-footer-brand > p { font-size: .8125rem; margin-top: 1.5rem; }
.rda-footer-nav nav { display: grid; gap: .5rem; }
.rda-footer-nav a { font-size: .875rem; text-decoration-thickness: .06em; }
.rda-footer-accessibility { color: #d6dfe3; font-size: .8125rem; max-width: 24rem; }
.rda-footer-legal { border-top: 1px solid #3a4348; color: #aeb7bd; font-size: .6875rem; grid-column: 1 / -1; padding-top: 1rem; }

@media (min-width: 48rem) {
  .rda-header-container, .rda-breadcrumbs { padding-inline: 1.5rem; }
  .rda-header-utility__inner { grid-template-columns: 1fr auto; }
  .rda-header-utility__actions { align-items: center; display: flex; gap: 1rem; }
  .rda-search { grid-column: auto; max-width: 17.5rem; }
  .rda-quick-links-navigation .wp-block-navigation__container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rda-home-editorial { grid-template-columns: minmax(0, 1.3fr) minmax(18rem, .9fr); }
  .rda-home-editorial > .rda-editorial-section { align-self: start; }
  .rda-home-editorial .rda-section-heading { align-items: flex-start; flex-direction: column; gap: .5rem; justify-content: flex-start; min-height: 0; }
  .rda-home-editorial .rda-section-heading h2 { font-size: clamp(2.5rem, 4.25vw, 4.5rem); line-height: 1; }
  .rda-home-editorial .rda-list-item { box-sizing: border-box; height: auto; min-height: 0; padding: 1.25rem 1.25rem .75rem; }
  .rda-home-editorial .rda-editorial-section:first-child .rda-list-item:first-child,
  .rda-home-editorial .rda-editorial-section:last-child .rda-list-item { padding: 1.25rem 1.25rem .75rem; }
  .rda-document-filters__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rda-footer-inner { grid-template-columns: minmax(16rem, 1.4fr) minmax(12rem, .8fr) minmax(14rem, .8fr); padding-block: 2.75rem 1.5rem; }
}
@media (min-width: 64rem) { .rda-quick-links-navigation .wp-block-navigation__container { grid-template-columns: repeat(3, minmax(0, 1fr)); } .rda-home { padding-top: 1.5rem; } .rda-home-introduction { padding: 2.5rem; } .rda-home-section, .rda-home-next-step { padding-block: 3rem; } .rda-home-editorial .rda-editorial-section:last-child { padding-block: 3rem; } }
