:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#15242d;background:#eef3f6}*{box-sizing:border-box}body{margin:0;background:#eef3f6}.ride-shell{max-width:720px;margin:0 auto;padding:14px 12px 40px}.ride-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:8px 2px 14px}.brand{width:48px;height:48px;border-radius:14px;background:#16394c;color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px}.ride-head small,.ride-card small{display:block;color:#637985}.ride-head h1{margin:1px 0 0;font-size:24px}.ride-status{font-size:11px;font-weight:800;padding:7px 9px;border-radius:999px;background:#d9e8ef;color:#16394c;text-align:center}.ride-card{background:#fff;border:1px solid #dbe5ea;border-radius:18px;padding:16px;margin:0 0 12px;box-shadow:0 4px 18px rgba(25,51,64,.05)}.ride-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ride-summary .wide{grid-column:1/-1}.ride-summary strong{display:block;margin-top:3px}.ride-card h2{margin:0 0 10px;font-size:21px}.ride-card h3{margin:20px 0 8px;font-size:16px}.next-card{border-width:2px;border-color:#b9d3df}.next-card h2{font-size:26px;margin:3px 0}.stop-type{font-weight:800;color:#637985}.arrived{padding:10px 12px;border-radius:12px;background:#e9f5ec;margin-bottom:12px;font-weight:700}.action-card p,.done-card p,.done-stops p{line-height:1.45;color:#526773}label{display:block;font-size:13px;font-weight:700;margin:12px 0}input,select,textarea{width:100%;font:inherit;font-size:16px;border:1px solid #bfd0d8;border-radius:12px;padding:12px;margin-top:5px;background:#fff;color:#15242d}textarea{resize:vertical}label small{font-weight:400;margin-top:5px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.big{width:100%;min-height:54px;border:0;border-radius:14px;padding:12px 14px;font:inherit;font-weight:850;font-size:16px;background:#dce7ec;color:#17384a;cursor:pointer;margin-top:8px}.big.primary{background:#16394c;color:#fff}.big.danger{background:#f8e3e3;color:#8c2020}.problem-link{display:block;text-align:center;text-decoration:none;margin:0 0 12px}.gps-state{min-height:18px;margin:8px 0 0;font-size:12px;color:#667b86}.gps-state.error{color:#a12727;font-weight:700}.gps-state.ok{color:#21703c}.alert-card{border-color:#e7c67b;background:#fffaf0}.active-event{border-top:1px solid #eadfbf;padding-top:10px;margin-top:10px}.active-event small{margin:4px 0 8px}details summary{cursor:pointer;font-weight:850;font-size:16px;list-style:none}details summary::-webkit-details-marker{display:none}details summary:after{content:"+";float:right;font-size:22px}.detail-body{padding-top:12px}.route-log ol{list-style:none;padding:0;margin:0}.route-log li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #e5ecef}.route-log li:last-child{border-bottom:0}.route-log li small{margin-top:3px}.route-log li span{font-size:10px;font-weight:850;padding:4px 6px;border-radius:7px;background:#fff0c9}.route-log li.vertrokken strong{color:#34714a}.route-log li.vervallen{text-decoration:line-through;opacity:.55}.navigation-block{margin:22px 0 18px;padding:16px;border:1px solid #d9e5ea;border-radius:16px;background:#f9fbfc}.navigation-block>strong{display:block;margin-bottom:10px;font-size:15px}.navigation-block p{margin:0 0 12px;color:#536b77;line-height:1.4}.nav-actions{display:flex;flex-wrap:wrap;gap:10px}.nav-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 14px;border-radius:12px;background:#dce7ec;color:#17384a;font-weight:850;text-decoration:none}.location-instructions{margin:18px 0;padding:14px;border-radius:14px;background:#fff8df;border:1px solid #ead28c}.location-instructions h3{margin:0 0 10px}.location-instructions p{margin:9px 0;line-height:1.45}.location-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.location-media-grid figure{margin:0;border:1px solid #dbe5ea;border-radius:14px;overflow:hidden;background:#fff}.location-media-grid img{display:block;width:100%;height:180px;object-fit:cover}.location-media-grid figcaption{padding:8px 10px;font-size:12px;color:#536b77}.location-choice{margin:16px 0;padding:13px;border:1px solid #d9e5ea;border-radius:14px;background:#f7fafb}.location-choice>strong{display:block;margin-bottom:4px}.location-choice small{display:block;color:#687d87;line-height:1.4}.manual-location-field[hidden],.conditional-field[hidden]{display:none}.event-history{display:grid;gap:8px;margin:10px 0 16px}.event-history>div{padding:10px 12px;border:1px solid #dfe8ec;border-radius:12px;background:#f9fbfc}.event-history small{margin-top:3px}.loading-shell{max-width:520px;margin:0 auto;padding:18vh 24px 40px;text-align:center}.loading-brand{margin:0 auto 18px;width:64px;height:64px;font-size:16px}.loading-shell h1{font-size:26px;margin:0 0 10px}.loading-shell p{color:#536b77;line-height:1.55}.loading-shell small{display:block;margin-top:14px;color:#71858f}.loading-track{height:12px;border-radius:999px;background:#dce7ec;overflow:hidden;margin:24px 0 14px}.loading-bar{height:100%;width:38%;border-radius:999px;background:#16394c;animation:act24load 1.15s ease-in-out infinite}.loading-continue{display:inline-flex;align-items:center;justify-content:center;margin-top:22px;min-height:46px;padding:10px 18px;border-radius:12px;background:#dce7ec;color:#17384a;font-weight:800;text-decoration:none}@keyframes act24load{0%{transform:translateX(-110%)}50%{transform:translateX(105%)}100%{transform:translateX(270%)}}footer{text-align:center;color:#7a8c95;font-size:11px;padding:16px 4px}@media(max-width:480px){.ride-shell{padding:8px 8px 30px}.ride-head{grid-template-columns:auto 1fr}.ride-status{grid-column:1/-1;justify-self:start}.ride-summary{grid-template-columns:1fr 1fr}.two,.three{grid-template-columns:1fr}.ride-card{border-radius:15px;padding:14px}.next-card h2{font-size:24px}.nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.nav-actions a{width:100%;font-size:14px}.nav-actions a:last-child:nth-child(odd){grid-column:1/-1}.location-media-grid{grid-template-columns:1fr}.location-media-grid img{height:auto;max-height:340px}.loading-shell{padding-top:22vh}.loading-continue{width:100%}}

.ride-shell-with-sticky-action{padding-bottom:104px}
.sticky-ride-action{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);width:min(696px,calc(100vw - 24px));z-index:50;padding:0 4px}
.sticky-ride-action a{display:flex;align-items:center;justify-content:center;min-height:58px;border-radius:16px;background:#8c2020;color:#fff;text-decoration:none;font-weight:900;font-size:16px;box-shadow:0 10px 28px rgba(56,33,33,.24)}
.sticky-return-link{position:sticky;bottom:10px;z-index:20;text-decoration:none;text-align:center;box-shadow:0 8px 24px rgba(25,51,64,.16)}
.gps-required-note{font-weight:850;color:#8c2020;margin:6px 0 4px}
.start-destination-card{border-color:#9fc4d6}
.start-destination-card>small{font-weight:700;color:#527586}
.report-download{text-decoration:none;display:flex;align-items:center;justify-content:center}
.report-email-box{margin-top:14px}
.customer-relevant-option{display:flex;gap:9px;align-items:flex-start}
.customer-relevant-option input{width:auto;margin:2px 0 0}
.optional-label{font-weight:400;color:#637985}
@media(max-width:480px){
  .sticky-ride-action{bottom:8px;width:calc(100vw - 16px)}
  .sticky-ride-action a{min-height:54px;font-size:15px}
  .ride-shell-with-sticky-action{padding-bottom:96px}
}

.hire-driver-delivery{display:grid;gap:12px;padding:16px 0;border-top:1px solid #eadfbf}
.hire-driver-delivery:first-of-type{margin-top:16px}
.hire-driver-person{display:grid;gap:4px;min-width:0}
.hire-driver-person strong{font-size:18px;line-height:1.25}
.hire-driver-person span{color:#637985;overflow-wrap:anywhere}
.hire-driver-delivery .big{margin-top:0;max-width:420px}
@media(max-width:480px){.hire-driver-delivery .big{max-width:none}}


/* V38 ACT24 mobile/public typography */
:root{
  --public-font:"Inter","Segoe UI",Arial,sans-serif;
  --public-text:15px;
  --public-small:12px;
  --public-label:13px;
  --public-h1:22px;
  --public-h2:18px;
  --public-h3:16px;
  --public-button:14px;
}
html,body{font-family:var(--public-font);font-size:var(--public-text);line-height:1.5}
.ride-head h1{font-size:var(--public-h1);font-weight:700;line-height:1.15}
.ride-head small,.ride-card small{font-size:var(--public-small);line-height:1.4}
.ride-status{font-size:11px;font-weight:600}
.ride-card h2{font-size:var(--public-h2);font-weight:700;line-height:1.25}
.ride-card h3{font-size:var(--public-h3);font-weight:600;line-height:1.3}
.next-card h2{font-size:20px;font-weight:700}
label{font-size:var(--public-label);font-weight:600}
input,select,textarea{font-size:16px;font-weight:400;line-height:1.4}
label small{font-size:var(--public-small);font-weight:400}
.big{
  min-height:50px;
  font-size:var(--public-button);
  font-weight:600;
  line-height:1.25;
  border-radius:12px;
}
.navigation-block>strong{font-size:14px;font-weight:600}
.nav-actions a{font-size:14px;font-weight:600;min-height:44px}
details summary{font-size:15px;font-weight:600}
.arrived{font-size:14px;font-weight:600}
.stop-type{font-size:12px;font-weight:600}
.route-log li span{font-size:10px;font-weight:600}
.sticky-ride-action a{font-size:14px;font-weight:700;min-height:52px}
.hire-driver-person strong{font-size:16px;font-weight:600}
.brand.brand-image{
  overflow:hidden;
  padding:0;
  background:transparent;
}
.brand.brand-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.loading-shell h1{font-size:22px;font-weight:700}
.loading-shell p{font-size:15px}
.loading-continue{font-size:14px;font-weight:600}

@media(max-width:480px){
  .ride-head h1{font-size:20px}
  .ride-card h2{font-size:18px}
  .next-card h2{font-size:19px}
  .big{font-size:15px}
}


/* V41 rustige bediening, consistente typografie en licht/donker */
body{
  --public-bg:#eef3f6;
  --public-panel:#ffffff;
  --public-panel-soft:#f7fafb;
  --public-field:#ffffff;
  --public-text-color:#15242d;
  --public-muted:#637985;
  --public-line:#dbe5ea;
  --public-line-strong:#bfd0d8;
  --public-accent:#274C6D;
  --public-accent-text:#ffffff;
  --public-success:#e9f5ec;
  --public-warning:#fff8df;
  --public-warning-line:#ead28c;
  background:var(--public-bg);
  color:var(--public-text-color);
}
body.public-dark{
  --public-bg:#07131b;
  --public-panel:#0d1c25;
  --public-panel-soft:#11232d;
  --public-field:#0b1922;
  --public-text-color:#e9f0f4;
  --public-muted:#9bb0bc;
  --public-line:#243b48;
  --public-line-strong:#36515f;
  --public-accent:#456f94;
  --public-accent-text:#ffffff;
  --public-success:#163326;
  --public-warning:#302817;
  --public-warning-line:#675522;
}
.ride-card,.location-media-grid figure{background:var(--public-panel);border-color:var(--public-line);color:var(--public-text-color);box-shadow:none}
.ride-head small,.ride-card small,.loading-shell small,.loading-shell p,.action-card p,.done-card p,.done-stops p{color:var(--public-muted)}
.ride-head h1,.ride-card h2{font-weight:600}
.ride-card h3,.location-instructions h3{font-weight:500}
.ride-card strong,.route-log strong,.hire-driver-person strong{font-weight:600}
label{font-weight:500;color:var(--public-text-color)}
input,select,textarea{background:var(--public-field);color:var(--public-text-color);border-color:var(--public-line-strong);font-weight:400}
.big,.nav-actions a,.loading-continue,.call-driver-button{font-weight:500}
.big{background:var(--public-panel-soft);color:var(--public-text-color);border:1px solid var(--public-line)}
.big.primary{background:var(--public-accent);color:var(--public-accent-text);border-color:var(--public-accent)}
.navigation-block,.location-choice,.event-history>div{background:var(--public-panel-soft);border-color:var(--public-line);color:var(--public-text-color)}
.navigation-block p,.location-media-grid figcaption{color:var(--public-muted)}
.nav-actions a{background:var(--public-panel);color:var(--public-text-color);border:1px solid var(--public-line);text-transform:none}
.location-instructions{background:var(--public-warning);border-color:var(--public-warning-line);color:var(--public-text-color)}
.arrived{background:var(--public-success);color:var(--public-text-color);font-weight:500}
.ride-status{font-weight:500;background:var(--public-panel-soft);color:var(--public-text-color);border:1px solid var(--public-line)}
.ride-head-actions{display:flex;align-items:center;gap:8px;justify-self:end}
.ride-theme-toggle{width:38px;height:38px;border:1px solid var(--public-line);border-radius:10px;background:var(--public-panel);color:var(--public-text-color);cursor:pointer;font:inherit;font-weight:500}
.call-driver-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin-top:8px;padding:8px 13px;border:1px solid var(--public-line);border-radius:10px;background:var(--public-panel-soft);color:var(--public-text-color);text-decoration:none}
.gps-state{color:var(--public-muted)}
.start-destination-card,.next-card{border-color:var(--public-line-strong)}
details summary{font-weight:500}
@media(max-width:480px){
  .ride-head{grid-template-columns:auto 1fr auto}
  .ride-head-actions{grid-column:auto}
  .ride-status{display:none}
  .ride-theme-toggle{width:36px;height:36px}
}

.alert-card{background:var(--public-warning);border-color:var(--public-warning-line);color:var(--public-text-color)}
.active-event{border-color:var(--public-line)}
.big.danger{background:transparent;color:#c86f76;border-color:#765057}
body:not(.public-dark) .big.danger{color:#8c2020;border-color:#e0b7bb}
.loading-track{background:var(--public-panel-soft)}
.loading-bar{background:var(--public-accent)}
footer{color:var(--public-muted)}


/* V43 external Escort Request / Operations mobile-first system */
.public-tile-app{
  width:min(100%,760px);
  margin:0 auto;
}
.public-tile-app .ride-card{
  margin:0 0 12px;
  padding:16px;
  border-radius:16px;
  box-shadow:none;
}
.public-header-tile{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.public-header-tile>div:first-child{min-width:0}
.public-header-tile small{margin:0 0 2px}
.public-header-tile h1{
  margin:0;
  font-size:24px;
  line-height:1.15;
  font-weight:600;
  letter-spacing:-.01em;
}
.public-summary-tile{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.public-summary-tile>div:last-child:nth-child(3){grid-column:1/-1}
.public-summary-tile strong{
  display:block;
  margin-top:3px;
  font-size:16px;
  font-weight:500;
}
.public-tile-app h2{
  margin:0 0 10px;
  font-size:19px;
  line-height:1.25;
  font-weight:600;
}
.public-tile-app h3{
  margin:18px 0 8px;
  font-size:16px;
  line-height:1.3;
  font-weight:500;
}
.public-tile-app p{
  margin:8px 0 0;
  line-height:1.5;
}
.public-tile-app strong{font-weight:600}
.public-tile-app label{font-weight:500}
.public-tile-app .big,
.public-tile-app .nav-actions a,
.public-tile-app .call-driver-button{
  font-weight:500;
}
.route-details-card>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  list-style:none;
}
.route-details-card>summary:after{content:"⌄";font-size:18px;flex:0 0 auto}
.route-details-card[open]>summary:after{content:"⌃"}
.route-details-card>summary span:first-child{min-width:0}
.route-details-card>summary small{display:block}
.route-details-card>summary strong{
  display:block;
  margin-top:2px;
  font-size:14px;
  font-weight:500;
  overflow-wrap:anywhere;
}
.route-point-count{
  flex:0 0 auto;
  color:var(--public-muted);
  font-size:12px;
  font-weight:400;
  white-space:nowrap;
}
.route-details-card .detail-body{padding-top:12px}
.public-data-row{
  display:grid;
  gap:3px;
  padding:10px 0;
  border-top:1px solid var(--public-line);
}
.public-data-row:first-of-type{border-top:0}
.public-data-row>span{
  color:var(--public-muted);
  font-size:13px;
}
.location-tile>small,
.operation-status-tile>small,
.navigation-tile>small{
  margin-bottom:3px;
}
.location-tile>h2,
.operation-status-tile>h2,
.navigation-tile>h2{
  margin-bottom:8px;
}
.location-instructions{
  margin:16px 0 0;
  padding:14px;
}
.location-instructions p{margin:9px 0}
.location-media-scroll{
  display:flex;
  gap:10px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:2px 1px 8px;
  margin:14px 0 0;
}
.location-media-scroll figure{
  flex:0 0 min(78%,300px);
  scroll-snap-align:start;
}
.location-media-scroll img{
  width:100%;
  height:180px;
  object-fit:cover;
}
.navigation-tile .nav-actions{margin-top:12px}
.navigation-tile .nav-actions a{flex:1 1 150px}
.carrier-tile .call-driver-button{
  margin-top:8px;
  width:max-content;
  min-width:140px;
}
.embedded-details{
  margin-top:14px;
  border-top:1px solid var(--public-line);
  padding-top:12px;
}
.embedded-details>summary{
  font-size:14px;
  font-weight:500;
}
.operation-action-tile>summary,
.route-action-tile>summary{
  text-transform:none;
  font-size:15px;
  font-weight:500;
}
.request-state strong{font-weight:600}
.gps-state{
  min-height:0;
  margin-top:8px;
}
.location-choice{
  margin:14px 0;
  padding:14px;
}
.location-choice>strong{
  font-size:15px;
  font-weight:500;
}
.location-choice label{margin:8px 0 0}
.location-choice input,
.location-choice select{font-size:16px}
.sticky-ride-action a{
  font-weight:600;
  letter-spacing:0;
}

/* V43 loading pages deliberately stay light so the supplied GIF blends into the page. */
body.escort-loading-page{
  margin:0;
  min-height:100svh;
  background:#fff;
  color:#0d2b49;
  font-family:"Inter","Segoe UI",Arial,sans-serif;
}
.loading-shell-v43{
  width:min(100%,420px);
  min-height:100svh;
  margin:0 auto;
  padding:max(34px,env(safe-area-inset-top)) 24px max(30px,env(safe-area-inset-bottom));
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-sizing:border-box;
}
.loading-brand-lockup{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:8px;
  margin:0 auto 42px;
}
.loading-wordmark{
  display:block;
  width:124px;
  height:auto;
  margin:0;
}
.loading-copy h1{
  margin:0;
  color:#0d2b49;
  font-size:28px;
  line-height:1.15;
  font-weight:600;
  letter-spacing:-.015em;
}
.loading-copy h2{
  margin:18px 0 0;
  color:#0d2b49;
  font-size:21px;
  line-height:1.2;
  font-weight:600;
}
.loading-copy p{
  margin:16px auto 0;
  max-width:330px;
  color:#526d82;
  font-size:16px;
  line-height:1.5;
  font-weight:400;
}
.route-loader{
  width:100%;
  margin:24px 0 12px;
}
.route-loader img{
  display:block;
  width:min(240px,72vw);
  height:auto;
  margin:0 auto;
}
.loading-helper{
  max-width:310px;
  margin:10px auto 0;
  color:#607a90;
  font-size:15px;
  line-height:1.5;
  font-weight:400;
}
.loading-fallback{
  width:100%;
  margin-top:22px;
}
.loading-fallback[hidden]{display:none}
.loading-continue{
  width:100%;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#274C6D;
  color:#fff;
  font-size:15px;
  font-weight:500;
  text-decoration:none;
}
.public-landing-shell{
  width:min(100%,420px);
  min-height:100svh;
  margin:0 auto;
  padding:max(42px,env(safe-area-inset-top)) 26px max(34px,env(safe-area-inset-bottom));
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-sizing:border-box;
}
.public-landing-shell h1{
  margin:0 0 14px;
  font-size:26px;
  font-weight:600;
  line-height:1.2;
}
.public-landing-shell p{
  margin:6px 0;
  color:#526d82;
  font-size:16px;
  line-height:1.5;
}
.public-landing-note{
  margin-top:20px!important;
  padding:10px 12px;
  border:1px solid #d6e0e6;
  border-radius:10px;
  background:#f6f9fb;
}

@media(max-width:480px){
  .ride-shell{padding:8px 8px 28px}
  .public-tile-app .ride-card{padding:14px;border-radius:14px}
  .public-header-tile h1{font-size:22px}
  .public-summary-tile{grid-template-columns:1fr 1fr}
  .public-summary-tile strong{font-size:15px}
  .route-details-card>summary{align-items:flex-start}
  .route-point-count{padding-top:2px}
  .location-media-scroll figure{flex-basis:86%}
  .location-media-scroll img{height:170px}
  .two,.three{grid-template-columns:1fr}
  input,select,textarea{font-size:16px}
  .big{min-height:50px;font-size:15px}
  .loading-brand-lockup{margin-bottom:34px}
  .loading-wordmark{width:116px}
  .loading-copy h1{font-size:26px}
  .loading-copy h2{font-size:20px}
  .loading-copy p{font-size:15px}
  .route-loader{margin-top:20px}
}


/* V1.8.4 native route loader: replaces the broken GIF while keeping the same visual concept. */
.route-loader-native{
  width:100%;
  margin:26px 0 14px;
  display:flex;
  justify-content:center;
  align-items:center;
}
.route-loader-track{
  position:relative;
  width:min(260px,74vw);
  height:112px;
}
.route-loader-track::before{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  top:78px;
  height:1px;
  background:#e1e5e8;
}
.route-loader-dot{
  position:absolute;
  top:72px;
  width:13px;
  height:13px;
  border-radius:50%;
  background:#d8dcdf;
}
.route-loader-dot-left{left:20%}
.route-loader-dot-right{right:20%}
.route-loader-pin{
  position:absolute;
  left:50%;
  top:8px;
  width:52px;
  height:68px;
  transform:translateX(-50%);
  border-radius:50% 50% 50% 0;
  background:#ff4141;
  rotate:-45deg;
  transform-origin:50% 65%;
  animation:act24RoutePin 1.65s ease-in-out infinite;
  box-shadow:0 3px 8px rgba(255,65,65,.12);
}
.route-loader-pin-hole{
  position:absolute;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#fff;
  left:15px;
  top:15px;
}
@keyframes act24RoutePin{
  0%,100%{translate:-8px 0; scale:1}
  25%{translate:0 -5px; scale:1.025}
  50%{translate:8px 0; scale:1}
  75%{translate:0 -5px; scale:1.025}
}
@media (prefers-reduced-motion:reduce){
  .route-loader-pin{animation:none}
}
@media(max-width:480px){
  .route-loader-track{width:min(230px,76vw);height:104px}
  .route-loader-track::before{top:72px}
  .route-loader-dot{top:66px}
  .route-loader-pin{width:48px;height:63px}
  .route-loader-pin-hole{width:20px;height:20px;left:14px;top:14px}
}


/* V44 Operations mobile UX */
.header-instructions-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:7px 10px;
  border:1px solid var(--public-line);
  border-radius:10px;
  background:var(--public-panel);
  color:var(--public-text-color);
  font-size:13px;
  font-weight:500;
  text-decoration:none;
  white-space:nowrap;
}
.instruction-card p{
  margin:4px 0 0;
  color:var(--public-text-color);
  line-height:1.5;
}
.instruction-card>small,
.location-images-tile>small,
.form-tile>small,
.time-record-tile>small{
  margin-bottom:3px;
}
.original-language{
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid var(--public-line);
}
.original-language>summary{
  font-size:13px;
  color:var(--public-muted);
  font-weight:500;
  cursor:pointer;
}
.original-language p{
  margin:8px 0 0;
  color:var(--public-muted);
}
.operations-form-stack{
  display:contents;
}
.operations-form-stack .ride-card{
  width:100%;
}
.standalone-field{
  margin:0;
}
.location-choice-flat{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.location-choice-flat label{
  margin:0;
}
.location-choice-flat .manual-location-field{
  margin-top:10px;
}
.time-record-tile h2{
  margin:3px 0 10px;
  font-size:18px;
  font-weight:600;
}
.short-action-button{
  min-height:48px;
  margin-top:8px;
  font-size:15px;
  font-weight:600;
  text-transform:none;
}
.time-action-copy{
  display:grid;
  gap:2px;
  margin:0 0 8px;
}
.time-action-copy small{
  color:var(--public-muted);
  font-size:12px;
}
.time-action-copy strong{
  font-size:17px;
  font-weight:600;
}
.location-images-tile .location-media-scroll{
  margin-top:10px;
}
.simple-loading-indicator{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:96px;
  margin:18px 0 6px;
}
.simple-spinner{
  width:48px;
  height:48px;
  border:5px solid #dbe4ea;
  border-top-color:#274C6D;
  border-radius:50%;
  animation:act24SimpleSpin .85s linear infinite;
}
@keyframes act24SimpleSpin{
  to{transform:rotate(360deg)}
}
@media (prefers-reduced-motion:reduce){
  .simple-spinner{animation-duration:1.8s}
}
@media(max-width:480px){
  .public-header-tile{
    align-items:flex-start;
  }
  .ride-head-actions{
    gap:6px;
  }
  .header-instructions-button{
    min-height:36px;
    padding:6px 9px;
    font-size:12px;
  }
  .instruction-card,
  .location-images-tile,
  .form-tile,
  .time-record-tile{
    padding:14px;
  }
  .short-action-button{
    width:100%;
  }
  .simple-loading-indicator{
    min-height:82px;
  }
  .simple-spinner{
    width:44px;
    height:44px;
    border-width:4px;
  }
}
