:root{
  --sgr-primary:#1F4E79;
  --sgr-primary-700:#173a59;
  --sgr-primary-800:#102b43;
  --sgr-secondary:#DCEEFF;
  --sgr-secondary-strong:#C2E1FF;
  --sgr-bg:#FAFAF7;
  --sgr-surface:#ffffff;
  --sgr-surface-soft:#f6f9fc;
  --sgr-text:#17202A;
  --sgr-text-soft:#4f6172;
  --sgr-border:#d9e2ea;
  --sgr-success:#2E7D32;
  --sgr-warning:#F5A623;
  --sgr-danger:#C62828;
  --sgr-disabled:#A7A7A7;
  --sgr-font-scale:1;
  --sgr-radius:24px;
  --sgr-radius-sm:16px;
  --sgr-shadow:0 22px 50px rgba(16,43,67,.10);
  --sgr-shadow-soft:0 10px 24px rgba(16,43,67,.08);
  --sgr-ring:0 0 0 4px rgba(120,183,240,.38);
}

.sgr-app{
  position:relative;
  font-size:calc(18px * var(--sgr-font-scale));
  line-height:1.6;
  color:var(--sgr-text);
  background:
    radial-gradient(circle at 0% 0%, rgba(220,238,255,.9), transparent 30%),
    radial-gradient(circle at 100% 0%, rgba(31,78,121,.08), transparent 28%),
    linear-gradient(180deg, #fdfdfc 0%, var(--sgr-bg) 100%);
  max-width:1240px;
  margin:0 auto;
  padding:28px;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.sgr-app *{box-sizing:border-box}
.sgr-app button,.sgr-app a{touch-action:manipulation}
.sgr-app p{margin:.25rem 0 0}
.sgr-app hr{border:0;height:1px;background:linear-gradient(90deg, rgba(31,78,121,.04), rgba(31,78,121,.18), rgba(31,78,121,.04));margin:28px 0}

.sgr-skip{position:absolute;left:-9999px}
.sgr-skip:focus{left:12px;top:12px;z-index:9999;background:#fff;color:#000;padding:14px;border:3px solid #000;border-radius:14px}

.sgr-hero{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  color:#fff;
  padding:36px;
  border-radius:32px;
  margin-bottom:22px;
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(31,78,121,.98), rgba(16,43,67,.96)),
    radial-gradient(circle at top right, rgba(255,255,255,.18), transparent 28%);
  box-shadow:0 28px 70px rgba(16,43,67,.26);
}
.sgr-hero::before{
  content:"";
  position:absolute;
  inset:auto -8% -22% auto;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.16), rgba(255,255,255,0) 70%);
  pointer-events:none;
}
.sgr-hero > *{position:relative;z-index:1}
.sgr-hero h1{color:#fff;font-size:clamp(2.25rem,5vw,3.55rem);line-height:1.02;margin:.35rem 0 .55rem;letter-spacing:-.03em;max-width:14ch}
.sgr-hero p{font-size:1.08em;max-width:720px;color:rgba(255,255,255,.9)}
.sgr-kicker{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  background:rgba(255,255,255,.14);
  color:#fff;
  padding:8px 12px;
  border-radius:999px;
  font-size:.75em;
  border:1px solid rgba(255,255,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}
.sgr-kicker::before{content:"•";font-size:1rem;line-height:1;color:#fff;opacity:.9}

.sgr-accessibility-tools,.sgr-toolbar{display:flex;gap:10px;flex-wrap:wrap}
.sgr-tool,.sgr-secondary,.sgr-chip{
  appearance:none;
  border:1px solid rgba(31,78,121,.18);
  background:linear-gradient(180deg,#fff,#f7fbff);
  color:var(--sgr-primary);
  font:inherit;
  font-weight:760;
  border-radius:14px;
  padding:12px 16px;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(16,43,67,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.sgr-hero .sgr-tool{
  border-color:rgba(255,255,255,.2);
  background:rgba(255,255,255,.1);
  color:#fff;
  backdrop-filter:blur(6px);
  box-shadow:none;
}
.sgr-tool:hover,.sgr-secondary:hover,.sgr-chip:hover,.sgr-tool:focus-visible,.sgr-secondary:focus-visible,.sgr-chip:focus-visible{transform:translateY(-1px);box-shadow:0 10px 20px rgba(16,43,67,.10)}

.sgr-emergency-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 24px}
.sgr-emergency-bar a,.sgr-emergency-bar button{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-decoration:none;
  min-height:66px;
  border:0;
  border-radius:18px;
  padding:14px 18px;
  font:inherit;
  font-weight:850;
  cursor:pointer;
  box-shadow:var(--sgr-shadow-soft);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.sgr-emergency-bar a:hover,.sgr-emergency-bar button:hover,.sgr-primary:hover,.sgr-success:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(16,43,67,.14)}
.sgr-home-btn{background:linear-gradient(180deg,#eff8ff,#dceeff);color:var(--sgr-primary)}
.sgr-lost-btn,.sgr-warning{background:linear-gradient(180deg,#ffd889,#f5c14b);color:#17202A}
.sgr-call-btn{background:linear-gradient(180deg,var(--sgr-primary),var(--sgr-primary-700));color:#fff}
.sgr-sos-btn{background:linear-gradient(180deg,#e45151,var(--sgr-danger));color:#fff}

.sgr-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:22px}

.sgr-card{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.96));
  border:1px solid rgba(31,78,121,.10);
  border-radius:var(--sgr-radius);
  padding:26px;
  box-shadow:var(--sgr-shadow);
  margin-bottom:22px;
  backdrop-filter:blur(12px);
}
.sgr-card h2{font-size:1.5em;color:var(--sgr-primary);margin-top:0;letter-spacing:-.02em}
.sgr-card h3{color:var(--sgr-primary);margin:.2rem 0 .5rem}
.sgr-card p{color:var(--sgr-text-soft)}

.sgr-app label{display:block;font-weight:760;margin:16px 0 8px;color:var(--sgr-text)}
.sgr-app input[type=text],
.sgr-app input[type=email],
.sgr-app input[type=number],
.sgr-app input[type=datetime-local],
.sgr-app input:not([type]),
.sgr-app textarea,
.sgr-app select{
  width:100%;
  font:inherit;
  font-size:1em;
  border:1.5px solid #b8c7d5;
  border-radius:16px;
  padding:14px 16px;
  background:linear-gradient(180deg,#fff,#fbfcfd);
  color:var(--sgr-text);
  min-height:56px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.sgr-app textarea{min-height:98px;resize:vertical}
.sgr-app input::placeholder,.sgr-app textarea::placeholder{color:#8a99a8}
.sgr-app input:hover,.sgr-app textarea:hover,.sgr-app select:hover{border-color:#9db4c9}
.sgr-app input:focus,.sgr-app textarea:focus,.sgr-app select:focus,.sgr-app button:focus,.sgr-app a:focus{outline:none;box-shadow:var(--sgr-ring);border-color:#5b99d1}
.sgr-form-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}

.sgr-fieldset{
  background:linear-gradient(180deg, rgba(246,249,252,.92), rgba(255,255,255,.98));
  border:1px solid #d8e3ee;
  border-radius:20px;
  padding:18px;
  margin:20px 0;
}
.sgr-fieldset legend{font-weight:850;color:var(--sgr-primary);padding:0 10px}
.sgr-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.sgr-check-grid label,.sgr-guardian-toggle{display:flex;align-items:flex-start;gap:10px;font-weight:650}
.sgr-app input[type=checkbox]{width:24px;height:24px;accent-color:var(--sgr-primary);flex:0 0 auto;margin-top:.12rem}

.sgr-details{
  background:linear-gradient(180deg,#eef7ff,#f8fbff);
  border:1px solid #d7e8f7;
  padding:16px 18px;
  border-radius:18px;
  margin:18px 0;
}
.sgr-details summary{font-weight:850;cursor:pointer;color:var(--sgr-primary)}
.sgr-guardian-toggle{
  background:linear-gradient(180deg,#f6fbff,#edf6ff);
  border:1px solid #d7e8f7;
  border-radius:18px;
  padding:14px 16px;
  margin-top:18px;
}

.sgr-primary,.sgr-success{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:16px;
  padding:15px 20px;
  background:linear-gradient(180deg,var(--sgr-primary),var(--sgr-primary-700));
  color:#fff!important;
  font:inherit;
  font-weight:850;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(31,78,121,.22);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.sgr-success{background:linear-gradient(180deg,#3e9447,var(--sgr-success));box-shadow:0 14px 30px rgba(46,125,50,.22)}
.sgr-big-button{width:100%;min-height:70px;font-size:1.14em;letter-spacing:-.01em}
.sgr-primary:disabled,.sgr-driver-actions button:disabled{background:linear-gradient(180deg,#b8b8b8,var(--sgr-disabled))!important;color:#fff!important;cursor:not-allowed;box-shadow:none;transform:none}

.sgr-voice-row{margin-top:-4px}
.sgr-quick-destinations{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.sgr-small-label{width:100%;font-size:.9em;font-weight:800;margin:0}
.sgr-chip{background:linear-gradient(180deg,#f5fbff,#eaf5ff);padding:10px 14px;border-color:#d8e7f5}
.sgr-mini-form{border-top:1px solid #edf1f5;padding-top:8px}
.sgr-mini-form input,.sgr-mini-form textarea{margin-bottom:8px}
.sgr-status{min-height:1.5em;font-weight:800}
.sgr-badge{display:inline-flex;align-items:center;gap:.35rem;background:linear-gradient(180deg,#edf6ff,#dceeff);color:var(--sgr-primary);border-radius:999px;padding:6px 11px;font-weight:850;font-size:.88em;border:1px solid #cae0f5}
.sgr-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.72}
.sgr-pin{font-size:1.25em;padding:12px 14px;background:linear-gradient(180deg,#fffdf4,#fff7d9);border-radius:14px;border:1px solid #f2deb1;box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}
.sgr-action-stack{display:grid;gap:10px}
.sgr-warning{border:0;border-radius:16px;padding:14px 16px;font:inherit;font-weight:900;cursor:pointer}

.sgr-list-ride{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(170px,1fr) auto;
  gap:16px;
  align-items:center;
  border-top:1px solid #ebeff4;
  padding:18px 0;
}
.sgr-list-ride:first-child{border-top:0;padding-top:6px}
.sgr-list-ride strong{display:block;color:var(--sgr-text)}
.sgr-list-ride small{grid-column:1/-1;color:var(--sgr-text-soft);line-height:1.45}
.sgr-family-section+.sgr-family-section{border-top:3px solid rgba(220,238,255,.9);padding-top:22px}

.sgr-driver-card{
  display:grid;
  grid-template-columns:1.55fr 1fr;
  gap:22px;
  border:1px solid #dce5ee;
  border-radius:22px;
  padding:20px;
  margin:16px 0;
  background:linear-gradient(180deg,#fff,#f9fbfd);
  box-shadow:0 12px 28px rgba(16,43,67,.06);
}
.sgr-driver-actions{display:flex;flex-direction:column;gap:12px;justify-content:center}
.sgr-driver-actions label{margin:0}
.sgr-driver-identity{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:14px;
  align-items:center;
  background:linear-gradient(180deg,#f3f9ff,#ecf5ff);
  border-radius:18px;
  padding:14px;
  margin:12px 0;
  border:1px solid #d4e5f4;
}
.sgr-driver-identity img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.9);box-shadow:0 8px 18px rgba(16,43,67,.12)}
.sgr-track-line{font-size:.92em;font-weight:700;color:var(--sgr-text-soft)}

.sgr-phone-card{text-align:center;max-width:760px;margin:60px auto}
.sgr-note{font-size:.95em;color:var(--sgr-text-soft)}

.sgr-payment-box,.sgr-wallet-panel{
  border:1px solid #d6e2ec;
  border-radius:20px;
  padding:18px;
  margin:16px 0;
  background:linear-gradient(180deg,#fff,#fbfdfe);
  box-shadow:0 12px 28px rgba(16,43,67,.05);
}
.sgr-payment-box h4,.sgr-wallet-panel h3{margin-top:0;color:var(--sgr-primary)}
.sgr-payment-box .sgr-primary,.sgr-payment-box .sgr-secondary{width:100%;margin-top:8px}
.sgr-wallet-balance{font-size:1.2em}
.sgr-payment-return{margin:0 0 18px;background:#edf9ee;border:1px solid rgba(46,125,50,.35);border-radius:16px;padding:14px 16px;font-weight:800;color:#215c25}
.sgr-family-section .sgr-payment-box{grid-column:1/-1;margin:4px 0}

/* React live-map experience */
.sgr-react-shell{margin-top:20px}
.sgr-react-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,254,.98));
  border:1px solid rgba(31,78,121,.10);
  border-radius:26px;
  box-shadow:0 20px 40px rgba(16,43,67,.08);
  padding:20px;
  margin-top:18px;
  overflow:hidden;
}
.sgr-live-map-card{position:relative}
.sgr-live-map-card::after{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#8fd3ff,#1F4E79);
}
.sgr-react-map-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.sgr-react-map-head h3{margin:.15rem 0 0;font-size:clamp(1.35rem,2vw,1.9rem);letter-spacing:-.02em}
.sgr-react-eyebrow{display:block;color:#1F4E79;font-size:.8rem;font-weight:800;letter-spacing:.10em;text-transform:uppercase}
.sgr-react-status{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:999px;background:linear-gradient(180deg,#eef7ff,#dceeff);color:#17202A;font-weight:800;border:1px solid #cde2f5}
.sgr-react-route-summary{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(90px,1fr));gap:12px;margin-bottom:14px}
.sgr-react-route-summary>div{background:linear-gradient(180deg,#ffffff,#f7fafc);border:1px solid #e2e7eb;border-radius:18px;padding:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.sgr-react-route-summary small{display:block;color:#586573;font-weight:700;margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}
.sgr-react-route-summary strong{display:block;font-size:1.05rem;color:#17202A;overflow-wrap:anywhere}
.sgr-mapbox-canvas,.sgr-react-empty-map{width:100%;height:min(54vh,500px);min-height:340px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#DCEEFF,#FAFAF7)}
.sgr-react-empty-map{display:grid;place-items:center;padding:30px;text-align:center;color:#17202A;font-weight:700;border:1px dashed #b9cfe1}
.sgr-vehicle-marker{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--sgr-primary),var(--sgr-primary-700));border:4px solid #fff;box-shadow:0 12px 26px rgba(16,43,67,.28);font-size:26px;transform:translateZ(0)}
.sgr-react-track-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding-top:13px;font-size:.94rem;color:#42515f}
.sgr-live-dot{color:#2E7D32;font-weight:900}
.sgr-react-error{color:#C62828;font-weight:800}
.sgr-track-picker label{display:block;font-weight:800}
.sgr-track-picker select{width:100%;margin-top:8px;min-height:52px;border:1.5px solid #b7cadb;border-radius:16px;padding:10px 14px;background:#fff;color:#17202A;font-size:1rem}

.sgr-high-contrast .sgr-app{--sgr-primary:#00335c;--sgr-primary-700:#001c33;--sgr-secondary:#e8f4ff;--sgr-text:#000;--sgr-bg:#fff;--sgr-surface:#fff}
.sgr-high-contrast .sgr-card,.sgr-high-contrast .sgr-react-card{border:3px solid #000;box-shadow:none}
.sgr-high-contrast .sgr-app input,.sgr-high-contrast .sgr-app textarea,.sgr-high-contrast .sgr-app select{border-color:#000}
.sgr-high-contrast .sgr-badge{border:2px solid #000}

@media(max-width:960px){
  .sgr-grid,.sgr-driver-card{grid-template-columns:1fr}
  .sgr-emergency-bar{grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .sgr-app{padding:14px}
  .sgr-hero{padding:26px;flex-direction:column;border-radius:24px}
  .sgr-form-two{grid-template-columns:1fr}
  .sgr-check-grid,.sgr-list-ride{grid-template-columns:1fr}
  .sgr-card{padding:20px;border-radius:20px}
}
@media(max-width:700px){
  .sgr-react-route-summary{grid-template-columns:1fr 1fr}
  .sgr-react-route-summary>div:first-child{grid-column:1/-1}
  .sgr-mapbox-canvas,.sgr-react-empty-map{min-height:300px;height:42vh}
  .sgr-react-map-head{align-items:flex-start;flex-direction:column}
  .sgr-react-card{border-radius:20px;padding:16px}
}
@media(max-width:560px){
  .sgr-emergency-bar{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .sgr-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* Booking feedback / no-JS fallback */
.sgr-status{display:block;min-height:1.7em;margin-top:12px;padding:0;font-weight:800}
.sgr-status--working{color:var(--sgr-primary)}
.sgr-status--success{margin-top:14px;padding:14px 16px;border-radius:16px;background:#edf9ee;border:1px solid rgba(46,125,50,.32);color:#215c25}
.sgr-status--error{margin-top:14px;padding:14px 16px;border-radius:16px;background:#fff1f1;border:1px solid rgba(198,40,40,.28);color:#9b1f1f}
.sgr-booking-flash{margin:0 0 20px;padding:16px 18px;border-radius:18px;font-weight:850;box-shadow:var(--sgr-shadow-soft)}
.sgr-booking-flash--success{background:#edf9ee;border:1px solid rgba(46,125,50,.32);color:#215c25}
.sgr-booking-flash--error{background:#fff1f1;border:1px solid rgba(198,40,40,.28);color:#9b1f1f}

/* Account access / registration */
.sgr-auth-page{max-width:1180px;padding-top:40px;padding-bottom:56px}
.sgr-auth-intro{max-width:720px;margin:0 auto 24px;text-align:center}
.sgr-auth-intro .sgr-kicker{background:linear-gradient(180deg,#edf7ff,#dceeff);color:var(--sgr-primary);border-color:#d3e5f5}
.sgr-auth-intro h1{font-size:clamp(2.2rem,5vw,3.4rem);letter-spacing:-.035em;margin:.55rem 0 .35rem;color:var(--sgr-primary)}
.sgr-auth-intro p{font-size:1.05rem;color:var(--sgr-text-soft)}
.sgr-auth-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:start}
.sgr-auth-card{margin:0;box-shadow:0 24px 54px rgba(16,43,67,.10)}
.sgr-auth-step{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;background:#edf7ff;color:var(--sgr-primary);font-size:.78rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.sgr-auth-card h2{font-size:1.9rem;margin:.6rem 0 .2rem}
.sgr-auth-card #loginform p{margin:0 0 15px}
.sgr-auth-card #loginform label{margin:0 0 7px}
.sgr-auth-card #loginform input[type=text],.sgr-auth-card #loginform input[type=password]{width:100%;min-height:56px;border:1.5px solid #b8c7d5;border-radius:16px;padding:14px 16px;font:inherit;background:#fff}
.sgr-auth-card #loginform .login-submit input{width:100%;min-height:58px;border:0;border-radius:16px;background:linear-gradient(180deg,var(--sgr-primary),var(--sgr-primary-700));color:#fff;font:inherit;font-weight:850;cursor:pointer;box-shadow:0 14px 30px rgba(31,78,121,.20)}
.sgr-auth-help{font-size:.9rem;color:var(--sgr-text-soft)}
.sgr-auth-help a{font-weight:800}
.sgr-auth-error{margin:16px 0;padding:13px 15px;border-radius:14px;background:#fff0f0;border:1px solid rgba(198,40,40,.28);color:#8e1f1f;font-weight:760}
.sgr-auth-security{margin-top:14px!important;font-size:.9rem;color:var(--sgr-text-soft)!important}
.sgr-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sgr-account-card{max-width:720px;margin:30px auto;text-align:center}
.sgr-account-card h1{color:var(--sgr-primary);letter-spacing:-.03em}
.sgr-auth-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
@media(max-width:850px){.sgr-auth-grid{grid-template-columns:1fr}.sgr-auth-page{padding-top:20px}}

/* v4.0 workflow, session and error UI */
.sgr-tool-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.sgr-app-error-center{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 18px;padding:16px 18px;border:2px solid #C62828;border-radius:18px;background:#fff4f4;color:#7f1d1d;box-shadow:0 10px 24px rgba(198,40,40,.08)}
.sgr-app-error-center[hidden]{display:none}
.sgr-app-error-center strong{display:block;font-size:1.05rem}.sgr-app-error-center p{margin:4px 0}.sgr-app-error-center small{display:block;color:#8c4a4a;overflow-wrap:anywhere}
.sgr-app-error-actions{display:flex;gap:8px;flex-wrap:wrap}
.sgr-app-error-actions button{min-height:42px;border-radius:12px;padding:8px 12px;border:1px solid #C62828;background:#fff;color:#8d1e1e;font-weight:800;cursor:pointer}
.sgr-workflow-box{margin:18px 0;padding:16px;border-radius:18px;background:#f7fbff;border:1px solid #d8e8f5}
.sgr-workflow-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.sgr-workflow-head h4{margin:0;color:#1F4E79}.sgr-workflow-head>span{font-size:.82rem;font-weight:800;color:#526575}
.sgr-workflow-box ol{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.sgr-workflow-box li{display:grid;grid-template-columns:18px 1fr;gap:9px;align-items:center;color:#73808c}
.sgr-workflow-box li span{width:14px;height:14px;border-radius:50%;border:2px solid #b6c6d4;background:#fff}
.sgr-workflow-box li.is-done{color:#2E7D32}.sgr-workflow-box li.is-done span{background:#2E7D32;border-color:#2E7D32}
.sgr-workflow-box li.is-current{color:#1F4E79}.sgr-workflow-box li.is-current span{background:#DCEEFF;border:4px solid #1F4E79}
.sgr-workflow-alert{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#fff3d6;color:#755000;font-weight:800}
.sgr-payment-return.is-success{background:#edf9ee;border-color:rgba(46,125,50,.35);color:#215c25}
.sgr-payment-return.is-error{background:#fff0f0;border-color:rgba(198,40,40,.35);color:#8c1c1c}
@media(max-width:640px){.sgr-app-error-center{flex-direction:column}.sgr-app-error-actions{width:100%}.sgr-app-error-actions button{flex:1}.sgr-workflow-head{align-items:flex-start;flex-direction:column}}

/* v4.2 Guardian Driver recruiting */
.sgr-driver-apply-page{max-width:1120px;padding-top:32px;padding-bottom:64px}
.sgr-driver-apply-hero{align-items:center}
.sgr-driver-policy-pill{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:999px;background:#fff;color:#17202A;font-weight:850;box-shadow:0 10px 24px rgba(16,43,67,.10);border:1px solid rgba(31,78,121,.12)}
.sgr-driver-application-form{max-width:920px;margin:22px auto}
.sgr-driver-form-section{padding:6px 0 26px;margin:0 0 26px;border-bottom:1px solid #dfe8ef}
.sgr-driver-form-section:last-of-type{border-bottom:0}
.sgr-driver-form-section h2{margin:.55rem 0 .4rem;color:#1F4E79}
.sgr-driver-form-section small{display:block;margin-top:6px;color:#647484}
.sgr-consent-copy{background:#f6f9fc;border:1px solid #d9e5ee;border-radius:16px;padding:14px 16px;margin-bottom:14px;color:#354554}
.sgr-location-audit{margin:16px 0;padding:14px 16px;border-radius:16px;background:#edf7ff;border:1px solid #d3e6f5;color:#2d465a}
.sgr-location-audit p{margin:.4rem 0 0}
.sgr-driver-closed{max-width:760px;margin:24px auto;text-align:center}
.sgr-professional-section{background:linear-gradient(180deg,#fbfdff,#f4f9fd);padding:20px;border-radius:20px;border:1px solid #dbe9f3}
@media(max-width:700px){.sgr-driver-application-form{padding:18px}.sgr-driver-policy-pill{width:100%;justify-content:center;text-align:center}}
