/* Regionite редизайн - детайли извън обхвата на Tailwind utilities */

html { scroll-padding-top: 7rem; }
body { background: #fdfdfc; }

.rg-skip-link {
    position: fixed;
    top: .75rem;
    left: .75rem;
    z-index: 1000;
    padding: .75rem 1rem;
    background: #111;
    color: #fff;
    font-weight: 700;
    transform: translateY(-180%);
    transition: transform 160ms ease-out;
}
.rg-skip-link:focus { transform: translateY(0); }

:where(a, button, input, textarea, select, summary):focus-visible {
    outline: 2px solid #b91c1c;
    outline-offset: 3px;
}

.rg-icon-button { min-width: 44px; min-height: 44px; }
.rg-social-button {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
}
.rg-form-control {
    width: 100%;
    border: 1px solid #d4d4d4;
    background: #fdfdfc;
    color: #111;
    border-radius: 0;
    padding: .75rem .875rem;
}
.rg-form-control:focus { border-color: #b91c1c; }
.rg-field-help { color: #737373; font-size: .8125rem; line-height: 1.45; }
.rg-alert { border: 1px solid #d4d4d4; padding: 1rem; }
.rg-alert-success { border-color: #86a78c; background: #f3f8f4; color: #254b2b; }
.rg-alert-error { border-color: #d9a0a0; background: #fff5f5; color: #7f1d1d; }

/* Тяло на статия (HTML идва готов от getCachedArticleDescription) */
.article-body { font-family: 'Literata', Georgia, serif; font-size: 1.125rem; line-height: 1.75; color: #1f1f1f; max-width: 70rem; }
@media (min-width: 1280px) { .article-body { font-size: 1.1875rem; line-height: 1.8; } }
.article-body p { margin-bottom: 1.25rem; }
.article-body h2, .article-body h3 { font-family: 'Literata', Georgia, serif; font-weight: 700; color: #111; margin: 2rem 0 .75rem; }
.article-body h2 { font-size: 1.5rem; } .article-body h3 { font-size: 1.25rem; }
.article-body a { color: #b91c1c; text-decoration: underline; text-underline-offset: 2px; }
.article-body img { border-radius: 4px; }
.article-body .image-container { margin: 1.5rem 0; }
.article-body figure { margin: 1.5rem 0; }
/* Надпис под снимка: figcaption (от WordPress тялото) + .image-caption span (от alt) */
.article-body figcaption,
.article-body .image-caption {
    display: block;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .8125rem;
    line-height: 1.45;
    color: #888;
    text-align: center;
    font-style: normal;
    margin-top: .5rem;
}
.article-body figcaption a { color: #888; }
/* WordPress галерии в тялото: без bullets, подредени в решетка */
.article-body ul.wp-block-gallery,
.article-body ul.blocks-gallery-grid {
    list-style: none;
    margin: 1.5rem 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .75rem;
}
.article-body ul.wp-block-gallery.columns-1 { grid-template-columns: 1fr; }
.article-body ul.wp-block-gallery.columns-3 { grid-template-columns: repeat(3, 1fr); }
.article-body ul.wp-block-gallery > li,
.article-body ul.blocks-gallery-grid > li { list-style: none; margin: 0; }
.article-body ul.wp-block-gallery figure { margin: 0; }
@media (max-width: 640px) {
    .article-body ul.wp-block-gallery,
    .article-body ul.blocks-gallery-grid { grid-template-columns: 1fr; }
}
.article-body blockquote { border-left: 3px solid #b91c1c; padding-left: 1.25rem; font-style: italic; color: #555; margin: 1.5rem 0; }
.article-body iframe { max-width: 100%; }
.article-body ul, .article-body ol { margin: 0 0 1.25rem 1.5rem; }
.article-body ul { list-style: disc; } .article-body ol { list-style: decimal; }
.article-body { overflow-wrap: anywhere; }
.article-body p { text-wrap: pretty; }
.article-body img { width: 100%; height: auto; }

/* Пулсиращ "НА ЖИВО" индикатор */
@keyframes rg-pulse { 0%,100% { opacity: 1; } 50% { opacity: .35; } }
.rg-live-dot { animation: rg-pulse 1.6s ease-in-out infinite; }
/* Мигащ маркер за секционни заглавия „Последни" и „Акценти" (reduced-motion се спазва глобално) */
.rg-blink-marker { animation: rg-pulse 1.6s ease-in-out infinite; }

/* Хедър сянка при скрол (клас се слага от JS в header.php) */
.rg-header-stuck { box-shadow: 0 1px 0 #e5e5e5, 0 4px 16px rgba(0,0,0,.04); }

/* Range слайдер за радиото */
.rg-volume { accent-color: #b91c1c; }

/* Изрязване на текст */
.rg-clamp-2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.rg-clamp-3 { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

@media (pointer: coarse) {
    button, input[type="range"], summary { min-height: 44px; }
}

@media (max-width: 640px) {
    .rg-social-button {
        width: 36px;
        height: 36px;
        min-width: 36px;
        min-height: 36px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto !important; }
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
