/* v0.7.8 — correção real do planejamento e acabamento aprovado, isolados por área. */
:root{
  --m78-bg:#07111f;--m78-surface:#0b192b;--m78-raised:#101f34;--m78-raised-2:#14263c;
  --m78-border:#243a53;--m78-text:#f2f7ff;--m78-muted:#a8bbd2;--m78-blue:#20a8ff;--m78-cyan:#35d6ff;
  --m78-green:#24c18a;--m78-amber:#f4b84b;--m78-red:#ff6575;--m78-purple:#a477ff;
  --m78-radius:12px;--m78-fast:150ms;--m78-normal:210ms;--m78-ease:cubic-bezier(.2,.75,.25,1);
}

/* Planejamento: o mapa continua protagonista e a sequência mantém largura de leitura. */
body.route-planning-active #route-planning-panel{color:var(--m78-text);background:var(--m78-bg);border-color:var(--m78-border);}
body.route-planning-active .route-planning-heading{min-width:0;gap:18px;padding:14px 18px;background:linear-gradient(120deg,#0c1a2a,#10233a);border-color:var(--m78-border);}
body.route-planning-active .route-heading-title{flex:1 1 250px;min-width:0;}
body.route-planning-active .route-heading-title h1{font-size:clamp(19px,1.6vw,24px);letter-spacing:-.025em;}
body.route-planning-active .route-heading-title p{font-size:12px;line-height:1.5;}
body.route-planning-active .route-heading-actions{display:flex;align-items:end;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:0;}
body.route-planning-active .route-heading-actions>label{width:auto;min-width:145px;gap:5px;padding:7px 9px;border:1px solid var(--m78-border);border-radius:9px;background:#0a1726;color:var(--m78-muted);font-size:11px;}
body.route-planning-active .route-heading-actions>label:first-child{width:154px;}
body.route-planning-active .route-heading-actions>label:nth-child(2){width:180px;}
body.route-planning-active .route-heading-actions input,
body.route-planning-active .route-heading-actions select,
body.route-planning-active .route-compact-fields input,
body.route-planning-active .route-compact-fields select,
body.route-planning-active .route-company-filters input,
body.route-planning-active .route-company-filters select,
body.route-planning-active .route-origin-choice select{width:100%;min-width:0;min-height:40px;padding:8px 10px!important;border:1px solid #314a66;border-radius:8px;background:#0b192b!important;color:var(--m78-text)!important;color-scheme:dark;font-size:12px!important;}
body.route-planning-active .route-heading-actions>button{min-height:42px;padding:9px 13px;font-size:12px;white-space:normal;}
body.route-planning-active #calculate-route{width:auto;min-width:138px;min-height:44px;padding:10px 16px;font-size:13px;}
body.route-planning-active #route-preview-fit,
body.route-planning-active #route-save-button,
body.route-planning-active #route-publish-button,
body.route-planning-active #route-saved-toggle{width:auto;min-width:108px;}
body.route-planning-active #route-theme-toggle{width:42px;min-width:42px;}
body.route-planning-active #route-save-button{background:#102d4d;border-color:#2674bf;}
body.route-planning-active #route-publish-button{background:#0e6e4d;border-color:#20966c;}
body.route-planning-active #route-saved-toggle{background:#132943;}
body.route-planning-active .route-workspace{grid-template-columns:minmax(235px,.88fr) minmax(410px,1.55fr) minmax(325px,1fr);gap:12px;min-width:0;min-height:calc(100vh - 220px);}
body.route-planning-active .route-controls,body.route-planning-active .route-map-panel,body.route-planning-active .route-result-panel{min-width:0;}
body.route-planning-active .route-controls{max-height:calc(100vh - 215px);padding-right:3px;}
body.route-planning-active .route-control-block,body.route-planning-active .route-map-panel,body.route-planning-active .route-result-panel{border-color:var(--m78-border);border-radius:var(--m78-radius);background:var(--m78-surface);box-shadow:0 10px 28px #02091340;}
body.route-planning-active .route-control-block{padding:14px;}
body.route-planning-active .route-card-heading h2,body.route-planning-active .route-stops-heading h2,body.route-planning-active .route-map-header h2,body.route-planning-active .route-result-heading h2{font-size:14px;}
body.route-planning-active .route-card-heading p,body.route-planning-active .route-stops-heading p,body.route-planning-active .route-map-header p,body.route-planning-active .route-result-heading p{font-size:11px;line-height:1.5;}
body.route-planning-active .route-operator-option{min-height:48px;padding:8px;border-color:#1d3047;background:#0d1c2d;transition:background var(--m78-normal) var(--m78-ease),border-color var(--m78-fast),transform var(--m78-fast);}
body.route-planning-active .route-operator-option:has(input:checked){border-color:color-mix(in srgb,var(--route-operator-color) 58%,#243a53);background:#122941;}
body.route-planning-active .route-operator-option-copy strong{font-size:12px;}
body.route-planning-active .route-operator-option-copy small{font-size:10px;}
body.route-planning-active .route-company-filters{gap:9px;}
body.route-planning-active .route-company-filters>label{display:grid;gap:5px;color:var(--m78-muted);font-size:10px;}
body.route-planning-active .route-company-filters input[type=checkbox],body.route-planning-active .route-select-all-control input[type=checkbox],body.route-planning-active .route-only-selected input[type=checkbox],body.route-planning-active #route-additional-companies input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:0;padding:0!important;border:0;background:transparent!important;accent-color:#2585ff;color-scheme:dark;}
body.route-planning-active .route-select-all-control{display:flex;align-items:center;gap:9px;min-height:42px;margin:8px 0;padding:8px 10px;border:1px solid #263e59;border-radius:9px;background:#10243a;color:var(--m78-text);font-size:11px;}
body.route-planning-active .route-only-selected{min-height:42px;padding:8px 10px;border:1px solid #263e59;border-radius:9px;background:#10243a;color:var(--m78-text);}
body.route-planning-active .route-company{min-height:50px;padding:9px 8px;border-color:#203650;border-radius:9px;background:#0d1c2d;}
body.route-planning-active .route-company:hover{border-color:#3574aa;background:#10263f;}
body.route-planning-active .route-company strong{color:var(--m78-text);font-size:12px;line-height:1.4;}
body.route-planning-active .route-company small{color:var(--m78-muted);font-size:10px;line-height:1.5;}
body.route-planning-active .route-additional-group{padding:13px;border:1px solid #263e59;border-radius:10px;background:#0d1c2d;color:var(--m78-text);}
body.route-planning-active .route-additional-group>h3{margin:0 0 6px;color:var(--m78-text);font-size:12px;}
body.route-planning-active .route-additional-group>p{margin:6px 0;color:var(--m78-muted);font-size:10px;line-height:1.5;}
body.route-planning-active .route-additional-group .empty-state{border:1px dashed #314a66;border-radius:8px;background:#10243a;color:var(--m78-muted);}
body.route-planning-active .route-map-panel{position:relative;top:auto;display:flex;flex-direction:column;min-height:650px;padding:12px;overflow:hidden;}
body.route-planning-active .route-map-header{align-items:center;flex-wrap:wrap;gap:10px;padding:4px 3px 10px;border-bottom:1px solid var(--m78-border);}
body.route-planning-active .route-map-toolbar{display:flex;flex-wrap:wrap;gap:7px;}
body.route-planning-active .route-map-toolbar button{min-height:40px;padding:8px 12px;font-size:11px;}
body.route-planning-active #route-preview-map{flex:1 1 auto;width:100%;height:clamp(520px,68vh,820px);min-height:500px;border:1px solid #29425d;border-radius:10px;background:#10243a;}
body.route-planning-active .route-map-bottom{position:static;display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding:9px 2px 0;background:transparent!important;}
body.route-planning-active .route-preview-status{max-width:none;padding:8px 10px;border:1px solid #203650;border-radius:8px;background:#0d1c2d;color:var(--m78-muted);font-size:10px;line-height:1.5;}
body.route-planning-active .route-preview-legend{max-width:none;padding:4px 3px;border:0;border-radius:0;background:transparent!important;box-shadow:none;color:#d1deec;font-size:10px;}
body.route-planning-active .route-map-metrics{position:static;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:7px 0 4px;}
body.route-planning-active .route-map-metrics article{min-width:0;min-height:68px;padding:9px;border:1px solid #28415d;border-radius:9px;background:#10243a;}
body.route-planning-active .route-map-metrics strong{font-size:16px;}
body.route-planning-active .route-map-metrics small{font-size:9px;line-height:1.4;}
body.route-planning-active .route-result-panel{display:flex;flex-direction:column;max-height:calc(100vh - 210px);padding:14px;overflow:hidden;}
body.route-planning-active .route-result-heading{flex:none;padding-bottom:10px;border-bottom:1px solid var(--m78-border);}
body.route-planning-active .route-result-panel>.route-results{display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-height:220px;max-height:none;margin:0;padding:5px 5px 8px 0;overflow:auto;background:transparent;color:var(--m78-text);scrollbar-color:#385574 #0b192b;scrollbar-width:thin;}
body.route-planning-active .route-results-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:3px 0;}
body.route-planning-active .route-results-summary article{min-height:60px;padding:9px;border:1px solid #243a53;border-radius:9px;background:#101f34;}
body.route-planning-active .route-results-summary span{font-size:9px;line-height:1.4;}
body.route-planning-active .route-results-summary strong{font-size:16px;}
body.route-planning-active .route-result-card{min-width:0;margin:0;padding:12px;border:1px solid #263f5a;border-radius:11px;background:#0d1c2d;}
body.route-planning-active .route-result-card>header{align-items:flex-start;gap:9px;margin-bottom:8px;}
body.route-planning-active .route-result-card h3{font-size:14px;}
body.route-planning-active .route-result-card header p{font-size:11px;line-height:1.45;}
body.route-planning-active .route-sequence-details{margin-top:6px;border-top:1px solid #243a53;}
body.route-planning-active .route-sequence-details>summary{min-height:38px;margin:0;color:#c3d3e6;font-size:12px;line-height:1.4;}
body.route-planning-active .route-sequence-content{padding-top:4px;}
body.route-planning-active .route-visit-sequence{display:grid;gap:7px;margin:8px 0;padding:0;list-style:none;}
body.route-planning-active .route-visit-sequence::before{display:none;}
body.route-planning-active .route-visit-sequence li.route-stop-card{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:9px;min-width:0;padding:10px 8px;border:1px solid #253d57;border-radius:10px;background:#101f34;transition:transform 210ms var(--m78-ease),background 170ms,border-color 170ms,box-shadow 170ms;}
body.route-planning-active .route-visit-sequence li.route-stop-card:hover{border-color:#385b7f;background:#12243b;}
body.route-planning-active .route-stop-identity{display:grid;grid-template-columns:44px;justify-items:center;gap:5px;}
body.route-planning-active .route-visit-sequence .route-progress-node{width:25px;height:25px;font-size:11px;}
body.route-planning-active .route-drag-handle{display:grid;place-items:center;width:44px;height:44px;min-height:44px!important;padding:0!important;border:1px solid #2a4866!important;border-radius:9px!important;background:#0b192b!important;color:#8fcaff!important;font-size:21px!important;line-height:1;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;}
body.route-planning-active .route-drag-handle:hover{border-color:#20a8ff!important;background:#123154!important;box-shadow:0 0 0 3px #20a8ff20!important;}
body.route-planning-active .route-drag-handle:active{cursor:grabbing;transform:scale(.96)!important;}
body.route-planning-active .route-drag-handle-locked{display:grid;place-items:center;width:44px;height:44px;color:#71849b;font-size:19px;}
body.route-planning-active .route-visit-sequence li.route-stop-card.is-fixed-stop{opacity:.8;}
body.route-planning-active .route-visit-sequence li.route-stop-card.is-drag-source{opacity:.32;}
body.route-planning-active .route-visit-sequence li.route-stop-card.is-drop-before{box-shadow:inset 0 3px var(--m78-cyan);transform:translateY(3px);}
body.route-planning-active .route-visit-sequence li.route-stop-card.is-drop-after{box-shadow:inset 0 -3px var(--m78-cyan);transform:translateY(-3px);}
.route-drag-ghost{position:fixed;z-index:10000;pointer-events:none;opacity:.96;transform:scale(1.015);border-color:#35d6ff!important;background:#173657!important;box-shadow:0 16px 38px #010813a8,0 0 0 1px #35d6ff80!important;}
body.route-planning-active .route-stop-content{gap:5px;}
body.route-planning-active .route-stop-focus{max-width:100%;font-size:13px;line-height:1.45;overflow-wrap:anywhere;}
body.route-planning-active .route-stop-content>small,body.route-planning-active .route-visit-status{font-size:11px;line-height:1.5;overflow-wrap:anywhere;}
body.route-planning-active .route-stop-actions{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:2px 0;}
body.route-planning-active .route-stop-actions button{min-width:40px;min-height:40px;padding:6px;border-color:#304966;background:#10243a;color:#d5e5f6;}
body.route-planning-active .route-stop-actions span{flex:1 1 100%;color:#a8bbd2;font-size:10px;line-height:1.5;}
body.route-planning-active .route-history-link{min-height:38px!important;padding:7px 0!important;font-size:11px!important;}
body.route-planning-active .route-instruction-field{gap:5px;margin-top:4px;color:#a8bbd2;font-size:10px;line-height:1.45;}
body.route-planning-active .route-instruction-field textarea{min-height:62px;padding:9px;border-color:#304966;border-radius:8px;background:#0a1726;color:#f2f7ff;font-size:12px;line-height:1.45;}
body.route-planning-active .route-order-pending{margin:6px 0;padding:10px 11px;border-color:#8b6726;border-left-color:#f4b84b;border-radius:9px;background:#2a2318;color:#ffe2a2;font-size:11px;line-height:1.5;}
body.route-planning-active .route-metrics,body.route-planning-active .route-comparison,body.route-planning-active .route-result-card .form-help{padding:10px;border:1px solid #263f5a;border-radius:8px;background:#10243a;color:#b7c9dd;font-size:10px;line-height:1.55;}
body.route-planning-active .route-result-card .actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}
body.route-planning-active .route-result-card .actions button{min-height:40px!important;padding:8px 11px!important;font-size:11px;line-height:1.35;}
body.route-planning-active .route-actions{display:flex;flex-wrap:wrap;gap:8px;}

/* Coerência visual no dashboard e no portal sem mudar sua navegação. */
body.executive-dashboard-active .exec-card,body.executive-dashboard-active .exec-metric,body.executive-dashboard-active .exec-map-card{transition:transform var(--m78-normal) var(--m78-ease),border-color var(--m78-fast),box-shadow var(--m78-fast);}
body.executive-dashboard-active .exec-metric:hover{transform:translateY(-2px);border-color:#345575;box-shadow:0 12px 28px #02091450;}
body.executive-dashboard-active .exec-title h1,body.executive-dashboard-active .exec-card h2{color:var(--m78-text);}
.operator-authenticated{background:radial-gradient(ellipse at 50% -15%,#132b48 0,#091729 48%,#07111f 100%);color:var(--m78-text);}
.operator-app-header{position:sticky;top:0;z-index:30;min-height:68px;padding:12px max(20px,calc((100vw - 1240px)/2));border-color:#203650;background:#091729ee;color:var(--m78-text);backdrop-filter:blur(14px);}
.operator-app-header .auth-brand{margin:0;color:var(--m78-text);}
.operator-app-header .auth-brand small{color:var(--m78-muted);}
.operator-app-main{max-width:1240px;padding:clamp(18px,3vw,36px) clamp(14px,3vw,28px) 64px;}
.operator-app-heading{align-items:flex-start;margin:8px 0 20px;}
.operator-app-heading h1{margin:5px 0;color:var(--m78-text);font-size:clamp(24px,4vw,34px);letter-spacing:-.03em;}
.operator-app-heading p:not(.eyebrow){color:var(--m78-muted);}
.operator-app-tabs{gap:7px;margin:18px 0 20px;padding:5px;border:1px solid var(--m78-border);border-radius:12px;background:#0b192b;}
.operator-app-tabs button,.operator-app-shortcuts button,.operator-app-header button{min-height:42px;border-color:#29425f;border-radius:9px;background:#10243a;color:#dce8f6;transition:transform var(--m78-fast),border-color var(--m78-fast),box-shadow var(--m78-fast),background var(--m78-fast);}
.operator-app-tabs button[aria-current=page]{position:relative;background:#12365b;color:#fff;border-color:#2479bd;box-shadow:inset 0 -2px var(--m78-cyan);}
.operator-app-main #operator-app-content>.operator-portal-section,.operator-app-main #operator-app-content .operator-portal-section{border-color:var(--m78-border);border-radius:14px;background:#0c1b2d;color:var(--m78-text);box-shadow:0 12px 30px #02091435;}
.operator-app-main #operator-app-content h2,.operator-app-main #operator-app-content h3{color:var(--m78-text);}
.operator-app-main #operator-app-content p,.operator-app-main #operator-app-content small{color:#a8bbd2;}
.operator-app-main .operator-summary-cards article,.operator-app-main .operator-visit-card,.operator-app-main .portal-summary-cards article{border-color:#263e59;border-radius:11px;background:#10243a;color:var(--m78-text);}
.operator-app-main .operator-summary-cards strong,.operator-app-main .portal-summary-cards strong{color:var(--m78-text);}
.operator-app-main .operator-route-map,.operator-app-main #portal-route-map{min-height:310px;border:1px solid #29425e;border-radius:12px;overflow:hidden;background:#10243a;}
.operator-app-main .operator-route-sequence{gap:8px;padding-left:0;list-style:none;}
.operator-app-main .operator-route-sequence li,.operator-app-main .portal-route-sequence li{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid #263e59;border-radius:10px;background:#10243a;transition:transform var(--m78-normal) var(--m78-ease),border-color var(--m78-fast),background var(--m78-fast);}
.operator-app-main .operator-route-sequence li:hover,.operator-app-main .portal-route-sequence li:hover{transform:translateY(-1px);border-color:#3a6b98;background:#122943;}
.operator-app-main .operator-visit-card p{color:#a8bbd2;}
.operator-app-main .operator-instruction,.operator-app-main .operator-report-summary{border:1px solid #28405a;background:#10243a;color:#d9e6f4;}
.operator-app-main .operator-visit-card button,.operator-app-main .operator-detail-actions button,.operator-app-main .operator-map-actions a{min-height:42px;border-color:#29425f;border-radius:9px;background:#10243a;color:#e8f1fb;}
.operator-app-main .operator-visit-card .primary,.operator-app-main .operator-detail-actions .primary{background:#1769ed;color:#fff;}
#operator-api-message:not([hidden]){margin:12px 0;padding:12px 14px;border:1px solid #36516d;border-radius:10px;background:#10243a;color:#d9e6f4;}

/* Movimento discreto, perceptível e substituído por estados estáticos em reduced motion. */
@keyframes m78-page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes m78-card-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes m78-kpi-update{0%{transform:scale(1);box-shadow:0 0 0 #20a8ff00}45%{transform:scale(1.035);box-shadow:0 0 0 4px #20a8ff22}100%{transform:scale(1);box-shadow:0 0 0 #20a8ff00}}
@keyframes m78-dash-line{to{stroke-dashoffset:0}}
body.route-planning-active #route-planning-panel:not([hidden]),body.executive-dashboard-active #overview-panel:not([hidden]),body.executive-dashboard-active #map-panel:not([hidden]),#operator-authenticated:not([hidden]) .operator-app-main{animation:m78-page-in 220ms var(--m78-ease) both;}
body.route-planning-active .route-result-card{animation:m78-card-in 210ms var(--m78-ease) both;}
body.route-planning-active .route-result-card:nth-of-type(2){animation-delay:35ms;}
body.route-planning-active .route-result-card:nth-of-type(3){animation-delay:65ms;}
.m78-kpi-updated{animation:m78-kpi-update 420ms var(--m78-ease) both;}
body.route-planning-active #route-planning-panel button:not(:disabled),.operator-app-main button:not(:disabled){transition:transform var(--m78-fast) var(--m78-ease),box-shadow var(--m78-fast),border-color var(--m78-fast),background var(--m78-fast),color var(--m78-fast);}
body.route-planning-active #route-planning-panel button:not(:disabled):hover,.operator-app-main button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 7px 18px #02091445,0 0 0 1px #35d6ff26;}
body.route-planning-active #route-planning-panel button:not(:disabled):active,.operator-app-main button:not(:disabled):active{transform:scale(.985);}
body.route-planning-active #route-planning-panel :focus-visible,.operator-app-main :focus-visible{outline:2px solid var(--m78-cyan);outline-offset:2px;box-shadow:0 0 0 4px #35d6ff20;}
.app-message:not([hidden]){position:fixed;right:24px;bottom:24px;z-index:3000;max-width:min(440px,calc(100vw - 32px));padding:13px 16px;border:1px solid #297a62;border-radius:11px;background:#0e352d;color:#e6fff6;box-shadow:0 14px 36px #02091488;font-size:13px;line-height:1.5;}
.app-message.error{border-color:#97444d;background:#3a1e29;color:#ffe9ec;}

@media(max-width:1360px) and (min-width:901px){body.route-planning-active .route-workspace{grid-template-columns:minmax(230px,.78fr) minmax(400px,1.35fr);align-items:start;}body.route-planning-active .route-controls{grid-column:1;grid-row:1/span 2;max-height:none;}body.route-planning-active .route-map-panel{grid-column:2;grid-row:1;min-height:610px;}body.route-planning-active .route-result-panel{grid-column:2;grid-row:2;max-height:none;min-height:400px;}}
@media(max-width:1120px) and (min-width:901px){body.route-planning-active .route-workspace{grid-template-columns:minmax(215px,.72fr) minmax(340px,1.28fr);gap:9px;}body.route-planning-active .route-heading-actions{justify-content:flex-start;}body.route-planning-active .route-heading-actions>label{min-width:140px;}body.route-planning-active .route-map-panel{min-height:540px;}body.route-planning-active #route-preview-map{height:520px;min-height:460px;}}
@media(max-width:900px){body.route-planning-active .route-planning-heading{align-items:flex-start;flex-direction:column;}body.route-planning-active .route-heading-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;}body.route-planning-active .route-heading-actions>label,body.route-planning-active .route-heading-actions>label:first-child,body.route-planning-active .route-heading-actions>label:nth-child(2){width:auto;min-width:0;}body.route-planning-active .route-heading-actions>#route-saved-toggle{grid-column:span 2;width:100%;}body.route-planning-active .route-workspace{display:flex;flex-direction:column;gap:10px;}body.route-planning-active .route-controls{display:flex;flex-direction:column;max-height:none;overflow:visible;}body.route-planning-active .route-map-panel{order:2;min-height:500px;}body.route-planning-active .route-result-panel{order:3;max-height:none;min-height:360px;}body.route-planning-active #route-preview-map{height:56vh;min-height:360px;}body.route-planning-active .route-map-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){body.route-planning-active #route-planning-panel{padding:8px;}body.route-planning-active .route-planning-heading{padding:12px;}body.route-planning-active .route-heading-actions{gap:7px;}body.route-planning-active .route-heading-actions>button{min-height:44px;font-size:11px;}body.route-planning-active #calculate-route{grid-column:span 2;width:100%;}body.route-planning-active .route-heading-actions>#route-saved-toggle{grid-column:span 2;}body.route-planning-active .route-map-panel{min-height:440px;padding:8px;}body.route-planning-active .route-map-header{align-items:flex-start;}body.route-planning-active .route-map-toolbar{width:100%;}body.route-planning-active .route-map-toolbar button{flex:1 1 auto;}body.route-planning-active #route-preview-map{height:52vh;min-height:330px;}body.route-planning-active .route-map-metrics article{min-height:60px;padding:8px;}body.route-planning-active .route-result-panel{padding:10px;}body.route-planning-active .route-visit-sequence li.route-stop-card{grid-template-columns:54px minmax(0,1fr);padding:9px 6px;}body.route-planning-active .route-stop-identity{grid-template-columns:42px;}body.route-planning-active .route-drag-handle{width:42px;height:44px;}.operator-app-header{position:relative;align-items:flex-start;gap:9px;padding:12px 14px}.operator-app-header>div:last-child{gap:8px}.operator-app-main{padding:20px 13px 42px}.operator-app-heading{flex-direction:column;gap:10px}.operator-app-heading h1{font-size:25px}.operator-app-shortcuts{width:100%}.operator-app-shortcuts button{flex:1;min-height:44px}.operator-app-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0}.operator-app-tabs button{min-height:44px}.operator-app-main #operator-app-content>.operator-portal-section,.operator-app-main #operator-app-content .operator-portal-section{padding:15px}.operator-app-main .operator-route-map,.operator-app-main #portal-route-map{min-height:280px;height:44vh;}.operator-app-main .operator-summary-cards,.operator-app-main .portal-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.operator-app-main .operator-summary-cards article,.operator-app-main .portal-summary-cards article{padding:12px}.operator-app-main .operator-visit-card{align-items:stretch;flex-direction:column;gap:8px}.operator-app-main .operator-detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.operator-app-main .operator-detail-actions button{min-width:0;}}
@media(prefers-reduced-motion:reduce){body.route-planning-active #route-planning-panel:not([hidden]),body.executive-dashboard-active #overview-panel:not([hidden]),body.executive-dashboard-active #map-panel:not([hidden]),#operator-authenticated:not([hidden]) .operator-app-main,body.route-planning-active .route-result-card,.m78-kpi-updated{animation:none!important}body.route-planning-active #route-planning-panel *,body.executive-dashboard-active #overview-panel *,body.executive-dashboard-active #map-panel *,#operator-authenticated *{scroll-behavior:auto!important;transition:none!important;animation:none!important}body.route-planning-active #route-planning-panel button:not(:disabled):hover,.operator-app-main button:not(:disabled):hover{transform:none;box-shadow:none}}
