/* DockReview: navy, electric blue and cyan, drawn from the approved logo. */
:root{--navy:#081b36;--ink:#142c4c;--blue:#145ecb;--cyan:#45c9f0;--muted:#556980;--line:#dce5f0;--surface:#f3f6fb;color:var(--ink);background:var(--surface);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{background:var(--surface);line-height:1.6}a{color:#145ecb}h2,h3{color:var(--ink)}
header{background:var(--navy);border-bottom:3px solid var(--cyan);padding:18px max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:180px 1fr;gap:8px 36px;align-items:center}header .brand{grid-row:1/3;border-radius:12px;padding:0;background:transparent}header .brand img{width:180px;height:auto;max-height:none}header p{font-size:18px;font-weight:650;color:#eef5ff;max-width:600px;align-self:end;line-height:1.5}header p span{font-size:12px!important;font-weight:500;color:#87b9e6;margin-top:6px;letter-spacing:.4px;opacity:1}.top-nav{align-self:start;gap:6px}.top-nav a{font-size:13px;padding:10px 16px;border:1px solid #365174;color:#e8f1ff;border-radius:8px;background:transparent}.top-nav a:first-child{background:#1765cc;border-color:#1765cc;color:#fff}.top-nav a:hover{background:#254b78;color:#fff}.top-nav a:focus-visible{outline-color:var(--cyan)}
main{max-width:1180px;padding:32px 24px;display:flex;flex-direction:column;gap:0}main>*{min-width:0}.search-stage{order:0;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:36px;align-items:center;margin-bottom:22px}.driver-intro{padding:10px 0;max-width:none}.driver-intro .hero-eyebrow{color:#145ecb;font-size:11px;letter-spacing:1.8px}.driver-intro h1{font-size:clamp(34px,3.7vw,49px);line-height:1.13;letter-spacing:-1.6px;color:var(--navy);margin:16px 0 20px}.driver-intro h1 span{color:#145ecb;display:block}.driver-intro p{font-size:16px;line-height:1.75;color:var(--muted);max-width:420px;margin-bottom:24px}.hero-features{display:flex;gap:8px;flex-wrap:wrap;padding:0;list-style:none;margin:20px 0}.hero-features li{font-size:12px;color:#2d4c72;border:1px solid #d4e1f1;border-radius:6px;background:#e9f0fa;padding:7px 10px;font-weight:600}.hero-help{display:inline-block;font-size:13px;font-weight:650;text-underline-offset:4px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;margin:12px 0;box-shadow:0 4px 18px #10264405}#locationSearch{border:1px solid #d4e1f1;border-top:3px solid var(--blue);box-shadow:0 12px 36px #0b2f6510;margin:0;padding:28px}#locationSearch h2{font-size:25px;letter-spacing:-.7px;margin:0 0 18px}.primary-search{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px 16px}label{color:#3d5572;font-size:12px;font-weight:650;line-height:1.4}input,select,textarea{background:#f8faff;color:var(--ink);border:1px solid #cbd8e8;border-radius:8px;min-height:48px;font-size:15px}input:hover,select:hover,textarea:hover{border-color:#8aa7cc}input:focus,select:focus,textarea:focus{outline:2px solid #1765cc;outline-offset:2px;background:#fff}button{background:var(--blue);color:#fff;border-radius:8px;min-height:44px;font-size:14px;padding:12px 18px;font-weight:650}button:hover{background:#104ba6}button.secondary,.secondary{background:#edf3fc!important;color:#174d94!important;border:1px solid #d2e0f4}.secondary:hover{background:#dfeafa!important}button:disabled{opacity:.6}.text-button{color:#145ecb!important;background:transparent!important;border:0}button:focus-visible,a:focus-visible,summary:focus-visible,.item:focus-visible{outline:3px solid #228be4;outline-offset:3px}#searchBtn{min-width:175px;box-shadow:0 3px 8px #145ecb22}#locationSearch>p:has(#searchBtn){display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px}#locationSearch>p.muted{font-size:12px;margin-bottom:0}.search-options,.search-alternatives{border-top:1px solid var(--line);margin-top:14px}.search-options summary,.search-alternatives summary{font-size:13px;color:#3e5c80}.search-options summary .muted{font-size:11px}.search-status:not(:empty){background:#eaf2ff;color:#16477f;border:1px solid #d5e4fa}.muted{color:var(--muted)}
#recentFacilities{order:1}#searchLayout{order:2}#mapPanel{order:3}main>section:not(.search-stage){order:4}main>dialog{order:5}#mapPanel{padding:24px}#mapPanel>summary{font-size:22px;letter-spacing:-.5px;color:var(--navy);line-height:1.4}#mapPanel>summary .muted{font-size:12px;letter-spacing:0}#mapPanel>p{max-width:850px}#mapPanel>p.muted{font-size:12px}#mapPanel>p:has(#browseAllMap){display:flex;gap:8px;flex-wrap:wrap}#facilityMap{height:400px;min-height:320px;border:1px solid var(--line);border-radius:12px}#browseAllMap{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)}.facility-cluster{background:#145ecb;box-shadow:0 2px 8px #0a244750}
.section-top h2{color:var(--navy)}.hero-eyebrow,.facility-eyebrow{color:#145ecb}.recent-item{border:1px solid #dce5f2;background:#f5f8fd;color:var(--ink);border-radius:10px}.recent-item:hover{background:#eaf2ff}.recent-item small{color:#145ecb}.item{background:#fff!important;border:1px solid var(--line)!important;border-radius:12px;padding:20px!important;margin:12px 0;box-shadow:0 2px 8px #10264403}.item:hover{background:#f4f8ff!important;border-color:#7aa7e1!important}.item>b{font-size:20px;color:var(--navy)}.open-location{color:#145ecb;background:#eaf2ff}.pill{background:#edf3fc;color:#315982;padding:5px 9px;border-radius:6px}.stat{background:#f0f5fd;color:#284e7b}.notice{background:#fff8e8;border-color:#eddfb8;color:#6b531c}
.profile-view .search-stage{display:none}.profile-view main{padding-top:24px}.profile-view #facilityProfile{width:100%;max-width:1020px;border-top:3px solid var(--blue);margin:0 auto;padding:30px}#facilityProfile{width:100%;min-width:0}.facility-title{color:var(--navy);letter-spacing:-1px}.facility-address{color:#45617e}.facility-eyebrow{color:#145ecb}.profile-return{border-bottom:1px solid var(--line);padding-bottom:18px}.facility-fast-actions{gap:10px}.action-link{background:var(--blue);border-radius:8px}.action-link:hover{background:#104ba6;color:white}.action-link.secondary{color:#174d94;border-color:#d2e0f4;background:#edf3fc}.profile-tabs{background:#fff;border-bottom:1px solid var(--line);gap:8px;padding:12px 0;margin:20px 0;box-shadow:none}.profile-tabs button{background:#f1f5fc;color:#3d5878;border:1px solid #e0e8f3}.profile-tabs button[aria-selected=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.quick-grid{gap:10px}.quick-grid>div{background:#f3f7fd;border:1px solid #e0e8f3;border-radius:10px;padding:15px;color:#233e60}.quick-grid b{color:#58708e;font-size:11px;letter-spacing:.3px;margin-bottom:4px}.info{border:1px solid var(--line);background:#fff;padding:20px;border-radius:12px}.info h3{color:var(--navy);font-size:17px}.arrival-callout{border-left:4px solid var(--blue);background:#f4f8ff}.compact-hours summary{color:#145ecb}.driver-detail{border-color:var(--line)}
#helpDialog{color:var(--ink);border-color:#d3e0f0;border-radius:16px;box-shadow:0 24px 90px #081b3640}#helpDialog::backdrop{background:#081b36a6}.dialog-top{background:#f2f6fc;border-bottom:1px solid var(--line);color:var(--navy)}.faq-header h2{color:var(--navy)}.faq-item{border-color:var(--line)}.faq-item summary{color:#263f61}.faq-item summary:after{color:#145ecb}.faq-item p{color:var(--muted)}footer{max-width:1180px;border-top:1px solid #d9e3f0;text-align:left;padding:28px 24px;margin:8px auto 0;font-size:12px;color:#5c718a}footer a{color:#145ecb}.brand:focus-visible{outline-color:var(--cyan)}
@media(max-width:1000px){.search-stage{gap:24px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}header{gap:8px 24px}.top-nav a{padding:9px 12px}.primary-search{grid-template-columns:1fr!important}.driver-intro h1{font-size:39px}}
@media(max-width:700px){header{padding:14px 16px;grid-template-columns:145px minmax(0,1fr);gap:12px 16px}header .brand{grid-row:auto}header .brand img{width:145px}header p{align-self:center;font-size:13px;line-height:1.65}header p span{font-size:10px!important}.top-nav{grid-column:1/-1;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.top-nav a{font-size:11px;padding:10px 4px;display:flex;align-items:center;justify-content:center;min-height:44px;white-space:normal}main{padding:22px 14px}.search-stage{grid-template-columns:1fr;gap:14px;margin-bottom:10px}.driver-intro{padding:0 4px}.driver-intro h1{font-size:34px;margin:10px 0 12px;letter-spacing:-1px}.driver-intro h1 span{display:inline}.driver-intro p{font-size:14px;margin:0 0 12px;line-height:1.6;max-width:none}.hero-features{margin:12px 0;gap:6px}.hero-features li{font-size:11px;padding:5px 8px}.hero-help{font-size:12px}#locationSearch{padding:20px;border-radius:14px}#locationSearch h2{font-size:23px}.primary-search{gap:10px}.primary-search input,.primary-search select{font-size:16px}.search-options summary .muted{display:none}.card{padding:20px;border-radius:14px}#mapPanel{padding:18px}#mapPanel>summary{font-size:20px}#mapPanel>summary .muted{display:block;margin:5px 0 0}#mapPanel>p:has(#browseAllMap){display:grid;grid-template-columns:1fr 1fr;gap:7px}#mapPanel button{font-size:12px;padding:10px}#facilityMap{height:340px}.profile-view #facilityProfile{padding:20px 15px}.profile-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.profile-tabs button{font-size:12px;padding:10px 6px}.quick-grid>div{padding:12px}.facility-title{font-size:30px}.info{padding:16px}.facility-fast-actions{gap:7px}.recent-grid{grid-template-columns:1fr 1fr}footer{padding:24px 18px}.profile-return{gap:8px}.profile-return button{font-size:12px;padding:10px}}
@media(max-width:380px){header{grid-template-columns:130px minmax(0,1fr);gap:10px}header .brand img{width:130px}.top-nav a{font-size:10px}.driver-intro h1{font-size:31px}.recent-grid{grid-template-columns:1fr}.facility-fast-actions{grid-template-columns:1fr}.facility-fast-actions>*{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Review forms show sign-in, moderation and validation status before the fields. */
#reviewMessage:not(:empty),#updateMessage:not(:empty){padding:14px 16px;background:#edf4ff;border:1px solid #cbdff7;border-radius:10px;color:#163f76;line-height:1.6;margin:12px 0}#reviewNotice a,#updateNotice a{font-weight:700;text-underline-offset:3px}.star-options input{position:static;width:18px;height:18px;min-height:0;opacity:1;overflow:visible;margin:0 2px 0 5px;accent-color:#145ecb}.star-options{align-items:center;flex-wrap:wrap}.star-options label{font-size:32px;min-width:30px;line-height:44px}
