/* "My location" prayer panel states (Nov 2026): loading, errors with Retry / Search city, search results, place line. */
.fhf-prayer-here .fhf-here-place { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.fhf-prayer-here .fhf-here-place .fhf-home-showing { margin: 0; min-width: 0; }
.fhf-prayer-here .fhf-here-place strong { overflow-wrap: anywhere; }
.fhf-here-refresh { display: inline-flex; flex-shrink: 0; align-items: center; gap: 6px; min-height: 36px; padding: 4px 12px; border: 1px solid #d5ddd6; border-radius: 999px; background: #fff; color: #004e38; font: inherit; font-size: 0.85rem; font-weight: 700; cursor: pointer; }
.fhf-here-refresh:hover { border-color: #00664a; }
.fhf-here-detail { margin: 2px 0 6px; color: #5a6e65; font-size: 0.82rem; }
.fhf-here-state { display: grid; justify-items: center; gap: 8px; padding: 22px 12px; text-align: center; }
.fhf-here-state p { margin: 0; }
.fhf-here-state.is-error { justify-items: stretch; text-align: start; padding: 16px 4px; }
.fhf-here-error-title { display: flex; align-items: center; gap: 8px; color: #8a2d1a; font-weight: 800; }
.fhf-here-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.fhf-here-actions .fhf-btn { min-height: 44px; flex: 1 1 140px; justify-content: center; }
.fhf-here-small { color: #5a6e65; font-size: 0.8rem; }
.fhf-here-small.is-error { color: #8a2d1a; }
.fhf-here-spinner { width: 28px; height: 28px; border: 3px solid #d5e6dc; border-top-color: #00664a; border-radius: 50%; animation: fhf-here-spin 0.9s linear infinite; }
@keyframes fhf-here-spin { to { transform: rotate(360deg); } }
.fhf-here-link { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 4px 0; border: 0; background: none; color: #00664a; font: inherit; font-size: 0.9rem; font-weight: 700; text-align: start; cursor: pointer; }
.fhf-here-link:hover { text-decoration: underline; }
.fhf-here-link small { color: #8a5a0a; font-weight: 600; }
.fhf-here-links { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin: 6px 0 0; font-size: 0.85rem; }
.fhf-here-remember { display: flex; align-items: center; gap: 8px; min-height: 40px; margin-top: 4px; font-size: 0.85rem; font-weight: 600; }
.fhf-here-remember input { width: 18px; height: 18px; accent-color: #00664a; }
.fhf-here-search { display: grid; gap: 8px; padding: 12px 0; }
.fhf-here-search label { font-weight: 700; }
.fhf-here-search > div { display: flex; gap: 8px; }
.fhf-here-search input { flex: 1; min-width: 0; min-height: 46px; padding: 8px 12px; border: 1.5px solid #d5ddd6; border-radius: 12px; font: inherit; font-size: 16px; }
.fhf-here-search input:focus { outline: none; border-color: #00664a; box-shadow: 0 0 0 3px rgba(0, 102, 74, 0.18); }
.fhf-here-search .fhf-btn { min-height: 46px; }
.fhf-here-results { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.fhf-here-results button { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid #e3e8e3; border-radius: 10px; background: #fff; color: #12352b; font: inherit; font-weight: 600; text-align: start; cursor: pointer; }
.fhf-here-results button:hover, .fhf-here-results button:focus-visible { border-color: #00664a; background: #f3f8f4; }
[data-prayer-near][aria-busy="true"] { opacity: 0.75; cursor: progress; }
@media (prefers-reduced-motion: reduce) { .fhf-here-spinner { animation: none; } }
html[data-member-theme=dark] .fhf-here-refresh, html[data-member-theme=dark] .fhf-here-results button, html[data-member-theme=dark] .fhf-here-search input { background: #13252b; border-color: #2f444c; color: #eef5f3; }
