/* Small usability improvements shared by public pages only. */
.qatar-app-wrapper .nav-link.active { color:#006c70!important; background:#e2f5f0; border-radius:7px; box-shadow:inset 0 -3px #007f82; }
.qatar-app-wrapper #main-content:focus { outline:none; }
.qatar-app-wrapper :is(input,select,textarea,button,a) { -webkit-tap-highlight-color:#007f8220; }
.qatar-app-wrapper :is(button,a) { touch-action:manipulation; }
.qatar-app-wrapper :is(.managed-menu-button,.member-dialog-close,.participant-dialog header button) { min-width:44px; min-height:44px; }
.qatar-app-wrapper .managed-drawer { max-height:100dvh; overflow-y:auto; overscroll-behavior:contain; padding-bottom:max(24px,env(safe-area-inset-bottom)); }
.qatar-app-wrapper .managed-drawer .nav-link { min-height:44px; display:flex; align-items:center; }
.qatar-app-wrapper :is(.approved-table-wrap,.track-dialog,.member-dialog,.participant-dialog) { overscroll-behavior:contain; }
.public-resource-help { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px; background:#edf8f5; border:1px solid #c6e3dc; border-radius:12px; margin-bottom:24px; }
.public-resource-help p { margin:5px 0 0; color:#466365; font-size:14px; }
.public-not-found { max-width:720px; margin:auto; padding:70px 24px; text-align:center; min-height:55vh; }
.public-error-code { font-size:64px; color:#007f82; font-weight:800; }
.public-not-found h1 { color:#143b40; font-size:30px; }
.public-not-found p { color:#526b6d; font-size:17px; line-height:1.9; }
.public-not-found>div { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:22px; margin-top:28px; }
.public-not-found a { color:#006b70; }
@media(max-width:760px) {
 .qatar-app-wrapper :is(.registration-field input,.registration-field select,.registration-field textarea,.people-filter input,.approved-filters select) { font-size:16px; }
 .public-resource-help { flex-direction:column; align-items:stretch; }
 .qatar-app-wrapper .people-track-option { min-height:48px; }
}
@media(prefers-reduced-motion:reduce) {
 .qatar-app-wrapper *, .qatar-app-wrapper *::before, .qatar-app-wrapper *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
}
/* One consistent navigation indicator, without stacked underline effects. */
.qatar-app-wrapper .managed-header .nav-link,
.qatar-app-wrapper .managed-drawer .nav-link { border:1px solid transparent!important; border-radius:8px!important; box-shadow:none!important; text-decoration:none!important; }
.qatar-app-wrapper .managed-header .nav-link::after { display:none!important; }
.qatar-app-wrapper .managed-header .nav-link.active,
.qatar-app-wrapper .managed-drawer .nav-link.active { background:#e7f6f2!important; border-color:#b4ded6!important; color:#006b70!important; box-shadow:none!important; }
.qatar-app-wrapper .managed-header .nav-link:hover,
.qatar-app-wrapper .managed-drawer .nav-link:hover { background:#f0f8f6!important; color:#006b70!important; }
/* Explicit modal geometry prevents global resets from removing native centering. */
.people-results .participant-dialog { position:fixed; inset:0; margin:auto; width:min(600px,calc(100vw - 32px)); height:fit-content; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); padding:22px; overflow-y:auto; overflow-x:hidden; text-align:start; box-shadow:0 24px 80px #063f4938; }
.people-results .participant-dialog header { position:sticky; top:-22px; z-index:2; background:#fff; padding:8px 0 12px; margin:0 0 16px; border-bottom:1px solid #dfede9; font-size:14px; }
.people-results .participant-dialog-intro { display:grid; grid-template-columns:100px minmax(0,1fr); align-items:center; gap:18px; padding:14px; border-radius:12px; background:#f6faf9; }
.people-results .participant-dialog-intro>div { min-width:0; }
.people-results .participant-dialog h2 { font-size:22px; line-height:1.5; overflow-wrap:anywhere; margin:0 0 8px; }
.people-results .participant-dialog p { font-size:15px; line-height:1.8; margin:6px 0; }
.people-results .participant-dialog .participant-dialog-portrait { display:block; width:100px; height:120px; max-width:100%; object-fit:contain; object-position:center; border-radius:10px; }
.people-results .participant-dialog h3 { font-size:16px; line-height:1.6; margin:18px 0 6px; }
.people-results .participant-dialog-track { margin-top:16px; padding:10px 12px; font-size:14px; line-height:1.7; }
.people-results .participant-dialog nav:empty { display:none; }
.people-results .participant-dialog nav a { margin-top:16px; }
body:has(.participant-dialog[open]) { overflow:hidden; }
@media(max-width:480px) { .people-results .participant-dialog { padding:16px; }.people-results .participant-dialog header { top:-16px; }.people-results .participant-dialog-intro { grid-template-columns:76px minmax(0,1fr); padding:10px; gap:12px; }.people-results .participant-dialog .participant-dialog-portrait { width:76px; height:96px; }.people-results .participant-dialog h2 { font-size:18px; } }
/* Compact public-page title bands: keep the content near the top of the viewport. */
.qatar-app-wrapper :is(.restored-page-heading,.people-heading,.registration-hero,.page-hero-banner,.about-premium .about-hero,.app-page-heading) {
 min-height:0!important; height:auto!important; padding-top:24px!important; padding-bottom:24px!important; margin-top:0!important; margin-bottom:0!important;
}
.qatar-app-wrapper :is(.restored-page-heading,.people-heading,.registration-hero,.page-hero-banner,.about-premium .about-hero,.app-page-heading) h1 {
 font-size:clamp(25px,2.6vw,34px)!important; line-height:1.45!important; margin:8px 0!important;
}
.qatar-app-wrapper :is(.restored-page-heading,.people-heading,.registration-hero,.page-hero-banner,.about-premium .about-hero,.app-page-heading) p {
 font-size:15px!important; line-height:1.8!important; margin:6px 0 0!important;
}
.qatar-app-wrapper .restored-page-heading>p { margin-inline:auto!important; }
.qatar-app-wrapper :is(.restored-page-heading,.registration-hero) :is(.approved-eyebrow,.registration-kicker) { font-size:12px!important; margin:0!important; }
.qatar-app-wrapper .restored-page-heading .directory-totals { margin-top:12px; gap:8px; }
.qatar-app-wrapper .restored-page-heading .directory-totals span { padding:3px 12px; font-size:12px; }
.qatar-app-wrapper .registration-event { margin-top:12px!important; }
.qatar-app-wrapper .about-premium .about-hero>img { width:86px; height:98px; padding:7px; }
.qatar-app-wrapper .about-hero-actions { margin-top:14px; gap:16px; }
@media(max-width:760px) {
 .qatar-app-wrapper :is(.restored-page-heading,.people-heading,.registration-hero,.page-hero-banner,.about-premium .about-hero,.app-page-heading) { padding-top:18px!important; padding-bottom:18px!important; }
 .qatar-app-wrapper :is(.restored-page-heading,.people-heading,.registration-hero,.page-hero-banner,.about-premium .about-hero,.app-page-heading) h1 { font-size:25px!important; }
 .qatar-app-wrapper .about-premium .about-hero>img { width:60px; height:70px; }
}
