/* Approved website driving layout; working map controls and route state stay in driving.js. */
html body.driving #driving-panel .drive-guidance-group{top:12px;left:12px;right:12px;width:auto;max-width:none;display:block}
html body.driving #driving-panel .drive-guidance-group .drive-maneuver{position:relative!important;top:auto!important;left:auto!important;width:100%!important;max-width:none!important;min-height:102px;display:grid!important;grid-template-columns:48px minmax(0,1fr);align-items:center;column-gap:16px;padding:17px 20px!important;border:0!important;border-radius:12px!important;background:var(--lg-b-12595c,#12595c)!important;box-shadow:0 5px 18px #183d392b!important}
html body.driving #driving-panel .drive-guidance-group .drive-maneuver>svg{width:48px;height:48px;flex-basis:48px;align-self:center}
html body.driving #driving-panel .drive-guidance-group .drive-maneuver-copy{display:grid;gap:4px;min-width:0}
html body.driving #driving-panel .drive-guidance-group .drive-instruction{font-size:var(--hx-text-display)!important;line-height:var(--hx-leading-tight)!important;font-weight:700!important}
html body.driving #driving-panel .drive-guidance-group .drive-detail{font-size:var(--hx-text-title)!important;line-height:var(--hx-leading-body)!important;font-weight:500!important;color:var(--lg-t-dcefeb,#dcefeb)!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons{position:absolute!important;top:calc(100% + 14px)!important;right:0!important;left:auto!important;bottom:auto!important;display:grid;gap:10px;box-sizing:border-box;width:54px;height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons :is(#drive-report,#drive-north,#drive-recenter,#drive-overview,#drive-voice){width:54px;height:54px;min-height:54px;min-width:54px;border:1px solid var(--hx-hairline)!important;border-radius:var(--hx-radius-card)!important;background:var(--lg-pb-234f40,#234f40)!important;color:var(--lg-pt-ffffff,#fff)!important;box-shadow:0 3px 10px #183d3926!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-north{height:54px!important;min-height:54px!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-north[aria-pressed=true]{background:var(--lg-b-367064,#367064)!important}
html body.driving #driving-panel .drive-route-panel{left:calc(12px + env(safe-area-inset-left,0px))!important;right:calc(12px + env(safe-area-inset-right,0px))!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;width:auto!important;max-width:none!important;padding:14px 16px!important;border:0!important;border-radius:12px!important;background:var(--lg-b-183d39,#183d39)!important;color:var(--lg-t-ffffff,#fff)!important;box-shadow:0 5px 18px #183d392b!important}
html body.driving #driving-panel .drive-compact{display:flex!important;align-items:center!important;gap:12px!important;min-height:76px!important;padding:0!important;border-radius:0!important;background:transparent!important}
html body.driving #driving-panel .drive-summary-toggle{order:1;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 20px;grid-template-rows:auto auto;column-gap:8px;row-gap:2px;min-height:70px;padding:0!important}
html body.driving #driving-panel .drive-summary-toggle .drive-duration{grid-column:1;grid-row:2;max-width:none;justify-self:start;padding:0!important;font-size:var(--hx-text-display)!important;line-height:var(--hx-leading-head)!important;font-weight:700!important;color:var(--lg-t-ffffff,#fff)!important}
html body.driving #driving-panel .drive-summary-toggle .drive-target{grid-column:1;grid-row:1;font-size:var(--hx-text-title)!important;line-height:var(--hx-leading-body)!important;font-weight:700!important;color:var(--lg-t-dce9df,#dce9df)!important}
html body.driving #driving-panel .drive-summary-toggle svg{grid-column:2;grid-row:1/3;align-self:center}
html body.driving #driving-panel .drive-compact #drive-exit{order:2;flex:0 0 54px!important;width:54px!important;min-width:54px!important;height:54px!important;min-height:54px!important;max-height:54px!important;border:1px solid var(--hx-hairline)!important;border-radius:var(--hx-radius-card)!important;background:var(--lg-b-bf463d,#bf463d)!important;color:var(--lg-t-ffffff,#fff)!important;font-size:var(--hx-text-title)!important;font-weight:600!important}
html body.driving #driving-panel .drive-extra:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;column-gap:12px;margin-top:12px;padding:12px 0 0;border-top:1px solid #ffffff44;background:transparent}
html body.driving #driving-panel .drive-extra>div{display:flex;justify-content:flex-start;align-items:center;gap:6px;min-width:0;white-space:nowrap}
html body.driving #driving-panel .drive-extra small{color:var(--lg-t-d1dfd7,#d1dfd7);font-size:var(--hx-text-body)!important;line-height:var(--hx-leading-body)!important;font-weight:500!important}
html body.driving #driving-panel .drive-extra strong{color:var(--lg-t-ffffff,#fff)!important;font-size:var(--hx-text-body)!important;line-height:var(--hx-leading-body)!important;font-weight:600!important;font-variant-numeric:tabular-nums}
html body.driving #driving-panel .drive-extra .drive-eta{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--lg-t-ffffff,#fff)!important;font-size:var(--hx-text-body)!important;line-height:var(--hx-leading-body)!important}
html body.driving #driving-panel .drive-road-status{color:var(--lg-t-f4dda5,#f4dda5)}
html body.driving #driving-panel.is-road-reporting .drive-guidance-group,html body.driving #driving-panel.is-road-reporting .drive-route-panel,html body.driving #driving-panel.is-road-reporting .drive-map-status{display:none!important}
html body.driving #driving-panel .drive-report-panel{position:absolute;z-index:20;top:auto;left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));display:grid;gap:12px;max-width:420px;max-height:min(320px,44dvh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px));overflow-y:auto;overflow-x:hidden;padding:0 12px 12px;border:1px solid var(--lg-l-688377,#688377);border-radius:12px;background:var(--ui-card,var(--lg-b-fffdf6,#fffdf6));color:var(--ui-ink,var(--lg-t-243832,#243832));box-shadow:0 6px 24px #183d3940;font-family:'Horus Avenir','Avenir Next','Segoe UI',Arial,sans-serif;pointer-events:auto}
html body.driving #driving-panel .drive-report-panel[hidden]{display:none}
html body.driving #driving-panel .drive-report-panel .drive-report-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:8px;min-height:60px;margin:0 calc(-12px * var(--horus-text-scale,1));padding:8px 12px;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,#fff)}
html body.driving #driving-panel .drive-report-panel .drive-report-header strong{flex:1;min-width:0;font-size:var(--hx-text-display);font-weight:700;line-height:var(--hx-leading-tight);overflow-wrap:anywhere}
html body.driving #driving-panel .drive-report-panel .drive-report-header .ui-header-icon{flex:0 0 44px}
html body.driving #driving-panel .drive-report-panel p{margin:0;font-size:var(--hx-text-title);font-weight:500;line-height:var(--hx-leading-body)}
html body.driving #driving-panel .drive-report-panel :is([role=status],[data-prompt],[data-publish],[data-new-section],[data-photo-status],.drive-report-help,.drive-report-active)[hidden]{display:none}
html body.driving #driving-panel .drive-report-panel [role=status]{font-weight:600}
html body.driving #driving-panel .drive-report-panel button:not(.ui-header-icon){min-height:52px;padding:8px;border:2px solid var(--ui-action-border,var(--lg-l-62765a,#62765a));border-radius:var(--hx-radius-card);background:var(--ui-action-bg,var(--lg-b-e8ebe8,#e8ebe8));color:var(--ui-action-ink,var(--lg-t-183d39,#183d39));font-family:inherit;font-size:var(--ui-button-label-size,calc(18px * var(--horus-text-scale,1)));font-weight:600;line-height:var(--hx-leading-tight);cursor:pointer}
html body.driving #driving-panel .drive-report-panel button:focus-visible{outline:3px solid var(--lg-l-2475e8,#2475e8);outline-offset:2px}
html body.driving #driving-panel .drive-report-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
html body.driving #driving-panel .drive-report-panel .drive-report-types button{min-width:0;overflow-wrap:normal;padding:8px 4px}
html body.driving #driving-panel .drive-report-panel .drive-report-types button[aria-pressed=true]{background:var(--lg-pb-234f40,#234f40);color:var(--lg-pt-ffffff,#fff);border-color:var(--lg-pb-234f40,#234f40)}
html body.driving #driving-panel .drive-report-panel button:disabled{background:var(--lg-b-eef0ec,#eef0ec);color:var(--lg-t-596962,#596962);border-color:var(--lg-l-c8d6c3,#c8d6c3);cursor:default}
html body.driving #driving-panel .drive-report-help{display:grid;gap:8px;padding:12px;border:1px solid var(--lg-l-688377,#688377);border-radius:8px;background:var(--lg-b-f0f6ed,#f0f6ed)}
html body.driving #driving-panel .drive-report-active{display:grid;gap:8px;padding:12px;border:1px solid var(--lg-l-688377,#688377);border-radius:8px;background:var(--lg-b-f0f6ed,#f0f6ed)}
html body.driving #driving-panel .drive-report-active>strong{font-size:var(--hx-text-title);font-weight:700;line-height:var(--hx-leading-tight)}
html body.driving #driving-panel .drive-report-panel[data-stage=published] .drive-report-types{display:none}
html body.driving #driving-panel [data-report-list]{display:grid;gap:12px;padding:8px 0;font-size:var(--hx-text-title);font-weight:500}
html body.driving #driving-panel .drive-report-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0;border-top:1px solid var(--lg-l-d8ded9,#d8ded9)}
html body.driving #driving-panel .drive-report-row span{grid-column:1/-1;overflow-wrap:anywhere}
html body.driving #driving-panel .drive-report-row button{min-width:0}
html body.driving #driving-panel .drive-report-tools{display:flex;align-items:center;gap:8px}
html body.driving #driving-panel .drive-report-tools button{min-height:44px;max-width:160px;padding:6px 10px;font-size:var(--hx-text-title)}
html body.driving #driving-panel .drive-report-tools [data-photo]{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-left:auto}
html body.driving #driving-panel .drive-report-tools [data-photo] svg{width:20px;height:20px}
html body.driving #driving-panel .drive-report-row{grid-template-columns:repeat(2,minmax(0,1fr))}
html body.driving #driving-panel .drive-report-row button{min-height:44px;font-size:var(--hx-text-body)}
html body.driving .drive-report-endpoint{display:grid;place-items:center;width:44px;height:44px;padding:0;border:3px solid var(--lg-l-fffdf6,#fffdf6);border-radius:50%;background:var(--lg-b-234f40,#234f40);color:var(--lg-t-ffffff,#fff);box-shadow:0 2px 10px #183d3966;font-family:'Horus Avenir','Avenir Next','Segoe UI',Arial,sans-serif;font-size:var(--hx-text-title);font-weight:700;line-height:1;cursor:grab}
html body.driving .drive-report-endpoint:active{cursor:grabbing}
html body.driving .drive-report-photo-dialog{box-sizing:border-box;width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:hidden;border:1px solid var(--lg-l-688377,#688377);border-radius:12px;background:var(--lg-b-fffdf6,#fffdf6);color:var(--lg-t-183d39,#183d39)}
html body.driving .drive-report-photo-dialog[open]{display:flex;flex-direction:column}
html body.driving .drive-report-photo-dialog .ui-dialog-heading{flex:none;margin:0}
html body.driving .drive-report-photo-dialog .drive-report-photo-body{min-height:0;overflow:auto;padding:12px}
html body.driving .drive-report-photo-dialog img{display:block;max-width:100%;max-height:calc(100dvh - 110px);margin:auto;object-fit:contain}
@media(max-width:380px){html body.driving #driving-panel .drive-report-types{gap:6px;grid-template-columns:1.15fr 1.25fr .8fr}}
@media(max-width:380px){html body.driving #driving-panel .drive-guidance-group .drive-maneuver{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px 16px!important;min-height:94px}html body.driving #driving-panel .drive-guidance-group .drive-maneuver>svg{width:40px;height:40px}html body.driving #driving-panel .drive-guidance-group .drive-instruction{font-size:var(--hx-text-display)!important}html body.driving #driving-panel .drive-route-panel{padding:12px!important}html body.driving #driving-panel .drive-summary-toggle .drive-duration{font-size:var(--hx-text-display)!important}html body.driving #driving-panel .drive-extra:not([hidden]){grid-template-columns:1fr;row-gap:6px}}
@media(min-width:901px){html body.driving #driving-panel .drive-guidance-group{left:24px;right:24px;top:20px}html body.driving #driving-panel .drive-guidance-group .drive-maneuver{max-width:520px!important}html body.driving #driving-panel .drive-guidance-group .drive-instruction{font-size:var(--hx-text-display)!important}html body.driving #driving-panel .drive-guidance-group .drive-map-buttons{right:0!important}html body.driving #driving-panel .drive-route-panel{width:520px!important;max-width:calc(100% - 48px)!important;right:auto!important;left:24px!important;bottom:20px!important}html body.driving #driving-panel .drive-summary-toggle .drive-target{font-weight:600!important}html body.driving #driving-panel .drive-report-panel{left:24px;bottom:20px}}
@media(max-width:900px){html body.driving #driving-panel .drive-guidance-group{top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));right:calc(12px + env(safe-area-inset-right,0px));width:auto;max-width:none}html body.driving #driving-panel .drive-route-panel{bottom:calc(12px + var(--nav-safe-bottom,env(safe-area-inset-bottom,0px)))!important}}

/* Navigation text is 30% larger; allow detail rows to grow without clipping. */
html body.driving #driving-panel .drive-speed{font-size:var(--hx-text-title)!important;line-height:var(--hx-leading-body)!important}
html body.driving #driving-panel .drive-gps,html body.driving #driving-panel .drive-road-status{font-size:var(--hx-text-body)!important;line-height:var(--hx-leading-body)!important}
html body.driving #driving-panel .drive-extra>div{flex-wrap:wrap;white-space:normal}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons{height:auto!important;overflow:hidden!important;gap:0!important;border:1px solid var(--lg-l-62765a,#62765a)!important;border-radius:0 12px 12px 0!important;background:var(--lg-b-e0e5ce,#e0e5ce)!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons :is(#drive-report,#drive-north,#drive-recenter,#drive-overview,#drive-voice){margin:0!important;background:var(--lg-b-e0e5ce,#e0e5ce)!important;color:var(--lg-t-183d39,#183d39)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons :is(#drive-report,#drive-north,#drive-recenter,#drive-overview,#drive-voice)+button{border-top:1px solid var(--lg-l-62765a,#62765a)!important}

html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-voice svg{width:26px;height:26px;flex:none}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-voice .drive-voice-waves{display:none}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-voice[aria-pressed=true]{background:var(--lg-pb-234f40,#234f40)!important;color:var(--lg-pt-ffffff,#fff)!important}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-voice[aria-pressed=true] .drive-voice-waves{display:block}
html body.driving #driving-panel .drive-guidance-group .drive-map-buttons #drive-voice[aria-pressed=true] .drive-voice-muted{display:none}
/* Short viewports keep the joined controls clear of trip details and Exit. */
@media(max-height:800px){
 html body.driving #driving-panel .drive-guidance-group .drive-map-buttons{display:flex!important;flex-direction:row!important;width:max-content!important;max-width:100%!important;border-radius:12px!important}
 html body.driving #driving-panel .drive-guidance-group .drive-map-buttons :is(#drive-report,#drive-north,#drive-recenter,#drive-overview,#drive-voice){flex:0 0 54px!important}
 html body.driving #driving-panel .drive-guidance-group .drive-map-buttons :is(#drive-report,#drive-north,#drive-recenter,#drive-overview,#drive-voice)+button{border-top:0!important;border-left:1px solid var(--lg-l-62765a,#62765a)!important}
}
/* Keep the maneuver and its distance visible together; never scroll away a turn. */
html body.driving #driving-panel .drive-guidance-group :is(.drive-instruction,.drive-detail){white-space:normal!important;overflow:visible!important;min-width:0}
html body.driving #driving-panel .drive-guidance-group :is(.drive-instruction,.drive-detail)>span{display:block!important;white-space:normal!important;width:auto!important;max-width:100%;overflow-wrap:anywhere;animation:none!important;transform:none!important}
@media(max-height:800px){
 html body.driving #driving-panel .drive-guidance-group .drive-detail{display:none!important}
 html body.driving #driving-panel .drive-extra:not([hidden]){max-height:58px;overflow-y:auto;grid-template-columns:1fr;gap:4px;padding-top:8px;margin-top:8px}
}

html body.driving #driving-panel .drive-report-panel :is([data-publish],[data-new-section],[data-photo],.drive-report-row button){background:var(--lg-b-e8ebe8,#e8ebe8);color:var(--lg-t-183d39,#183d39);border:1px solid var(--lg-l-62765a,#62765a);border-radius:var(--hx-radius-card)}
html body.driving #driving-panel .drive-report-types button[aria-pressed=true]{border-color:var(--lg-l-62765a,#62765a)}
/* Road Issue decisions are ordinary actions, separate from the active map rail. */
html:root body.driving #driving-panel#driving-panel .drive-report-panel button{--ui-action-bg:#e8ebe8;--ui-action-ink:#183d39;--ui-action-border:#62765a;--ui-action-border-width:2px;background:var(--lg-b-e8ebe8,#e8ebe8)!important;color:var(--lg-t-183d39,#183d39)!important;border:1px solid var(--lg-l-62765a,#62765a)!important;border-radius:var(--hx-radius-card)!important}
html:root body.driving #driving-panel#driving-panel .drive-report-types button[aria-pressed=true]{background:var(--lg-pb-234f40,#234f40)!important;color:var(--lg-pt-ffffff,#fff)!important}
html:root body.driving #driving-panel#driving-panel .drive-report-header button svg{color:inherit!important;stroke:currentColor!important}

/* Road issue: facts first, related tools together, completion after a divider. */
html body.driving #driving-panel .drive-report-panel{gap:calc(12px)}
html body.driving #driving-panel .drive-report-panel [data-selection-help][hidden]{display:none}
html body.driving #driving-panel .drive-report-panel [role=status]{font-weight:500}
html body.driving #driving-panel .drive-report-panel[data-stage=selected] [role=status]{font-weight:700}
html body.driving #driving-panel .drive-report-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(12px)}
html body.driving #driving-panel .drive-report-tools [data-photo]{margin-left:0;max-width:none}
html body.driving #driving-panel .drive-report-tools:has([data-new-section][hidden]){grid-template-columns:1fr}
html body.driving #driving-panel .drive-report-submit{margin-top:calc(4px);padding-top:calc(16px);border-top:1px solid var(--lg-l-d8ded9,#d8ded9)}
html body.driving #driving-panel .drive-report-submit:has([data-publish][hidden]){display:none}
html body.driving #driving-panel .drive-report-submit button{width:100%}
html body.driving #driving-panel .drive-report-row{display:block;padding:16px 0;border-top:0}
html body.driving #driving-panel .drive-report-row+.drive-report-row{border-top:1px solid var(--lg-l-d8ded9,#d8ded9)}
html body.driving #driving-panel .drive-report-facts{display:grid;gap:calc(8px)}
html body.driving #driving-panel .drive-report-title-row>strong{font-size:var(--hx-text-title);font-weight:700;line-height:var(--hx-leading-body)}
html body.driving #driving-panel .drive-report-title-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:calc(8px) calc(12px)}
html body.driving #driving-panel .drive-report-facts .drive-report-state{display:inline-block;flex:none;margin:0;padding:calc(4px) calc(8px);border:1px solid var(--lg-l-a4b0a6,#a4b0a6);border-radius:6px;background:var(--lg-b-e8ebe8,#e8ebe8);color:var(--lg-t-183d39,#183d39);font-size:var(--hx-text-body);font-weight:600;line-height:var(--hx-leading-body);white-space:nowrap}
html body.driving #driving-panel .drive-report-facts .drive-report-state[data-state=active]{background:var(--lg-b-e1eee7,#e1eee7);border-color:var(--lg-l-688377,#688377)}
html body.driving #driving-panel .drive-report-facts .drive-report-state[data-state=expired]{background:var(--lg-b-fff2d8,#fff2d8);border-color:var(--lg-l-ab813e,#ab813e)}
html body.driving #driving-panel .drive-report-facts .drive-report-meta{font-size:var(--hx-text-body);font-weight:500;line-height:var(--hx-leading-body)}
html body.driving #driving-panel .drive-report-record-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(12px);margin-top:calc(16px);border-top:1px solid var(--lg-l-d8ded9,#d8ded9);padding-top:calc(16px)}
html body.driving #driving-panel .drive-report-record-actions :is([data-resolve],button:only-child){grid-column:1/-1}
html body.driving #driving-panel .drive-report-panel :is(.drive-report-tools button,.drive-report-row button){font-size:var(--ui-button-label-size,calc(18px * var(--horus-text-scale,1)));font-weight:600;line-height:var(--hx-leading-body);min-height:52px;max-width:none}

html body.driving #driving-panel .drive-report-active{padding:calc(16px);border-radius:var(--hx-radius-card);gap:calc(12px)}
html body.driving #driving-panel .drive-report-panel:has([data-reports][aria-expanded=true])>:is(.drive-report-types,[data-prompt],[data-selection-help],.drive-report-tools,[data-photo-status],.drive-report-submit){display:none}

html body.driving #driving-panel .drive-report-resolve-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(12px);margin-top:calc(16px);border-top:1px solid var(--lg-l-d8ded9,#d8ded9);padding-top:calc(16px)}
html body.driving #driving-panel .drive-report-resolve-actions>button{width:100%}

html body.driving #driving-panel .drive-report-submit{display:grid;gap:calc(12px)}

html body.driving #driving-panel .drive-report-resolve-actions>.drive-report-confirm-cancel{grid-column:1/-1}

html body.driving #driving-panel .drive-report-panel:has([data-reports][aria-expanded=true]){max-height:min(480px,60dvh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px))}
html body.driving #driving-panel [data-report-list]{gap:0;padding:0}
html body.driving #driving-panel .drive-report-row:first-child{padding-top:0}

/* line height 1.3: at 1.15 with overflow hidden the "g" of "Updating" was cut (UI auto check, 6 Oct 2026) */
