.find-location-page { background: #101729; }
.find-location-page .mui-container { max-width: 1400px; }
.result-group-body details.mui-speed-limit-item { align-self:start; }
.result-group-body details.mui-speed-limit-item>.mui-speed-limit-header { cursor:pointer; list-style:none; margin:0; padding:0; border:0; }
.result-group-body details.mui-speed-limit-item>.mui-speed-limit-header::after { content:'+'; color:var(--text-secondary); font-size:18px; margin-left:8px; }
.result-group-body details.mui-speed-limit-item[open]>.mui-speed-limit-header { margin-bottom:12px; padding-bottom:12px; border-bottom:1px solid var(--border-color); }
.result-group-body details.mui-speed-limit-item[open]>.mui-speed-limit-header::after { content:'−'; }
.result-pagination { display:flex; align-items:center; justify-content:flex-end; gap:8px; padding:12px 0 0; }
.result-pagination[hidden] { display:none; }
.mui-road-item>.result-pagination { padding:0 14px 14px; }
.result-page-range { margin-right:auto; color:var(--text-secondary); font-size:12px; font-variant-numeric:tabular-nums; }
.result-pagination button { background:var(--glass-bg); border:1px solid var(--border-color); border-radius:7px; padding:8px 12px; min-height:40px; color:var(--text-primary); font:inherit; font-size:12px; cursor:pointer; }
.result-pagination button:hover:not(:disabled) { border-color:var(--primary-color); }
.result-pagination button:disabled { opacity:.4; cursor:default; }
@media(max-width:768px) {
  .result-pagination { gap:6px; }
  .result-pagination button { min-height:44px; padding:8px 10px; }
  .result-page-range { font-size:11px; }
}
/* Animate the rings, preserving Leaflet's marker positioning transform. */
.find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker) { --pin-radar-color:33,150,243; overflow:visible; }
.find-location-page .dropped-pin-marker { --pin-radar-color:244,67,54; }
.find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker)::before,
.find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker)::after {
  content:''; position:absolute; left:50%; top:50%; width:36px; height:36px; border-radius:50%;
  border:2px solid rgba(var(--pin-radar-color),.65); background:rgba(var(--pin-radar-color),.15);
  pointer-events:none; animation:location-pin-radar 2.8s ease-out infinite;
}
.find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker)::after { animation-delay:-1.4s; }
@keyframes location-pin-radar {
  0% { transform:translate(-50%,-50%) scale(.65); opacity:.8; }
  85%,100% { transform:translate(-50%,-50%) scale(3); opacity:0; }
}
@media(prefers-reduced-motion:reduce) {
  .find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker)::before { animation:none; transform:translate(-50%,-50%) scale(1.4); opacity:.35; }
  .find-location-page :is(.custom-postal-code-marker,.dropped-pin-marker)::after { display:none; }
}
.result-section-header { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:16px 20px; border-bottom:1px solid var(--border-color); }
.result-section-header>.material-icons { font-size:21px; color:var(--primary-color); }
.result-section-header h3 { font-size:15px; font-weight:600; margin:0; }
.result-section-header input { margin-left:auto; min-width:0; width:250px; max-width:100%; background:var(--background-color); color:var(--text-primary); border:1px solid var(--border-color); border-radius:8px; padding:10px 12px; font:inherit; font-size:13px; min-height:44px; }
.result-section-header input::placeholder { color:var(--text-secondary); }
.result-section-header input:focus-visible { outline:2px solid var(--primary-color); outline-offset:2px; }
.result-group-body .result-lamppost .result-lamppost-distance { margin-left:auto; padding-left:12px; font-variant-numeric:tabular-nums; white-space:nowrap; font-size:12px; }
.result-group-body .result-lamppost>.material-icons { margin-left:0; flex-shrink:0; }
.result-group-body .result-lamppost strong { font-size:14px; }
.result-group-body .mui-lamppost-list { grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); }
.result-type-group { border:1px solid var(--border-color); border-radius:10px; overflow:hidden; margin-bottom:12px; }
.result-type-group:last-child { margin-bottom:0; }
.result-type-header { display:flex; align-items:center; gap:10px; cursor:pointer; list-style:none; padding:15px; min-height:54px; background:var(--glass-bg); }
.result-type-header>.material-icons:first-child { color:var(--primary-color); font-size:20px; }
.result-type-header strong { font-size:13px; font-weight:500; }
.result-type-count { margin-left:auto; font-size:12px; font-variant-numeric:tabular-nums; padding:3px 8px; border-radius:5px; background:var(--glass-bg); color:var(--text-secondary); }
.result-type-chevron { font-size:18px; color:var(--text-secondary); }
.result-type-group[open]>.result-type-header .result-type-chevron { transform:rotate(180deg); }
.result-type-group[open]>.result-type-header { border-bottom:1px solid var(--border-color); }
.result-location-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:8px; padding:12px; }
.result-location-row { display:flex; align-items:center; gap:12px; text-align:left; min-width:0; width:100%; border:1px solid var(--border-color); border-radius:7px; background:transparent; color:var(--text-primary); padding:12px; font:inherit; font-size:13px; cursor:pointer; min-height:48px; }
.result-location-row:hover { border-color:var(--primary-color); background:var(--glass-bg); }
.result-row-name { flex:1; min-width:0; overflow-wrap:anywhere; }
.result-row-name small { display:block; color:var(--text-secondary); font-size:11px; margin-top:5px; line-height:1.5; font-variant-numeric:tabular-nums; }
.result-row-distance { margin-left:auto; color:var(--text-secondary); white-space:nowrap; font-size:12px; font-variant-numeric:tabular-nums; }
.result-location-row>.material-icons { margin-left:auto; color:var(--primary-color); font-size:16px; flex-shrink:0; }
@media(max-width:768px) {
  .result-section-header { padding:14px; gap:8px; }
  .result-section-header h3 { font-size:14px; }
  .result-section-header input { flex-basis:100%; width:100%; margin-left:0; }
  .result-group-body .result-lamppost .result-lamppost-distance,
  .result-group-body .result-lamppost>.material-icons { display:none; }
  .result-location-list { grid-template-columns:1fr; }
}
.find-location-page #zoneAndRoadSection { background:transparent; border:0; padding:0; box-shadow:none; backdrop-filter:none; transform:none; }
.result-details-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:28px 0 16px; }
.result-details-heading h2 { font-size:19px; margin:0; }
.result-details-heading>span { color:var(--text-secondary); font-size:12px; }
.location-result-group { background:#192238; border:1px solid var(--border-color); border-radius:14px; margin-bottom:14px; overflow:hidden; }
.location-result-group>summary { display:flex; gap:12px; align-items:center; padding:20px; cursor:pointer; list-style:none; min-height:64px; }
.location-result-group summary::-webkit-details-marker { display:none; }
.location-result-group>summary>.material-icons:first-child { font-size:21px; color:var(--primary-color); }
.location-result-group>summary h3 { font-size:15px; font-weight:600; margin:0; }
.result-group-count { color:var(--text-secondary); background:var(--glass-bg); font-size:12px; padding:3px 9px; border-radius:6px; }
.result-chevron { margin-left:auto; font-size:20px; color:var(--text-secondary); }
.location-result-group[open]>summary .result-chevron { transform:rotate(180deg); }
.location-result-group[open]>summary { border-bottom:1px solid var(--border-color); }
.result-group-body { padding:18px 20px 20px; }
.result-road-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.result-road-toolbar>span { font-size:12px; color:var(--text-secondary); }
.result-road-toolbar input { min-width:0; width:250px; max-width:75%; background:var(--background-color); color:var(--text-primary); border:1px solid var(--border-color); border-radius:8px; padding:10px 12px; font:inherit; font-size:13px; min-height:44px; }
.result-road-toolbar input::placeholder { color:var(--text-secondary); }
.result-group-body .mui-road-item { background:transparent; border:1px solid var(--border-color); box-shadow:none; border-radius:10px; margin:0 0 12px; padding:0; overflow:hidden; }
.result-group-body .mui-road-item::before { display:none; }
.result-group-body .mui-road-header { display:flex; align-items:center; gap:10px; margin:0; padding:14px 16px; cursor:pointer; background:var(--glass-bg); list-style:none; }
.result-group-body .mui-road-header::after { content:'+'; font-size:18px; color:var(--text-secondary); }
.result-group-body .mui-road-item[open]>.mui-road-header::after { content:'−'; }
.result-group-body .mui-road-name { font-size:13px; line-height:1.5; color:var(--text-primary); text-shadow:none; overflow-wrap:anywhere; }
.result-group-body .mui-lamppost-count { margin-left:auto; font-size:11px; white-space:nowrap; padding:0; background:none; border:0; color:var(--text-secondary); box-shadow:none; }
.result-group-body .mui-lamppost-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(125px,1fr)); gap:8px; padding:14px; }
.result-group-body .result-lamppost { display:flex; align-items:center; justify-content:flex-start; gap:8px; min-height:44px; padding:10px; border-radius:7px; border:1px solid var(--border-color); background:var(--glass-bg); color:var(--text-primary); font:inherit; font-size:13px; cursor:pointer; box-shadow:none; transform:none; }
.result-lamppost strong { font-weight:600; }
.result-lamppost>span { font-size:11px; color:var(--text-secondary); }
.result-lamppost>.material-icons { margin-left:auto; font-size:14px; color:var(--primary-color); }
.result-group-body :is(button,input,summary):focus-visible,.location-result-group>summary:focus-visible { outline:2px solid var(--primary-color); outline-offset:2px; }
.result-group-body .result-lamppost:hover,.result-group-body .mui-speed-limit-road:hover { border-color:var(--primary-color); background:var(--glass-bg); }
.result-group-body [hidden] { display:none !important; }
.result-group-body :is(.mui-zone-summary,.mui-cctv-summary,.mui-traffic-summary,.mui-trafficlight-summary,.mui-speedlimit-section) { background:transparent !important; border:0 !important; box-shadow:none !important; margin:0 !important; padding:0 !important; backdrop-filter:none !important; }
.result-group-body :is(.mui-zone-summary,.mui-cctv-summary,.mui-traffic-summary,.mui-trafficlight-summary)>h4,.result-group-body .mui-section-header h3 { display:none; }
.result-group-body .mui-section-header { margin:0 0 12px; padding:0; border:0; background:none; }
.result-group-body .mui-section-header p { color:var(--text-secondary); font-size:12px; text-align:left; margin:0 0 12px; }
.result-group-body :is(.mui-zone-summary,.mui-cctv-summary,.mui-traffic-summary,.mui-trafficlight-summary)>div { grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important; }
.result-group-body :is(.mui-zone-summary,.mui-cctv-summary,.mui-traffic-summary,.mui-trafficlight-summary)>div>div { background:var(--glass-bg) !important; border-color:var(--border-color) !important; box-shadow:none !important; backdrop-filter:none !important; }
.result-group-body :is(.mui-cctv-summary,.mui-traffic-summary)>div>div>div { color:var(--text-secondary) !important; }
.result-group-body .mui-speed-limit-item { background:var(--glass-bg); border:1px solid var(--border-color); box-shadow:none; padding:16px; border-radius:10px; margin:0 0 12px; }
.result-group-body .mui-speedlimit-section { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:12px; }
.result-group-body .mui-speedlimit-section>.mui-section-header { grid-column:1/-1; margin:0; }
.result-group-body .mui-speedlimit-section>.mui-speed-limit-item { margin:0; }
.result-group-body .mui-speed-limit-header { margin-bottom:12px; padding-bottom:12px; border-bottom:1px solid var(--border-color); }
.result-group-body .mui-speed-limit-value { background:transparent; box-shadow:none; border-radius:7px; font-size:15px; }
.result-group-body .mui-speed-limit-count { font-size:11px; color:var(--text-secondary); background:none; border:0; padding:0; }
.result-group-body .mui-speed-limit-road { font:inherit; font-size:13px; color:var(--text-primary); background:var(--glass-bg); border:1px solid var(--border-color); box-shadow:none; padding:10px 12px; min-height:44px; border-radius:7px; cursor:pointer; }
#speedLimitSectionSlot:empty::after { content:'No speed-limit data available for this area.'; font-size:13px; color:var(--text-secondary); }
#resultRoadEmpty { font-size:13px; color:var(--text-secondary); margin:16px 0; }
[data-theme="light"] .location-result-group { background:#fff; }
@media(max-width:768px) {
  .location-result-group>summary { padding:16px; gap:8px; }
  .location-result-group>summary h3 { font-size:14px; }
  .result-group-body { padding:14px; }
  .result-group-body .mui-road-header { padding:12px; }
  .result-group-body .mui-lamppost-list { grid-template-columns:repeat(2,minmax(0,1fr)); padding:10px; }
  .result-group-body .result-lamppost { padding:9px; gap:5px; }
}
.location-search-card :is(input,select,button):focus-visible,.location-summary button:focus-visible { outline:3px solid var(--primary-color); outline-offset:3px; }
.find-location-page #resultsSection { padding:24px; border-radius:16px; background:#192238; box-shadow:none; transform:none; }
#resultsSection .mui-results-header { padding-bottom:18px; margin-bottom:20px; border-bottom:1px solid var(--border-color); }
#resultsSection .mui-card-title { font-size:15px; gap:8px; }
#resultsSection .mui-radius-inline { font-size:12px; font-weight:400; color:var(--text-secondary); }
.location-result-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; margin-bottom:24px; }
.location-result-address { display:flex; gap:12px; align-items:flex-start; min-width:0; }
.location-result-address>.material-icons { color:var(--primary-color); padding:9px; background:var(--glass-bg); border-radius:10px; }
.location-result-address h3 { margin:4px 0 0; font-size:22px; line-height:1.45; font-weight:600; overflow-wrap:anywhere; }
.location-map-link { display:flex; align-items:center; gap:7px; flex-shrink:0; font:inherit; font-size:13px; cursor:pointer; color:var(--primary-color); border:1px solid var(--border-color); background:transparent; padding:10px 14px; border-radius:8px; min-height:44px; }
.location-map-link .material-icons { font-size:18px; }
.location-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--border-color); border-radius:12px; overflow:hidden; }
.location-fact { padding:18px; min-width:0; background:var(--glass-bg); }
.location-fact+.location-fact { border-left:1px solid var(--border-color); }
.location-fact-label { display:block; color:var(--text-secondary); font-size:12px; margin-bottom:10px; }
.location-fact-value { display:flex; align-items:center; gap:7px; flex-wrap:wrap; color:var(--text-primary); font-size:16px; font-weight:600; line-height:1.6; }
.location-fact-value .material-icons { font-size:18px; color:var(--primary-color); }
.location-division { font-size:11px; padding:1px 7px; border-radius:5px; background:var(--glass-bg); color:var(--text-secondary); }
.location-coordinates { font-size:13px; font-weight:400; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.location-fact #speedLimitPillSlot .mui-npc-coverage { margin:0; padding:0; background:none; border:none; box-shadow:none; font-size:16px; display:flex; gap:7px; justify-content:flex-start; color:var(--text-primary); }
.location-fact #speedLimitPillSlot .mui-npc-coverage>span:nth-child(2) { display:none; }
.location-fact #speedLimitPillSlot .mui-npc-division { color:var(--text-primary); }
.location-fact #speedLimitPillSlot .material-icons { color:var(--primary-color); font-size:18px; }
.location-friendly-street { margin-top:14px; }
.location-nearby-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:24px 0 12px; }
.location-nearby-heading h3 { font-size:14px; margin:0; }
.location-nearby-heading>span { font-size:12px; color:var(--text-secondary); }
.location-summary .location-feature-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; margin:0; padding:0; border:0; }
.location-summary .location-feature-grid .mui-zone-btn { display:flex; align-items:center; justify-content:flex-start; flex-wrap:wrap; gap:8px; min-height:62px; padding:14px; border:1px solid var(--border-color); border-radius:10px; background:var(--glass-bg); color:var(--text-primary); box-shadow:none; font-size:13px; text-transform:none; }
.location-feature-grid .material-icons { font-size:20px; color:var(--primary-color); pointer-events:none; }
.location-feature-grid strong { font-size:20px; pointer-events:none; }
.location-feature-grid button>span:last-child { pointer-events:none; }
.location-summary button:hover { border-color:var(--primary-color); }
.find-location-page #mapSection,.find-location-page #resultsSection { scroll-margin-top:86px; }
[data-theme="light"] .find-location-page #resultsSection { background:#fff; }
@media(max-width:768px) {
  .find-location-page #resultsSection { padding:18px; }
  .location-result-heading { flex-direction:column; gap:14px; margin-bottom:18px; }
  .location-result-address h3 { font-size:18px; }
  .location-facts { grid-template-columns:1fr; }
  .location-fact { padding:14px 16px; }
  .location-fact+.location-fact { border-left:0; border-top:1px solid var(--border-color); }
  .location-fact-label { margin-bottom:5px; }
  .location-summary .location-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.find-location-page .location-search-card { background:#192238; border:1px solid var(--border-color); border-radius:20px; box-shadow:0 16px 40px #0002; padding:28px; backdrop-filter:none; transform:none; }
.location-search-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; }
.location-search-heading .mui-card-title { margin:0; font-size:18px; }
.location-country { color:var(--text-secondary); font-size:12px; border:1px solid var(--border-color); padding:6px 12px; border-radius:20px; }
.location-search-card .mui-label { color:var(--text-secondary); font-size:12px; font-weight:500; }
.location-search-card .mui-search-row { gap:20px; }
.location-search-card .mui-search-row>div:first-child { flex:2; }
.location-search-card .mui-input,.location-search-card .mui-select { min-height:50px; border-radius:10px; background-color:var(--background-color); border:1px solid var(--border-color); box-shadow:none; font-size:16px; color:var(--text-primary); }
.location-search-card .mui-input::placeholder { font-style:normal; color:var(--text-secondary); opacity:.75; }
.location-search-card .mui-button-primary { min-height:50px; border-radius:10px; padding:12px 24px; background:#75baff; color:#0d2135; box-shadow:none; font-weight:700; }
.location-search-card button:disabled { cursor:wait; opacity:.65; }
.location-search-card #useCurrentLocationBtn,.location-search-card #useCurrentLocationBtnMobile { min-height:36px; box-shadow:none; border:0; background:transparent; color:var(--primary-color); }
.location-search-card [aria-invalid="true"] { border-color:var(--error-color); }
.location-search-card #lamppostSearchContainer { flex-wrap:wrap; }
.location-search-card #lamppostFirstContainer,.location-search-card #lamppostSecondContainer { width:100%; }
.location-search-card #lamppostSearchHelp,.location-search-card #lamppostSearchHelpMobile { font-style:normal !important; line-height:1.6; }
.location-search-card details summary { cursor:pointer; color:var(--primary-color); font-weight:500; }
.location-search-card details p { margin:10px 0 0; }
.location-search-feedback { margin:12px 0 0; padding:12px 14px; border-radius:8px; color:var(--error-color); background:var(--glass-bg); font-size:14px; line-height:1.5; }
[data-theme="light"] .find-location-page { background:#f3f6fa; }
[data-theme="light"] .location-search-card { background:#fff; }
[data-theme="light"] .location-search-card .mui-input,[data-theme="light"] .location-search-card .mui-select { background-color:#f7f9fc; }
@media(max-width:768px) {
  .find-location-page .location-search-card { padding:20px; }
  .location-search-heading { margin-bottom:18px; }
  .location-search-heading .mui-card-title { font-size:16px; line-height:1.4; }
  .location-search-card .mui-mobile-search-container { gap:12px; }
  .location-search-card .mui-mobile-search-button,.location-search-card .mui-mobile-search-btn { width:100%; }
  .location-search-card .mui-mobile-search-type { min-width:0; }
  .location-search-card #searchTypeMobile { flex:1; min-width:0; }
  .location-search-card #lamppostFirstContainerMobile,.location-search-card #lamppostSecondContainerMobile { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .find-location-page * { scroll-behavior:auto !important; transition:none !important; } }

/* Restore the familiar category colours across summary and detailed results. */
.find-location-page {
  --location-green:#a4db99; --location-gold:#ffdc70; --location-red:#ffaaa6;
  --location-purple:#d1b5ff; --location-teal:#80dce0; --location-blue:#95caff;
}
[data-theme="light"] .find-location-page {
  --location-green:#286638; --location-gold:#795900; --location-red:#a92f36;
  --location-purple:#7142a4; --location-teal:#166c73; --location-blue:#23639c;
}
.location-result-address h3 { color:var(--location-blue); }
.location-fact:nth-child(1) { background:rgba(129,199,132,.11); }
.location-fact:nth-child(2) { background:rgba(255,193,7,.11); }
.location-fact:nth-child(3) { background:rgba(100,181,246,.1); }
.location-fact:nth-child(1) :is(.location-fact-label,.location-fact-value,.material-icons) { color:var(--location-green); }
.location-fact:nth-child(2) :is(.location-fact-label,.location-fact-value,.material-icons),
.location-fact #speedLimitPillSlot :is(.mui-npc-division,.material-icons) { color:var(--location-gold); }
.location-division { color:var(--location-green); background:rgba(129,199,132,.16); }
.location-feature-grid .mui-lamppost-btn,#lamppostResults { --category-rgb:255,210,82; --category-color:var(--location-gold); }
.location-feature-grid .mui-trafficlight-btn,#signalResults { --category-rgb:244,100,108; --category-color:var(--location-red); }
.location-feature-grid .mui-silverzone-btn,[data-zone-type="silverzone"] { --category-rgb:181,134,239; --category-color:var(--location-purple); }
.location-feature-grid .mui-schoolzone-btn,[data-zone-type="schoolzone"] { --category-rgb:112,199,143; --category-color:var(--location-green); }
.location-feature-grid .mui-friendlystreet-btn,[data-zone-type="friendlystreet"] { --category-rgb:64,199,206; --category-color:var(--location-teal); }
.location-feature-grid .mui-cctv-btn,#cameraResults { --category-rgb:85,169,245; --category-color:var(--location-blue); }
.location-feature-grid .mui-traffic-btn,#incidentResults { --category-rgb:255,157,80; --category-color:var(--location-gold); }
#speedResults { --category-rgb:112,199,143; --category-color:var(--location-green); }
#zoneResults { --category-rgb:181,134,239; --category-color:var(--location-purple); }
.location-summary .location-feature-grid .mui-zone-btn {
  background:rgba(var(--category-rgb),.21); border-color:rgba(var(--category-rgb),.48);
  color:var(--category-color); box-shadow:0 3px 14px rgba(var(--category-rgb),.08);
}
.location-summary .location-feature-grid .mui-zone-btn .material-icons { color:var(--category-color); }
.location-summary .location-feature-grid .mui-zone-btn:hover { background:rgba(var(--category-rgb),.3); border-color:var(--category-color); }
.location-result-group>.result-section-header,.location-result-group>summary {
  border-left:4px solid rgba(var(--category-rgb),.75);
  background:linear-gradient(100deg,rgba(var(--category-rgb),.14),rgba(var(--category-rgb),.025));
}
.location-result-group>.result-section-header>.material-icons,
.location-result-group>summary>.material-icons:first-child,
.location-result-group>.result-section-header h3,.location-result-group>summary h3 { color:var(--category-color); }
.location-result-group .result-group-count { color:var(--category-color); background:rgba(var(--category-rgb),.17); }
.result-group-body .result-lamppost { background:rgba(255,210,82,.12); border-color:rgba(255,210,82,.29); color:var(--location-gold); }
.result-group-body .result-lamppost:hover { background:rgba(255,210,82,.23); border-color:var(--location-gold); }
#signalResults .result-type-header { background:rgba(244,100,108,.12); }
#signalResults .result-type-header :is(.material-icons,.result-type-count) { color:var(--location-red); }
#zoneResults .result-type-header { background:rgba(var(--category-rgb),.13); }
#zoneResults .result-type-header :is(strong,.material-icons,.result-type-count) { color:var(--category-color); }
#zoneResults .result-location-row { border-color:rgba(var(--category-rgb),.25); background:rgba(var(--category-rgb),.04); }
#zoneResults .result-location-row>.material-icons { color:var(--category-color); }

/* Long compound lamppost numbers must stay within their buttons. */
.result-group-body .mui-lamppost-list { grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr)); }
.result-group-body .result-lamppost { min-width:0; max-width:100%; width:100%; text-align:left; }
.result-group-body .result-lamppost strong { flex:1; min-width:0; white-space:normal; overflow-wrap:anywhere; text-align:left; }
.result-group-body .result-lamppost .result-lamppost-distance { flex-shrink:0; }
@media(max-width:768px), (hover:none) and (pointer:coarse) {
  .result-group-body .mui-lamppost-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .result-group-body .result-lamppost .result-lamppost-distance,
  .result-group-body .result-lamppost>.material-icons { display:none !important; }
  :is(#signalResults,#zoneResults) .result-location-row>.result-row-distance,
  :is(#signalResults,#zoneResults) .result-location-row>.material-icons { display:none !important; }
}

/* Softer blue-purple surfaces, closer to the original dark theme. */
html:not([data-theme="light"]) .find-location-page {
  --glass-bg:rgba(225,230,255,.10);
  --border-color:rgba(212,220,255,.19);
  --text-secondary:#bdc6df;
  background:radial-gradient(ellipse at 18% 0%,rgba(105,102,192,.15),transparent 60%),linear-gradient(135deg,#101329 0%,#1b203c 55%,#15192e 100%);
  background-attachment:fixed;
}
html:not([data-theme="light"]) .find-location-page :is(.location-search-card,#resultsSection,.location-result-group) {
  background:linear-gradient(125deg,#252a4d 0%,#2b3354 100%);
  border-color:rgba(205,215,255,.21);
  box-shadow:0 12px 30px rgba(5,8,25,.22),inset 0 1px 0 rgba(255,255,255,.035);
}
html:not([data-theme="light"]) .location-search-card :is(.mui-input,.mui-select),
html:not([data-theme="light"]) :is(.result-section-header,.result-road-toolbar) input {
  background-color:rgba(218,226,255,.16);
  border-color:rgba(217,225,255,.24);
  color:#f0f2ff;
  box-shadow:inset 0 1px 2px rgba(255,255,255,.025);
}
html:not([data-theme="light"]) .location-search-card .mui-input::placeholder { color:#c0c8df; opacity:.85; }
html:not([data-theme="light"]) .location-search-card .mui-label { color:#d9def0; font-weight:600; }
html:not([data-theme="light"]) .location-search-card :is(.mui-input,.mui-select):focus {
  border-color:#91c5ff;
  box-shadow:0 0 0 3px rgba(117,186,255,.13),0 0 20px rgba(117,186,255,.12);
}
html:not([data-theme="light"]) .location-summary {
  padding:18px; border-radius:14px; background:rgba(222,228,255,.08);
  border:1px solid rgba(215,225,255,.13);
}
html:not([data-theme="light"]) .location-search-card :is(#useCurrentLocationBtn,#useCurrentLocationBtnMobile) {
  background:rgba(145,192,255,.16); border:1px solid rgba(145,192,255,.25);
  border-radius:9px; box-shadow:0 3px 12px rgba(100,181,246,.08);
}
html:not([data-theme="light"]) .location-search-card .mui-button-primary {
  background:linear-gradient(135deg,#94caff,#78b2f4);
  box-shadow:0 4px 16px rgba(100,181,246,.18);
}
@media(max-width:768px) {
  html:not([data-theme="light"]) .location-summary { padding:12px; }
}

/* Compact search spacing; leave the input and button targets comfortable. */
.find-location-page .location-search-card { padding:20px 24px; }
.location-search-heading { margin-bottom:14px; gap:12px; }
.location-search-heading .location-country { margin-left:0; }
.location-search-heading #useCurrentLocationBtn { margin-left:auto; }
.location-search-card>.mui-form-group { margin-bottom:16px !important; }
.location-search-card>.mui-form-group:last-of-type { margin-bottom:0 !important; }
.location-search-card .mui-label { margin-bottom:6px; }
@media(max-width:768px) {
  .find-location-page .location-search-card { padding:16px; }
  .location-search-heading { margin-bottom:12px; }
  .location-search-heading #useCurrentLocationBtn { display:none !important; }
  .location-search-card>.mui-mobile-search { margin-bottom:0 !important; }
}
