/*
 * SmoothRush UI Standards Layer — v1.7.11
 * Presentation-only layer. No workflow, API, storage or permission logic lives here.
 */

:root{
  --sr-bg:#090b0e;
  --sr-bg-elevated:#0d1014;
  --sr-surface:#12161c;
  --sr-surface-2:#171c23;
  --sr-surface-3:#1d232c;
  --sr-line:rgba(255,255,255,.085);
  --sr-line-strong:rgba(255,255,255,.14);
  --sr-text:#f7f8fa;
  --sr-muted:#98a2ad;
  --sr-accent:#ff7a00;
  --sr-accent-hi:#ff9a36;
  --sr-blue:#5b82ff;
  --sr-ok:#59d28a;
  --sr-warn:#ffd166;
  --sr-danger:#ff6b6b;
  --sr-r-sm:12px;
  --sr-r-md:16px;
  --sr-r-lg:22px;
  --sr-r-xl:28px;
  --sr-shadow-sm:0 10px 30px rgba(0,0,0,.16);
  --sr-shadow-md:0 20px 55px rgba(0,0,0,.28);
  --sr-focus:0 0 0 3px rgba(255,122,0,.20);
  --bg:var(--sr-bg);
  --bg2:var(--sr-bg-elevated);
  --panel:var(--sr-surface);
  --panel2:var(--sr-surface-2);
  --panel3:var(--sr-surface-3);
  --text:var(--sr-text);
  --muted:var(--sr-muted);
  --line:var(--sr-line);
  --accent:var(--sr-accent);
  --accent2:var(--sr-accent-hi);
  --blue:var(--sr-blue);
  --ok:var(--sr-ok);
  --warn:var(--sr-warn);
  --danger:var(--sr-danger);
  --radius:var(--sr-r-lg);
  --shadow:var(--sr-shadow-md);
  --top:68px;
  --side:246px;
}

html{
  background:var(--sr-bg);
  color-scheme:dark;
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
}
body{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,122,0,.08),transparent 28rem),
    radial-gradient(circle at 90% 8%,rgba(91,130,255,.055),transparent 30rem),
    var(--sr-bg);
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
::selection{background:rgba(255,122,0,.28);color:#fff}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid rgba(255,154,54,.95);
  outline-offset:2px;
}
.hidden,[hidden]{display:none!important}

/* Typography and hierarchy */
.brand{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:.86rem;
  font-weight:950;
  letter-spacing:.13em;
}
.brand::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:3px;
  background:linear-gradient(145deg,var(--sr-accent),var(--sr-accent-hi));
  box-shadow:0 0 0 4px rgba(255,122,0,.10);
}
.eyebrow{
  color:#ff9838;
  font-size:.69rem;
  letter-spacing:.14em;
  line-height:1.2;
}
.muted{color:var(--sr-muted)}
.app-screen-head h1,.section-head h2,.panel h2,.panel h3{letter-spacing:-.025em}
.app-screen-head h1{font-weight:900}
.section-head h2{font-weight:880}

/* App chrome */
.app-first{
  min-height:100dvh;
  background:var(--sr-bg);
  background-image:none;
  overscroll-behavior-y:none;
}
.app-first .app-header{
  min-height:64px;
  height:auto;
  padding:10px 18px;
  border-bottom:1px solid var(--sr-line);
  background:rgba(9,11,14,.88);
  box-shadow:0 1px 0 rgba(255,255,255,.018);
  backdrop-filter:blur(22px) saturate(135%);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
}
.app-first .top-left,.app-first .top-actions{min-width:0}
.app-first .top-title{min-width:0}
.app-first .top-title small{
  color:#89939e;
  font-size:.69rem;
  letter-spacing:.02em;
}
.app-greeting{
  max-width:min(55vw,420px);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#f3f5f7;
  font-size:.9rem;
  letter-spacing:-.01em;
}
.app-avatar,.profile-avatar,.auth-logo{
  background:linear-gradient(145deg,#ff8a18,#ffb24f);
  color:#201308;
  box-shadow:0 10px 26px rgba(255,122,0,.16),inset 0 1px rgba(255,255,255,.3);
}
.app-avatar{border-radius:13px}
.connection{
  border-color:var(--sr-line-strong);
  background:rgba(255,255,255,.035);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.connection.compact{
  width:30px;
  height:30px;
  border-radius:11px;
}
.app-workspace{
  width:min(1500px,100%);
  max-width:1500px;
  grid-template-columns:var(--side) minmax(0,1fr);
}
.app-side-nav{
  padding:18px 14px 20px;
  border-right:1px solid var(--sr-line);
  background:linear-gradient(180deg,rgba(14,17,22,.94),rgba(9,11,14,.80));
}
.app-side-nav a{
  min-height:44px;
  padding:11px 12px;
  border:1px solid transparent;
  border-radius:14px;
  color:#9ba4ae;
  font-size:.84rem;
  font-weight:780;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.app-side-nav a:hover{
  background:rgba(255,255,255,.045);
  border-color:var(--sr-line);
  color:#f7f8fa;
}
.app-side-nav a.active{
  color:#fff;
  border-color:rgba(255,122,0,.22);
  background:linear-gradient(90deg,rgba(255,122,0,.16),rgba(255,122,0,.055));
  box-shadow:none;
}
.app-side-nav a.active::before{
  content:"";
  width:5px;
  height:5px;
  flex:0 0 auto;
  border-radius:99px;
  background:var(--sr-accent);
  box-shadow:0 0 0 4px rgba(255,122,0,.10);
}
.sync-card{
  padding:13px;
  border-color:var(--sr-line);
  border-radius:15px;
  background:rgba(255,255,255,.025);
  line-height:1.45;
}
.app-content{
  padding:30px clamp(22px,3vw,42px) 118px;
}
.app-screen{max-width:1100px}
.admin-app .app-screen{max-width:1180px}
.app-screen-head{
  margin:0 0 22px;
  align-items:flex-start;
}
.app-screen-head h1{
  margin:.05em 0;
  font-size:clamp(1.75rem,3.4vw,2.55rem);
  line-height:1.06;
}
.app-screen-head p.muted{max-width:720px;margin:.45rem 0 0}

/* Surfaces */
.panel,.job-card,.kpi,.review-card,.account-menu,.active-delivery-card,.recent-row,.home-empty,.address-block{
  border-color:var(--sr-line);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.panel{
  padding:20px;
  border-radius:var(--sr-r-lg);
  background:linear-gradient(180deg,rgba(20,24,30,.98),rgba(15,18,23,.98));
  box-shadow:var(--sr-shadow-sm),inset 0 1px rgba(255,255,255,.025);
}
.panel+.panel{margin-top:14px}
.section-head{
  margin:28px 0 12px;
  align-items:center;
}
.section-head h2{font-size:1.2rem}
.section-head p{max-width:720px;line-height:1.5}
.compact-head{margin:21px 0 10px}
.cards{gap:11px}
.job-card{
  position:relative;
  padding:17px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(20,24,30,.98),rgba(14,17,22,.98));
  box-shadow:none;
}
.job-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-1px)}
.job-card::before{
  content:"";
  position:absolute;
  inset:12px auto 12px 0;
  width:2px;
  border-radius:99px;
  background:linear-gradient(180deg,var(--sr-accent),transparent);
  opacity:.55;
}
.job-card h3{letter-spacing:-.015em}
.route{padding-left:2px}
.route-point{grid-template-columns:20px minmax(0,1fr)}
.route-dot{width:8px;height:8px;margin:6px 0 0 3px}
.meta{gap:6px}
.meta span,.tag{
  border-color:var(--sr-line);
  background:rgba(255,255,255,.035);
  color:#c8ced5;
}

/* KPI and status readability */
.kpi-grid{gap:10px}
.kpi{
  min-height:112px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:16px;
  border-radius:17px;
  background:linear-gradient(160deg,rgba(23,28,35,.96),rgba(15,18,23,.96));
}
.kpi strong{
  font-size:clamp(1.45rem,3vw,2rem);
  letter-spacing:-.045em;
}
.kpi span{margin-top:7px;line-height:1.3}
.kpi.accent:before{width:2px}
.pill{
  min-height:28px;
  padding:6px 10px;
  border:1px solid transparent;
  font-size:.71rem;
  letter-spacing:.01em;
}
.pill.available,.pill.delivered,.pill.approved,.pill.paid,.pill.resolved{border-color:rgba(89,210,138,.16)}
.pill.requested,.pill.offered,.pill.pending,.pill.open{border-color:rgba(255,209,102,.15)}
.pill.busy,.pill.accepted,.pill.at_pickup,.pill.collected,.pill.in_transit,.pill.at_destination,.pill.in_progress,.pill.approved-payment{border-color:rgba(91,130,255,.18)}
.pill.cancelled,.pill.suspended,.pill.rejected,.pill.closed{border-color:rgba(255,107,107,.18)}

/* Action hierarchy */
.btn,.icon-btn,.filter-btn,.text-btn,.field-action,.back-chip,.quick-action,.recent-row,.account-menu button,.account-menu a{
  transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;
}
.btn,.icon-btn{
  min-height:44px;
  border-radius:13px;
  font-weight:850;
  letter-spacing:-.005em;
}
.btn.primary{
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(145deg,#ff7a00,#ff9e3e);
  color:#1e1208;
  box-shadow:0 8px 20px rgba(255,122,0,.16),inset 0 1px rgba(255,255,255,.3);
}
.btn.primary:hover{box-shadow:0 11px 24px rgba(255,122,0,.22),inset 0 1px rgba(255,255,255,.3)}
.btn.secondary{box-shadow:0 8px 20px rgba(91,130,255,.16)}
.btn.ghost,.icon-btn{
  border-color:var(--sr-line-strong);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.btn.ghost:hover,.icon-btn:hover{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.18)}
.btn.danger{border-color:rgba(255,107,107,.22)}
.btn.small{min-height:36px;padding:7px 11px}
.round-btn{width:42px;height:42px;min-height:42px}
.text-btn{min-height:40px;padding:8px 2px}
.back-chip{width:40px;height:40px;min-height:40px}
.field-action{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  margin:0;
  border:1px solid var(--sr-line)!important;
  border-radius:12px;
  background:rgba(255,255,255,.035)!important;
  color:#f0f2f5;
}
.field-action:hover{border-color:rgba(255,122,0,.26)!important;background:rgba(255,122,0,.075)!important;color:#ff9d40}
.card-actions{gap:8px}

/* Forms */
.stack{gap:14px}
label{
  gap:7px;
  color:#d6dae0;
  font-size:.82rem;
  font-weight:760;
}
label>small{line-height:1.45}
input,select,textarea{
  min-height:48px;
  border-color:var(--sr-line-strong);
  border-radius:13px;
  background:#0b0e12;
  color:#f7f8fa;
  padding:12px 13px;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.18);
}
textarea{min-height:108px;line-height:1.5}
input::placeholder,textarea::placeholder{color:#69737e;opacity:1}
input:focus,select:focus,textarea:focus{
  border-color:rgba(255,122,0,.72);
  box-shadow:var(--sr-focus),inset 0 1px 2px rgba(0,0,0,.18);
}
input:disabled,select:disabled,textarea:disabled{background:#0e1115;color:#7f8892;opacity:.78}
.input-prefix,.input-suffix{
  min-height:48px;
  border-color:var(--sr-line-strong);
  background:#0b0e12;
}
.input-prefix:focus-within,.input-suffix:focus-within{
  border-color:rgba(255,122,0,.72);
  box-shadow:var(--sr-focus);
}
.field-help{line-height:1.45}
.check input{min-height:auto}

/* Home / dashboard actions */
.quick-grid,.ops-quick-grid{gap:10px}
.quick-action{
  min-height:122px;
  padding:16px;
  border-color:var(--sr-line);
  border-radius:19px;
  background:linear-gradient(155deg,rgba(23,28,35,.98),rgba(14,17,22,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.quick-action:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px)}
.quick-action.primary-action{
  background:linear-gradient(145deg,#ff7a00 0%,#ff9c39 100%);
  color:#211306;
  box-shadow:0 13px 28px rgba(255,122,0,.18),inset 0 1px rgba(255,255,255,.32);
}
.quick-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(255,255,255,.055);
  font-size:1.15rem;
  line-height:1;
}
.quick-action.primary-action .quick-icon{background:rgba(37,19,5,.10)}
.quick-action b{font-size:.9rem;letter-spacing:-.01em}
.quick-action small{font-size:.69rem;line-height:1.35}
.active-delivery-card{
  border-radius:21px;
  background:linear-gradient(145deg,rgba(91,130,255,.13),rgba(255,122,0,.075));
  box-shadow:var(--sr-shadow-sm),inset 0 1px rgba(255,255,255,.035);
}
.home-empty{
  border-style:solid;
  background:rgba(255,255,255,.025);
}
.recent-row{
  min-height:68px;
  padding:13px 14px;
  border-radius:15px;
  background:linear-gradient(180deg,rgba(19,23,29,.98),rgba(14,17,22,.98));
}
.recent-row:hover{border-color:rgba(255,255,255,.15);transform:translateY(-1px)}

/* Booking flow */
.booking-wizard,.wizard-progress{max-width:720px}
.wizard-progress{
  gap:7px;
  margin-bottom:24px;
}
.wizard-progress span{
  height:5px;
  background:#20252c;
}
.wizard-progress span.active{background:rgba(255,122,0,.32)}
.wizard-progress span.current{background:linear-gradient(90deg,#ff7a00,#ff9f40);box-shadow:0 0 0 1px rgba(255,122,0,.12)}
.step-title{
  gap:13px;
  margin-bottom:20px;
}
.step-title>span{
  width:36px;
  height:36px;
  flex-basis:36px;
  border-radius:12px;
  background:linear-gradient(145deg,rgba(255,122,0,.17),rgba(255,122,0,.07));
  border-color:rgba(255,122,0,.24);
}
.step-title h2{font-size:1.28rem;letter-spacing:-.025em}
.step-title p{font-size:.81rem;line-height:1.45}
.choice-grid{gap:9px}
.choice-card{
  min-height:100px;
  border-color:var(--sr-line);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(20,24,30,.98),rgba(14,17,22,.98));
}
.choice-card span{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(255,255,255,.045);
  color:#d9dde2;
  font-size:1.08rem;
}
.choice-card:has(input:checked){
  border-color:rgba(255,122,0,.62);
  background:linear-gradient(180deg,rgba(255,122,0,.12),rgba(255,122,0,.045));
  box-shadow:0 0 0 2px rgba(255,122,0,.06),inset 0 1px rgba(255,255,255,.035);
}
.choice-card:has(input:checked) span{background:rgba(255,122,0,.15);color:#ff9937}
.service-choice{gap:8px}
.service-card{
  min-height:66px;
  border-color:var(--sr-line);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(20,24,30,.98),rgba(14,17,22,.98));
}
.service-card:has(input:checked){
  border-color:rgba(255,122,0,.55);
  background:rgba(255,122,0,.075);
}
.service-card:after{border-color:#46505b}
.estimate-card{
  padding:16px;
  border-radius:17px;
  border-color:rgba(255,122,0,.16);
  background:linear-gradient(135deg,rgba(255,122,0,.11),rgba(91,130,255,.065));
}
.estimate-card strong{letter-spacing:-.04em}
.address-block{
  padding:16px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(19,23,29,.98),rgba(14,17,22,.98));
}
.address-block h3{letter-spacing:-.015em}
.route-actions{gap:8px}
.location-verification,.location-picker-note{
  border-color:var(--sr-line);
  border-radius:13px;
  background:rgba(255,255,255,.035);
}
.review-card{border-radius:19px;background:var(--sr-surface)}
.review-route{background:linear-gradient(145deg,rgba(255,122,0,.09),rgba(91,130,255,.055))}
.wizard-actions{gap:9px}

/* Filters, tables and lists */
.filters,.filter-strip{gap:7px}
.filter-btn{
  min-height:38px;
  padding:8px 12px;
  border-color:var(--sr-line);
  background:rgba(255,255,255,.03);
  color:#a7b0b9;
  font-size:.78rem;
}
.filter-btn.active{
  border-color:rgba(255,122,0,.24);
  background:rgba(255,122,0,.12);
  color:#ff9d40;
}
.table-wrap{
  border-color:var(--sr-line);
  border-radius:17px;
  background:rgba(255,255,255,.015);
}
.data-table th{
  background:#151a20;
  color:#e2e6ea;
  font-size:.75rem;
  letter-spacing:.02em;
}
.data-table th,.data-table td{border-color:var(--sr-line);padding:12px}
.data-table tr:hover td{background:rgba(255,255,255,.018)}
.notice{
  padding:13px;
  border-color:var(--sr-line);
  border-radius:14px;
  background:rgba(255,255,255,.03);
}
.notice.unread{border-left-color:var(--sr-accent);background:rgba(255,122,0,.04)}
.empty{
  padding:34px 20px;
  border-color:var(--sr-line-strong);
  border-radius:17px;
  background:rgba(255,255,255,.015);
  line-height:1.5;
}

/* Account settings */
.profile-summary{padding:4px 2px 20px}
.profile-avatar{width:60px;height:60px;border-radius:18px}
.account-menu{
  border-radius:18px;
  background:linear-gradient(180deg,rgba(20,24,30,.98),rgba(14,17,22,.98));
}
.account-menu button,.account-menu a{
  min-height:67px;
  grid-template-columns:36px minmax(0,1fr) auto;
  padding:13px 14px;
  border-color:var(--sr-line);
}
.account-menu button:hover,.account-menu a:hover{background:rgba(255,255,255,.03)}
.account-menu button>span,.account-menu a>span{
  width:34px;
  height:34px;
  border-radius:11px;
  background:rgba(255,255,255,.05);
  color:#ff9937;
}
.account-menu small{line-height:1.35}

/* Modals and transient UI */
.app-modal.open{background:transparent}
.modal-backdrop{background:rgba(0,0,0,.70);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.modal-card{
  border-color:var(--sr-line-strong);
  border-radius:23px;
  background:#11151a;
  box-shadow:0 30px 90px rgba(0,0,0,.52);
}
.modal-card>header{
  min-height:58px;
  border-color:var(--sr-line);
  background:rgba(17,21,26,.94);
}
.toast{
  min-height:44px;
  display:flex;
  align-items:center;
  border-color:var(--sr-line-strong);
  border-radius:14px;
  background:#1b2129;
  box-shadow:0 16px 42px rgba(0,0,0,.4);
}
.permission-panel{
  border-color:var(--sr-line-strong);
  background:linear-gradient(180deg,#12171d,#0d1014);
}

/* Auth / registration */
.auth-app{
  background:
    radial-gradient(circle at 50% -10%,rgba(255,122,0,.12),transparent 28rem),
    #090b0e;
}
.app-auth-card{
  max-width:500px;
  border-color:var(--sr-line);
  background:linear-gradient(180deg,rgba(18,22,28,.98),rgba(12,15,19,.98));
  box-shadow:0 28px 80px rgba(0,0,0,.30);
}
.auth-logo{width:58px;height:58px;border-radius:17px}
.auth-brand{margin-bottom:24px}
.app-auth-card h1{letter-spacing:-.04em}
.auth-links a{min-height:40px;display:inline-flex;align-items:center;color:#ff9b3b}

/* Courier-specific action console */
.status-console{
  padding:20px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(255,122,0,.075),rgba(91,130,255,.055)),linear-gradient(180deg,#14181e,#0f1217);
}
.status-console h1{letter-spacing:-.04em}
.status-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}

/* Scrollbars only where the platform exposes them */
@media (hover:hover){
  *{scrollbar-width:thin;scrollbar-color:#303842 transparent}
  *::-webkit-scrollbar{width:8px;height:8px}
  *::-webkit-scrollbar-thumb{background:#303842;border-radius:99px}
  *::-webkit-scrollbar-track{background:transparent}
}

/* Tablet */
@media(max-width:980px){
  :root{--side:205px}
  .app-content{padding-left:20px;padding-right:20px}
  .quick-grid,.ops-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Mobile app shell */
@media(max-width:760px){
  :root{--top:58px}
  body{background:var(--sr-bg)}
  .app-first .app-header{
    min-height:58px;
    height:58px;
    padding:7px 12px;
    background:rgba(9,11,14,.94);
  }
  .app-first .brand{font-size:.79rem}
  .app-first .brand::before{width:8px;height:8px;border-radius:2px;box-shadow:0 0 0 3px rgba(255,122,0,.10)}
  .app-first .top-actions>.icon-btn:not(.notification-shortcut){min-height:38px;padding:7px 10px}
  .app-content{
    padding:16px 12px calc(94px + env(safe-area-inset-bottom));
  }
  .app-screen-head{margin-bottom:16px}
  .app-screen-head h1{font-size:1.72rem}
  .app-screen-head p.muted{font-size:.82rem;line-height:1.45}
  .section-head{margin:23px 0 10px}
  .section-head h2{font-size:1.15rem}
  .panel{padding:15px;border-radius:18px}
  .quick-grid,.ops-quick-grid{gap:8px}
  .quick-action{
    min-height:106px;
    padding:13px;
    border-radius:16px;
  }
  .quick-icon{width:32px;height:32px;border-radius:10px;font-size:1.02rem}
  .quick-action b{font-size:.84rem}
  .quick-action small{font-size:.66rem}
  .kpi-grid,.app-kpis,.courier-app .kpi-grid,.admin-app .kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .kpi{min-height:96px;padding:13px;border-radius:15px}
  .kpi strong{font-size:1.42rem}
  .job-card{padding:14px;border-radius:16px}
  .job-card::before{inset:11px auto 11px 0}
  .choice-grid{gap:7px}
  .choice-card{min-height:88px;padding:9px;border-radius:14px}
  .choice-card span{width:28px;height:28px;border-radius:9px}
  .address-block{padding:12px;border-radius:16px}
  .route-actions{display:grid;grid-template-columns:1fr}
  .route-actions .field-action{width:100%;justify-content:flex-start}
  .estimate-card{align-items:flex-start}
  .wizard-progress{margin-bottom:20px}
  .wizard-actions{
    position:sticky;
    bottom:calc(72px + env(safe-area-inset-bottom));
    z-index:12;
    margin-left:-4px;
    margin-right:-4px;
    padding:22px 4px 4px;
    background:linear-gradient(180deg,rgba(9,11,14,0),rgba(9,11,14,.94) 35%,rgba(9,11,14,.98));
  }
  .wizard-actions .btn{min-height:48px}
  .app-tabbar{
    left:8px;
    right:8px;
    bottom:max(8px,env(safe-area-inset-bottom));
    border:1px solid var(--sr-line-strong);
    border-radius:20px;
    padding:6px;
    background:rgba(16,20,25,.94);
    box-shadow:0 18px 48px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.04);
    backdrop-filter:blur(22px) saturate(135%);
    -webkit-backdrop-filter:blur(22px) saturate(135%);
  }
  .app-tabbar a{
    min-height:54px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:6px 2px;
    border-radius:14px;
    color:#7f8994;
  }
  .app-tabbar a span{margin-bottom:4px;font-size:1.08rem}
  .app-tabbar a b{font-size:.61rem;font-weight:800}
  .app-tabbar a.active{
    color:#ff9a3a;
    background:rgba(255,122,0,.10);
  }
  .app-tabbar a.active span,.app-tabbar a.active b{color:#ff9a3a}
  .app-tabbar a em.badge{top:2px;right:12%;border:2px solid #11151a}
  .modal-card{
    max-height:92dvh;
    border-radius:24px 24px 0 0;
    border-bottom:0;
  }
  .toast{bottom:88px;width:calc(100% - 30px);justify-content:center}
  .status-actions{justify-content:stretch}
  .status-actions .btn{flex:1}
  .data-table tr{border-color:var(--sr-line);border-radius:15px;background:var(--sr-surface)}
  .data-table td{border-color:var(--sr-line)}
}

/* Small phones */
@media(max-width:420px){
  .app-content{padding-left:10px;padding-right:10px}
  .quick-grid,.ops-quick-grid{gap:7px}
  .quick-action{min-height:102px;padding:12px}
  .app-screen-head h1{font-size:1.58rem}
  .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .guest-app .choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .review-list>div{gap:10px}
  .review-list>div>*{min-width:0;overflow-wrap:anywhere}
  .app-tabbar{left:6px;right:6px}
}

/* Desktop density and navigation polish */
@media(min-width:761px){
  .app-first .app-tabbar{display:none}
  .app-first .top-actions .icon-btn{min-height:40px}
  .app-side-nav{top:var(--top);height:calc(100dvh - var(--top))}
  .app-content{min-height:calc(100dvh - var(--top))}
  .admin-app .quick-action,.courier-app .quick-action{min-height:116px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* v1.7.15 dual-theme controls and Apple install guidance */
.sr-global-tools{
  position:fixed;
  right:max(14px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:96;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  pointer-events:none;
}
.sr-global-tool{
  pointer-events:auto;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid var(--sr-line-strong);
  border-radius:999px;
  background:rgba(17,21,26,.92);
  color:var(--sr-text);
  box-shadow:0 14px 34px rgba(0,0,0,.30),inset 0 1px rgba(255,255,255,.05);
  backdrop-filter:blur(18px) saturate(135%);
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  cursor:pointer;
  font:inherit;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.01em;
}
.sr-global-tool:hover{transform:translateY(-1px);border-color:rgba(255,122,0,.42)}
.sr-theme-toggle{border-color:rgba(255,122,0,.34)}
.sr-theme-toggle>span{font-size:1rem;color:var(--sr-accent)}
.sr-install-quick{background:linear-gradient(145deg,#ff7a00,#ff9e3e);color:#211306;border-color:rgba(255,122,0,.45)}
.sr-install-guide-backdrop{
  position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;
  background:rgba(0,0,0,.66);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  opacity:0;transition:opacity .16s ease;
}
.sr-install-guide-backdrop.open{opacity:1}
.sr-install-guide{
  position:relative;width:min(520px,100%);max-height:min(720px,88dvh);overflow:auto;
  border:1px solid var(--sr-line-strong);border-radius:24px;padding:24px;
  background:var(--sr-surface);color:var(--sr-text);box-shadow:0 30px 90px rgba(0,0,0,.44);
}
.sr-install-guide h2{margin:.25rem 0 .6rem;font-size:1.55rem;letter-spacing:-.035em}
.sr-install-guide p{color:var(--sr-muted);line-height:1.55}
.sr-install-guide ol{display:grid;gap:10px;margin:18px 0;padding-left:24px}
.sr-install-guide li{padding-left:5px;line-height:1.5}
.sr-install-guide-note{margin:16px 0;padding:12px 13px;border:1px solid rgba(255,122,0,.22);border-radius:14px;background:rgba(255,122,0,.075);color:var(--sr-text);font-size:.82rem;line-height:1.5}
.sr-install-guide-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#ff7a00,#ffb24f);color:#201308;font-weight:1000;box-shadow:0 12px 26px rgba(255,122,0,.17)}
.sr-install-guide-close{position:absolute;right:14px;top:14px;width:38px;height:38px;border:1px solid var(--sr-line);border-radius:12px;background:var(--sr-surface-2);color:var(--sr-text);font-size:1.45rem;line-height:1;cursor:pointer}

html[data-theme="light"]{
  --sr-bg:#f5f7fa;
  --sr-bg-elevated:#ffffff;
  --sr-surface:#ffffff;
  --sr-surface-2:#f4f6f8;
  --sr-surface-3:#e9edf2;
  --sr-line:rgba(22,31,44,.11);
  --sr-line-strong:rgba(22,31,44,.18);
  --sr-text:#151a21;
  --sr-muted:#667180;
  --sr-shadow-sm:0 10px 30px rgba(34,45,60,.08);
  --sr-shadow-md:0 20px 55px rgba(34,45,60,.11);
  --bg:var(--sr-bg);
  --bg2:var(--sr-bg-elevated);
  --panel:var(--sr-surface);
  --panel2:var(--sr-surface-2);
  --panel3:var(--sr-surface-3);
  --text:var(--sr-text);
  --muted:var(--sr-muted);
  --line:var(--sr-line);
  color-scheme:light;
}
html[data-theme="light"] body{
  background:radial-gradient(circle at 14% -8%,rgba(255,122,0,.065),transparent 28rem),radial-gradient(circle at 90% 8%,rgba(91,130,255,.05),transparent 30rem),#f5f7fa;
  color:var(--sr-text);
}
html[data-theme="light"] .app-first{background:#f5f7fa;color:var(--sr-text)}
html[data-theme="light"] .app-first .app-header,
html[data-theme="light"] .topbar{background:rgba(255,255,255,.92);border-color:var(--sr-line);box-shadow:0 1px 0 rgba(22,31,44,.04)}
html[data-theme="light"] .app-greeting,
html[data-theme="light"] .brand,
html[data-theme="light"] .sync-card b,
html[data-theme="light"] .quick-link-card:visited{color:var(--sr-text)}
html[data-theme="light"] .app-first .top-title small{color:#6d7784}
html[data-theme="light"] .app-side-nav,
html[data-theme="light"] .side-nav{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(246,248,251,.94));border-color:var(--sr-line)}
html[data-theme="light"] .app-side-nav a{color:#657180}
html[data-theme="light"] .app-side-nav a:hover{background:#f3f5f8;border-color:var(--sr-line);color:var(--sr-text)}
html[data-theme="light"] .app-side-nav a.active{color:#9a4800;background:linear-gradient(90deg,rgba(255,122,0,.12),rgba(255,122,0,.035));border-color:rgba(255,122,0,.22)}
html[data-theme="light"] .sync-card,
html[data-theme="light"] .home-empty,
html[data-theme="light"] .notice,
html[data-theme="light"] .location-verification,
html[data-theme="light"] .location-picker-note{background:#f8f9fb}
html[data-theme="light"] .panel,
html[data-theme="light"] .job-card,
html[data-theme="light"] .kpi,
html[data-theme="light"] .quick-action,
html[data-theme="light"] .recent-row,
html[data-theme="light"] .choice-card,
html[data-theme="light"] .service-card,
html[data-theme="light"] .address-block,
html[data-theme="light"] .account-menu,
html[data-theme="light"] .app-auth-card{background:linear-gradient(180deg,#ffffff,#fafbfd);border-color:var(--sr-line);box-shadow:var(--sr-shadow-sm)}
html[data-theme="light"] .job-card:hover,
html[data-theme="light"] .recent-row:hover,
html[data-theme="light"] .quick-action:hover{border-color:rgba(22,31,44,.20)}
html[data-theme="light"] .meta span,
html[data-theme="light"] .tag{background:#f4f6f8;color:#596473;border-color:var(--sr-line)}
html[data-theme="light"] .btn.ghost,
html[data-theme="light"] .icon-btn,
html[data-theme="light"] .field-action,
html[data-theme="light"] .filter-btn{background:#f4f6f8!important;color:#26303c;border-color:var(--sr-line-strong)!important;box-shadow:none}
html[data-theme="light"] .btn.ghost:hover,
html[data-theme="light"] .icon-btn:hover{background:#eceff3!important;border-color:rgba(22,31,44,.22)!important}
html[data-theme="light"] label{color:#485362}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea,
html[data-theme="light"] .input-prefix,
html[data-theme="light"] .input-suffix{background:#fff;color:#171c23;border-color:rgba(22,31,44,.18);box-shadow:inset 0 1px 2px rgba(22,31,44,.04)}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder{color:#8a94a0}
html[data-theme="light"] input:disabled,
html[data-theme="light"] select:disabled,
html[data-theme="light"] textarea:disabled{background:#f1f3f6;color:#7a8592}
html[data-theme="light"] .quick-icon,
html[data-theme="light"] .choice-card span,
html[data-theme="light"] .account-menu button>span,
html[data-theme="light"] .account-menu a>span{background:#f0f3f6;color:#b85a00}
/* v1.7.15: preserve the dashboard's primary-action hierarchy in light mode. */
html[data-theme="light"] .quick-action.primary-action{
  background:linear-gradient(145deg,#ff8612 0%,#ffb24f 100%);
  color:#211306;
  border-color:rgba(194,91,0,.22);
  box-shadow:0 13px 30px rgba(255,122,0,.18),inset 0 1px rgba(255,255,255,.44);
}
html[data-theme="light"] .quick-action.primary-action:hover{
  border-color:rgba(194,91,0,.34);
  box-shadow:0 16px 34px rgba(255,122,0,.22),inset 0 1px rgba(255,255,255,.48);
}
html[data-theme="light"] .quick-action.primary-action .quick-icon{
  background:rgba(49,26,6,.10);
  color:#7a3500;
}
html[data-theme="light"] .quick-action.primary-action small{color:rgba(33,19,6,.72)}
html[data-theme="light"] .choice-card:has(input:checked),
html[data-theme="light"] .service-card:has(input:checked){background:linear-gradient(180deg,rgba(255,122,0,.10),rgba(255,122,0,.035))}
html[data-theme="light"] .wizard-progress span{background:#dfe4e9}
html[data-theme="light"] .table-wrap{background:#fff}
html[data-theme="light"] .data-table th{background:#eef1f4;color:#374250}
html[data-theme="light"] .data-table tr:hover td{background:#f8f9fb}
html[data-theme="light"] .modal-card{background:#fff;box-shadow:0 30px 90px rgba(22,31,44,.20)}
html[data-theme="light"] .modal-card>header{background:rgba(255,255,255,.96)}
html[data-theme="light"] .toast{background:#fff;box-shadow:0 16px 42px rgba(22,31,44,.14)}
html[data-theme="light"] .permission-panel{background:linear-gradient(180deg,#fff,#f7f9fb)}
html[data-theme="light"] .auth-app{background:radial-gradient(circle at 50% -10%,rgba(255,122,0,.095),transparent 28rem),#f5f7fa}
html[data-theme="light"] .status-console{background:linear-gradient(135deg,rgba(255,122,0,.075),rgba(91,130,255,.055)),#fff}
html[data-theme="light"] .hero{background:linear-gradient(135deg,rgba(255,122,0,.095),rgba(78,120,255,.055) 58%,#fff);box-shadow:var(--sr-shadow-sm)}
html[data-theme="light"] .hero p{color:#5f6976}
html[data-theme="light"] .offer-row{background:#fff}
html[data-theme="light"] .pill{background:#eef1f4;color:#56616f}
html[data-theme="light"] .success{color:#17663b}
html[data-theme="light"] .error{color:#9a3030}
html[data-theme="light"] .warning{color:#7d5d00}
html[data-theme="light"] .info{color:#3154a8}
html[data-theme="light"] .bottom-nav,
html[data-theme="light"] .app-tabbar{background:rgba(255,255,255,.96);border-color:var(--sr-line);box-shadow:0 -10px 30px rgba(22,31,44,.06)}
html[data-theme="light"] .sr-global-tool{background:rgba(255,255,255,.94);color:#1b232d;box-shadow:0 14px 34px rgba(22,31,44,.14)}
html[data-theme="light"] .sr-install-quick{background:linear-gradient(145deg,#ff7a00,#ff9e3e);color:#211306}
html[data-theme="light"] .sr-install-guide{background:#fff;color:#151a21}
html[data-theme="light"] .sr-install-guide-close{background:#f3f5f7;color:#151a21}
html[data-theme="light"] .sr-install-guide-note{color:#313944}
html[data-theme="light"] .sr-pin-map-stage{background:#e9edf2}

@media(max-width:760px){
  .sr-global-tools{bottom:calc(78px + env(safe-area-inset-bottom));right:12px}
  .auth-app .sr-global-tools,.guest-app .sr-global-tools{bottom:calc(18px + env(safe-area-inset-bottom))}
  .top-actions .install-app-btn:not([hidden]){display:inline-flex!important}
  .install-app-btn{min-height:38px!important;padding:7px 9px!important;font-size:.72rem!important}
  .sr-install-guide-backdrop{align-items:end;padding:10px}
  .sr-install-guide{width:100%;border-radius:22px 22px 16px 16px;padding:22px 18px calc(18px + env(safe-area-inset-bottom))}
}


/* v1.7.15 rider verification */
.verification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.verification-card{border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--surface-2,var(--panel));display:grid;gap:12px}.verification-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.verification-card-head>div{display:grid;gap:4px}.verification-card-head small{color:var(--muted);line-height:1.35}.file-action{position:relative;overflow:hidden;cursor:pointer}.file-action input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.file-action.disabled{opacity:.55;pointer-events:none}.verification-preview-link{display:block;width:100%}.verification-preview{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:14px;border:1px solid var(--line);background:var(--surface-1,var(--panel))}.verification-preview.profile-photo{max-width:220px;aspect-ratio:4/5;object-fit:cover;margin-inline:auto}.compact-message{padding:10px 12px;border-radius:12px;font-size:.88rem}.pill.not_uploaded{opacity:.75}.pill.superseded{opacity:.65}
@media(max-width:640px){.verification-grid{grid-template-columns:1fr}.verification-card{padding:14px}.verification-card .card-actions{display:grid;grid-template-columns:1fr 1fr}.verification-card .card-actions>*{width:100%;justify-content:center}}
