/* Location suggestion panel (inc/location.php). Fixed, bottom-left, so it never shifts the page; the cookie banner sits bottom-right. */
.odm-lochint { position: fixed; z-index: 60; inset-inline-start: 1rem; bottom: 1rem; max-width: 22rem; box-sizing: border-box; padding: 1rem 1.125rem; border-radius: 1rem; background: #ffffff; color: #0f172a; border: 1px solid #cbd5e1; box-shadow: 0 10px 30px rgba(15, 23, 42, 0.18); font-size: 0.9375rem; line-height: 1.45; }
.odm-lochint__text { margin: 0 0 0.75rem; font-weight: 600; }
.odm-lochint__error { margin: 0 0 0.75rem; color: #b91c1c; font-size: 0.875rem; }
.odm-lochint__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.odm-lochint__btn { min-height: 48px; padding: 0.5rem 1.25rem; border-radius: 9999px; border: 1px solid #94a3b8; background: #ffffff; color: #0f172a; font: inherit; font-weight: 600; cursor: pointer; }
.odm-lochint__btn:hover { background: #f1f5f9; }
.odm-lochint__btn:focus-visible { outline: 3px solid #4338ca; outline-offset: 2px; }
.odm-lochint__btn:disabled { opacity: 0.6; cursor: progress; }
.odm-lochint__btn--primary { background: #4338ca; border-color: #4338ca; color: #ffffff; }
.odm-lochint__btn--primary:hover { background: #3730a3; }
@media (max-width: 640px) { .odm-lochint { inset-inline: 0.75rem; max-width: none; } }
@media (prefers-reduced-motion: no-preference) { .odm-lochint { animation: odm-lochint-in 200ms ease-out; } }
@keyframes odm-lochint-in { from { opacity: 0; transform: translateY(0.5rem); } to { opacity: 1; transform: none; } }
html.odm-a11y-pause .odm-lochint { animation: none; }
@media print { .odm-lochint { display: none; } }
