.site-content-filters { display: flex; flex-wrap: wrap; align-items: end; gap: var(--space-4, 16px); }
.site-content-filters > div { flex: 1 1 200px; min-width: 0; }
.site-content-filters .form-control, .site-content-filters .form-select { min-height: 44px; }
.site-preview .site-content-filters .btn-primary { background: var(--speedloc-purple-800); border-color: var(--speedloc-purple-800); }
.site-preview .site-content-filters .btn-outline-primary { color: var(--speedloc-purple-800); border-color: var(--speedloc-purple-800); }
.site-preview .site-content-filters .btn-outline-primary:hover { background: var(--speedloc-purple-800); color: white; }
.site-answer { white-space: pre-line; overflow-wrap: anywhere; }
#faq { scroll-margin-top: var(--space-4); }
#faq summary { display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); list-style: none; }
#faq summary::-webkit-details-marker { display: none; }
#faq summary::after { content: ''; width: 8px; height: 8px; flex: 0 0 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-right: var(--space-2); }
#faq details[open] summary::after { transform: rotate(225deg); }
.faq-admin-table { min-width: 720px; }
.faq-admin-table th:first-child { min-width: 250px; }
.faq-admin-table td { overflow-wrap: anywhere; }
.site-faq details { border-bottom: 1px solid var(--speedloc-border-soft); padding-block: var(--space-4); }
.site-faq summary { cursor: pointer; font-weight: 600; min-height: 44px; padding-block: var(--space-2); overflow-wrap: anywhere; }
.site-faq summary:focus-visible { outline: 2px solid var(--speedloc-purple-700); outline-offset: 4px; }
.site-faq details p { margin-top: var(--space-4); }
.site-footer .site-footer-logo { width: min(240px, 100%); height: auto; }
.site-footer .site-footer-grid > * { min-width: 0; overflow-wrap: anywhere; }
.site-footer .site-footer-links a { display: block; min-height: 40px; font-size: var(--font-size-sm); }
@media (max-width: 575px) {
    .site-content-filters > div { flex-basis: 100%; }
    .site-content-filters > button { min-height: 44px; }
}
