/* Phase 18 — conditionally loaded utility/location-directory UI. */
/* v1.0.85 — Utility UX owner: AQI, Map, Tools and Location Directory. */.ttv-utility-sourcebar{margin:0 0 var(--ttv-space-3);padding:9px 11px;border:1px solid var(--ttv-line);border-radius:var(--ttv-radius-sm);background:var(--ttv-surface-soft);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.ttv-utility-sourcebar>span{min-width:0;padding:1px var(--ttv-space-3);border-left:1px solid var(--ttv-line-soft);display:grid;gap:2px}.ttv-utility-sourcebar>span:first-child{border-left:0;padding-left:2px}.ttv-utility-sourcebar small{font-size:var(--ttv-text-xs);color:var(--ttv-muted)}.ttv-utility-sourcebar strong{font-size:var(--ttv-text-sm);line-height:1.35;color:var(--ttv-ink);overflow-wrap:anywhere}.ttv-directory-personal{margin:0 0 var(--ttv-space-5);padding:18px;border:1px solid #dbe7ef;border-radius:var(--ttv-radius);background:var(--ttv-surface);box-shadow:none}.ttv-directory-personal__head{margin-bottom:9px;display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.ttv-directory-personal__head h2{margin:0;font-size:var(--ttv-title-md)}.ttv-directory-personal__head p{margin:3px 0 0;color:var(--ttv-muted);font-size:var(--ttv-text-sm)}.ttv-directory-personal__head>span{color:var(--ttv-muted);font-size:var(--ttv-text-xs);white-space:nowrap}.ttv-directory-personal__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ttv-space-2)}.ttv-directory-personal__grid>a{min-height:74px;padding:var(--ttv-space-3) 13px;display:grid;grid-template-columns:minmax(0,1fr) 14px;align-content:center;gap:3px var(--ttv-space-2);border:1px solid var(--ttv-line-section);border-radius:var(--ttv-radius-sm);background:var(--ttv-surface-detail);box-shadow:none}.ttv-directory-personal__grid>a:is(:hover,:focus-visible){background:var(--ttv-blue-50);border-color:var(--ttv-line-focus)}.ttv-directory-personal__grid span{font-size:var(--ttv-text-sm);font-weight:700;color:var(--ttv-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ttv-directory-personal__grid small{grid-column:1;color:var(--ttv-muted);font-size:var(--ttv-text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ttv-directory-personal__grid b{grid-column:2;grid-row:1/3;align-self:center;color:var(--ttv-muted);font-size:var(--ttv-text-lead);font-weight:400}.ttv-location-az{margin:0 0 18px;padding:0;overflow:hidden;box-shadow:none}.ttv-location-az>summary{min-height:52px;padding:0 13px;display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none}.ttv-location-az>summary::-webkit-details-marker{display:none}.ttv-location-az>summary>span{display:flex;align-items:center;gap:7px;min-width:0}.ttv-location-az>summary>span .ttv-icon{width:17px;height:17px;color:var(--ttv-blue)}.ttv-location-az>summary strong{font-size:var(--ttv-text-sm)}.ttv-location-az>summary small{margin-left:auto;color:var(--ttv-muted);font-size:var(--ttv-text-xs)}.ttv-location-az>summary>.ttv-icon{width:15px;height:15px;color:var(--ttv-muted);transition:transform .16s ease}.ttv-location-az[open]>summary>.ttv-icon{transform:rotate(90deg)}.ttv-location-az__grid{padding:10px var(--ttv-space-3) var(--ttv-space-3);border-top:1px solid var(--ttv-line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.ttv-location-az__grid>a{min-height:var(--ttv-control);padding:0 9px;border:1px solid var(--ttv-line-soft);border-radius:var(--ttv-control-radius);background:var(--ttv-surface-subtle);display:flex;align-items:center;color:var(--ttv-ink-2);font-size:var(--ttv-text-sm);font-weight:700}.ttv-location-az__grid>a:is(:hover,:focus-visible){background:var(--ttv-blue-50);border-color:var(--ttv-line-focus);color:var(--ttv-blue-700)}@media (max-width:980px){.ttv-utility-sourcebar{grid-template-columns:1fr 1fr}.ttv-utility-sourcebar>span:nth-child(3){border-left:0}.ttv-utility-sourcebar>span:nth-child(n+3){border-top:1px solid var(--ttv-line-soft);padding-top:7px;margin-top:5px}.ttv-directory-personal__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ttv-location-az__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.ttv-location-az__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.ttv-utility-sourcebar{grid-template-columns:1fr 1fr;padding:var(--ttv-space-2)}.ttv-utility-sourcebar>span{padding:var(--ttv-space) var(--ttv-space-2)}.ttv-utility-sourcebar strong{font-size:var(--ttv-text-xs)}.ttv-directory-personal__head{display:block}.ttv-directory-personal__head>span{display:block;margin-top:var(--ttv-space)}.ttv-directory-personal__grid{grid-template-columns:1fr}.ttv-location-az__grid{grid-template-columns:1fr 1fr}}@media (max-width:390px){.ttv-utility-sourcebar strong{font-size:var(--ttv-text-xs);line-height:1.35}.ttv-location-az__grid{grid-template-columns:1fr}}
/* v1.1.31 — shared Map / Rainfall / AQI information architecture */
.ttv-data-suite-nav{margin:10px 0 14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ttv-space-2)}.ttv-data-suite-nav__item{min-width:0;min-height:58px;padding:9px 11px;border:1px solid var(--ttv-line);border-radius:var(--ttv-radius-sm);background:var(--ttv-surface);display:flex;align-items:center;gap:9px;color:var(--ttv-ink-2)}.ttv-data-suite-nav__item:is(.is-active,:hover,:focus-visible){border-color:var(--ttv-line-focus);background:var(--ttv-blue-50);color:var(--ttv-blue-700)}.ttv-data-suite-nav__icon{width:34px;height:34px;flex:0 0 34px;border-radius:var(--ttv-radius-xs);background:var(--ttv-surface-soft);display:grid;place-items:center;color:var(--ttv-blue)}.ttv-data-suite-nav__item.is-active .ttv-data-suite-nav__icon{background:#dff1ff}.ttv-data-suite-nav__icon .ttv-icon{width:19px;height:19px}.ttv-data-suite-nav__text{min-width:0;display:grid;gap:1px}.ttv-data-suite-nav__text strong{font-size:var(--ttv-text-sm);line-height:1.25}.ttv-data-suite-nav__text small{font-size:var(--ttv-text-xs);line-height:1.35;color:var(--ttv-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ttv-data-suite-nav__item.is-active .ttv-data-suite-nav__text small{color:#47708f}.ttv-data-related{box-shadow:none}.ttv-data-related nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ttv-space-2)}.ttv-data-related nav>a{min-height:72px;padding:11px var(--ttv-space-3);border:1px solid var(--ttv-line);border-radius:var(--ttv-radius-sm);display:flex;align-items:center;gap:10px;background:var(--ttv-surface)}.ttv-data-related nav>a:is(:hover,:focus-visible){background:var(--ttv-blue-50);border-color:var(--ttv-line-focus)}.ttv-data-related nav>a>.ttv-icon:first-child{color:var(--ttv-blue);width:20px;height:20px;flex:0 0 auto}.ttv-data-related nav>a>span{min-width:0;display:grid;gap:2px;flex:1}.ttv-data-related nav strong{font-size:var(--ttv-text-sm)}.ttv-data-related nav small{font-size:var(--ttv-text-xs);line-height:1.4;color:var(--ttv-muted)}.ttv-data-related nav>a>.ttv-icon:last-child{width:15px;height:15px;color:var(--ttv-blue-700);flex:0 0 auto}@media (max-width:640px){.ttv-data-suite-nav{margin:var(--ttv-space-2) 0 11px;gap:6px}.ttv-data-suite-nav__item{min-height:50px;padding:7px var(--ttv-space-2);gap:6px;justify-content:center}.ttv-data-suite-nav__icon{width:28px;height:28px;flex-basis:28px}.ttv-data-suite-nav__icon .ttv-icon{width:17px;height:17px}.ttv-data-suite-nav__text strong{font-size:var(--ttv-text-compact)}.ttv-data-suite-nav__text small{display:none}.ttv-data-related nav{grid-template-columns:1fr}}@media (max-width:390px){.ttv-data-suite-nav__item{padding-inline:6px}.ttv-data-suite-nav__icon{display:none}.ttv-data-suite-nav__text strong{font-size:12.5px;line-height:1.2;white-space:normal;text-align:center;overflow-wrap:anywhere}}


/* v1.1.136 — Phase 79: utility metadata stacks before labels become cramped on very narrow phones. */
@media(max-width:390px){
  .ttv-utility-sourcebar{grid-template-columns:1fr;}
  .ttv-utility-sourcebar>span:is(:first-child,:nth-child(3)),.ttv-utility-sourcebar>span{padding:7px 5px;border-left:0;border-top:1px solid var(--ttv-line-soft);margin-top:0}
  .ttv-utility-sourcebar>span:first-child{border-top:0}
  .ttv-directory-personal__head>span{white-space:normal}
}

/* Phase 1A / v1.1.319 — one shared map-view switcher, owned by utility-pages.css. */
.ttv-map-view-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--ttv-space-2);margin:0 0 var(--ttv-space-3)}
.ttv-map-view-switcher__item{min-width:0;min-height:var(--ttv-control);padding:var(--ttv-space-2) var(--ttv-space-3);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ttv-space) var(--ttv-space-2);border:1px solid var(--ttv-line);border-radius:var(--ttv-radius-sm);background:var(--ttv-surface);color:var(--ttv-ink-2);text-decoration:none}
.ttv-map-view-switcher__item strong{font-size:var(--ttv-text-sm);line-height:1.3}
.ttv-map-view-switcher__item small{font-size:var(--ttv-text-xs);line-height:1.4;color:var(--ttv-muted);white-space:normal}
.ttv-map-view-switcher__item.is-active{background:var(--ttv-blue-50);border-color:var(--ttv-line-focus);color:var(--ttv-blue-700)}
.ttv-map-view-switcher__item:is(:hover,:focus-visible){border-color:var(--ttv-line-focus);background:var(--ttv-blue-50);outline-offset:3px}
@media(max-width:390px){.ttv-map-view-switcher__item{padding:var(--ttv-space-2)}.ttv-map-view-switcher__item small{display:none}}
