#app-menu-button,#close-map-search{display:none}

.menu-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.menu-heading h2{margin:0;font-size:var(--hx-text-title)}.menu-heading button{width:var(--hx-target-icon);height:var(--hx-target-icon);border:0;border-radius:50%;background:var(--lg-b-edf1eb,#edf1eb);font-size:var(--hx-text-title)}

@media(max-width:1024px){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body,button,input,select,textarea{font-family:var(--hx-font,"Avenir Next","Segoe UI",Arial,sans-serif);font-size:var(--hx-text-body)}
 body>header{height:64px;min-height:64px;padding:8px 12px;box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:10px}
 body>header>:not(.brand):not(#app-menu-button):not(.header-weather){display:none!important}
 body>header .brand{flex:1;min-width:0;width:auto;max-width:none;margin:0;gap:8px}
 body>header .horus-logo{width:42px;height:32px;object-fit:contain}
 body>header .brand-title{font-size:var(--hx-text-body);letter-spacing:.08em;padding-left:10px;line-height:var(--hx-leading-head)}
 body>header .brand-title b{display:block;font-size:var(--hx-text-min);letter-spacing:.04em;white-space:nowrap}
 body>header .brand small{display:none}
 #app-menu-button{display:flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;height:44px;min-height:44px;width:auto;min-width:88px;padding:0 12px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-f6f7f2,#f6f7f2);color:var(--lg-t-183d39,#183d39);font-size:var(--hx-text-label)}
 main{display:block;position:relative;height:calc(100dvh - 64px);min-height:0}.map-area{position:absolute;inset:0;width:100%;height:100%}
 body .sidebar{display:none!important}
 body.map-search-visible .sidebar{display:block!important;position:absolute;left:12px;right:12px;top:12px;width:auto;max-height:70%;overflow:auto;z-index:10;background:var(--lg-b-ffffff,#fff);border:1px solid var(--lg-l-ccd7c9,#ccd7c9);border-radius:12px}
 #close-map-search{display:block;margin:0 0 8px auto;min-height:44px;padding:8px 12px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-edf1eb,#edf1eb)}
 .sidebar-top{padding:12px}.map-search-visible #mobile-search-panel:not(:where([data-hx], [data-hx] *)){display:grid!important;grid-template-columns:100px minmax(0,1fr);gap:8px}.map-search-visible #mobile-search-toggle{display:none!important}
 .map-top{top:12px!important;right:12px!important;left:auto!important}.map-controls{top:76px!important;right:12px!important}
 #empty-card{left:12px!important;right:12px!important;bottom:36px!important;width:auto!important;max-width:420px;box-sizing:border-box;padding:14px!important}
 #empty-card h1,#empty-card>.eyebrow{display:none}#empty-card p{font-size:var(--hx-text-body);line-height:var(--hx-leading-body);margin:0 0 10px}#empty-card button{font-size:var(--hx-text-body);min-height:48px}
 #handover h2{font-size:var(--hx-text-title)}#handover p,#handover button strong{font-size:var(--hx-text-body)}#handover button small{font-size:var(--hx-text-label)}
}
/* Equal rows keep every menu action the same size, including wrapped labels. */





/* Fixed square dimensions prevent inherited minimum heights creating ovals. */
#account-dialog>.icon-btn,#places-dialog #places-close:not(:where([data-hx], [data-hx] *)),dialog button[aria-label^="Close"]:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;flex:0 0 44px;aspect-ratio:1;box-sizing:border-box;padding:0;border-radius:50%;line-height:1}


/* Centre icon and label independently on the same vertical axis. */





#account-dialog h2{min-height:44px;display:flex;align-items:center;margin-top:0;line-height:var(--hx-leading-head)}
#mobile-search-panel .search{display:flex;align-items:center;box-sizing:border-box}
#mobile-search-panel #search-submit{display:flex;align-items:center;justify-content:center;padding:0;line-height:1;flex-shrink:0}
#places-dialog .office-filters button,#places-dialog .fuel-filters button{box-sizing:border-box}
@media(max-width:1024px){
 #empty-card{display:flex;align-items:center;gap:14px}
 #empty-card p{flex:1;min-width:0;margin:0!important;line-height:var(--hx-leading-body)}
 #empty-card .primary{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;min-height:48px;margin:0;padding:12px;line-height:var(--hx-leading-head);text-align:center;box-sizing:border-box;white-space:normal;max-width:48%}
 #empty-card .primary span{display:none}
}
@media(max-width:360px){#empty-card{flex-direction:column;align-items:stretch}#empty-card .primary{max-width:none;width:100%}}
#mobile-search-panel .search:focus-within{outline:2px solid var(--lg-l-42665a,#42665a);outline-offset:2px}
#mobile-search-panel #search{border:0;box-shadow:none;background:transparent;min-width:0}
#mobile-search-panel #search:focus-visible{outline:none}
@media(min-width:761px) and (max-width:1024px){.map-legend{display:none}}

/* Keep the search shortcut aligned with the existing map controls. */
#map-search-shortcut{display:grid;place-items:center;padding:0}
@media(max-width:1024px){.map-actions{top:68px!important;right:12px!important}}

/* Search is a single compact panel: farm and close, search, then results. */
@media(max-width:1024px){
 body.map-search-visible .sidebar{display:flex!important;flex-direction:column;max-height: min(560px,calc(100dvh - 100px));max-width:560px;overflow:hidden;background:var(--hx-page,var(--lg-b-ffffff,#fff));box-shadow:0 8px 28px #183d3920}
 body.map-search-visible .sidebar-top{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;padding:12px;flex:0 0 auto;background:var(--hx-page,var(--lg-b-ffffff,#fff));border-bottom:1px solid var(--hx-hairline,var(--lg-l-dce3da,#dce3da))}
 .map-search-visible .mobile-tools{grid-column:1;grid-row:1;margin:0;min-width:0;border:0;padding:0}
 .map-search-visible #mobile-farm{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:44px;min-height:44px;margin:0;padding:0 10px;border:1px solid var(--lg-l-ccd7c9,#ccd7c9);border-radius:8px;background:var(--lg-b-f6f7f2,#f6f7f2);font-size:var(--hx-text-body);line-height:var(--hx-leading-head)}
 .map-search-visible #mobile-farm .farm-change{padding:0;background:none;font-size:var(--hx-text-label);font-weight:500}
 .map-search-visible #close-map-search{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid var(--lg-l-ccd7c9,#ccd7c9);border-radius:50%;background:var(--lg-b-edf1eb,#edf1eb);color:var(--lg-t-183d39,#183d39)}
 .map-search-visible #mobile-search-panel:not(:where([data-hx], [data-hx] *)){grid-column:1/-1;grid-row:2;display:grid!important;grid-template-columns:88px minmax(0,1fr);gap:8px;margin:0;padding:0}
 .map-search-visible #mobile-search-panel #search-mode{width:100%;height:48px;min-height:48px;margin:0;padding:0 8px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;font-size:var(--hx-text-body);background:var(--lg-b-f6f7f2,#f6f7f2)}
 .map-search-visible #mobile-search-panel .search{width:100%;height:48px;min-height:48px;margin:0;padding:3px 3px 3px 10px;gap:6px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-ffffff,#fff)}
 .map-search-visible #mobile-search-panel .search:focus-within{outline:0;border-color:var(--lg-l-183d39,#183d39);box-shadow:0 0 0 1px var(--lg-l-183d39,#183d39)}
 .map-search-visible #search-submit{width:40px;height:40px;min-height:40px;flex:0 0 40px;border-radius:6px}
 .map-search-visible #search{width:100%;height:40px;min-height:0;padding:0;margin:0;line-height:var(--hx-leading-head)}
 body.map-search-visible .sidebar #turbines:not([hidden]):not(:where([data-hx], [data-hx] *)){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:8px;padding:12px;margin:0;max-height: min(360px,45dvh);overflow:auto;min-height:0;flex:1 1 auto}
 .map-search-visible #turbines .turbine-row{width:100%;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;margin:0;padding:8px;border:1px solid var(--lg-l-ccd7c9,#ccd7c9);border-radius:8px;background:var(--lg-b-f6f7f2,#f6f7f2)}
 .map-search-visible #turbines .row-title{font-size:var(--hx-text-label);line-height:var(--hx-leading-head)}
 .map-search-visible #turbines .row-sub,.map-search-visible #turbines .row-arrow,.map-search-visible #turbines .turbine-symbol{display:none}
 body.map-search-visible .sidebar #map-search-results:not([hidden]){max-height:45dvh;overflow:auto;padding:0 12px 12px;min-height:0}
 .map-search-visible .sidebar-foot,.map-search-visible .list-heading:not(:where([data-hx], [data-hx] *)){display:none!important}

 #places-dialog .service-page-head:not(:where([data-hx], [data-hx] *)){gap:12px;margin-bottom:12px}
 #places-dialog .service-page-head h3:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-title)}
}
@media(min-width:500px) and (max-width:1024px){body.map-search-visible .sidebar #turbines:not([hidden]):not(:where([data-hx], [data-hx] *)){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-height:600px){}
/* Keep contact actions beside each other instead of wasting a second row. */
@media(max-width:400px){
 #places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)){padding-right:88px;grid-row:3}
 #places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){grid-row:3;width:80px}
 #places-dialog .service-results .service-phone-row:not(:where([data-hx], [data-hx] *)){gap:6px}
 #places-dialog .service-results .service-phone-row>strong:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-label)}
}
@media(max-width:350px){
 #places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)){padding-right:72px}
 #places-dialog .service-results .service-phone-row>button:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){width:64px;min-width:64px;max-width:64px;flex-basis:64px}
}
/* Search categories include longer names such as Places & roads and Plus Code. */
@media(max-width:1024px){
 .map-search-visible #mobile-search-panel:not(:where([data-hx], [data-hx] *)){grid-template-columns:minmax(0,1fr)}
 .map-search-visible #mobile-search-panel #search-mode{padding:0 12px;min-width:0}
 .map-search-visible #mobile-search-panel .search{min-width:0}
}
@media(min-width:500px) and (max-width:1024px){
 .map-search-visible #mobile-search-panel:not(:where([data-hx], [data-hx] *)){grid-template-columns:180px minmax(0,1fr)}
}

/* Map stays clear; secondary controls live in Menu > Tools. */
#empty-card{display:none!important}



#app-menu-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-f6f7f2,#f6f7f2);color:var(--lg-t-183d39,#183d39)}
@media(max-width:1024px){.map-actions{top:12px!important}}

@font-face{font-family:"Horus Avenir";src:url('./assets/fonts/AvenirNext-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
html body,body button,body input,body select,body textarea,body dialog{font-family:"Horus Avenir","Avenir Next","Segoe UI",Arial,sans-serif}
.tools-note{font-size:var(--hx-text-label);color:var(--lg-t-405b52,#405b52);margin:12px 0 0}.tools-note:empty{display:none}

@font-face{font-family:"Horus Avenir";src:url('./assets/fonts/AvenirNext-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Horus Avenir";src:url('./assets/fonts/AvenirNext-DemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Horus Avenir";src:url('./assets/fonts/AvenirNext-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
/* Search follows category, farm, then query in reading order. */
@media(max-width:1024px){
 .map-search-visible #mobile-search-panel:not(:where([data-hx], [data-hx] *)){display:contents!important}
 .map-search-visible #mobile-search-panel #search-mode{grid-column:1;grid-row:1}
 .map-search-visible #close-map-search{grid-column:2;grid-row:1;align-self:center}
 .map-search-visible .mobile-tools{grid-column:1/-1;grid-row:2}
 .map-search-visible #mobile-search-panel .search{grid-column:1/-1;grid-row:3}
}

#weather-shortcut{display:grid;place-items:center;padding:0}
#weather-panel:not(:where([data-hx], [data-hx] *)){width:min(420px,calc(100vw - 24px));background:var(--lg-b-ffffff,#fff);padding:20px;border-radius:16px}
#weather-panel .weather-summary{padding:16px 0;border-top:1px solid var(--lg-l-ccd7c9,#ccd7c9)}
#weather-panel p:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body);line-height:var(--hx-leading-body);margin:8px 0}
#weather-panel small:not(:where([data-hx], [data-hx] *)){display:block;margin-top:8px}
#weather-panel .weather-summary button{width:100%;min-height:48px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-edf1eb,#edf1eb);color:var(--lg-t-183d39,#183d39);font:inherit}

.account-actions{display:grid;gap:12px}.account-actions button,.account-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-f6f7f2,#f6f7f2);color:var(--lg-t-183d39,#183d39);font:inherit;text-decoration:none}

/* Account is available through Menu; retain its action target. */
header #account-button{display:none!important}

/* Keep desktop controls at the right edge after removing Account. */
@media(min-width:1025px){body>header .brand{margin-right:auto}}

#weather-panel:not(:where([data-hx], [data-hx] *)){width:min(600px,calc(100vw - 24px));max-height:85dvh;overflow:auto;box-sizing:border-box}#weather-panel .weather-location:not(:where([data-hx], [data-hx] *)){font-weight:600}#weather-panel [role=status],#weather-panel .weather-footnote:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);color:var(--lg-t-526961,#526961)}.weather-now{display:grid;gap:4px;padding:12px 0 20px}.weather-now>strong{font-size:var(--hx-text-value)}.weather-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.weather-metrics>div{display:grid;gap:6px;background:var(--lg-b-edf2ec,#edf2ec);padding:12px;border-radius:var(--hx-radius-card)}.weather-metrics small{font-size:var(--hx-text-meta)}.weather-metrics strong{font-size:var(--hx-text-body)}.weather-hours{overflow:auto}.weather-hours table{width:100%;border-collapse:collapse;font-size:var(--hx-text-label);white-space:nowrap}.weather-hours th,.weather-hours td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--lg-l-d6dfd5,#d6dfd5)}.weather-day{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid var(--lg-l-d6dfd5,#d6dfd5)}.weather-refresh:not(:where([data-hx], [data-hx] *)){margin-top:20px;min-height:44px;width:100%;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-edf1eb,#edf1eb);font:inherit;color:var(--lg-t-183d39,#183d39)}#weather-panel>a:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);color:var(--lg-t-526961,#526961)}

.lightning-panel:not(:where([data-hx], [data-hx] *)){padding:16px;background:var(--lg-b-f5f1e8,#f5f1e8);border:1px solid var(--lg-l-d9cbb3,#d9cbb3);border-radius:12px;margin:16px 0}.lightning-panel button:not(:where([data-hx], [data-hx] *)){min-height:44px;padding:10px 16px;font:inherit;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-ffffff,white);color:var(--lg-t-183d39,#183d39)}.lightning-panel h4{margin:12px 0 4px}.lightning-panel small:not(:where([data-hx], [data-hx] *)),.lightning-panel a:not(:where([data-hx], [data-hx] *)){display:block;font-size:var(--hx-text-meta);margin-top:12px}.lightning-results:not(:where([data-hx], [data-hx] *)){margin-top:12px}

.lightning-location{border:0;padding:0;margin:12px 0}.lightning-location legend{font-weight:600}.lightning-location label{display:flex;align-items:center;gap:8px;min-height:44px}.lightning-target:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);overflow-wrap:anywhere}

#weather-panel:not(:where([data-hx], [data-hx] *)){border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:20px;padding:24px;background:var(--lg-b-fafbf8,#fafbf8)}#weather-panel [hidden]{display:none!important}.weather-overview:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-ffffff,white);padding:20px;border:1px solid var(--lg-l-e0e7dc,#e0e7dc);border-radius:14px}.weather-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.weather-nav button{font:inherit;font-weight:600;min-height:82px;padding:12px 8px;border:1px solid var(--lg-l-c8d6c5,#c8d6c5);border-radius:12px;background:var(--lg-b-ffffff,white);color:var(--lg-t-183d39,#183d39);cursor:pointer}.weather-nav button span{display:block;font-weight:600;font-size:var(--hx-text-min);margin-top:6px}.weather-nav button[aria-expanded=true]{background:var(--lg-pb-234f40,#234f40);color:var(--lg-pt-ffffff,white)}.weather-nav button:focus-visible{outline:3px solid var(--lg-l-b17b59,#b17b59);outline-offset:2px}#weather-forecast-view:not(:where([data-hx], [data-hx] *)),#weather-radar-view{padding:18px;background:var(--lg-b-ffffff,white);border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:12px;margin-bottom:16px}.radar-refresh{font:inherit;padding:12px;min-height:44px;border:1px solid var(--lg-l-82998b,#82998b);border-radius:8px;background:var(--lg-b-edf2ec,#edf2ec);color:var(--lg-t-183d39,#183d39)}.radar-image{position:relative}.radar-image img{display:block;width:100%;border-radius:8px}.radar-image:has(img):after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:10px;height:10px;border:3px solid var(--lg-l-ffffff,white);border-radius:50%;background:var(--lg-b-126be0,#126be0);box-shadow:0 0 0 2px var(--lg-l-183d39,#183d39)}#weather-panel .weather-now{padding:4px 0 16px}.weather-overview .weather-refresh{margin-top:16px}@media(max-width:420px){#weather-panel:not(:where([data-hx], [data-hx] *)){padding:14px}.weather-overview:not(:where([data-hx], [data-hx] *)){padding:14px}.weather-nav{gap:6px}.weather-nav button{font-size:var(--hx-text-label)}.weather-nav button span{font-size:var(--hx-text-min)}}

/* Weather panel: overview, navigation, and focused detail views. */
#weather-panel:not(:where([data-hx], [data-hx] *)){width:min(640px,calc(100vw - 24px));padding:0;background:var(--lg-b-f5f7f2,#f5f7f2);border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:24px;box-shadow:0 24px 80px #102e3540;color:var(--lg-t-183d39,#183d39);max-height:90dvh}
#weather-panel>.menu-heading:not(:where([data-hx], [data-hx] *)){position:sticky;top:0;z-index:3;margin:0;padding:22px 26px 18px;background:#f5f7f2f5;border-bottom:1px solid var(--lg-l-e1e7dc,#e1e7dc);align-items:center}
#weather-panel .menu-heading h2:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-display);line-height:var(--hx-leading-tight);letter-spacing:var(--hx-tracking-display);margin:4px 0 0}.weather-eyebrow{font-size:var(--hx-text-min);letter-spacing:var(--hx-tracking-caps);font-weight:600;color:var(--lg-t-63796f,#63796f)}
#weather-panel>.menu-heading>button{background:var(--lg-b-e8ede3,#e8ede3);color:var(--lg-t-365749,#365749);flex-shrink:0}
#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){margin:20px 24px 0;padding:22px 24px;background:var(--lg-b-ffffff,#fff);border:1px solid var(--lg-l-dde5d8,#dde5d8);border-radius:18px;position:relative;overflow:hidden}
#weather-panel .weather-location:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body);font-weight:600;margin:0 0 3px}#weather-panel .weather-overview>[role=status]{font-size:var(--hx-text-meta);line-height:var(--hx-leading-body);margin:0;color:var(--lg-t-60786c,#60786c)}
#weather-panel .weather-now{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}#weather-panel .weather-now>strong{font-size:var(--hx-text-value);font-weight:600;line-height:1;letter-spacing:var(--hx-tracking-display);color:var(--lg-t-214d3e,#214d3e);white-space:nowrap}.temperature-unit{font-size:var(--hx-text-display);font-weight:500;letter-spacing:var(--hx-tracking-display);vertical-align:top;display:inline-block;margin:8px 0 0 4px}#weather-panel .weather-now>span{font-size:var(--hx-text-body);color:var(--lg-t-526c5f,#526c5f);max-width:45%;text-align:right;line-height:var(--hx-leading-body)}
#weather-panel .weather-metrics{gap:0;padding:16px 0;border-top:1px solid var(--lg-l-e2e9de,#e2e9de);border-bottom:1px solid var(--lg-l-e2e9de,#e2e9de)}.weather-metrics>div{background:transparent;padding:0 14px;gap:7px;border-right:1px solid var(--lg-l-e2e9de,#e2e9de)}.weather-metrics>div:first-child{padding-left:0}.weather-metrics>div:last-child{border:0;padding-right:0}#weather-panel .weather-metrics small{color:var(--lg-t-60786c,#60786c);font-size:var(--hx-text-min);margin:0}#weather-panel .weather-metrics strong{font-size:var(--hx-text-title);white-space:nowrap;letter-spacing:var(--hx-tracking-display)}.weather-metrics span{font-size:var(--hx-text-min);color:var(--lg-t-60786c,#60786c)}
#weather-panel .weather-refresh:not(:where([data-hx], [data-hx] *)){margin:14px 0 0;width:auto;min-height:36px;padding:6px 0;border:0;background:none;font-size:var(--hx-text-meta);font-weight:600;color:var(--lg-t-35674e,#35674e);text-decoration:underline;text-underline-offset:4px}
#weather-panel .weather-footnote:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-min);line-height:var(--hx-leading-body);margin:10px 0 0;color:var(--lg-t-718075,#718075)}
#weather-panel .weather-nav{margin:16px 24px 20px;gap:10px}.weather-nav button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding:14px 16px;min-height:112px;text-align:left;border-radius:14px;font-size:var(--hx-text-label);border-color:var(--lg-l-d6dfd0,#d6dfd0);transition:background .15s,color .15s}.weather-nav button:hover{border-color:var(--lg-l-6e9077,#6e9077);background:var(--lg-b-edf2e7,#edf2e7)}.weather-nav button[aria-expanded=true]{background:var(--lg-pb-234f40,#234f40);color:var(--lg-pt-ffffff,#fff);border-color:var(--lg-pb-234f40,#234f40)}.weather-nav button span{margin:0;font-size:var(--hx-text-min);line-height:var(--hx-leading-body);color:var(--lg-t-64786c,#64786c)}.weather-nav button[aria-expanded=true] span{color:var(--lg-t-d5e5d7,#d5e5d7)}.weather-nav button .weather-nav-icon{font-family:system-ui;font-size:var(--hx-text-title);line-height:1;margin-bottom:8px;color:inherit}
#weather-panel>#weather-forecast-view,#weather-panel>#weather-radar-view,#weather-panel>.lightning-panel{margin:0 24px 20px;padding:22px;background:var(--lg-b-ffffff,#fff);border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:18px}#weather-panel h3:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body);letter-spacing:var(--hx-tracking-display);margin:0 0 16px}#weather-panel .forecast-content>h3{font-size:var(--hx-text-meta);letter-spacing:0;margin:22px 0 12px;color:var(--lg-t-526c5f,#526c5f)}#weather-panel .weather-hours th{font-size:var(--hx-text-min);color:var(--lg-t-64786c,#64786c);padding:10px 6px;background:var(--lg-b-f4f7f0,#f4f7f0)}#weather-panel .weather-hours td{font-size:var(--hx-text-meta);padding:12px 6px}#weather-panel .weather-hours td:first-child{font-weight:600}.weather-hours tr:last-child td{border-bottom:0}#weather-panel .weather-day{grid-template-columns:1fr auto;gap:5px 12px;padding:14px 0}#weather-panel .weather-day>strong{font-size:var(--hx-text-label)}#weather-panel .weather-day>span{font-size:var(--hx-text-meta);color:var(--lg-t-60786c,#60786c)}#weather-panel .weather-day>span:last-child{grid-column:1/-1}
#weather-panel .lightning-panel p:not(:where([data-hx], [data-hx] *)),#weather-panel #weather-radar-view>p{font-size:var(--hx-text-meta);line-height:var(--hx-leading-body)}#weather-panel .lightning-location{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.lightning-location legend{font-size:var(--hx-text-meta);padding-bottom:10px}.lightning-location label{padding:10px;border:1px solid var(--lg-l-d8e1d2,#d8e1d2);border-radius:var(--hx-radius-card);background:var(--lg-b-fafcf7,#fafcf7);font-size:var(--hx-text-meta);cursor:pointer}.lightning-location label:has(input:checked){background:var(--lg-b-e9f1e3,#e9f1e3);border-color:var(--lg-l-6c8a73,#6c8a73)}.lightning-location input{accent-color:#285640;flex-shrink:0}#weather-panel .lightning-check:not(:where([data-hx], [data-hx] *)),#weather-panel .radar-refresh{width:100%;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);border:0;min-height:46px;font-size:var(--hx-text-label);font-weight:600;border-radius:var(--hx-radius-card)}#weather-panel button:disabled{opacity:.55;cursor:wait}#weather-panel .lightning-results:not(:where([data-hx], [data-hx] *)){padding:14px;background:var(--lg-b-f4f7ef,#f4f7ef);border-radius:var(--hx-radius-card);font-size:var(--hx-text-meta);line-height:var(--hx-leading-body)}.lightning-results h4{font-size:var(--hx-text-meta)}.lightning-results p{margin:6px 0 12px}#weather-panel>a:not(:where([data-hx], [data-hx] *)){display:block;text-align:center;padding:0 24px 20px;font-size:var(--hx-text-min);color:var(--lg-t-6c7e72,#6c7e72)}#weather-panel button:focus-visible{outline:3px solid var(--lg-l-b48961,#b48961);outline-offset:3px}
@media(max-width:440px){#weather-panel:not(:where([data-hx], [data-hx] *)){border-radius:18px}#weather-panel>.menu-heading:not(:where([data-hx], [data-hx] *)){padding:18px}#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){margin:14px 14px 0;padding:18px}#weather-panel .weather-nav{margin:12px 14px 16px;gap:7px}.weather-nav button{padding:12px 10px;font-size:var(--hx-text-meta);min-height:104px}.weather-nav button span{font-size:var(--hx-text-min)}#weather-panel>#weather-forecast-view,#weather-panel>#weather-radar-view,#weather-panel>.lightning-panel{margin:0 14px 16px;padding:16px}#weather-panel .weather-now>strong{font-size:var(--hx-text-value)}#weather-panel .weather-metrics strong{font-size:var(--hx-text-body)}.weather-metrics>div{padding:0 10px}#weather-panel .weather-now>span{font-size:var(--hx-text-label)}}

/* Align each weather metric on matching label and value rows. */
#weather-panel .weather-metrics{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}#weather-panel .weather-metrics>div{display:grid;grid-template-rows:20px 30px;align-content:start;align-items:center;gap:6px;border-radius:0;min-width:0}#weather-panel .weather-metrics small{line-height:20px;white-space:nowrap}#weather-panel .weather-metrics strong{line-height:30px;margin:0;font-size:var(--hx-text-body)}#weather-panel .wind-low:not(:where([data-hx], [data-hx] *)){color:var(--lg-t-237342,#237342)}#weather-panel .wind-medium:not(:where([data-hx], [data-hx] *)){color:var(--lg-t-946500,#946500)}#weather-panel .wind-high:not(:where([data-hx], [data-hx] *)){color:var(--lg-t-b52e34,#b52e34)}.weather-condition{display:flex;align-items:center;gap:10px}.condition-icon{width:44px;height:44px;flex:0 0 44px;color:var(--lg-t-597d72,#597d72)}#weather-panel .weather-nav button{align-items:center;text-align:center}#weather-panel .weather-nav button span{text-align:center}#weather-panel .weather-nav .weather-nav-icon{align-self:center}@media(max-width:540px){#weather-panel .weather-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 0}#weather-panel .weather-metrics>div{padding:0 12px}#weather-panel .weather-metrics>div:nth-child(odd){padding-left:0;border-right:1px solid var(--lg-l-e2e9de,#e2e9de)}#weather-panel .weather-metrics>div:nth-child(even){border-right:0}#weather-panel .weather-condition{flex-direction:column;gap:5px;text-align:center}.condition-icon{width:36px;height:36px;flex-basis:36px}}

#weather-panel .weather-metrics>div{justify-items:center;text-align:center;padding-left:8px;padding-right:8px!important}#weather-panel .weather-metrics small,#weather-panel .weather-metrics strong{text-align:center}#weather-panel .wind-badge{display:inline-block;padding:0 9px;border-radius:7px;min-width:76px}#weather-panel .wind-badge.wind-low{background:var(--lg-b-e0f1e4,#e0f1e4);color:var(--lg-t-195c32,#195c32)}#weather-panel .wind-badge.wind-medium{background:var(--lg-b-fff0b5,#fff0b5);color:var(--lg-t-735100,#735100)}#weather-panel .wind-badge.wind-high{background:var(--lg-b-fbe0e2,#fbe0e2);color:var(--lg-t-95242b,#95242b)}.wind-key:not(:where([data-hx], [data-hx] *)){display:flex;justify-content:center;flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:var(--hx-text-min)}.wind-key span:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;gap:5px}.wind-key span:before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}

#weather-panel .weather-nav .weather-nav-icon{display:block;width:24px;height:24px;min-width:24px;min-height:24px;flex:0 0 24px;margin:0 0 8px;align-self:center}

#weather-panel .lightning-results:not(:where([data-hx], [data-hx] *)){padding:14px;background:var(--lg-b-f3f5ef,#f3f5ef)}.lightning-check-time{font-size:var(--hx-text-min);color:var(--lg-t-627366,#627366);margin-bottom:12px}.lightning-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}#weather-panel .lightning-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--lg-b-ffffff,white);border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:12px;padding:16px 10px;gap:6px}.lightning-card-title{display:flex;align-items:center;justify-content:center;gap:7px;min-height:30px}#weather-panel .lightning-card h4{margin:0;font-size:var(--hx-text-meta)}.lightning-card-title svg{flex:0 0 24px}#weather-panel .lightning-number{font-size:var(--hx-text-value);line-height:var(--hx-leading-tight);letter-spacing:var(--hx-tracking-display)}.lightning-short{font-size:var(--hx-text-meta);font-weight:600}.lightning-period{font-size:var(--hx-text-min);color:var(--lg-t-627366,#627366)}#weather-panel .lightning-card.activity{background:var(--lg-b-fff0df,#fff0df);border-color:var(--lg-l-cc9853,#cc9853);color:var(--lg-t-824200,#824200)}#weather-panel .lightning-card.unavailable{background:var(--lg-b-ededeb,#ededeb);color:var(--lg-t-656b67,#656b67)}#weather-panel .lightning-card small{margin:0;font-size:var(--hx-text-min)}#weather-panel .lightning-result-note{font-size:var(--hx-text-min);margin:12px 0 0;line-height:var(--hx-leading-body)}@media(max-width:380px){.lightning-card-title{flex-direction:column}.lightning-card-grid{gap:7px}#weather-panel .lightning-card{padding:12px 6px}}

.hourly-cards{display:flex;gap:9px;overflow-x:auto;padding:2px 0 12px;scroll-snap-type:x proximity}.hour-card{flex:0 0 84px;display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 8px;border:1px solid var(--lg-l-dce5d6,#dce5d6);border-radius:14px;background:var(--lg-b-f8faf5,#f8faf5);scroll-snap-align:start}.hour-card time{font-size:var(--hx-text-meta);font-weight:600;color:var(--lg-t-526c5f,#526c5f)}.hour-card .condition-icon{width:34px;height:34px}.hour-temp{font-size:var(--hx-text-title);line-height:1}.rain-reading,.hour-wind{display:flex;align-items:center;justify-content:center;gap:5px;font-size:var(--hx-text-meta);font-weight:600}.rain-reading{color:var(--lg-t-376a89,#376a89)}.hour-card small{font-size:var(--hx-text-min)}.hour-card .hour-wind{font-size:var(--hx-text-meta)}.forecast-hint{float:right;font-size:var(--hx-text-min);font-weight:500;color:var(--lg-t-718075,#718075)}.forecast-units{font-size:var(--hx-text-min)!important;color:var(--lg-t-718075,#718075);margin:6px 0 18px!important}.daily-cards:not(:where([data-hx], [data-hx] *)){display:grid;gap:10px}.daily-card{display:grid;grid-template-columns:60px minmax(80px,1fr) 65px 80px;gap:12px;align-items:center;border:1px solid var(--lg-l-dce5d6,#dce5d6);border-radius:13px;padding:15px 12px;background:var(--lg-b-fafcf7,#fafcf7)}.daily-date,.daily-temp,.daily-rain,.daily-condition{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.daily-date strong{font-size:var(--hx-text-label)}.daily-card small{font-size:var(--hx-text-min)!important;color:var(--lg-t-718075,#718075)}.daily-condition .condition-icon{height:34px;width:34px}.daily-condition small{max-width:120px;line-height:var(--hx-leading-head)}.daily-temp{display:grid;grid-template-columns:1fr 1fr;gap:3px 7px}.daily-temp strong{font-size:var(--hx-text-title)}.daily-temp>span{font-size:var(--hx-text-body);color:var(--lg-t-718075,#718075)}.daily-temp small{grid-column:1/-1}.daily-rain meter{width:65px;height:8px;border:0}.daily-rain meter::-webkit-meter-bar{background:var(--lg-b-e1eaf0,#e1eaf0);border:0;border-radius:5px}.daily-rain meter::-webkit-meter-optimum-value{background:var(--lg-b-5d94b3,#5d94b3);border-radius:5px}@media(max-width:440px){.daily-card{grid-template-columns:44px minmax(50px,1fr) 56px 62px;gap:7px;padding:12px 8px}.daily-rain meter{width:52px}.daily-temp strong{font-size:var(--hx-text-body)}.daily-temp>span{font-size:var(--hx-text-label)}.forecast-hint{float:none;display:block;margin-top:5px}.hour-card{flex-basis:78px}}

header .sensor-status{display:none!important}.header-weather{display:flex;align-items:center;gap:10px;margin-left:auto}.header-weather button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:0;padding:4px;min-width:48px;color:var(--lg-t-183d39,#183d39);cursor:pointer}.header-weather .condition-icon{width:24px;height:24px;flex-basis:24px}.header-weather small{font-size:var(--hx-text-min);font-weight:600;white-space:nowrap}.header-wind-symbol{font-size:var(--hx-text-title);line-height:24px;height:24px}.header-weather-label{font-size:var(--hx-text-min);color:var(--lg-t-63796f,#63796f)}.header-weather .wind-low{color:var(--lg-t-237342,#237342)}.header-weather .wind-medium{color:var(--lg-t-946500,#946500)}.header-weather .wind-high{color:var(--lg-t-b52e34,#b52e34)}@media(max-width:1024px){body>header>.header-weather{display:flex!important;gap:2px}.header-weather button{min-width:38px;padding:2px}.header-weather small{font-size:var(--hx-text-min)}.header-weather .header-weather-label{font-size:var(--hx-text-min)}body>header .brand-title{display:none}body>header .brand{flex:1}}

/* Larger, two-line header readings. */
header .header-weather{gap:12px}header .header-weather button{min-width:72px;min-height:48px;padding:4px 8px;gap:4px}header .header-weather small{font-size:var(--hx-text-body);font-weight:600;line-height:20px}header .header-weather .header-weather-label{font-size:var(--hx-text-meta);font-weight:500;line-height:20px;color:var(--hx-shell-label,var(--lg-t-526c5f,#526c5f))}header .header-weather .condition-icon{width:24px;height:24px;flex-basis:24px}@media(max-width:540px){header .header-weather{gap:2px}header .header-weather button{min-width:62px;padding:2px 4px}header .header-weather small{font-size:var(--hx-text-label)}header .header-weather .header-weather-label{font-size:var(--hx-text-meta)}}

/* A single aligned group for current conditions and wind readings. */
header .header-weather{gap:0;padding:3px;background:var(--lg-b-edf2e9,#edf2e9);border:1px solid var(--lg-l-d4dfce,#d4dfce);border-radius:12px}header .header-weather button{display:grid;grid-template-rows:22px 24px;justify-items:center;align-items:center;align-content:center;gap:2px;min-width:82px;padding:2px 8px;border-radius:0}header .header-weather button+button{border-left:1px solid var(--hx-shell-line,var(--lg-l-d4dfce,#d4dfce))}header .header-weather .condition-icon{width:22px;height:22px}header .header-weather small{line-height:24px;font-size:var(--hx-text-label)}header .header-weather .header-weather-label{line-height:22px;font-size:var(--hx-text-meta)}header .header-weather .header-wind-badge{padding:0 7px;border-radius:6px;white-space:nowrap}header .header-weather .header-wind-badge.wind-low{background:var(--lg-b-d9eddf,#d9eddf);color:var(--lg-t-195c32,#195c32)}header .header-weather .header-wind-badge.wind-medium{background:var(--lg-b-fff0b5,#fff0b5);color:var(--lg-t-735100,#735100)}header .header-weather .header-wind-badge.wind-high{background:var(--lg-b-fbe0e2,#fbe0e2);color:var(--lg-t-95242b,#95242b)}@media(max-width:540px){header .header-weather button{min-width:64px;padding:2px 4px}header .header-weather small{font-size:var(--hx-text-meta)}header .header-weather .header-wind-badge{padding:0 4px}}

/* Header shortcuts remain action targets for Menu entries. */
body>header .sos-button,body>header [aria-label="List all bookmarks"],body>header #help{display:none!important}

/* Match the weather group and Menu outer heights. */
body>header .header-weather,body>header #app-menu-button{box-sizing:border-box;height:60px;min-height:60px;max-height:60px;border-radius:12px;align-self:center}

/* Distinct yellow caution range, with readable dark text. */
#weather-panel .wind-medium:not(:where([data-hx], [data-hx] *)),header .header-weather .wind-medium{color:var(--lg-t-625000,#625000)}
#weather-panel .wind-badge.wind-medium,header .header-weather .header-wind-badge.wind-medium{background:var(--lg-b-ffe34d,#ffe34d);color:var(--lg-t-493c00,#493c00)}
.wind-key span:not(:where([data-hx], [data-hx] *)){padding:4px 8px;border-radius:6px}
#weather-panel .wind-key .wind-medium:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-fff3a6,#fff3a6);color:var(--lg-t-493c00,#493c00)}
#weather-panel .wind-key .wind-medium:before{background:var(--lg-b-ffdc00,#ffdc00);border:1px solid var(--lg-l-9e8400,#9e8400);box-sizing:border-box;width:10px;height:10px;border-radius:2px}
#weather-panel .hour-wind.wind-medium,#weather-panel .hour-card small.wind-medium{background:var(--lg-b-fff3a6,#fff3a6);color:var(--lg-t-493c00,#493c00);border-radius:4px;padding:2px 4px}

/* Consistent badges for all wind ranges. */
#weather-panel .wind-key:not(:where([data-hx], [data-hx] *)){display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
#weather-panel .wind-key span:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;justify-content:center;gap:6px;min-height:28px;padding:5px 9px;border-radius:7px;font-size:var(--hx-text-min);line-height:16px;font-weight:500;box-sizing:border-box}
#weather-panel .wind-key .wind-low:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-d9eddf,#d9eddf);color:var(--lg-t-195c32,#195c32)}
#weather-panel .wind-key .wind-medium:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-fff3a6,#fff3a6);color:var(--lg-t-493c00,#493c00)}
#weather-panel .wind-key .wind-high:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-fbe0e2,#fbe0e2);color:var(--lg-t-95242b,#95242b)}
#weather-panel .wind-key span:before{width:8px;height:8px;flex:0 0 8px;border-radius:50%;border:0;box-sizing:border-box}
#weather-panel .wind-key .wind-low:before{background:var(--lg-b-237342,#237342)}
#weather-panel .wind-key .wind-medium:before{background:var(--lg-b-e5bf00,#e5bf00)}
#weather-panel .wind-key .wind-high:before{background:var(--lg-b-b52e34,#b52e34)}

/* Reserve space for the 60px header controls on phones. */
@media(max-width:1024px){body>header{height:76px;min-height:76px}main{height:calc(100dvh - 76px)}}
@media(max-width:380px){body>header{gap:5px;padding-left:8px;padding-right:8px}body>header .horus-logo{width:32px}body>header #app-menu-button{min-width:70px;padding:0 8px}body>header .header-weather button{min-width:58px}}

.login-logo{display:block;width:96px;height:72px;object-fit:contain;margin:0 auto 16px}#login-gate h2{text-align:center}#account-dialog .login-logo{display:none}

/* Align the logo image box with the 60px Menu button. */
body>header .horus-logo{height:60px;min-height:60px;max-height:60px;object-fit:contain;align-self:center}

/* Foldable outer-screen header: preserve readable values and logo proportions. */
@media(max-width:600px){body>header{height:72px;min-height:72px;padding:6px 8px;gap:6px}main{height:calc(100dvh - 72px)}body>header .brand{flex:0 0 60px;width:60px;min-width:60px;margin:0}body>header .horus-logo{width:60px;height:60px;min-height:60px;max-height:60px}body>header .brand-title{display:none}body>header .header-weather{margin-left:auto;min-width:0;flex:1;height:60px}body>header .header-weather button{min-width:0;flex:1;padding:2px;display:grid}body>header .header-weather small{font-size:var(--hx-text-meta)}body>header .header-weather .header-wind-badge{padding:0 3px}body>header #app-menu-button{width:62px;min-width:62px;padding:0 6px;font-size:var(--hx-text-meta);gap:4px}}
@media(min-width:601px){body>header .horus-logo{width:110px;height:60px;min-height:60px}}
@media(max-width:340px){body>header .brand{flex-basis:50px;width:50px;min-width:50px}body>header .horus-logo{width:50px}body>header #app-menu-button{width:52px;min-width:52px}body>header #app-menu-button>span{display:none}body>header .header-weather small{font-size:var(--hx-text-min)}}

/* Map-first guidance: compact instruction and bottom controls. */
body.driving #driving-panel{position:absolute;inset:0;width:auto;max-width:none;padding:0;margin:0;background:none;border:0;box-shadow:none;pointer-events:none;z-index:30}#driving-panel .drive-banner{position:absolute;top:12px;left:12px;right:12px;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);border-radius:14px;display:flex;align-items:center;gap:14px;padding:14px 16px;box-shadow:0 3px 12px #183d3920;pointer-events:auto}#driving-panel .drive-symbol{font-size:var(--hx-text-display);flex:0 0 30px}#driving-panel .drive-progress{font-size:var(--hx-text-body);line-height:var(--hx-leading-head);display:block}#driving-panel .drive-detail{font-size:var(--hx-text-meta);line-height:var(--hx-leading-body);color:var(--lg-t-e0eadf,#e0eadf);margin-top:5px}#driving-panel .drive-bottom{position:absolute;bottom:12px;left:12px;right:12px;border-radius:14px;background:var(--lg-b-f8faf5,#f8faf5);box-shadow:0 3px 12px #183d3930;padding:12px 16px;pointer-events:auto}#driving-panel .drive-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}#driving-panel .drive-target{font-size:var(--hx-text-label);font-weight:600;margin:0}#driving-panel #drive-exit{width:auto;min-width:64px;min-height:44px;padding:8px 16px;border-radius:9px;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);border:0;font:inherit}#driving-panel .drive-more summary{font-size:var(--hx-text-meta);cursor:pointer;padding:8px 0;color:var(--lg-t-526c5f,#526c5f)}#driving-panel .drive-direction,#driving-panel .drive-warning{font-size:var(--hx-text-meta);margin:6px 0;line-height:var(--hx-leading-body)}#driving-panel .drive-controls{display:flex;margin-top:8px}#driving-panel #drive-north{min-height:44px;font-size:var(--hx-text-meta);padding:8px 14px}#driving-panel #drive-recenter{position:absolute;right:14px;bottom:144px;width:48px;height:48px;min-height:48px;padding:0;border-radius:50%;border:1px solid var(--lg-l-bbcdb9,#bbcdb9);background:var(--lg-b-ffffff,white);color:var(--lg-t-234f40,#234f40);font-size:var(--hx-text-display);pointer-events:auto}#driving-panel .drive-more[open]{max-height:30dvh;overflow:auto}@media(min-width:700px){#driving-panel .drive-banner{right:auto;width:420px}#driving-panel .drive-bottom{right:auto;width:340px}}

.windy-shortcuts{padding:16px;border:1px solid var(--lg-l-cbd8c9,#cbd8c9);border-radius:14px;margin-bottom:20px;background:var(--lg-b-f1f5ed,#f1f5ed)}.windy-shortcuts button{display:block;width:100%;min-height:48px;margin:8px 0;border-radius:var(--hx-radius-card)}.windy-shortcuts .windy-open:not([hidden]){display:block;padding:14px;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);border-radius:var(--hx-radius-card);text-align:center;text-decoration:none}.windy-shortcuts p{font-size:var(--hx-text-meta)}

/* Weather review: consistent controls, compact hierarchy and narrow-screen layout. */
#weather-panel:not(:where([data-hx], [data-hx] *)){width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;padding:20px;border-radius:20px;scroll-padding-top:88px}
#weather-panel .menu-heading:not(:where([data-hx], [data-hx] *)){position:sticky;top:-20px;background:var(--lg-b-f8faf5,#f8faf5);z-index:2;padding:14px 0;border-bottom:1px solid var(--lg-l-d7e1d4,#d7e1d4);margin-bottom:16px}
#weather-panel .menu-heading button:not(:where([data-hx], [data-hx] *)){width:var(--hx-target-icon);height:var(--hx-target-icon);min-height:var(--hx-target-icon);flex-shrink:0}
#weather-panel button:not(:where([data-hx], [data-hx] *)),#weather-panel summary:not(:where([data-hx], [data-hx] *)),#weather-panel a:not(:where([data-hx], [data-hx] *)){touch-action:manipulation}
#weather-panel button:focus-visible,#weather-panel a:focus-visible,#weather-panel summary:focus-visible{outline:3px solid var(--lg-l-387eaa,#387eaa);outline-offset:3px}
#weather-panel button:disabled{opacity:.55;cursor:wait}
#weather-panel .weather-location:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body);font-weight:600;margin:0 0 6px}
#weather-panel .weather-overview>[role=status]{font-size:var(--hx-text-meta);line-height:var(--hx-leading-body)}
#weather-panel .weather-refresh:not(:where([data-hx], [data-hx] *)){min-height:44px;width:auto;padding:8px 18px;border:1px solid var(--lg-l-b7cbb9,#b7cbb9);border-radius:var(--hx-radius-card);background:var(--lg-b-ffffff,#fff);color:var(--lg-t-234f40,#234f40);font:inherit;font-size:var(--hx-text-label)}
#weather-panel .weather-nav{gap:8px;margin:18px 0}
#weather-panel .weather-nav button{min-width:0;min-height:98px;padding:12px 6px;border-radius:12px;font-size:var(--hx-text-label)}
#weather-panel .weather-nav button span{font-size:var(--hx-text-min);line-height:var(--hx-leading-body)}
#weather-panel .weather-nav-icon{width:24px;height:24px;flex-shrink:0}
#weather-panel .windy-shortcuts{padding:16px;background:var(--lg-b-eef4ea,#eef4ea);border:1px solid var(--lg-l-cbd8c9,#cbd8c9);border-radius:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
#weather-panel .windy-shortcuts h3,#weather-panel .windy-shortcuts p,#weather-panel .windy-shortcuts a{grid-column:1/-1;margin:0}
#weather-panel .windy-shortcuts h3{font-size:var(--hx-text-body)}
#weather-panel .windy-shortcuts button{margin:0;min-height:52px;padding:12px 10px;border:1px solid var(--lg-l-b9cbb7,#b9cbb7);background:var(--lg-b-ffffff,white);color:var(--lg-t-234f40,#234f40);font:inherit;font-size:var(--hx-text-label);font-weight:600;border-radius:var(--hx-radius-card)}
#weather-panel .windy-shortcuts button:hover{background:var(--lg-b-e1ecdb,#e1ecdb)}
#weather-panel .windy-status:empty{display:none}
#weather-panel .radar-snapshot{border-top:1px solid var(--lg-l-d3dfcf,#d3dfcf);padding-top:14px}
#weather-panel .radar-snapshot summary{padding:12px 0;font-weight:600;font-size:var(--hx-text-label);cursor:pointer}
#weather-panel .radar-refresh,#weather-panel .lightning-check:not(:where([data-hx], [data-hx] *)){min-height:48px;padding:12px 16px;border:0;border-radius:var(--hx-radius-card);background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);font:inherit;font-weight:600}
#weather-panel .lightning-location{display:flex;gap:8px;border:0;padding:0;flex-wrap:wrap}
#weather-panel .lightning-location legend{font-size:var(--hx-text-meta);margin-bottom:8px}
#weather-panel .lightning-location label{flex:1;padding:12px;border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:var(--hx-radius-card);font-size:var(--hx-text-label);white-space:nowrap}
#weather-panel .lightning-location label:has(input:checked){background:var(--lg-b-e2eddd,#e2eddd);border-color:var(--lg-l-234f40,#234f40)}
#weather-panel .lightning-target:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);overflow-wrap:anywhere}
#weather-panel .hour-card{min-width:88px}#weather-panel .hour-card time{font-size:var(--hx-text-label)}#weather-panel .hour-card small{font-size:var(--hx-text-meta)}
@media(max-width:400px){#weather-panel:not(:where([data-hx], [data-hx] *)){padding:14px}#weather-panel .menu-heading:not(:where([data-hx], [data-hx] *)){top:-14px}#weather-panel .weather-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px}#weather-panel .weather-metrics>div{border:0}#weather-panel .windy-shortcuts{grid-template-columns:1fr}#weather-panel .weather-nav button span{display:none}#weather-panel .weather-nav button{min-height:80px}#weather-panel .daily-card{gap:8px}#weather-panel .daily-condition small{font-size:var(--hx-text-min)}}

/* One radar destination, without nested cards or duplicate controls. */
#weather-panel .windy-shortcuts{padding:0;border:0;background:none;margin:0;gap:12px}
#weather-panel .windy-shortcuts p{color:var(--lg-t-526c5f,#526c5f);font-size:var(--hx-text-meta)}

/* Single-page flight weather workspace. */
#weather-panel:not(:where([data-hx], [data-hx] *)){width:calc(100vw - 32px);max-width:1180px;max-height:calc(100dvh - 32px);padding:0;border-radius:18px}
#weather-panel>.menu-heading:not(:where([data-hx], [data-hx] *)){top:0;padding:14px 20px;margin:0;position:sticky;background:var(--lg-b-f5f7f2,#f5f7f2)}
#weather-panel .weather-eyebrow{font-size:var(--hx-text-min)}#weather-panel .menu-heading h2:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-title)}
#weather-panel .weather-workspace:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:14px;padding:16px;align-items:start}
#weather-panel .weather-workspace>section:not(:where([data-hx], [data-hx] *)){margin:0;padding:16px;min-width:0;background:var(--lg-b-ffffff,white);border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:12px;box-sizing:border-box}
#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){grid-column:1;grid-row:1}
#weather-panel #weather-forecast-view:not(:where([data-hx], [data-hx] *)){grid-column:1;grid-row:2/4}
#weather-panel #weather-radar-view{grid-column:2;grid-row:1}
#weather-panel #weather-lightning-view:not(:where([data-hx], [data-hx] *)){grid-column:2;grid-row:2/4}
#weather-panel .weather-workspace h3:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body);margin:0 0 10px}
#weather-panel .weather-now{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;padding:12px 0;gap:12px}
#weather-panel .weather-now>strong{font-size:var(--hx-text-display);white-space:nowrap}#weather-panel .temperature-unit{font-size:var(--hx-text-title)}
#weather-panel .weather-condition{flex-direction:row;text-align:left;font-size:var(--hx-text-title);font-weight:600;gap:10px}
#weather-panel .weather-metrics{padding:12px 0;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
#weather-panel .weather-metrics small{font-size:var(--hx-text-meta);margin:0}#weather-panel .weather-metrics strong{font-size:var(--hx-text-body)}
#weather-panel .wind-key:not(:where([data-hx], [data-hx] *)){margin:8px 0;gap:6px}#weather-panel .wind-key span:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-min);padding:3px 7px;min-height:24px}
#weather-panel .weather-refresh:not(:where([data-hx], [data-hx] *)){margin:6px 0 0;min-height:40px}
#weather-panel .weather-footnote:not(:where([data-hx], [data-hx] *)){margin:8px 0 0;font-size:var(--hx-text-meta)}
#weather-panel .hourly-cards{margin:0;gap:8px}#weather-panel .hour-card{padding:10px 8px;min-width:78px}
#weather-panel .forecast-hint{font-size:var(--hx-text-min);font-weight:500}#weather-panel .forecast-units{font-size:var(--hx-text-meta);margin:8px 0}
#weather-panel .weather-outlook:not(:where([data-hx], [data-hx] *)){border-top:1px solid var(--lg-l-d6dfd5,#d6dfd5);margin-top:12px;padding-top:8px}
#weather-panel .weather-outlook summary:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-label);font-weight:600;padding:10px 0;cursor:pointer}
#weather-panel .lightning-panel fieldset{margin:8px 0}#weather-panel .lightning-panel>p:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);margin:6px 0}
#weather-panel .lightning-results:not(:where([data-hx], [data-hx] *)){margin:10px 0;padding:10px;border-radius:8px;font-size:var(--hx-text-meta)}
#weather-panel .lightning-panel>small:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-meta);line-height:var(--hx-leading-body);margin:8px 0}
#weather-panel .lightning-panel>a:not(:where([data-hx], [data-hx] *)),#weather-panel>a:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-min);display:block;margin:8px 16px 12px}
#weather-panel .lightning-panel>a:not(:where([data-hx], [data-hx] *)){margin:8px 0 0}#weather-panel .lightning-card{padding:10px 6px}#weather-panel .lightning-number{font-size:var(--hx-text-display)}
@media(max-width:760px){#weather-panel:not(:where([data-hx], [data-hx] *)){width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:12px}#weather-panel .weather-workspace:not(:where([data-hx], [data-hx] *)){display:flex;flex-direction:column;padding:10px;gap:10px}#weather-panel .weather-workspace>section:not(:where([data-hx], [data-hx] *)){width:100%;padding:12px}#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){order:0}#weather-panel #weather-forecast-view:not(:where([data-hx], [data-hx] *)){order:1}#weather-panel #weather-radar-view{order:2}#weather-panel #weather-lightning-view:not(:where([data-hx], [data-hx] *)){order:3}#weather-panel>.menu-heading:not(:where([data-hx], [data-hx] *)){padding:10px 14px}#weather-panel .weather-condition{font-size:var(--hx-text-body)}#weather-panel .weather-now>strong{font-size:var(--hx-text-display)}}
@media(max-width:400px){#weather-panel .weather-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#weather-panel .windy-shortcuts{grid-template-columns:1fr 1fr}#weather-panel .windy-shortcuts button{font-size:var(--hx-text-meta);padding:10px 6px}#weather-panel .wind-key span:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-min)}}

/* Use the outer screen width without stacked dialog padding. */
@media(max-width:760px){#weather-panel:not(:where([data-hx], [data-hx] *)){padding:0!important;width:calc(100vw - 8px);max-width:none;max-height:calc(100dvh - 8px)}#weather-panel .weather-workspace:not(:where([data-hx], [data-hx] *)){padding:4px;gap:8px}#weather-panel .weather-workspace>section:not(:where([data-hx], [data-hx] *)){padding:8px;margin:0}#weather-panel>.menu-heading:not(:where([data-hx], [data-hx] *)){padding:10px 12px}#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){margin:0}#weather-panel .wind-key:not(:where([data-hx], [data-hx] *)){gap:4px}#weather-panel .wind-key span:not(:where([data-hx], [data-hx] *)){padding:3px 5px}}
#weather-wtg-picker:not(:where([data-hx], [data-hx] *)){box-sizing:border-box;width:min(440px,calc(100vw - 20px));max-height:80dvh;padding:16px;border:1px solid var(--lg-l-cbd8c9,#cbd8c9);border-radius:14px;background:var(--lg-b-f8faf5,#f8faf5);color:var(--lg-t-183d39,#183d39)}
#weather-wtg-picker:not(:where([data-hx], [data-hx] *))::backdrop{background:#183d3960}#weather-wtg-picker .picker-heading:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;justify-content:space-between;gap:12px}#weather-wtg-picker h3:not(:where([data-hx], [data-hx] *)){margin:0;font-size:var(--hx-text-title)}#weather-wtg-picker button:not(:where([data-hx], [data-hx] *)){min-height:48px;border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:8px;background:var(--lg-b-ffffff,white);color:inherit;font:inherit;padding:10px 14px}#weather-wtg-picker input:not(:where([data-hx], [data-hx] *)){box-sizing:border-box;width:100%;font:inherit;padding:12px;margin:12px 0;border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:8px}#weather-wtg-picker .picker-list:not(:where([data-hx], [data-hx] *)){display:grid;gap:8px;max-height:50dvh;overflow:auto}#weather-wtg-picker .picker-list button:not(:where([data-hx], [data-hx] *)){text-align:left}#weather-wtg-picker button:focus-visible{outline:3px solid var(--lg-l-387eaa,#387eaa)}

#weather-wtg-picker label:not(:where([data-hx], [data-hx] *)){display:block;margin-top:14px;font-size:var(--hx-text-meta)}#weather-wtg-picker select:not(:where([data-hx], [data-hx] *)){box-sizing:border-box;width:100%;min-height:48px;margin-top:6px;padding:10px;font:inherit;color:inherit;background:var(--lg-b-ffffff,white);border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:8px}#weather-panel .windy-shortcuts .weather-change-wtg{grid-column:1/-1;min-height:44px;background:transparent;font-weight:500;font-size:var(--hx-text-meta)}

#weather-panel .weather-location-step:not(:where([data-hx], [data-hx] *)){padding:20px;margin:0}#weather-panel .weather-location-step button:not(:where([data-hx], [data-hx] *)){display:block;width:100%;min-height:52px;margin:12px 0;border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:var(--hx-radius-card);background:var(--lg-b-ffffff,white);color:var(--lg-t-183d39,#183d39);font:inherit}#weather-panel .weather-change-location{margin:12px 16px 0;padding:10px 14px;min-height:44px;border:1px solid var(--lg-l-bccdb9,#bccdb9);border-radius:var(--hx-radius-card);background:var(--lg-b-ffffff,white);color:var(--lg-t-183d39,#183d39);font:inherit}#weather-panel .open-windy{width:100%;min-height:48px;border:0;border-radius:var(--hx-radius-card);background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);font:inherit}

/* Combined driving card, with map kept visible below. */
#driving-panel .drive-banner{display:block;box-sizing:border-box;max-width:480px;padding:12px 14px}
#driving-panel .drive-summary{margin-bottom:6px}#driving-panel .drive-target{font-size:var(--hx-text-label);color:var(--lg-t-ffffff,white)}
#driving-panel #drive-exit{min-height:40px;padding:6px 12px;background:#ffffff20;color:var(--lg-t-ffffff,white);border:1px solid #ffffff60}
#driving-panel .drive-progress{font-size:var(--hx-text-title)}#driving-panel .drive-trip{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:8px 0;font-size:var(--hx-text-label);font-weight:600}
#driving-panel .drive-speed{margin-left:auto;background:#ffffff20;border-radius:6px;padding:4px 7px;font-size:var(--hx-text-meta)}
#driving-panel .drive-actions{display:flex;gap:8px;margin-top:10px}
#driving-panel .drive-actions button,#driving-panel #drive-north{position:static;width:auto;height:auto;min-height:44px;flex:1;padding:8px 12px;border:1px solid #ffffff60;border-radius:8px;background:transparent;color:var(--lg-t-ffffff,white);font:inherit;font-size:var(--hx-text-label)}
#driving-panel .drive-more summary{color:var(--lg-t-e0eadf,#e0eadf);padding:8px 0 0}#driving-panel .drive-more small{display:block;font-size:var(--hx-text-min);line-height:var(--hx-leading-body);margin-top:8px}
@media(max-width:600px){#driving-panel .drive-banner{left:8px;right:8px;top:8px;width:auto;max-width:none}#driving-panel .drive-detail{font-size:var(--hx-text-meta)}}

/* Compact guidance with separate map controls. */
body.driving #driving-panel .drive-banner{padding:10px 12px;border-radius:12px}
body.driving #driving-panel .drive-summary{margin-bottom:3px}
body.driving #driving-panel .drive-target{font-size:var(--hx-text-label)}
body.driving #driving-panel .drive-progress{font-size:var(--hx-text-body);line-height:var(--hx-leading-head)}
body.driving #driving-panel .drive-trip{margin:6px 0;gap:10px;font-size:var(--hx-text-label)}
body.driving #driving-panel .drive-detail{font-size:var(--hx-text-meta);margin-top:3px}
body.driving #driving-panel .drive-more summary{font-size:var(--hx-text-meta);padding-top:5px}
body.driving #driving-panel .drive-map-buttons{position:absolute;right:12px;bottom:24px;display:grid;gap:10px;pointer-events:auto}
body.driving #driving-panel .drive-map-buttons button{position:static;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-height:48px;padding:0;border-radius:12px;border:1px solid var(--lg-l-b7c9bc,#b7c9bc);background:var(--lg-b-f8faf5,#f8faf5);color:var(--lg-t-234f40,#234f40);box-shadow:0 2px 6px #183d3920}
body.driving #driving-panel .drive-map-buttons svg{width:24px;height:24px;flex-shrink:0}
body.driving #driving-panel .drive-map-buttons button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:3px}

/* Navigation hierarchy: destination, distance, then arrival. */
body.driving #driving-panel .drive-banner{background:var(--lg-b-214c3e,#214c3e);padding:14px 16px;border-radius:16px;box-shadow:0 4px 16px #183d3925}
body.driving #driving-panel .drive-summary{display:flex;align-items:center;margin:0 0 10px;gap:12px}
body.driving #driving-panel .drive-target{font-size:var(--hx-text-label);font-weight:600;letter-spacing:var(--hx-tracking-caps);color:var(--lg-t-dce9e0,#dce9e0)}
body.driving #driving-panel #drive-exit{min-width:44px;min-height:44px;padding:6px 12px;font-size:var(--hx-text-label);background:#ffffff12;border:1px solid #ffffff40;border-radius:8px}
body.driving #driving-panel .drive-main{display:flex;align-items:center;justify-content:space-between;gap:12px}
body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title);line-height:var(--hx-leading-tight);font-weight:700;min-width:0}
body.driving #driving-panel .drive-speed{flex-shrink:0;margin:0;padding:6px 8px;font-size:var(--hx-text-meta);font-weight:600;background:#ffffff15;border:1px solid #ffffff25;border-radius:8px;white-space:nowrap}
body.driving #driving-panel .drive-trip{display:flex;gap:16px;font-size:var(--hx-text-label);line-height:var(--hx-leading-body);margin:8px 0 0;color:var(--lg-t-ffffff,#fff)}
body.driving #driving-panel .drive-duration{color:var(--lg-t-dce9e0,#dce9e0)}
body.driving #driving-panel .drive-detail{font-size:var(--hx-text-meta);color:var(--lg-t-dce9e0,#dce9e0);margin-top:8px}
body.driving #driving-panel .drive-more summary{font-size:var(--hx-text-min);color:var(--lg-t-c1d6c9,#c1d6c9);padding-top:8px}
body.driving #driving-panel .drive-map-buttons{position:absolute;right:12px;bottom:24px;display:flex;flex-direction:column;gap:0;padding:0;background:var(--lg-b-fbfdf9,#fbfdf9);border:1px solid var(--lg-l-b9ccbc,#b9ccbc);border-radius:14px;box-shadow:0 3px 10px #183d3925;overflow:hidden}
body.driving #driving-panel .drive-map-buttons #drive-recenter,body.driving #driving-panel .drive-map-buttons #drive-overview{position:static;inset:auto;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;flex:none;border:0;border-radius:0;background:transparent;color:var(--lg-t-214c3e,#214c3e);box-shadow:none;font-size:0}
body.driving #driving-panel .drive-map-buttons #drive-overview{border-top:1px solid var(--lg-l-d5e0d3,#d5e0d3)}
body.driving #driving-panel .drive-map-buttons button:hover{background:var(--lg-b-e6eee2,#e6eee2)}
@media(max-width:400px){body.driving #driving-panel .drive-banner{padding:10px 12px}body.driving #driving-panel .drive-summary{margin-bottom:6px}body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title)}body.driving #driving-panel .drive-trip{font-size:var(--hx-text-label)}}

/* Minimal guidance: route essentials only, speed on the map. */
body.driving #driving-panel .drive-banner{padding:10px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}
body.driving #driving-panel .drive-summary{grid-column:1/-1;margin:0;min-height:36px}
body.driving #driving-panel .drive-target{font-size:var(--hx-text-label);letter-spacing:0}
body.driving #driving-panel #drive-exit{min-height:44px;padding:6px 10px;border:0;background:transparent;color:var(--lg-t-e1ece5,#e1ece5);text-decoration:underline}
body.driving #driving-panel .drive-main{grid-column:1/-1}
body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title);line-height:var(--hx-leading-tight)}
body.driving #driving-panel .drive-trip{grid-column:1;display:flex;flex-wrap:wrap;margin:4px 0 0;gap:10px;font-size:var(--hx-text-label);align-self:center}
body.driving #driving-panel .drive-detail{grid-column:1/-1;margin-top:6px;padding-top:6px;border-top:1px solid #ffffff25}
body.driving #driving-panel .drive-detail[hidden]{display:none}
body.driving #driving-panel .drive-more{grid-column:2;grid-row:3;align-self:center}
body.driving #driving-panel .drive-more summary{padding:6px 0;font-size:var(--hx-text-meta)}
body.driving #driving-panel .drive-more[open]{grid-column:1/-1;grid-row:auto}
body.driving #driving-panel>.drive-speed{position:absolute;left:12px;bottom:24px;display:block;background:var(--lg-b-fbfdf9,#fbfdf9);color:var(--lg-t-214c3e,#214c3e);border:1px solid var(--lg-l-b9ccbc,#b9ccbc);border-radius:var(--hx-radius-card);padding:10px;font-size:var(--hx-text-label);box-shadow:0 2px 6px #183d3920}

body.driving #driving-panel{font-family:"Horus Avenir","Avenir Next","Segoe UI",Arial,sans-serif}
body.driving #driving-panel .drive-target{font-size:var(--hx-text-body);font-weight:600}
body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title);font-weight:700}
body.driving #driving-panel .drive-trip{font-size:var(--hx-text-body);font-weight:600;font-variant-numeric:tabular-nums}
body.driving #driving-panel .drive-detail{font-size:var(--hx-text-label)}
body.driving #driving-panel .drive-more summary{font-size:var(--hx-text-label)}
body.driving #driving-panel .drive-map-buttons #drive-north{position:static;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-height:48px;flex:none;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:var(--lg-t-214c3e,#214c3e);font-weight:600;font-size:var(--hx-text-body);font-family:var(--hx-font)}
body.driving #driving-panel .drive-map-buttons #drive-recenter{border-top:1px solid var(--lg-l-d5e0d3,#d5e0d3)}

/* Separate navigation actions to reduce accidental taps. */
body.driving #driving-panel .drive-more{grid-column:1/-1;grid-row:auto;justify-self:start;margin-top:8px}
body.driving #driving-panel .drive-more summary{box-sizing:border-box;min-height:44px;min-width:72px;padding:12px 8px;font-size:var(--hx-text-label);cursor:pointer}
body.driving #driving-panel #drive-exit{min-width:64px;min-height:48px;padding:10px 12px;border:1px solid #ffffff40;border-radius:8px;text-decoration:none}
body.driving #driving-panel .drive-more[open]{justify-self:stretch}

/* Shared action row; details on a distinct light surface. */
body.driving #driving-panel .drive-banner{position:absolute;display:grid;grid-template-columns:minmax(0,1fr) auto}
body.driving #driving-panel .drive-summary{display:contents}
body.driving #driving-panel .drive-target{grid-column:1/-1;grid-row:1;padding:2px 0 6px}
body.driving #driving-panel .drive-main{grid-column:1/-1;grid-row:2}
body.driving #driving-panel .drive-trip{grid-column:1/-1;grid-row:3}
body.driving #driving-panel .drive-detail{grid-column:1/-1;grid-row:4}
body.driving #driving-panel .drive-more{display:contents}
body.driving #driving-panel .drive-more summary{grid-column:1;grid-row:5;justify-self:start;min-height:44px;min-width:72px;padding:12px 0;margin:0}
body.driving #driving-panel #drive-exit{grid-column:2;grid-row:5;justify-self:end;align-self:center;min-height:44px;min-width:64px;padding:8px 12px}
body.driving #driving-panel .drive-more[open]{display:contents}
body.driving #driving-panel .drive-info{grid-column:1/-1;grid-row:6;background:var(--lg-b-eef3e9,#eef3e9);color:var(--lg-t-234f40,#234f40);border-radius:9px;padding:10px 12px;margin-top:4px;max-height:25dvh;overflow:auto}
body.driving #driving-panel .drive-info .drive-direction,body.driving #driving-panel .drive-info .drive-warning{color:var(--lg-t-234f40,#234f40);font-size:var(--hx-text-label);line-height:var(--hx-leading-body);margin:0}
body.driving #driving-panel .drive-info .drive-warning:not(:empty){margin-top:5px}
body.driving #driving-panel .drive-more:not([open]) .drive-info{display:none}

body.driving #driving-panel .drive-map-buttons #drive-north svg{width:24px;height:24px;flex-shrink:0}body.driving #driving-panel .drive-map-buttons #drive-north[aria-pressed=true]{background:var(--lg-b-dce9d7,#dce9d7);color:var(--lg-t-183d39,#183d39)}

/* Clean two-row navigation card. */
body.driving #driving-panel .drive-banner{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 10px;padding:12px 14px;border-radius:14px}
body.driving #driving-panel .drive-target{grid-column:1;grid-row:1;align-self:center;padding:0;font-size:var(--hx-text-label);font-weight:500;letter-spacing:0}
body.driving #driving-panel .drive-more summary{grid-column:2;grid-row:1;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center;font-size:var(--hx-text-title);border-radius:8px;list-style:none;margin:0;color:var(--lg-t-dce9e0,#dce9e0)}
body.driving #driving-panel .drive-more summary::-webkit-details-marker{display:none}
body.driving #driving-panel #drive-exit{grid-column:3;grid-row:1;min-width:56px;min-height:44px;padding:6px 10px;font-size:var(--hx-text-label);background:#ffffff0d;border:1px solid #ffffff30}
body.driving #driving-panel .drive-main{grid-column:1/-1;grid-row:2;padding-top:8px;border-top:1px solid #ffffff20}
body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title);font-weight:600;line-height:var(--hx-leading-tight)}
body.driving #driving-panel .drive-trip{grid-column:1/-1;grid-row:3;margin:0;gap:12px;font-size:var(--hx-text-label);font-weight:500;line-height:var(--hx-leading-body)}
body.driving #driving-panel .drive-duration{font-weight:500;color:var(--lg-t-d5e3db,#d5e3db)}
body.driving #driving-panel .drive-detail{grid-column:1/-1;grid-row:4}
body.driving #driving-panel .drive-info{grid-column:1/-1;grid-row:5}
@media(min-width:480px){body.driving #driving-panel .drive-main{grid-column:1;grid-row:2;border:0;padding:0}body.driving #driving-panel .drive-trip{grid-column:2/4;grid-row:2;align-self:center;justify-content:flex-end;font-size:var(--hx-text-label);gap:8px}body.driving #driving-panel .drive-progress{font-size:var(--hx-text-title)}}

/* Navigation reference layout: destination above, trip progress below. */
body.driving #driving-panel .drive-destination-bar{position:absolute;top:10px;left:12px;right:12px;max-width:460px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;background:var(--lg-b-214c3e,#214c3e);color:var(--lg-t-ffffff,white);border-radius:12px;padding:4px 14px;pointer-events:auto;box-shadow:0 2px 8px #183d3920}
body.driving #driving-panel .drive-destination-bar .drive-target{font-size:var(--hx-text-body);font-weight:600;padding:0}
body.driving #driving-panel .drive-destination-bar .drive-more{display:block;position:relative;margin:0}
body.driving #driving-panel .drive-destination-bar summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;margin:0;font-size:var(--hx-text-title);list-style:none;cursor:pointer}
body.driving #driving-panel .drive-destination-bar .drive-info{position:absolute;right:0;top:48px;width:260px;max-width:75vw;background:var(--lg-b-f4f7ef,#f4f7ef);color:var(--lg-t-234f40,#234f40);border:1px solid var(--lg-l-c8d7c5,#c8d7c5);border-radius:var(--hx-radius-card);padding:12px;box-shadow:0 4px 12px #183d3930;z-index:2}
body.driving #driving-panel .drive-trip-bar{position:absolute;bottom:10px;left:12px;right:12px;max-width:460px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--lg-b-fbfcf8,#fbfcf8);color:var(--lg-t-183d39,#183d39);border:1px solid var(--lg-l-d0ddcc,#d0ddcc);border-radius:14px;padding:12px 16px;pointer-events:auto;box-shadow:0 3px 12px #183d3925}
body.driving #driving-panel .drive-trip-copy{min-width:0}
body.driving #driving-panel .drive-trip-bar .drive-duration{display:block;font-size:var(--hx-text-display);font-weight:700;color:var(--lg-t-214c3e,#214c3e);line-height:var(--hx-leading-tight)}
body.driving #driving-panel .drive-trip-secondary{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px}
body.driving #driving-panel .drive-trip-bar .drive-progress,body.driving #driving-panel .drive-trip-bar .drive-eta{font-size:var(--hx-text-label);font-weight:500;line-height:var(--hx-leading-body);color:var(--lg-t-52695d,#52695d)}
body.driving #driving-panel .drive-trip-bar #drive-exit{flex-shrink:0;min-width:60px;min-height:48px;border:1px solid var(--lg-l-bccfbd,#bccfbd);background:var(--lg-b-eef3e9,#eef3e9);color:var(--lg-t-234f40,#234f40);border-radius:var(--hx-radius-card);font-size:var(--hx-text-label);text-decoration:none}
body.driving #driving-panel .drive-trip-bar .drive-detail{color:var(--lg-t-864b20,#864b20);font-size:var(--hx-text-meta);border:0;padding:0;margin-top:6px}
body.driving #driving-panel .drive-map-buttons{bottom:130px}
body.driving #driving-panel>.drive-speed{bottom:130px}

/* Tesla-inspired light route panel, adapted for a narrow phone. */
body.driving #driving-panel .drive-route-panel{position:absolute;top:10px;left:12px;right:12px;max-width:460px;background:var(--lg-b-fafbf9,#fafbf9);color:var(--lg-t-202720,#202720);border-radius:12px;box-shadow:0 4px 18px #183d3925;pointer-events:auto;padding:0 16px;box-sizing:border-box}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{position:static;display:flex;max-width:none;padding:4px 0;border-radius:0;background:transparent;color:var(--lg-t-202720,#202720);box-shadow:none;border-bottom:1px solid var(--lg-l-dde2da,#dde2da)}
body.driving #driving-panel .drive-route-panel .drive-target{color:var(--lg-t-202720,#202720);font-size:var(--hx-text-body);font-weight:600}
body.driving #driving-panel .drive-route-panel summary{color:var(--lg-t-627064,#627064)}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{position:static;max-width:none;border:0;box-shadow:none;background:transparent;padding:12px 0;gap:12px;border-radius:0;align-items:center}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{flex:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
body.driving #driving-panel .drive-route-panel .drive-duration{font-size:var(--hx-text-title);line-height:var(--hx-leading-tight);color:var(--lg-t-202720,#202720);font-weight:600;white-space:nowrap}
body.driving #driving-panel .drive-route-panel .drive-trip-secondary{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0}
body.driving #driving-panel .drive-route-panel .drive-progress,body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-label);color:var(--lg-t-5b665e,#5b665e);font-weight:500}
body.driving #driving-panel .drive-route-panel #drive-exit{min-width:56px;min-height:44px;padding:8px;border:0;background:var(--lg-b-e9ede6,#e9ede6);color:var(--lg-t-202720,#202720);border-radius:8px}
body.driving #driving-panel .drive-route-panel .drive-detail{flex-basis:100%;margin:4px 0 0}
body.driving #driving-panel .drive-map-buttons,body.driving #driving-panel>.drive-speed{bottom:24px}

/* Bottom-left trip card: green route header, white arrival section. */
body.driving #driving-panel .drive-route-panel{top:auto;bottom:12px;left:12px;right:auto;width:340px;max-width:calc(100% - 84px);padding:0;overflow:visible;background:var(--lg-b-fafbf9,#fafbf9);border-radius:12px}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 14px;background:var(--lg-b-214c3e,#214c3e);border:0;border-radius:12px 12px 0 0}
body.driving #driving-panel .drive-route-panel .drive-target,body.driving #driving-panel .drive-route-panel .drive-progress{color:var(--lg-t-f2f7f1,#f2f7f1);font-size:var(--hx-text-label);font-weight:500;line-height:var(--hx-leading-head)}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{padding:12px 14px;gap:10px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
body.driving #driving-panel .drive-route-panel .drive-duration{font-size:var(--hx-text-title);font-weight:600}
body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-label);color:var(--lg-t-52695d,#52695d)}
body.driving #driving-panel .drive-route-panel .drive-more,body.driving #driving-panel .drive-route-panel .drive-more[open]{display:block;position:static;margin:0;max-height:none;overflow:visible;padding:0 14px 6px}
body.driving #driving-panel .drive-route-panel .drive-more summary{display:list-item;width:auto;height:auto;min-width:0;min-height:44px;box-sizing:border-box;padding:12px 0;list-style:disclosure-closed;color:var(--lg-t-52695d,#52695d);font-size:var(--hx-text-meta)}
body.driving #driving-panel .drive-route-panel .drive-more[open] summary{list-style:disclosure-open}
body.driving #driving-panel .drive-route-panel .drive-info{position:static;width:auto;max-width:none;max-height:25dvh;overflow:auto;display:block;margin:0 0 8px;padding:10px;background:var(--lg-b-eaf0e5,#eaf0e5);border:0;border-radius:8px;color:var(--lg-t-234f40,#234f40);box-shadow:none}
body.driving #driving-panel .drive-route-panel .drive-more:not([open]) .drive-info{display:none}
body.driving #driving-panel>.drive-speed{bottom:auto;top:12px;left:12px}

/* Align trip readings into labelled columns. */
body.driving #driving-panel .drive-route-panel .drive-destination-bar{gap:3px;padding:12px 14px}
body.driving #driving-panel .drive-route-panel .drive-target{font-size:var(--hx-text-label);font-weight:600}
body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-meta);font-weight:500;color:var(--lg-t-dce9e0,#dce9e0)}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{display:flex;align-items:center;padding:12px 14px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;flex:1}
body.driving #driving-panel .drive-time-cell{display:flex;flex-direction:column;gap:4px;min-width:0}
body.driving #driving-panel .drive-time-cell small{font-size:var(--hx-text-min);color:var(--lg-t-617065,#617065);line-height:var(--hx-leading-head);margin:0}
body.driving #driving-panel .drive-route-panel .drive-duration,body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-body);font-weight:600;line-height:var(--hx-leading-head);white-space:nowrap;color:var(--lg-t-214c3e,#214c3e);font-variant-numeric:tabular-nums}
body.driving #driving-panel .drive-route-panel .drive-detail{grid-column:1/-1}
@media(max-width:400px){body.driving #driving-panel .drive-route-panel .drive-trip-bar{flex-wrap:wrap}body.driving #driving-panel .drive-route-panel .drive-trip-copy{flex-basis:100%}body.driving #driving-panel .drive-route-panel #drive-exit{margin-left:auto}}

/* Single-line destination and map-level driving status. */
body.driving #driving-panel .drive-route-panel .drive-destination-bar{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}
body.driving #driving-panel .drive-route-panel .drive-target{font-size:var(--hx-text-meta);min-width:0}
body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-meta);text-align:right;white-space:nowrap}
body.driving #driving-panel .drive-map-status{position:absolute;top:12px;left:12px;max-width:calc(100% - 24px);box-sizing:border-box;border:1px solid var(--lg-l-c6d5c2,#c6d5c2);border-radius:var(--hx-radius-card);background:var(--lg-b-f8faf5,#f8faf5);padding:9px 12px;box-shadow:0 2px 8px #183d3920;color:var(--lg-t-214c3e,#214c3e)}
body.driving #driving-panel .drive-road-status{font-size:var(--hx-text-meta);color:var(--lg-t-795421,#795421);margin-bottom:6px;line-height:var(--hx-leading-body)}
body.driving #driving-panel .drive-live-readings{display:flex;gap:14px;align-items:center}
body.driving #driving-panel .drive-map-status .drive-speed{position:static;background:none;border:0;border-radius:0;padding:0;margin:0;font-size:var(--hx-text-body);font-weight:600;box-shadow:none;color:var(--lg-t-214c3e,#214c3e)}
body.driving #driving-panel .drive-gps{font-size:var(--hx-text-meta);color:var(--lg-t-52695d,#52695d)}

/* Keep the bottom card shallow and reserve space for the car. */
body.driving #driving-panel .drive-route-panel .drive-trip-bar{flex-wrap:nowrap!important;padding:10px 14px;gap:12px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{flex:1 1 auto!important;width:auto;gap:8px;min-width:0}
body.driving #driving-panel .drive-route-panel #drive-exit{margin:0!important;min-width:48px;min-height:44px;flex:0 0 auto;padding:6px 10px}
body.driving #driving-panel .drive-route-panel .drive-more{padding:0 14px 0!important}
body.driving #driving-panel .drive-route-panel .drive-more summary{min-height:36px;height:36px;padding:8px 0;font-size:var(--hx-text-meta)}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{padding:8px 14px}
body.driving #driving-panel .drive-route-panel .drive-duration,body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-body)}

/* Align the bottom route card with the three map controls. */
body.driving #driving-panel .drive-route-panel{bottom:12px;min-height:146px;display:flex;flex-direction:column;justify-content:center}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{flex:0 0 auto}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{flex:1;align-items:center}
body.driving #driving-panel .drive-map-buttons{bottom:12px;height:146px;box-sizing:border-box;justify-content:center}
body.driving #driving-panel .drive-map-buttons button{box-sizing:border-box}

/* Two matched lower controls, separate compass. */
body.driving #driving-panel .drive-route-panel{min-height:98px;height:auto;justify-content:flex-start}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{padding:7px 12px}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{padding:7px 12px;min-height:62px;box-sizing:border-box}
body.driving #driving-panel .drive-map-buttons{height:98px;bottom:12px}
body.driving #driving-panel .drive-map-buttons #drive-recenter{border-top:0}
body.driving #driving-panel>#drive-north{position:absolute;top:12px;right:12px;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-height:48px;padding:0;border:1px solid var(--lg-l-b9ccbc,#b9ccbc);border-radius:12px;background:var(--lg-b-fbfdf9,#fbfdf9);color:var(--lg-t-214c3e,#214c3e);box-shadow:0 2px 8px #183d3920;pointer-events:auto}
body.driving #driving-panel>#drive-north[aria-pressed=true]{background:var(--lg-b-dce9d7,#dce9d7)}
body.driving #driving-panel>#drive-north svg{width:24px;height:24px}
body.driving #driving-panel .drive-map-status{max-width:calc(100% - 84px)}

/* Keep Exit away from map controls and prioritise readable trip values. */
body.driving #driving-panel .drive-route-panel .drive-trip-bar{flex-direction:row-reverse;gap:12px}
body.driving #driving-panel .drive-route-panel #drive-exit{min-width:48px;min-height:48px;font-size:var(--hx-text-label)}
body.driving #driving-panel .drive-route-panel .drive-target{font-size:var(--hx-text-label);font-weight:600}
body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-meta)}
body.driving #driving-panel .drive-time-cell small{font-size:var(--hx-text-meta)}
body.driving #driving-panel .drive-route-panel .drive-duration,body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-title);font-weight:600}

/* Centre the paired time readings in the space beside Exit. */
body.driving #driving-panel .drive-route-panel .drive-trip-copy{display:grid;grid-template-columns:max-content max-content;justify-content:center;align-content:center;align-items:center;column-gap:18px;flex:1 1 auto!important}
body.driving #driving-panel .drive-time-cell{align-items:center;text-align:center}
body.driving #driving-panel .drive-route-panel .drive-detail{text-align:center}
@media(max-width:400px){body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:10px}}

body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:28px}
@media(max-width:400px){body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:20px}}

/* Match the top status and compass control heights. */
body.driving #driving-panel .drive-map-status{min-height:64px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
body.driving #driving-panel>#drive-north{height:64px;min-height:64px;box-sizing:border-box;top:12px}

/* Single-line driving status. */
body.driving #driving-panel .drive-map-status{height:48px;min-height:48px;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;padding:8px 10px;white-space:nowrap}
body.driving #driving-panel .drive-road-status{margin:0;font-size:var(--hx-text-min);overflow:hidden;text-overflow:ellipsis;min-width:0}
body.driving #driving-panel .drive-live-readings{gap:10px;flex-shrink:0}
body.driving #driving-panel .drive-map-status .drive-speed{font-size:var(--hx-text-body)}
body.driving #driving-panel .drive-gps{font-size:var(--hx-text-meta)}
body.driving #driving-panel>#drive-north{height:48px;min-height:48px}
@media(max-width:400px){body.driving #driving-panel .drive-map-status{gap:6px;padding:8px}body.driving #driving-panel .drive-live-readings{gap:6px}body.driving #driving-panel .drive-road-status{font-size:var(--hx-text-min)}}

/* Final navigation polish: consistent surfaces, type and spacing. */
body.driving #driving-panel{--nav-ink:#214c3e;--nav-paper:#fafcf8;--nav-border:#c4d3c2;font-family:"Horus Avenir","Avenir Next",sans-serif}
body.driving #driving-panel .drive-route-panel{background:var(--nav-paper);border-radius:12px;box-shadow:0 3px 12px #183d3920;min-height:98px}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{padding:8px 12px;gap:8px;background:var(--nav-ink);border-radius:12px 12px 0 0}
body.driving #driving-panel .drive-route-panel .drive-target{font-size:var(--hx-text-label);line-height:20px;font-weight:600}
body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-meta);line-height:20px;color:var(--lg-t-e0ebe3,#e0ebe3);font-weight:500}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{padding:8px 10px;gap:10px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:22px;align-content:center}
body.driving #driving-panel .drive-time-cell{gap:3px}
body.driving #driving-panel .drive-time-cell small{font-size:var(--hx-text-meta);font-weight:500;line-height:16px;color:var(--lg-t-5a6a60,#5a6a60)}
body.driving #driving-panel .drive-route-panel .drive-duration,body.driving #driving-panel .drive-route-panel .drive-eta{font-size:var(--hx-text-title);line-height:24px;letter-spacing:0;font-weight:600;color:var(--nav-ink)}
body.driving #driving-panel .drive-route-panel #drive-exit{background:var(--lg-b-edf2e9,#edf2e9);border:1px solid var(--lg-l-d2dece,#d2dece);border-radius:8px;color:var(--nav-ink);font-size:var(--hx-text-label);font-weight:500;min-height:48px}
body.driving #driving-panel .drive-map-status,body.driving #driving-panel>#drive-north,body.driving #driving-panel .drive-map-buttons{background:var(--nav-paper);border-color:var(--nav-border);box-shadow:0 2px 8px #183d391a;border-radius:12px}
body.driving #driving-panel .drive-map-status{gap:10px;padding:8px 10px}
body.driving #driving-panel .drive-road-status{font-size:var(--hx-text-meta);color:var(--lg-t-71551e,#71551e);font-weight:500}
body.driving #driving-panel .drive-map-status .drive-speed{font-size:var(--hx-text-body);font-weight:600;line-height:24px}
body.driving #driving-panel .drive-gps{font-size:var(--hx-text-meta);font-weight:500;color:var(--lg-t-52695d,#52695d)}
body.driving #driving-panel button:active{filter:brightness(.94)}
body.driving #driving-panel button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:2px}
@media(max-width:400px){body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:16px}body.driving #driving-panel .drive-route-panel .drive-target{font-size:var(--hx-text-meta)}body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-min)}body.driving #driving-panel .drive-map-status{gap:8px}body.driving #driving-panel .drive-road-status{font-size:var(--hx-text-meta)}}

/* Secondary road note stays near route information. */
body.driving #driving-panel .drive-route-panel>.drive-road-status{position:absolute;bottom:calc(100% + 6px);left:0;margin:0;padding:3px 7px;background:#f8faf5eF;border-radius:5px;font-size:var(--hx-text-min);font-weight:500;color:var(--lg-t-647064,#647064);white-space:nowrap;max-width:100%}
body.driving #driving-panel .drive-route-panel>.drive-road-status[hidden]{display:none}

/* Distinguish speed from GPS accuracy without implying safety thresholds. */
body.driving #driving-panel .drive-map-status .drive-speed{color:var(--lg-t-174f78,#174f78);background:var(--lg-b-e3eff8,#e3eff8);border-radius:6px;padding:3px 7px;line-height:24px}
body.driving #driving-panel .drive-map-status .drive-gps{color:var(--lg-t-405c49,#405c49);background:var(--lg-b-e7eee3,#e7eee3);border-radius:6px;padding:5px 7px;line-height:20px}

/* Match trip-time badges to the speed and GPS visual language. */
body.driving #driving-panel .drive-route-panel .drive-duration{color:var(--lg-t-174f78,#174f78);background:var(--lg-b-e3eff8,#e3eff8);border-radius:6px;padding:3px 6px}
body.driving #driving-panel .drive-route-panel .drive-eta{color:var(--lg-t-405c49,#405c49);background:var(--lg-b-e7eee3,#e7eee3);border-radius:6px;padding:3px 6px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:16px}
@media(max-width:400px){body.driving #driving-panel .drive-route-panel .drive-trip-copy{column-gap:10px}}

body.driving #driving-panel .drive-route-panel .drive-target,body.driving #driving-panel .drive-route-panel .drive-progress{font-size:var(--hx-text-meta);font-weight:500;line-height:20px}
body.driving #driving-panel .drive-route-panel .drive-target{color:var(--lg-t-ffffff,#ffffff)}
body.driving #driving-panel .drive-route-panel .drive-progress{color:var(--lg-t-bde3ff,#bde3ff)}

/* Keep turbine identifiers intact on narrow outer screens. */
body.driving #driving-panel .drive-route-panel .drive-target{white-space:nowrap;flex:1 1 auto;min-width:0}
body.driving #driving-panel .drive-route-panel .drive-progress{flex:0 0 auto;white-space:nowrap}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{gap:8px}

/* Keep distance immediately after the destination. */
body.driving #driving-panel .drive-route-panel .drive-destination-bar{justify-content:flex-start;gap:6px}
body.driving #driving-panel .drive-route-panel .drive-target{flex:0 0 auto}

body.driving #driving-panel .drive-route-panel .drive-destination-bar{justify-content:center;text-align:center}

body.driving #driving-panel .drive-route-panel .drive-destination-bar{gap:0}
body.driving #driving-panel .drive-route-panel .drive-progress{color:var(--lg-t-ffffff,#ffffff)}

/* Unified primary map toolbar. */
body:not(.driving) .map-actions{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;background:var(--lg-b-fafcf8,#fafcf8);border:1px solid var(--lg-l-c4d3c2,#c4d3c2);border-radius:12px;box-shadow:0 2px 8px #183d391a}
body:not(.driving) .map-actions button{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:48px;height:48px;min-height:48px;margin:0;padding:0;background:transparent;color:var(--lg-t-214c3e,#214c3e);border:0;border-radius:0;box-shadow:none;font-size:var(--hx-text-title)}
body:not(.driving) .map-actions button+button{border-top:1px solid var(--lg-l-d5e0d3,#d5e0d3)}
body:not(.driving) .map-actions button svg{width:24px;height:24px;flex-shrink:0}
body:not(.driving) .map-actions button:hover{background:var(--lg-b-e7eee3,#e7eee3)}
body:not(.driving) .map-actions button:active{background:var(--lg-b-dce9d7,#dce9d7)}
body:not(.driving) .map-actions button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:-3px}

body.driving #driving-panel .drive-route-panel .drive-destination-bar{gap:4px}

/* Match the full trip card to the 98px two-button toolbar. */
body.driving #driving-panel .drive-route-panel{height:98px;min-height:98px;box-sizing:border-box;display:flex;flex-direction:column}
body.driving #driving-panel .drive-route-panel .drive-destination-bar{box-sizing:border-box;height:30px;min-height:30px;flex:0 0 30px;padding:5px 10px}
body.driving #driving-panel .drive-route-panel .drive-trip-bar{box-sizing:border-box;height:68px;min-height:0;flex:0 0 68px;padding:6px 10px}
body.driving #driving-panel .drive-route-panel .drive-trip-copy{row-gap:0}
body.driving #driving-panel .drive-time-cell{gap:2px}
body.driving #driving-panel .drive-map-buttons{height:98px;bottom:12px}
/* Allow extra height only when a GPS or route warning needs to be read. */
body.driving #driving-panel .drive-route-panel:has(.drive-detail:not([hidden])){height:auto}
body.driving #driving-panel .drive-route-panel:has(.drive-detail:not([hidden])) .drive-trip-bar{height:auto;flex-basis:auto;min-height:68px}

/* Shared optical size for all four map-toolbar glyphs. */
body:not(.driving) .map-actions button{font-size:0!important}body:not(.driving) .map-actions button>svg{display:none}body:not(.driving) .map-actions button:before{content:"";display:block;width:24px;height:24px;background:currentColor;mask-size:contain;mask-position:center;mask-repeat:no-repeat}
body:not(.driving) .map-actions #map-search-shortcut:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2210.5%22%20cy%3D%2210.5%22%20r%3D%226.5%22%2F%3E%3Cpath%20d%3D%22m15.5%2015.5%205%205%22%2F%3E%3C%2Fsvg%3E")}
body:not(.driving) .map-actions #locate:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223.5%22%2F%3E%3C%2Fsvg%3E")}
body:not(.driving) .map-actions #fit:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%204H4v5m11-5h5v5M4%2015v5h5m11-5v5h-5%22%2F%3E%3C%2Fsvg%3E")}
body:not(.driving) .map-actions #weather-shortcut:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%2018a4%204%200%201%201%201-7%205%205%200%200%201%2010-1%204%204%200%201%201%201%208z%22%2F%3E%3C%2Fsvg%3E")}























/* Place directions action */
#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){width:auto;min-width:112px;max-width:none;flex-basis:auto;padding:12px 16px;white-space:nowrap}

/* Separate columns prevent contact actions from overlapping at narrow widths. */
#places-dialog .service-results article:not(:where([data-hx], [data-hx] *)){grid-template-columns:minmax(0,1fr) 48px;column-gap:12px}
#places-dialog .service-results article>strong:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results article>small:not(:where([data-hx], [data-hx] *)){grid-column:1/-1}
#places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)){grid-column:1;grid-row:3;padding-right:0;min-width:0}
#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){grid-column:2;grid-row:3}
#places-dialog .service-results .service-phone-row:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}
#places-dialog .service-results .service-phone-row>strong:not(:where([data-hx], [data-hx] *)){white-space:normal;overflow-wrap:anywhere}
#places-dialog .service-results .service-phone-row>button:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;padding:0;flex-basis:48px;display:flex;align-items:center;justify-content:center}
#places-dialog .service-map-link svg,#places-dialog .service-phone-row button svg{display:block;width:24px;height:24px}
#place-list .service-map-link{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px}

/* Shared icon interaction: clear hit area and visible keyboard/press feedback. */
button.icon-btn,a.service-map-link,.service-phone-row>button{touch-action:manipulation}
button.icon-btn{min-width:48px;min-height:48px}
button.icon-btn:focus-visible,a.service-map-link:focus-visible,.service-phone-row>button:focus-visible,.map-controls button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:3px}
button.icon-btn:active,a.service-map-link:active,.service-phone-row>button:active{filter:brightness(.9)}

#destination-direct-distance{display:block;font-size:var(--hx-text-label);line-height:var(--hx-leading-body);color:var(--lg-t-526157,#526157);margin-top:3px}
#destination-direct-distance[hidden]{display:none}
/* Compact place rows without shrinking touch targets. */
#places-dialog .service-results article:not(:where([data-hx], [data-hx] *)){padding:10px 0;row-gap:3px;align-content:start}
#places-dialog .service-results article>strong:not(:where([data-hx], [data-hx] *)){margin:0;line-height:var(--hx-leading-head)}
#places-dialog .service-results article>small:not(:where([data-hx], [data-hx] *)){margin:0;line-height:var(--hx-leading-head)}
#places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)){margin:0;gap:4px}
#places-dialog .service-results .service-phone-row:not(:where([data-hx], [data-hx] *)){margin:0;min-height:48px}
#places-dialog .service-results .service-phone-row>strong:not(:where([data-hx], [data-hx] *)){margin:0;line-height:var(--hx-leading-head)}

/* Explicit Google Maps shortcut beside place navigation. */
#places-dialog .service-results article:not(:where([data-hx], [data-hx] *)){grid-template-columns:minmax(0,1fr) 48px 48px;column-gap:8px}
#places-dialog .service-results article>.google-maps-link:not(:where([data-hx], [data-hx] *)){grid-column:3;grid-row:3}
#places-dialog .google-maps-link:not(:where([data-hx], [data-hx] *)){display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:48px;min-width:48px;height:48px;margin:0;padding:0;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:8px;background:var(--lg-b-ffffff,#fff);color:var(--lg-t-4285f4,#4285f4);font-family:Arial,sans-serif;font-size:var(--hx-text-title);font-weight:700;text-decoration:none;touch-action:manipulation}
#places-dialog .google-maps-link:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:3px}
#places-dialog .google-maps-link:active{background:var(--lg-b-e8f0fe,#e8f0fe)}
.place-navigation-actions{display:inline-flex;gap:8px;vertical-align:middle}
@media(max-width:380px){#places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)){grid-column:1/-1;grid-row:3}#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results article>.google-maps-link:not(:where([data-hx], [data-hx] *)){grid-row:4}}
/* Consistent place action surfaces and icon colours. */
#places-dialog .google-maps-link:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results .service-phone-row>button:not(:where([data-hx], [data-hx] *)),#place-list .service-map-link{background:var(--lg-pb-183d39,#183d39);color:var(--lg-pt-ffffff,#fff);border:0;border-radius:8px}
#places-dialog .google-maps-link:not(:where([data-hx], [data-hx] *)){font-family:inherit;font-size:var(--hx-text-title);font-weight:600;line-height:1}
#places-dialog .google-maps-link:active,
#places-dialog .service-results article>a.service-map-link:active,
#places-dialog .service-results .service-phone-row>button:active{background:var(--lg-b-245448,#245448);filter:none}

/* Keep all three contact actions in one line on narrow phones. */
@media(max-width:500px){
 #places-dialog .service-results article>.service-phones:not(:where([data-hx], [data-hx] *)),#places-dialog .service-results .service-phone-row:not(:where([data-hx], [data-hx] *)){display:contents}
 #places-dialog .service-results .service-phone-row>strong:not(:where([data-hx], [data-hx] *)){grid-column:1/-1;grid-row:3;margin:3px 0 6px}
 #places-dialog .service-results .service-phone-row>button:not(:where([data-hx], [data-hx] *)){grid-column:1;grid-row:4;justify-self:end}
 #places-dialog .service-results article>a.service-map-link:not(:where([data-hx], [data-hx] *)){grid-column:2;grid-row:4}
 #places-dialog .service-results article>.google-maps-link:not(:where([data-hx], [data-hx] *)){grid-column:3;grid-row:4}
}
#exit-navigation-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:380px;margin:auto;padding:0;border:1px solid var(--lg-l-688377,#688377);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6);color:var(--lg-t-183d39,#183d39);overflow:hidden}
#exit-navigation-dialog::backdrop{background:#183d3966}
#exit-navigation-dialog h2{margin:0}
#exit-navigation-dialog .exit-navigation-body{padding:16px;max-height:calc(100dvh - 120px);overflow-y:auto}
#exit-navigation-dialog .exit-navigation-body p{margin:0 0 16px}
.exit-navigation-actions{display:flex;flex-direction:column;gap:12px}
#exit-navigation-dialog .exit-navigation-actions button{min-height:52px;padding:12px;border-radius:var(--hx-radius-card);font:600 var(--ui-button-label-size,18px)/1.2 'Horus Avenir','Avenir Next','Segoe UI',Arial,sans-serif}
html body #exit-navigation-dialog .exit-navigation-actions [data-keep]{--ui-action-bg:#e8ebe8;--ui-action-ink:#183d39;--ui-action-border:#62765a;--ui-action-border-width:1px;background:var(--lg-b-e8ebe8,#e8ebe8)!important;color:var(--lg-t-183d39,#183d39)!important;border:1px solid var(--lg-l-62765a,#62765a)!important}
html body #exit-navigation-dialog .exit-navigation-actions [data-exit]{--ui-action-bg:#e8ebe8;--ui-action-border-width:1px;--ui-action-ink:#183d39;--ui-action-border:#62765a;background:var(--lg-b-e8ebe8,#e8ebe8)!important;color:var(--lg-t-183d39,#183d39)!important;border:1px solid var(--lg-l-62765a,#62765a)!important}
#exit-navigation-dialog .ui-dialog-heading>button{width:var(--hx-target-icon);height:var(--hx-target-icon);min-width:var(--hx-target-icon);min-height:var(--hx-target-icon);padding:0;margin:0}
#exit-navigation-dialog button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:3px}

/* All authorised farms remain visible, including during guidance. */
.wtg-marker{background:#f6f7f2;color:#526157;border-color:#8c9c91}
.wtg-marker.is-active-farm{background:#e1eff9;color:#155780;border-color:#3977a0}
.wtg-marker.is-active-farm:before{background:#2475a0}
.wtg-marker.wtg-dot.is-active-farm{background:#2475a0}
.wtg-marker.is-selected{background:#173b36;color:#fff;border:2px solid #e3bb54;font-weight:700;z-index:5}
.wtg-marker.is-selected:before{background:#e3bb54}
body.driving .wtg-marker{display:block}

.weather-update-row:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 12px}
.weather-update-row>[role=status]{margin:0;flex:1;min-width:0}
.weather-overview .weather-update-row>.weather-refresh{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:var(--hx-radius-card);background:var(--lg-b-edf1eb,#edf1eb);color:var(--lg-t-183d39,#183d39);text-decoration:none}
.weather-update-row .weather-refresh svg{width:24px;height:24px}

#weather-panel .weather-update-row:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:10px;margin:0 0 8px;padding:0}
#weather-panel .weather-heading-text .weather-location{margin:0 0 3px;line-height:var(--hx-leading-head)}
#weather-panel .weather-heading-text [role=status]{margin:0;font-size:var(--hx-text-meta);line-height:var(--hx-leading-body)}
#weather-panel .weather-heading-text [role=status]:empty{display:none}
#weather-panel .weather-update-row>.weather-refresh{width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;padding:0;margin:0;align-self:center}
#weather-panel .weather-overview .weather-now{margin-top:0;padding-top:8px}

/* Weather location header matches the navigation card. */
#weather-panel .weather-update-row:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,#fff);border-radius:var(--hx-radius-card);padding:12px;margin:0 0 10px}
#weather-panel .weather-heading-text .weather-location{color:var(--lg-t-ffffff,#fff)}
#weather-panel .weather-heading-text [role=status]{color:var(--lg-t-d8e7df,#d8e7df)}
#weather-panel .weather-update-row>.weather-refresh{background:var(--hx-card);color:var(--lg-t-ffffff,#fff);border:1px solid var(--hx-hairline)}

/* Reduce the header mark by 35% while preserving title and menu alignment. */
body>header .horus-logo{transform:scale(.65)}

/* Halve the visible spacing around the reduced logo in the titled header. */
@media(min-width:601px){
 body>header{padding-left:14px}
 body>header .brand{gap:9px}
 body>header .horus-logo{margin-left:-9.625px;margin-right:-9.625px}
}
@media(min-width:601px) and (max-width:1024px){
 body>header{padding-left:6px}
 body>header .brand{gap:4px}
}
#weather-panel .weather-near-term:not(:where([data-hx], [data-hx] *)),#weather-panel .weather-alternatives:not(:where([data-hx], [data-hx] *)){margin-top:12px;padding:14px;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6);min-width:0}
#weather-panel .weather-near-term h3:not(:where([data-hx], [data-hx] *)){margin:0 0 4px;font-size:var(--hx-text-body)}
#weather-panel .weather-near-note,#weather-panel .weather-safety-note:not(:where([data-hx], [data-hx] *)),#weather-panel .weather-compare-body p:not(:where([data-hx], [data-hx] *)){margin:6px 0 10px;font-size:var(--hx-text-label);line-height:var(--hx-leading-body)}
#weather-panel .weather-checkpoints:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#weather-panel .weather-checkpoint{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:10px 5px;border:1px solid var(--lg-l-d6dfd5,#d6dfd5);border-radius:var(--hx-radius-card);background:var(--lg-b-f2f5ee,#f2f5ee);text-align:center}
#weather-panel .weather-checkpoint>strong{font-size:var(--hx-text-label)}#weather-panel .weather-checkpoint>span:nth-child(2){font-size:var(--hx-text-title)}#weather-panel .weather-checkpoint>span:last-child{font-size:var(--hx-text-meta);line-height:var(--hx-leading-head)}
#weather-panel .weather-compare-toggle:not(:where([data-hx], [data-hx] *)),#weather-panel .weather-compare-list button:not(:where([data-hx], [data-hx] *)),#weather-panel .weather-view-wtg{min-height:52px;border:1px solid var(--lg-l-62765a,#62765a);border-radius:var(--hx-radius-card);background:var(--lg-b-e0e5ce,#e0e5ce);color:var(--lg-t-183d39,#183d39);font-weight:600;font-size:var(--hx-text-body);font-family:var(--hx-font)}
#weather-panel .weather-compare-toggle:not(:where([data-hx], [data-hx] *)){width:100%}#weather-panel .weather-compare-body:not(:where([data-hx], [data-hx] *)){padding-top:10px}#weather-panel .weather-compare-body label:not(:where([data-hx], [data-hx] *)){display:block;font-weight:600}#weather-panel .weather-compare-search:not(:where([data-hx], [data-hx] *)){display:block;width:100%;box-sizing:border-box;min-height:48px;margin:5px 0 10px;padding:10px;border:1px solid var(--lg-l-62765a,#62765a);border-radius:8px;font:inherit}
#weather-panel .weather-compare-list:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:180px;overflow:auto}#weather-panel .weather-compare-list button:not(:where([data-hx], [data-hx] *)){min-width:0;padding:8px;font-size:var(--hx-text-label)}#weather-panel .weather-compare-result:not(:where([data-hx], [data-hx] *)){margin-top:10px;overflow-wrap:anywhere}#weather-panel .weather-compare-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}#weather-panel .weather-compare-slots span{padding:8px;background:var(--lg-b-f2f5ee,#f2f5ee);border-radius:8px;font-size:var(--hx-text-meta)}
@media(max-width:380px){#weather-panel .weather-checkpoints:not(:where([data-hx], [data-hx] *)){grid-template-columns:repeat(2,minmax(0,1fr))}#weather-panel .weather-compare-list:not(:where([data-hx], [data-hx] *)){grid-template-columns:repeat(2,minmax(0,1fr))}}
#weather-panel .weather-workspace:not(:where([data-hx], [data-hx] *)){display:block!important}#weather-panel .weather-workspace>.weather-overview:not(:where([data-hx], [data-hx] *)){margin:0 0 12px!important;min-width:0}#weather-panel .weather-more{margin:0;padding:12px;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6)}#weather-panel .weather-more>summary{min-height:44px;display:flex;align-items:center;font-weight:600;cursor:pointer}#weather-panel .weather-more>section{margin:12px 0 0!important;min-width:0}
#weather-panel .weather-workspace[hidden]{display:none!important}
#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:10px;border:1px solid var(--lg-l-8fae98,#8fae98);border-radius:12px;background:linear-gradient(135deg,var(--lg-b-e6f1e6,#e6f1e6),var(--lg-b-fff7df,#fff7df));min-width:0}
#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){flex:0 0 86px;line-height:0}#weather-panel .weather-host-art svg{width:86px;height:auto}
#weather-panel .weather-host-script{min-width:0}#weather-panel .weather-on-air{display:inline-block;padding:3px 6px;border-radius:5px;background:var(--lg-b-a72d27,#a72d27);color:var(--lg-t-ffffff,white);font-size:var(--hx-text-min);font-weight:700;letter-spacing:var(--hx-tracking-caps)}
#weather-panel .weather-host-script h3{margin:6px 0 4px;font-size:var(--hx-text-body)}#weather-panel .weather-host-message{margin:0;font-size:var(--hx-text-label);line-height:var(--hx-leading-head);font-weight:500}
@media(max-width:380px){#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){gap:8px;padding:8px}#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){flex-basis:66px}#weather-panel .weather-host-art svg{width:66px}#weather-panel .weather-host-script h3{font-size:var(--hx-text-body)}#weather-panel .weather-host-message{font-size:var(--hx-text-label)}}
#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){flex:0 0 112px;align-self:stretch;overflow:hidden;border-radius:9px;background:var(--lg-b-dcebe0,#dcebe0)}#weather-panel .weather-host-art img:not(:where([data-hx], [data-hx] *)){display:block;width:112px;height:100%;min-height:135px;object-fit:cover;object-position:center 12%}
#weather-panel .weather-host-wind{margin:8px 0 0;font-size:var(--hx-text-meta);line-height:var(--hx-leading-head);font-weight:600}
#weather-panel .weather-checkpoint{justify-content:flex-start}#weather-panel .weather-checkpoint-speeds{display:block;width:100%;margin-top:auto;padding-top:7px;border-top:1px solid var(--lg-l-cbd9cc,#cbd9cc);font-size:var(--hx-text-meta);line-height:var(--hx-leading-head);font-weight:600}
@media(max-width:600px){#weather-panel .weather-checkpoints:not(:where([data-hx], [data-hx] *)){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){flex-basis:76px}#weather-panel .weather-host-art img:not(:where([data-hx], [data-hx] *)){width:76px;min-height:130px}}
#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){display:block;padding:0;overflow:hidden;background:var(--lg-b-fffdf6,#fffdf6)}
#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){position:relative;display:block;width:100%;aspect-ratio:2/1;overflow:hidden;border-radius:0;background:var(--lg-b-dcebe0,#dcebe0)}
#weather-panel .weather-host-art img:not(:where([data-hx], [data-hx] *)){display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
#weather-panel .weather-host-visual-note{position:absolute;right:6px;bottom:6px;padding:3px 5px;border-radius:4px;background:#102a25d9;color:var(--lg-t-ffffff,white);font-size:var(--hx-text-min);font-weight:600;line-height:var(--hx-leading-tight)}
#weather-panel .weather-host-script{padding:10px 12px 12px}#weather-panel .weather-host-script h3{display:inline-block;margin:0 0 6px 7px;vertical-align:middle}#weather-panel .weather-host-message{margin:2px 0 0;font-size:var(--hx-text-label)}
#weather-panel .weather-host-art .weather-radar-image{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover;z-index:1}
#weather-panel .weather-host-art .weather-host-presenter{position:absolute;left:0;bottom:0;width:auto;height:112%;min-height:0;max-width:none;object-fit:contain;object-position:left bottom;z-index:2;filter:drop-shadow(2px 2px 3px #102a2580)}
#weather-panel .weather-radar-target:not(:where([data-hx], [data-hx] *)),.weather-radar-dialog .weather-radar-target:not(:where([data-hx], [data-hx] *)){position:absolute;left:50%;top:50%;width:12px;height:12px;box-sizing:border-box;border:2px solid var(--lg-l-ffffff,white);border-radius:50%;background:var(--lg-b-e3352a,#e3352a);box-shadow:0 0 0 2px var(--lg-l-183d39,#183d39);transform:translate(-50%,-50%);z-index:3;pointer-events:none}
#weather-panel .weather-radar-state:not(:where([data-hx], [data-hx] *)){position:absolute;left:6px;bottom:6px;z-index:3;max-width:65%;padding:3px 5px;border-radius:4px;background:#102a25dd;color:var(--lg-t-ffffff,white);font-size:var(--hx-text-min);font-weight:600;line-height:var(--hx-leading-head)}
#weather-panel .weather-radar-open{position:absolute;inset:0;z-index:4;display:flex;align-items:flex-start;justify-content:flex-end;width:100%;height:100%;min-height:0;padding:7px;border:0;background:transparent;color:var(--lg-t-ffffff,white);text-align:right;text-shadow:0 1px 3px #102a25;font-weight:600;font-size:var(--hx-text-meta);font-family:var(--hx-font);cursor:zoom-in}#weather-panel .weather-radar-open:focus-visible{outline:3px solid var(--lg-l-78b7ff,#78b7ff);outline-offset:-4px}
#weather-panel .weather-radar-note:not(:where([data-hx], [data-hx] *)){margin:8px 0 2px;font-size:var(--hx-text-meta);line-height:var(--hx-leading-head)}#weather-panel .weather-radar-credit{display:inline-block;font-size:var(--hx-text-meta);color:var(--lg-t-234f40,#234f40)}
.weather-radar-dialog:not(:where([data-hx], [data-hx] *)){width:min(960px,calc(100vw - 24px));height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:auto;padding:0;border:1px solid var(--lg-l-62765a,#62765a);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6);color:var(--lg-t-183d39,#183d39);font-weight:500;font-size:var(--hx-text-label);font-family:var(--hx-font)}.weather-radar-dialog[open]:not(:where([data-hx], [data-hx] *)){display:flex;flex-direction:column}.weather-radar-dialog:not(:where([data-hx], [data-hx] *))::backdrop{background:#10221cb3}.weather-radar-heading:not(:where([data-hx], [data-hx] *)){position:sticky;top:0;z-index:2;display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:8px 12px;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,#fff)}.weather-radar-heading h2:not(:where([data-hx], [data-hx] *)){margin:0;font-size:var(--hx-text-body);line-height:var(--hx-leading-tight);font-weight:700}.weather-radar-body:not(:where([data-hx], [data-hx] *)){display:flex;flex:1;min-height:0;flex-direction:column;padding:12px}.weather-radar-body .weather-radar-location:not(:where([data-hx], [data-hx] *)){flex:none;margin:0 0 12px}.weather-radar-large:not(:where([data-hx], [data-hx] *)){position:relative;flex:1;min-height:220px;margin-top:0;overflow:hidden;border-radius:8px;background:var(--lg-b-e5ebe8,#e5ebe8)}.weather-radar-large img:not(:where([data-hx], [data-hx] *)){display:block;width:100%;height:100%;object-fit:cover}.weather-radar-body>:is(.weather-radar-meta,.weather-radar-guidance,.weather-radar-source){flex:none}.weather-radar-dialog p:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-label);line-height:var(--hx-leading-body)}.weather-radar-dialog a:not(:where([data-hx], [data-hx] *)){color:var(--lg-t-234f40,#234f40);font-size:var(--hx-text-meta)}
#weather-panel .weather-find-nearby:not(:where([data-hx], [data-hx] *)){width:100%;min-height:52px;padding:10px 14px;border:1px solid var(--lg-l-234f40,#234f40);border-radius:var(--hx-radius-card);background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,white);font:600 var(--ui-button-label-size,18px) Avenir Next,Segoe UI,sans-serif}
#weather-panel .weather-recommend-status:not(:where([data-hx], [data-hx] *)){min-height:22px;margin:10px 0;font-size:var(--hx-text-label);line-height:var(--hx-leading-body)}
#weather-panel .weather-recommend-list:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:9px}
#weather-panel .weather-recommend-row:not(:where([data-hx], [data-hx] *)){min-width:0;padding:12px;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:var(--hx-radius-card);background:var(--lg-b-f5f7f2,#f5f7f2)}
#weather-panel .weather-recommend-row.weather-recommend-candidate{border-color:var(--lg-l-4d8661,#4d8661);background:var(--lg-b-e7f2e7,#e7f2e7)}#weather-panel .weather-recommend-row.weather-recommend-hazard:not(:where([data-hx], [data-hx] *)){border-color:var(--lg-l-c9a38d,#c9a38d);background:var(--lg-b-fff1e9,#fff1e9)}
#weather-panel .weather-recommend-row strong:not(:where([data-hx], [data-hx] *)){display:block;font-size:var(--hx-text-body)}#weather-panel .weather-recommend-row span:not(:where([data-hx], [data-hx] *)){display:block;margin-top:3px;font-size:var(--hx-text-meta);font-weight:700}#weather-panel .weather-recommend-row p:not(:where([data-hx], [data-hx] *)){margin:6px 0 10px;font-size:var(--hx-text-meta);line-height:var(--hx-leading-head)}
#weather-panel .weather-recommend-row button:not(:where([data-hx], [data-hx] *)){width:100%;min-height:52px;padding:8px;border:1px solid var(--lg-l-62765a,#62765a);border-radius:var(--hx-radius-card);background:var(--lg-b-e0e5ce,#e0e5ce);color:var(--lg-t-183d39,#183d39);font:600 var(--ui-button-label-size,18px) Avenir Next,Segoe UI,sans-serif}
#weather-panel .weather-manual-choice:not(:where([data-hx], [data-hx] *)){margin-top:12px;border-top:1px solid var(--lg-l-c8d6c3,#c8d6c3)}#weather-panel .weather-manual-choice summary:not(:where([data-hx], [data-hx] *)){min-height:44px;display:flex;align-items:center;font-weight:600;cursor:pointer}

/* WTG work sequence: forecast, action, site checks, supporting radar. */
#weather-panel .weather-overview:not(:where([data-hx], [data-hx] *)){padding:16px!important}
#weather-panel .weather-near-term:not(:where([data-hx], [data-hx] *)),#weather-panel .weather-alternatives:not(:where([data-hx], [data-hx] *)){margin-top:10px;padding:0;border:0;background:transparent}
#weather-panel .weather-near-term>h3,#weather-panel .weather-alternatives h3:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-title);line-height:var(--hx-leading-tight)}
#weather-panel .weather-near-note{margin:2px 0 12px}
#weather-panel .weather-checkpoint{align-items:flex-start;padding:12px;text-align:left;background:var(--lg-b-f5f7f2,#f5f7f2)}
#weather-panel .weather-checkpoint>strong{font-size:var(--hx-text-label)}
#weather-panel .weather-checkpoint>span:nth-child(2){font-size:var(--hx-text-display);line-height:1}
#weather-panel .weather-checkpoint>span:nth-child(3){font-size:var(--hx-text-label);font-weight:600}
#weather-panel .weather-checkpoint-speeds{text-align:left;font-size:var(--hx-text-meta)}
#weather-panel .weather-safety-note:not(:where([data-hx], [data-hx] *)){margin:9px 0 14px;color:var(--lg-t-52675c,#52675c);font-size:var(--hx-text-meta);line-height:var(--hx-leading-head)}
#weather-panel .weather-primary-actions:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}
#weather-panel .weather-primary-actions button:not(:where([data-hx], [data-hx] *)){min-width:0;min-height:52px;padding:8px 10px;border:1px solid var(--lg-pb-234f40,#234f40);border-radius:var(--hx-radius-card);background:var(--lg-pb-234f40,#234f40);color:var(--lg-pt-ffffff,#fff);font:600 var(--ui-button-label-size,18px) Avenir Next,Segoe UI,sans-serif}
#weather-panel .weather-primary-actions .weather-report-launch:not(:where([data-hx], [data-hx] *)){background:var(--lg-b-e0e5ce,#e0e5ce);color:var(--lg-t-183d39,#183d39);border-color:var(--lg-l-62765a,#62765a)}
#weather-panel .weather-site-check:not(:where([data-hx], [data-hx] *)){padding:14px;border:1px solid var(--lg-l-d1ddce,#d1ddce);border-radius:var(--hx-radius-card);background:var(--lg-b-f7f9f5,#f7f9f5)}
#weather-panel .weather-site-check h3{margin:0 0 12px;font-size:var(--hx-text-body)}
#weather-panel .weather-site-check ul:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
#weather-panel .weather-site-check li:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 10px;border:1px solid var(--lg-l-d1ddce,#d1ddce);border-radius:8px;background:var(--lg-b-ffffff,#fff);color:var(--lg-t-183d39,#183d39);font-size:var(--hx-text-label);line-height:var(--hx-leading-head);font-weight:600}
#weather-panel .weather-site-check li span:first-child:not(:where([data-hx], [data-hx] *)){flex:none;width:24px;font-size:var(--hx-text-title);text-align:center}
#weather-panel .weather-check-lightning:not(:where([data-hx], [data-hx] *)){min-height:52px;width:100%;margin-top:12px;padding:8px 12px;border:1px solid var(--lg-l-62765a,#62765a);border-radius:9px;background:var(--lg-b-ffffff,#fff);color:var(--lg-t-183d39,#183d39);font:600 var(--ui-button-label-size,18px) Avenir Next,Segoe UI,sans-serif}
#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:0;margin:0 0 16px;border-color:var(--lg-l-d1ddce,#d1ddce);background:var(--lg-b-edf3ed,#edf3ed)}
#weather-panel .weather-host-script{align-self:center;padding:12px}
#weather-panel .weather-host-script h3{font-size:var(--hx-text-body)}
#weather-panel .weather-host-message{font-size:var(--hx-text-label)}
#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){width:132px;height:124px;aspect-ratio:auto;border-radius:0}
#weather-panel .weather-host-caption:not(:where([data-hx], [data-hx] *)){display:flex;justify-content:space-between;gap:8px;grid-column:1/-1;padding:5px 9px;border-top:1px solid var(--lg-l-d1ddce,#d1ddce);font-size:var(--hx-text-min)}
#weather-panel .weather-host-caption .weather-radar-note:not(:where([data-hx], [data-hx] *)){margin:0;font-size:var(--hx-text-min)}
#weather-panel .weather-host-caption .weather-radar-credit{font-size:var(--hx-text-min)}
#weather-panel .weather-alternatives .weather-compare-toggle:not(:where([data-hx], [data-hx] *)){width:auto;min-height:44px;padding:8px 12px;margin-bottom:14px;background:var(--lg-b-ffffff,#fff)}
#weather-panel .weather-compare-body:not(:where([data-hx], [data-hx] *)){padding:0}
#weather-panel .weather-compare-body>h3:not(:where([data-hx], [data-hx] *)){margin-bottom:12px}
#weather-panel .weather-more{margin-top:12px}
@media(max-width:420px){#weather-panel .weather-site-check ul:not(:where([data-hx], [data-hx] *)){grid-template-columns:1fr}#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){grid-template-columns:minmax(0,1fr) 104px}#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){width:104px;height:136px}}

/* Radar only, centred on the selected WTG. */
#weather-panel .weather-host:not(:where([data-hx], [data-hx] *)){display:block}
#weather-panel .weather-host-art:not(:where([data-hx], [data-hx] *)){width:100%;height:auto;aspect-ratio:20/13;background:var(--lg-b-e5ebe8,#e5ebe8)}
#weather-panel .weather-host-art .weather-radar-image{object-fit:cover}
#weather-panel .weather-host-art .weather-radar-embed:not(:where([data-hx], [data-hx] *)){position:absolute;left:0;top:-70px;z-index:1;width:100%;height:calc(100% + 140px);border:0;pointer-events:none}
#weather-panel .weather-now-next:not(:where([data-hx], [data-hx] *)){margin:0 0 14px;padding:12px 14px;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:var(--hx-radius-card);background:var(--lg-b-f0f6ed,#f0f6ed);color:var(--lg-t-243832,#243832);font-size:var(--hx-text-body);font-weight:500;line-height:var(--hx-leading-body);white-space:pre-line}
#weather-panel .weather-checkpoint>span:nth-child(2){display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--lg-t-234f40,#234f40)}
#weather-panel .weather-checkpoint>span:nth-child(2) svg{width:32px;height:32px}
#weather-panel .weather-site-check li span:first-child:not(:where([data-hx], [data-hx] *)){display:flex;align-items:center;justify-content:center}
#weather-panel .weather-site-check li span:first-child svg{width:24px;height:24px;color:var(--lg-t-234f40,#234f40)}
#weather-panel .weather-radar-target:not(:where([data-hx], [data-hx] *)),.weather-radar-dialog .weather-radar-target:not(:where([data-hx], [data-hx] *)){width:18px;height:18px;border-width:3px;box-shadow:0 0 0 3px var(--lg-l-183d39,#183d39),0 2px 8px #102a25aa}
#weather-panel .weather-radar-target-label:not(:where([data-hx], [data-hx] *)),.weather-radar-dialog .weather-radar-target-label:not(:where([data-hx], [data-hx] *)){position:absolute;left:50%;top:calc(50% + 18px);z-index:5;transform:translateX(-50%);max-width:80%;padding:4px 8px;border-radius:6px;background:var(--lg-b-183d39,#183d39);color:var(--lg-t-ffffff,#fff);font-size:var(--hx-text-meta);font-weight:700;line-height:var(--hx-leading-head);white-space:nowrap;pointer-events:none}
#weather-panel .weather-radar-state:not(:where([data-hx], [data-hx] *)){max-width:calc(100% - 16px);font-size:var(--hx-text-meta);line-height:var(--hx-leading-head)}
#weather-panel .weather-radar-open{background:linear-gradient(180deg,#102a25b0,transparent 58px);font-size:var(--hx-text-label);line-height:var(--hx-leading-head)}
html body #weather-panel .weather-host>button.weather-radar-open{position:static;display:block;width:calc(100% - 20px);height:auto;min-height:44px;margin:0 10px 10px;padding:8px 12px;background:var(--lg-b-e0e5ce,#e0e5ce)!important;border:1px solid var(--lg-l-62765a,#62765a)!important;border-radius:8px;color:var(--lg-t-183d39,#183d39)!important;text-align:center;text-shadow:none;font-size:var(--hx-text-body);box-shadow:none!important;cursor:pointer}
html body #weather-panel .weather-host>button.weather-radar-open[hidden]{display:none!important}
.weather-radar-large iframe:not(:where([data-hx], [data-hx] *)){display:block;width:100%;height:100%;border:0}
#weather-panel .weather-host-caption:not(:where([data-hx], [data-hx] *)){padding:7px 10px}
#weather-panel .weather-host-caption:not(:where([data-hx], [data-hx] *)){display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
#weather-panel .weather-radar-note:not(:where([data-hx], [data-hx] *)){min-width:0}
#weather-panel .weather-radar-credit{flex:none;white-space:nowrap}
#weather-panel .weather-checkpoint{align-items:center;justify-content:center;text-align:center}
#weather-panel .weather-checkpoint-speeds{margin-top:4px;text-align:center}
.weather-radar-choice{width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;overflow-y:auto;padding:0;border:1px solid var(--lg-l-62765a,#62765a);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6);color:var(--lg-t-183d39,#183d39);font-weight:500;font-size:var(--hx-text-body);font-family:var(--hx-font)}
.weather-radar-choice::backdrop{background:#10221cb3}
.weather-radar-choice-heading{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:8px 12px;border-radius:11px 11px 0 0;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,#fff)}
.weather-radar-choice-heading .ui-header-icon{flex:none;width:44px;height:44px;border:1px solid var(--hx-hairline);border-radius:var(--hx-radius-card);background:#ffffff1f;color:var(--lg-t-ffffff,#fff)}
.weather-radar-choice-heading h2{margin:0;font-size:var(--hx-text-body);line-height:var(--hx-leading-tight);font-weight:700}
.weather-radar-choice-body{padding:12px}
.weather-radar-choice p{margin:0 0 12px}
.weather-radar-choice .radar-source-choice{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;box-sizing:border-box;margin:8px 0;padding:8px 12px;border:1px solid var(--lg-l-62765a,#62765a);border-radius:var(--hx-radius-card);background:var(--lg-b-e0e5ce,#e0e5ce);color:var(--lg-t-183d39,#183d39);font:600 var(--ui-button-label-size,18px) 'Horus Avenir',Avenir Next,Segoe UI,sans-serif;text-align:center;text-decoration:none}
.weather-radar-choice .radar-source-choice:disabled{background:var(--lg-b-eef0ec,#eef0ec);border-color:var(--lg-l-c8d6c3,#c8d6c3);color:var(--lg-t-596962,#596962)}
.weather-radar-choice .weather-radar-choice-status{min-height:1.4em;margin:8px 0;color:var(--lg-t-52675c,#52675c);font-size:var(--hx-text-meta);line-height:var(--hx-leading-body)}
.weather-radar-choice .weather-radar-choice-status:empty{display:none}
.weather-radar-large [hidden]{display:none!important}
.weather-radar-choice .weather-radar-cancel{display:block;min-height:52px;margin:12px auto 0;padding:8px 14px;border:1px solid var(--lg-l-688377,#688377);border-radius:var(--hx-radius-card);background:var(--lg-b-fffdf6,#fffdf6);color:var(--lg-t-183d39,#183d39);font:600 var(--ui-button-label-size,18px) 'Horus Avenir',Avenir Next,Segoe UI,sans-serif}

/* Two equal weather periods, matching the approved Weather Watch preview. */
#weather-panel .weather-now-next:has(.weather-summary-table){display:grid;gap:12px;padding:0;border:0;background:transparent;white-space:normal}
#weather-panel .weather-summary-table{width:100%;table-layout:fixed;border:1px solid var(--lg-l-c8d6c3,#c8d6c3);border-radius:8px;border-spacing:0;background:var(--lg-b-f0f6ed,#f0f6ed);color:var(--lg-t-243832,#243832);overflow:hidden}
#weather-panel .weather-summary-table tr{height:52px}
#weather-panel .weather-summary-table th{width:28%;padding:8px 12px;color:var(--lg-t-234f40,#234f40);font-weight:600;text-align:left;vertical-align:middle}
#weather-panel .weather-summary-table td{padding:8px 12px;font-weight:500;vertical-align:middle}
#weather-panel .weather-summary-table tr+tr td{border-top:1px solid var(--lg-l-d8ded9,#d8ded9)}
#weather-panel .weather-summary-table td>span{vertical-align:middle}
#weather-panel .weather-reading-icon{display:inline-flex;width:28px;height:28px;margin-right:8px;align-items:center;justify-content:center;color:var(--lg-t-234f40,#234f40)}
#weather-panel .weather-reading-icon svg{width:24px;height:24px}
#weather-panel .weather-summary-table td>span:last-child{overflow-wrap:anywhere}
#weather-panel .weather-summary-speeds{display:inline-flex;flex-wrap:wrap;column-gap:.35em;overflow-wrap:normal!important}
#weather-panel .weather-summary-speeds .weather-speed-item{white-space:nowrap}
@media(max-width:350px){#weather-panel .weather-summary-table th{width:25%;padding:8px}#weather-panel .weather-summary-table td{padding:8px}}
.weather-radar-dialog .weather-radar-heading h2:not(:where([data-hx], [data-hx] *)){font-size:var(--hx-text-body)}
