/* WordPress-only rules: core classes and block-editor content. Tokens only, no colour literals. */

/* Core accessibility class. */
.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  clip: auto; width: auto; height: auto; margin: 0; padding: var(--space-3) var(--space-4);
  background: var(--c-paper); color: var(--c-ink); z-index: 100000;
}

/* Editor content inside .prose. */
.prose .alignleft { float: left; margin: 0.25rem var(--space-6) var(--space-4) 0; max-width: 50%; }
.prose .alignright { float: right; margin: 0.25rem 0 var(--space-4) var(--space-6); max-width: 50%; }
.prose .aligncenter { margin-inline: auto; }
.prose .alignwide, .prose .alignfull { max-width: none; }
.prose::after { content: ""; display: table; clear: both; }
.prose img { height: auto; border-radius: var(--radius-sm); }
.prose figure { margin-block: var(--space-6); }
.prose figcaption, .wp-caption-text, .wp-element-caption { margin-top: var(--space-2); font-size: var(--fs-sm); color: var(--muted); }
.prose .wp-block-embed__wrapper { position: relative; aspect-ratio: 16 / 9; }
.prose .wp-block-embed__wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.prose .wp-block-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); gap: var(--space-3); }
.prose .wp-block-button__link { display: inline-flex; padding: var(--space-3) var(--space-6); border-radius: var(--radius-sm); background: var(--btn-bg); color: var(--btn-fg); text-decoration: none; font-weight: 600; }
.prose table { width: 100%; border-collapse: collapse; }
.prose th, .prose td { padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--line); text-align: left; }
@media (max-width: 40rem) {
  .prose .alignleft, .prose .alignright { float: none; max-width: 100%; margin-inline: 0; }
}

/* Core pagination ellipsis. */
.pagination .dots { border-color: transparent; }

/* Admin bar offset for the fixed floating header (1.25rem inset under the bar). */
.admin-bar .site-header { top: calc(var(--wp-admin--admin-bar--height, 0px) + 1.25rem); }

/* Programme category chips are links in WordPress (filter without JavaScript). */
a.chip { display: inline-flex; align-items: center; text-decoration: none; }
.chip[aria-current="page"] { background: var(--c-primary); border-color: var(--c-primary); color: var(--on-dark); }

/* Donasi page: the "programmes you support" list comes from the page editor. */
.donasi-content ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.6rem; }
@media (min-width: 48rem) { .donasi-content ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.donasi-content li { display: flex; gap: 0.6rem; align-items: baseline; font: 600 1rem/1.4 var(--font-display); color: var(--c-ink); }
.donasi-content li::before { content: ""; flex-shrink: 0; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--c-secondary); translate: 0 -0.1rem; }

/* Agenda timeline titles link to their programme or agenda post. */
.timeline__title a { color: inherit; text-decoration: none; }
.timeline__title a:hover { text-decoration: underline; }
.month-list h3 a { color: inherit; text-decoration: none; }

/* Editor content in the history column (Tentang). */
.prose .wp-block-heading { color: var(--c-primary); }

/* Photo gallery inside articles (Kabar detail): two columns of tall photos, as in the design. */
.prose .wp-block-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.prose .wp-block-gallery .wp-block-image { margin: 0; }
.prose .wp-block-gallery img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 1rem; }
.prose .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { width: auto; margin: 0; }

/* Kabar detail: gallery captions and share row */
.prose .wp-block-gallery figcaption { margin-top: 0.4rem; font-size: 0.8125rem; color: var(--muted); }
.kabar-article .figure-wide { margin-top: 0; }
.share { display: grid; gap: 0.75rem; margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.share__title { margin: 0; font: 600 1rem/1.3 var(--font-display); color: var(--c-ink); }
.share .copy-status:empty { display: none; }

/* Kontak: "Gabung & daftar" link list and the map */
.link-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
@media (min-width: 48rem) { .link-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.link-list__item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: 1rem 1.25rem; border: 1px solid var(--line); border-radius: 1.25rem; background: var(--c-surface); color: inherit; text-decoration: none; transition: border-color .2s ease, background-color .2s ease; }
.link-list__item:hover { border-color: var(--c-secondary); }
.link-list__text { display: grid; gap: 0.15rem; }
.link-list__title { font: 700 1rem/1.3 var(--font-display); color: var(--c-ink); }
.link-list__note { font-size: 0.875rem; color: var(--muted); }
.link-list__go svg { width: 1.1rem; height: 1.1rem; color: var(--c-accent); }
.map { border-radius: 1.25rem; overflow: hidden; border: 1px solid var(--line); background: var(--c-surface); }
.map iframe { display: block; width: 100%; height: 26rem; border: 0; }
@media (max-width: 47.99rem) { .map iframe { height: 18rem; } }
