/* Spolek 0.9.149 · audit UX/readability fixes */
.legacy-document-link {
    margin: 1rem 0;
    padding: .8rem .95rem;
    border: 1px solid rgba(8, 113, 72, .18);
    border-radius: .75rem;
    background: rgba(8, 113, 72, .055);
}
.legacy-document-link a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    font-weight: 700;
    color: #087148;
    text-decoration-thickness: .08em;
    text-underline-offset: .16em;
}
.legacy-document-link--missing {
    color: #6b7280;
    border-color: rgba(107, 114, 128, .22);
    background: rgba(107, 114, 128, .06);
}

@media (max-width: 960px) {
    /* Kompaktní neznamená miniaturní: funkční texty držíme čitelné. */
    main small,
    footer small,
    .mobile-nav-drawer small,
    .home-hero-date__month,
    .home-hero-date__year,
    .home-date-badge__month,
    .home-date-badge__year,
    .archive-kicker,
    .home-section-kicker,
    .home-panel__eyebrow,
    .event-date span,
    .date-tile small,
    .minute-date small,
    .minute-detail__meta small,
    .organisation-item__content small,
    .contact-channel__content small,
    .contact-action small,
    .reservation-today small,
    .reservation-month small,
    .reservation-day span {
        font-size: 11.5px !important;
        line-height: 1.25 !important;
    }

    .card-link,
    .gallery-clear-filter,
    .gallery-results-count,
    .gallery-active-filters a,
    .document-card__action,
    .about-document-link__button,
    .person-card__contacts a,
    .contact-action strong,
    .home-news__heading > a,
    .home-panel__heading > a {
        font-size: 12.5px !important;
        line-height: 1.25 !important;
    }

    .news-card p,
    .event-card p,
    .event-history__content small,
    .about-identity__text p,
    .about-document-link p,
    .history-heading p,
    .person-note,
    footer .footer p {
        font-size: 12.5px !important;
        line-height: 1.4 !important;
    }

    .mobile-bottom-nav-v09115__item span {
        font-size: 11px !important;
        line-height: 1.05 !important;
    }

    .gallery-filter-mobile > a,
    .gallery-clear-filter,
    .about-document-link__button,
    .pagination a,
    .pagination span,
    .mobile-nav-item,
    .mobile-nav-feature,
    .utility-account__menu a,
    .utility-account__menu button {
        min-height: 44px !important;
    }

    .pagination a,
    .pagination span {
        min-width: 44px !important;
        padding: 8px !important;
        font-size: 12px !important;
    }
}

/* Spolek 0.9.149 · phase B UX cleanup */
:focus-visible {
    outline: 3px solid rgba(8, 113, 72, .45);
    outline-offset: 3px;
}

@media (max-width: 960px) {
    /* Forms stay readable and do not trigger iOS zoom. */
    input:not([type="checkbox"]):not([type="radio"]),
    select,
    textarea {
        font-size: 16px !important;
    }

    /* Frequently scanned mobile text gets a real readability floor. */
    .archive-hero p,
    .taxonomy-filter,
    .news-card p,
    .event-card p,
    .content-detail__meta,
    .home-news__body,
    .home-event__meta,
    .gallery-card__meta,
    .gallery-results-count,
    .reservation-calendar,
    .public-login,
    .access-request,
    .site-search {
        font-size: 13.5px;
        line-height: 1.42;
    }

    .taxonomy-chips a,
    .gallery-filter-mobile > a,
    .card-link,
    .utility-account__menu a,
    .mobile-nav-item,
    .mobile-nav-feature {
        font-size: 13px !important;
    }

    button,
    [role="button"],
    .button,
    .btn,
    .card-link,
    .taxonomy-chips a,
    .gallery-filter-mobile > a {
        min-height: 44px;
    }
}
