
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#eef3f8;color:#14283f}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input{font:inherit}.app{width:100%;max-width:430px;min-height:100dvh;margin:0 auto;padding:0 8px 20px}.topbar{margin:0 -8px 8px;padding:10px 11px;background:#0b2748;color:#fff;display:flex;align-items:center;gap:9px;position:sticky;top:0;z-index:20}.profilePhoto{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid #fff}.placeholder{display:grid;place-items:center;background:#dce5ef;color:#51677e;font-size:9px;font-weight:900}.brandText{flex:1}.brandText strong,.brandText span{display:block}.brandText strong{font-size:13px}.brandText span{font-size:9px;opacity:.72}.logout{border:0;border-radius:8px;padding:8px;background:#16395f;color:#fff;font-size:9px;font-weight:900}.mobileTabs{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-bottom:8px}.mobileTabs button{border:0;border-radius:8px;padding:9px 2px;background:#dfe7f0;color:#465d75;font-size:8px;font-weight:900}.mobileTabs button.active{background:#0b4da2;color:#fff}.mobileTabs b{display:inline-grid;place-items:center;min-width:14px;height:14px;border-radius:10px;background:#f0b53b;color:#0b2748}.card{background:#fff;border:1px solid #d9e2ec;border-radius:12px;padding:11px;margin-bottom:8px;box-shadow:0 2px 8px rgba(14,37,66,.06)}.driverStatusCard{padding:9px}.availabilityLine{display:flex;justify-content:space-between;align-items:center;gap:8px}.availabilityLine>strong{text-transform:uppercase;font-size:11px}.availabilityLine div{display:flex;gap:5px}.availabilityLine button{border:1px solid #cbd6e2;background:#f8fafc;border-radius:7px;padding:6px 7px;font-size:8px;font-weight:900}.gpsStart,.gpsStop{width:100%;border:0;border-radius:8px;padding:9px;margin-top:8px;color:#fff;font-size:9px;font-weight:900}.gpsStart{background:#0b4da2}.gpsStop{background:#9c3535}.gpsState{display:flex;align-items:center;gap:6px;margin-top:7px;padding:6px 8px;border-radius:8px;background:#eef2f5;color:#657488;font-size:8px;font-weight:900}.gpsState>span{width:7px;height:7px;border-radius:50%;background:#9ba8b5}.gpsState.on{background:#e8f8ef;color:#177346}.gpsState.on>span{background:#2aaa67}.gpsState small{margin-left:auto}.jobHead{display:flex;justify-content:space-between;gap:8px}.jobHead span{font-size:8px;font-weight:900;color:#788799}.jobHead h1{margin:2px 0 0;font-size:17px}.jobHead>b{font-size:8px;text-transform:uppercase;background:#e7f0ff;color:#245b9e;padding:5px 7px;border-radius:999px;height:max-content}.partnerBadge{margin-top:8px;padding:6px 8px;border-radius:7px;background:#fff4d8;color:#7a5b11;font-size:8px;font-weight:900}.priceBox{display:grid;grid-template-columns:1fr 1fr;margin:10px 0;border-radius:10px;overflow:hidden;border:1px solid #cfdbe7}.priceBox>div{padding:10px}.priceBox>div:first-child{background:#0b2748;color:#fff}.priceBox>div:last-child{background:#eaf8f0;color:#126a3e}.priceBox span,.priceBox small{display:block;font-size:7px;font-weight:900}.priceBox strong{display:block;font-size:18px;margin:3px 0}.paymentType{display:inline-block;padding:5px 7px;border-radius:7px;background:#f0f3f6;font-size:8px;font-weight:900}.journeyTime{font-size:9px;color:#68778a;margin:9px 0}.route{display:grid;gap:3px}.route span{font-size:7px;font-weight:900;color:#7c8999}.route strong{font-size:12px}.route i{font-style:normal;color:#8998a8}.navigationCard{margin-top:10px;padding:9px;border-radius:9px;background:#f6f9fc;border:1px solid #dbe4ed}.navigationCard>strong{font-size:8px}.navigationCard>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.navigationCard button{border:0;border-radius:8px;padding:9px 5px;color:#fff;font-size:8px;font-weight:900}.google{background:#1769e0}.waze{background:#0aa9d8}.decision{display:grid;grid-template-columns:1fr 2fr;gap:7px;margin-top:10px}.decision button,.stage{border:0;border-radius:9px;padding:11px 7px;font-size:9px;font-weight:950}.reject{background:#fff0f0;color:#9f3030}.accept,.stage{background:#0b4da2;color:#fff}.stage{width:100%;margin-top:10px}.empty{text-align:center;padding:28px 12px}.empty h2{font-size:16px;margin:0 0 5px}.empty p,.muted{font-size:10px;color:#708095}.sectionTitle{font-size:15px;margin:0 0 10px}.prebookList,.historyList{display:grid;gap:8px}.prebookItem,.historyList article{border:1px solid #dde6ee;border-radius:9px;padding:9px;background:#fbfcfd}.prebookItem>div:first-child,.historyList article>div:first-child{display:flex;justify-content:space-between;gap:8px}.prebookItem strong,.historyList strong{font-size:10px}.prebookItem span,.historyList span{font-size:8px;color:#6d7d90}.prebookItem p,.historyList p{font-size:9px;margin:6px 0;color:#42576f}.prebookMoney{display:flex;align-items:baseline;gap:8px}.prebookMoney b{font-size:15px}.prebookItem small,.historyList small{font-size:7px;font-weight:900;color:#718095}.earningsWrap{display:grid;gap:8px}.earnHero{padding:16px;border-radius:12px;background:#0b2748;color:#fff}.earnHero span,.earnHero small{display:block;font-size:8px}.earnHero strong{display:block;font-size:27px;margin:3px 0}.earnGrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.earnGrid article{background:#fff;border:1px solid #dbe4ed;border-radius:10px;padding:10px}.earnGrid span,.earnGrid small{display:block;font-size:8px;color:#6c7c8e}.earnGrid strong{display:block;font-size:17px;margin-top:3px}.historyMoney{display:flex;flex-wrap:wrap;gap:7px}.historyMoney strong{color:#177346}.profileCard{text-align:center}.profileLarge{width:92px;height:92px;border-radius:50%;object-fit:cover;margin:6px auto}.profileLarge.placeholder{display:grid}.profileCard h2{font-size:18px;margin:7px 0}.profileCard p{font-size:10px}.toast{position:fixed;top:58px;left:50%;transform:translateX(-50%);width:min(calc(100% - 18px),410px);z-index:50;padding:9px 10px;border-radius:8px;background:#142e4f;color:#fff;font-size:9px}.loginShell{min-height:100dvh;display:grid;place-items:center;padding:14px}.loginCard{width:min(100%,360px);background:#fff;border:1px solid #d8e2ec;border-radius:16px;padding:22px;box-shadow:0 8px 28px rgba(14,37,66,.11);text-align:center}.loginBrand{width:52px;height:52px;border-radius:14px;background:#f0b53b;color:#0b2748;display:grid;place-items:center;margin:0 auto;font-weight:950}.loginCard h1{font-size:19px;margin:10px 0 2px}.loginCard>p{font-size:11px;color:#718095;margin:0 0 14px}.loginCard form{display:grid;gap:10px;text-align:left}.loginCard label{font-size:9px;font-weight:900;color:#657589}.loginCard input{width:100%;margin-top:4px;padding:11px;border:1px solid #cbd7e3;border-radius:9px}.loginCard button{border:0;border-radius:9px;padding:12px;background:#0b4da2;color:#fff;font-weight:900}.loginError{margin-bottom:10px;padding:8px;background:#fff0f0;color:#9c3333;border-radius:8px;font-size:9px}footer{text-align:center;font-size:8px;color:#7e8b9a;padding:6px 0}


.downloadPdf{
  width:100%;
  border:0;
  border-radius:10px;
  padding:12px 10px;
  background:#177346;
  color:#fff;
  font-size:9px;
  font-weight:950;
}
.driverNotes{margin-top:10px;padding:10px;border-radius:10px;background:#fff8e8;border:1px solid #efdca8}.driverNotes>strong{font-size:8px;letter-spacing:.07em;color:#75591a}.driverNotes p{margin:7px 0 0;padding-top:7px;border-top:1px solid #f0e2bc;font-size:10px;line-height:1.42;color:#3e4c5a}.driverNotes p b{display:block;font-size:7px;text-transform:uppercase;color:#886d2b;margin-bottom:2px}

/* SwiftLane Central WordPress v1.1.0 — stable installable mobile shell */
html,body,#root{width:100%;min-height:100%;margin:0}
body.swlc-standalone.swlc-driver{background:#eef3f7;overflow-x:hidden}
#root{display:block}
.driverShell,.appShell,.driverApp,main.app{width:min(100%,640px)!important;max-width:640px!important;min-height:100vh;margin:0 auto!important;box-sizing:border-box}
.loginShell{width:100%;min-height:100vh;padding:18px;box-sizing:border-box}
.loginCard{width:min(100%,460px)!important;max-width:460px!important;box-sizing:border-box}
.installApps{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;width:100%}
.installChoice{min-height:64px!important;border:1px solid #d7e1eb!important;border-radius:12px!important;background:#fff!important;color:#0b2744!important;padding:10px 12px!important;text-align:left!important;box-shadow:none!important}
.installChoice b,.installChoice span{display:block}.installChoice b{font-size:13px}.installChoice span{font-size:10px;color:#6d7c8b;margin-top:3px}
.driverNav,.bottomNav{grid-template-columns:repeat(5,minmax(0,1fr))!important;width:100%!important}
.driverNav button,.bottomNav button{min-width:0!important;min-height:58px!important}
.card,.jobCard,.earningsWrap,.profileCard{width:100%;box-sizing:border-box}
button{touch-action:manipulation}
@media(max-width:680px){body.swlc-standalone.swlc-driver{background:#f4f7fa}.driverShell,.appShell,.driverApp,main.app{max-width:none!important}.installApps{grid-template-columns:1fr 1fr}.loginShell{padding:14px}}
@media(max-width:390px){.installApps{grid-template-columns:1fr}.installChoice{text-align:center!important}}

.gpsRequired{margin:8px 0;padding:9px 10px;border:1px solid #f0cf7d;background:#fff7dc;color:#75570b;border-radius:9px;font-size:11px;font-weight:700;line-height:1.35}
.gpsState.starting{background:#fff8e8;color:#806218}


/* SwiftLane Driver Portal v1.1.1.2 — professional period statements */
.periodPanel{background:#fff;border:1px solid #d8e3ed;border-radius:12px;padding:11px;display:grid;gap:9px}
.periodHead{display:flex;align-items:center;justify-content:space-between;gap:10px}.periodHead span{display:block;font-size:7px;font-weight:900;letter-spacing:.08em;color:#77889a}.periodHead strong{display:block;font-size:12px;margin-top:2px;color:#102943}
.periodNav{display:flex;gap:4px}.periodNav button{width:34px;height:32px;border:1px solid #cedae6;background:#f7f9fb;border-radius:8px;color:#163b63;font-size:18px;font-weight:900}.periodNav button:disabled{opacity:.35}
.periodPresets{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.periodPresets::-webkit-scrollbar{display:none}.periodPresets button{flex:0 0 auto;border:1px solid #d6e1eb;background:#f7f9fb;color:#51667d;border-radius:999px;padding:7px 9px;font-size:8px;font-weight:900}.periodPresets button.active{background:#0b4da2;color:#fff;border-color:#0b4da2}
.dateRange{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dateRange label{font-size:8px;font-weight:900;color:#64758a}.dateRange input{width:100%;margin-top:4px;border:1px solid #ccd8e4;border-radius:8px;padding:9px;background:#fff;color:#16304d}
.statementActions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.statementActions .downloadPdf,.downloadCsv{min-height:42px}.downloadCsv{border:1px solid #0b4da2;border-radius:10px;padding:10px;background:#fff;color:#0b4da2;font-size:9px;font-weight:950}.downloadPdf:disabled,.downloadCsv:disabled{opacity:.55}
.periodError{background:#fff0f0;color:#9d3333;border-radius:8px;padding:8px;font-size:9px}
.periodGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.periodGrid .highlightCard{border-color:#9bd5b4;background:#edf9f2}.periodGrid .highlightCard strong{color:#146a3d}.periodGrid .warningCard{border-color:#efd092;background:#fff8e8}.periodGrid .warningCard strong{color:#8b5d00}
.periodJobs{padding:11px}.jobsHeader{display:flex;justify-content:space-between;gap:8px;align-items:end;margin-bottom:9px}.jobsHeader .sectionTitle{margin:0}.jobsHeader small,.historyHeader small{display:block;font-size:8px;color:#728398;margin-top:2px}
.periodJobList{display:grid;gap:8px}.periodJob{border:1px solid #dce6ef;border-radius:10px;padding:10px;background:#fbfdff}.periodJobTop{display:flex;justify-content:space-between;gap:8px;align-items:start}.periodJobTop strong{display:block;font-size:10px;color:#102e50}.periodJobTop span{display:block;font-size:8px;color:#74869a;margin-top:2px}.payoutBadge{font-size:7px;border-radius:999px;padding:5px 7px}.payoutBadge.paid{background:#e7f7ed;color:#177346}.payoutBadge.pending{background:#fff3d8;color:#805d10}.periodRoute{margin:7px 0;font-size:9px;line-height:1.35;color:#425870}.periodMoney{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.periodMoney span{font-size:7px;color:#718297}.periodMoney b{display:block;font-size:11px;color:#1b354f;margin-top:1px}.periodMoney .youEarn b{color:#177346}.periodJob>small{display:block;margin-top:8px;font-size:7px;font-weight:900;color:#6f8093}
.historyHeader{display:flex;justify-content:space-between;align-items:start;gap:8px;margin-bottom:10px}.historyHeader .sectionTitle{margin:0}.historyFilters{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.historyFilters button{border:1px solid #d4dfe9;background:#f7f9fb;color:#5a6f84;border-radius:999px;padding:6px 7px;font-size:7px;font-weight:900}.historyFilters button.active{background:#0b4da2;color:#fff;border-color:#0b4da2}
@media(max-width:390px){.statementActions{grid-template-columns:1fr}.periodMoney{grid-template-columns:1fr 1fr}.historyHeader{display:block}.historyFilters{justify-content:flex-start;margin-top:8px}}

/* SwiftLane Driver Portal v1.1.1.3 — premium direct-install experience */
body.swlc-standalone.swlc-driver{background:linear-gradient(180deg,#e9f0f7 0,#f6f9fc 30%,#eef3f7 100%)}
.topbar{background:linear-gradient(135deg,#071c33,#0b315a);box-shadow:0 8px 24px rgba(7,28,51,.16);border-bottom:1px solid rgba(255,255,255,.08)}
.mobileTabs{padding:4px;background:rgba(255,255,255,.9);border:1px solid #dbe5ee;border-radius:11px;box-shadow:0 3px 12px rgba(14,37,66,.06)}
.mobileTabs button{transition:transform .15s ease,background .15s ease,color .15s ease}.mobileTabs button:active{transform:scale(.98)}
.card{border-radius:14px;box-shadow:0 5px 18px rgba(14,37,66,.055)}
.earnHero{background:linear-gradient(135deg,#071c33,#0b4da2);box-shadow:0 8px 22px rgba(11,77,162,.14)}
.loginShell{background:radial-gradient(circle at top,#dcecff 0,#eef4f9 38%,#f7f9fb 100%)}
.loginCard{border-radius:22px!important;padding:25px!important;box-shadow:0 22px 55px rgba(7,28,51,.16)!important;border:1px solid rgba(148,170,194,.38)!important}
.loginBrandImage{width:72px;height:72px;display:block;margin:0 auto 12px;border-radius:20px;box-shadow:0 10px 24px rgba(8,34,61,.22)}
.loginCard h1{font-size:21px;letter-spacing:.045em;color:#0b2748;margin:8px 0 3px}
.loginCard>p{font-size:10px;letter-spacing:.02em;color:#62758a;margin-bottom:12px}
.loginSecureBar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 15px;padding:8px 10px;border:1px solid #dce7ef;border-radius:10px;background:#f7fafc;text-align:left}
.loginSecureBar span{font-size:7px;font-weight:950;letter-spacing:.08em;color:#75869a}.loginSecureBar strong{font-size:8px;color:#173b61}
.loginCard form{padding:13px;border:1px solid #e0e8f0;border-radius:13px;background:#fbfdff}
.loginCard input{background:#fff;outline:none;transition:border .15s ease,box-shadow .15s ease}.loginCard input:focus{border-color:#4c89d7;box-shadow:0 0 0 3px rgba(76,137,215,.12)}
.loginCard form>button{background:linear-gradient(135deg,#0b4da2,#1266c9);min-height:44px;letter-spacing:.04em;box-shadow:0 6px 15px rgba(11,77,162,.18)}
.driverInstallPanel{position:relative;width:100%;margin-top:16px;padding:13px;border:1px solid #d7e3ed;border-radius:16px;background:linear-gradient(160deg,#fff 0,#f7fbff 100%);box-shadow:0 8px 22px rgba(11,39,72,.075);text-align:left;overflow:visible}
.installPanelHead{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:10px}.installAppIcon{width:48px;height:48px;border-radius:13px;box-shadow:0 5px 13px rgba(7,28,51,.18)}
.installPanelCopy{min-width:0}.installPanelCopy>*{display:block}.installEyebrow{font-size:7px;font-weight:950;letter-spacing:.09em;color:#6e8094}.installPanelCopy strong{margin-top:2px;font-size:13px;line-height:1.15;color:#0a294c}.installPanelCopy small{margin-top:3px;font-size:8px;color:#6d7e90}
.installStatusBadge{align-self:start;border-radius:999px;padding:5px 7px;background:#e9f2ff;color:#0b4da2;font-size:7px;font-weight:950;letter-spacing:.06em}.installStatusBadge.installed{background:#e8f8ef;color:#177346}
.installIntro{margin:11px 0 9px;font-size:9px;line-height:1.45;color:#52677d}
.installApps{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:9px!important;width:100%}
.loginCard .installChoice,.driverInstallPanel .installChoice{position:relative;display:grid!important;grid-template-columns:38px 1fr 16px;align-items:center;gap:9px;min-height:76px!important;margin:0!important;padding:10px!important;border:1px solid #152b43!important;border-radius:13px!important;background:linear-gradient(145deg,#071c33,#102f50)!important;color:#fff!important;text-align:left!important;box-shadow:0 6px 15px rgba(7,28,51,.13)!important;cursor:pointer;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.loginCard .installChoice:hover,.driverInstallPanel .installChoice:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(7,28,51,.18)!important;border-color:#2c5b8e!important}.installChoice:active{transform:translateY(0)}
.installChoice.recommended:after{content:"THIS DEVICE";position:absolute;top:5px;right:6px;border-radius:999px;padding:2px 4px;background:#f0b53b;color:#0b2748;font-size:5px;font-weight:950;letter-spacing:.05em}
.platformIcon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#fff}.platformIcon img{display:block;max-width:22px;max-height:24px}.appleIcon img{filter:brightness(0) saturate(100%)}.androidIcon{background:#e9f9ed}.androidIcon img{width:24px;height:24px;filter:none}
.installChoiceText{min-width:0}.installChoiceText>*{display:block!important}.installChoiceText small{font-size:6px!important;font-style:normal;color:#9fb3c9!important;letter-spacing:.09em;font-weight:900}.installChoiceText b{font-size:13px!important;color:#fff!important;line-height:1.1;margin-top:2px}.installChoiceText em{margin-top:4px;font-size:7px;font-style:normal;color:#bed0e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.installArrow{font-size:24px;font-weight:300;color:#8fb3da;line-height:1;text-align:center}
.installTrust{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.installTrust span{padding:4px 6px;border-radius:999px;background:#eef4f9;color:#567087;font-size:6px;font-weight:900;letter-spacing:.02em}
.installComplete{display:flex;align-items:center;gap:10px;margin-top:11px;padding:10px;border:1px solid #bfe5ce;border-radius:11px;background:#edf9f2}.installCheck{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#177346;color:#fff;font-weight:950}.installComplete b,.installComplete small{display:block}.installComplete b{font-size:10px;color:#145c38}.installComplete small{margin-top:2px;font-size:8px;color:#507060}
.installModalBackdrop{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:15px;background:rgba(3,16,30,.72);backdrop-filter:blur(7px)}
.installModal{position:relative;width:min(100%,420px);max-height:min(88dvh,680px);overflow:auto;padding:22px;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:#fff;color:#132c47;box-shadow:0 30px 80px rgba(0,0,0,.36);text-align:left}.installModalClose{position:absolute!important;top:10px;right:10px;width:34px;height:34px;padding:0!important;border:1px solid #dbe5ed!important;border-radius:50%!important;background:#f5f8fb!important;color:#314b64!important;font-size:23px!important;font-weight:400!important;line-height:1!important;box-shadow:none!important}.installModalPlatform{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;margin-bottom:13px;background:#071c33}.installModalPlatform img{max-width:29px;max-height:34px;filter:brightness(0) invert(1)}.installModalPlatform.android{background:#eaf9ee}.installModalPlatform.android img{filter:none;width:31px}.installModal h2{font-size:20px;margin:4px 0 6px;color:#0a294c}.installModalLead{font-size:10px;line-height:1.5;color:#63768a;margin:0 0 14px}
.installSteps{list-style:none;margin:0;padding:0;display:grid;gap:8px}.installSteps li{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:start;padding:9px;border:1px solid #e0e8f0;border-radius:11px;background:#f9fbfd}.installSteps b{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#0b4da2;color:#fff;font-size:8px}.installSteps span{font-size:9px;line-height:1.45;color:#39536d;padding-top:2px}
.installUrlBox{margin-top:12px;padding:10px;border-radius:11px;background:#071c33;color:#fff}.installUrlBox small,.installUrlBox strong{display:block}.installUrlBox small{font-size:6px;letter-spacing:.09em;color:#9fb4c9}.installUrlBox strong{margin-top:3px;font-size:10px;word-break:break-all}.installDone{width:100%;min-height:43px;margin-top:11px!important;border:0!important;border-radius:10px!important;background:#0b4da2!important;color:#fff!important;font-size:9px!important;font-weight:950!important;box-shadow:none!important}
.profileCard .driverInstallPanel{text-align:left;margin-top:14px}
.driverFooter{display:grid;gap:2px;text-align:center;padding:12px 0 5px;color:#7c8c9d}.driverFooter strong{font-size:7px;letter-spacing:.09em;color:#536c83}.driverFooter span{font-size:7px}
@media(max-width:430px){.loginCard{padding:18px!important}.installApps{grid-template-columns:1fr!important}.loginCard .installChoice,.driverInstallPanel .installChoice{min-height:70px!important}.installPanelHead{grid-template-columns:44px 1fr auto}.installAppIcon{width:44px;height:44px}.installModal{padding:19px 16px}.installChoice.recommended:after{top:4px;right:4px}}
@media(prefers-reduced-motion:reduce){.installChoice,.mobileTabs button{transition:none!important}}

/* SwiftLane Driver v1.2.0 — mobile operations / driver settings */
:root{--sl-bg:#eef3f8;--sl-surface:#fff;--sl-surface-2:#f7fafc;--sl-text:#14283f;--sl-muted:#6b7d91;--sl-border:#d8e3ec;--sl-navy:#071c33;--sl-blue:#0b4da2;--sl-green:#177346;--sl-danger:#a23939;--sl-shadow:0 8px 24px rgba(7,28,51,.08)}
html.swlc-driver-dark{color-scheme:dark;--sl-bg:#07111e;--sl-surface:#0d1c2d;--sl-surface-2:#122337;--sl-text:#edf5ff;--sl-muted:#9eb1c5;--sl-border:#253c54;--sl-navy:#061423;--sl-blue:#2878d8;--sl-green:#39a96d;--sl-danger:#d95d5d;--sl-shadow:0 8px 26px rgba(0,0,0,.26)}
html,body{overscroll-behavior-y:none;-webkit-text-size-adjust:100%;background:var(--sl-bg);color:var(--sl-text)}
body.swlc-standalone.swlc-driver{background:var(--sl-bg)!important}
.app{max-width:520px;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:calc(84px + env(safe-area-inset-bottom));background:var(--sl-bg)}
.topbar{margin:0 calc(-1 * max(10px,env(safe-area-inset-left))) 10px;padding:calc(10px + env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left));min-height:64px}
.brandText strong{font-size:14px;line-height:1.15}.brandText span{font-size:9px;letter-spacing:.08em}.profilePhoto{width:42px;height:42px}.logout{font-size:8px;padding:8px 9px}.connectionPill{border-radius:999px;padding:5px 7px;font-size:7px;font-weight:950;letter-spacing:.08em}.connectionPill.online{background:#dff7e9;color:#17633e}.connectionPill.offline{background:#ffe7e7;color:#8f3434}
.mobileTabs{position:fixed;left:50%;bottom:max(8px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;width:min(calc(100% - 16px),504px);margin:0;padding:5px;background:color-mix(in srgb,var(--sl-surface) 94%,transparent);border-color:var(--sl-border);box-shadow:0 12px 35px rgba(3,18,35,.22);backdrop-filter:blur(16px);grid-template-columns:repeat(5,1fr)}
.mobileTabs button{min-height:48px;border-radius:10px;background:transparent;color:var(--sl-muted);font-size:8px;letter-spacing:.02em}.mobileTabs button.active{background:var(--sl-blue);color:#fff;box-shadow:0 5px 14px rgba(11,77,162,.22)}
.card{background:var(--sl-surface);border-color:var(--sl-border);box-shadow:var(--sl-shadow);color:var(--sl-text)}
.muted,.empty p,.earnGrid span,.earnGrid small,.historyList span,.prebookItem span,.periodJobTop span,.periodMoney span,.driverFooter{color:var(--sl-muted)}
.driverStatusCard{padding:12px}.availabilityLine>strong{font-size:12px}.availabilityLine button{font-size:9px;min-height:34px;background:var(--sl-surface-2);color:var(--sl-text);border-color:var(--sl-border)}
.gpsStart,.gpsStop{min-height:45px;font-size:10px}.gpsState{font-size:9px;background:var(--sl-surface-2);color:var(--sl-muted)}
.jobHead h1{font-size:20px}.jobHead span,.jobHead>b{font-size:8px}.priceBox strong{font-size:21px}.journeyTime{font-size:11px}.route span{font-size:8px}.route strong{font-size:14px;line-height:1.35}.paymentType{font-size:9px}.driverNotes p{font-size:11px}.navigationCard button,.decision button,.stage{min-height:46px;font-size:10px}.sectionTitle{font-size:18px}.prebookItem strong,.historyList strong{font-size:12px}.prebookItem p,.historyList p{font-size:11px;line-height:1.4}.prebookItem small,.historyList small{font-size:8px}.earnHero strong{font-size:31px}.earnGrid span,.earnGrid small{font-size:9px}.earnGrid strong{font-size:19px}.periodRoute{font-size:11px}.periodMoney span{font-size:8px}.periodMoney b{font-size:13px}
.moreStack{display:grid;gap:9px}.profileSummary{margin-bottom:0}.profileCard p{font-size:11px}.profileLarge{width:88px;height:88px}
.settingsCard{text-align:left;padding:13px}.settingsTitle{display:flex;align-items:start;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--sl-border)}.settingsTitle span{display:block;font-size:7px;font-weight:950;letter-spacing:.1em;color:var(--sl-muted)}.settingsTitle h2{margin:2px 0 0;font-size:18px;color:var(--sl-text)}.settingsTitle>b{border-radius:999px;padding:5px 7px;font-size:7px;letter-spacing:.06em}.settingsLive{background:#e3f7eb;color:#17633e}.settingsOffline{background:#ffe8e8;color:#8f3434}
.settingGroup{padding:13px 0;border-bottom:1px solid var(--sl-border)}.settingHead{display:flex;justify-content:space-between;align-items:center;gap:10px}.settingHead strong,.settingToggleRow strong,.notificationPanel strong{display:block;font-size:11px;color:var(--sl-text)}.settingHead small,.settingToggleRow small,.notificationPanel small{display:block;margin-top:2px;font-size:8px;line-height:1.4;color:var(--sl-muted)}.settingHead>b{font-size:10px;color:var(--sl-blue)}
.themePicker{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.themePicker button{border:1px solid var(--sl-border);border-radius:9px;min-height:38px;background:var(--sl-surface-2);color:var(--sl-muted);font-size:8px;font-weight:950}.themePicker button.active{background:var(--sl-blue);border-color:var(--sl-blue);color:#fff}
.volumeSlider{width:100%;margin:13px 0 9px;accent-color:var(--sl-blue)}.testAlert{width:100%;min-height:40px;border:1px solid var(--sl-border);border-radius:9px;background:var(--sl-surface-2);color:var(--sl-text);font-size:8px;font-weight:950}
.settingToggleRow{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--sl-border)}.switch{width:46px;height:27px;border:0;border-radius:999px;padding:3px;background:#9aa9b8;transition:.2s}.switch span{display:block;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.2s}.switch.on{background:var(--sl-blue)}.switch.on span{transform:translateX(19px)}
.notificationPanel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px 0}.notificationPanel>button{border:0;border-radius:9px;min-height:34px;padding:0 10px;background:var(--sl-blue);color:#fff;font-size:8px;font-weight:950}.permissionOk{border-radius:999px;padding:5px 7px;background:#e4f7ec;color:#17633e;font-size:7px;font-weight:950}.settingsInfo{padding:10px;border-radius:10px;background:var(--sl-surface-2);border:1px solid var(--sl-border)}.settingsInfo span{font-size:7px;font-weight:950;letter-spacing:.08em;color:var(--sl-blue)}.settingsInfo p{margin:4px 0 0;font-size:8px;line-height:1.45;color:var(--sl-muted)}
.installCard{padding:0;background:transparent;border:0;box-shadow:none}.installCard .driverInstallPanel{margin-top:0;background:var(--sl-surface);border-color:var(--sl-border)}
.driverInstallPanel{background:var(--sl-surface);border-color:var(--sl-border)}.installPanelCopy strong,.installModal h2{color:var(--sl-text)}.installIntro,.installPanelCopy small{color:var(--sl-muted)}.installTrust span{background:var(--sl-surface-2);color:var(--sl-muted)}
html.swlc-driver-dark .mobileTabs{background:rgba(13,28,45,.94)}html.swlc-driver-dark .installChoice{border-color:#34516e!important}html.swlc-driver-dark .loginCard,html.swlc-driver-dark .loginCard form,html.swlc-driver-dark .loginSecureBar{background:var(--sl-surface)!important;border-color:var(--sl-border)!important;color:var(--sl-text)}html.swlc-driver-dark .loginCard h1,html.swlc-driver-dark .loginSecureBar strong{color:var(--sl-text)}html.swlc-driver-dark .loginCard input{background:#091827;color:#fff;border-color:var(--sl-border)}html.swlc-driver-dark .installModal{background:var(--sl-surface);color:var(--sl-text)}html.swlc-driver-dark .installSteps li{background:var(--sl-surface-2);border-color:var(--sl-border)}html.swlc-driver-dark .installSteps span{color:var(--sl-text)}
@media(min-width:700px){.app{max-width:560px}.mobileTabs{width:544px}}
@media(max-width:430px){.app{padding-left:8px;padding-right:8px}.topbar{margin-left:-8px;margin-right:-8px}.profilePhoto{width:40px;height:40px}.brandText strong{font-size:13px}.connectionPill{display:none}.card{border-radius:15px}.priceBox{grid-template-columns:1fr 1fr}.mobileTabs{width:calc(100% - 12px);bottom:max(6px,env(safe-area-inset-bottom))}.mobileTabs button{font-size:7px}.settingsTitle h2{font-size:17px}}
@media(max-width:350px){.priceBox{grid-template-columns:1fr}.availabilityLine{align-items:flex-start;flex-direction:column}.availabilityLine>div{width:100%}.availabilityLine button{flex:1}.mobileTabs button{font-size:6.5px}.brandText span{display:none}}
/* Native SwiftLane Driver shells */
html.swlc-native-shell,html.swlc-native-shell body{height:100%;min-height:100%;background:var(--sl-bg)}
html.swlc-native-shell body{margin:0!important;padding:0!important;overflow-x:hidden}
html.swlc-native-shell .app{width:100%;max-width:100%;min-height:100dvh;margin:0 auto;padding-top:0;padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));padding-bottom:calc(78px + env(safe-area-inset-bottom));box-sizing:border-box}
html.swlc-native-shell .topbar{position:sticky;top:0;z-index:55;margin-left:calc(-1 * max(8px,env(safe-area-inset-left)));margin-right:calc(-1 * max(8px,env(safe-area-inset-right)));padding-top:calc(11px + env(safe-area-inset-top));box-shadow:0 5px 18px rgba(7,28,51,.18)}
html.swlc-native-shell .mobileTabs{width:calc(100% - max(12px,env(safe-area-inset-left)) - max(12px,env(safe-area-inset-right)));max-width:520px}
html.swlc-native-shell .driverInstallPanel,html.swlc-native-shell .installCard{display:none!important}
html.swlc-native-shell .logout{min-width:56px;min-height:36px}
html.swlc-native-shell .card{max-width:none}
html.swlc-native-shell input,html.swlc-native-shell button,html.swlc-native-shell select,html.swlc-native-shell textarea{font-size:max(16px,1em)}
html.swlc-native-shell .mobileTabs button,html.swlc-native-shell .logout,html.swlc-native-shell .availabilityLine button,html.swlc-native-shell .navigationCard button,html.swlc-native-shell .decision button,html.swlc-native-shell .stage,html.swlc-native-shell .themePicker button,html.swlc-native-shell .testAlert,html.swlc-native-shell .notificationPanel>button{font-size:clamp(8px,2.3vw,11px)}
@media(min-width:560px){html.swlc-native-shell .app{max-width:560px}}

/* v1.2.1 live-duty state */
.availabilityLine button.activeDuty{background:#e3f7eb!important;border-color:#7ed2a1!important;color:#12663b!important;box-shadow:inset 0 0 0 1px rgba(18,102,59,.08)}
.availabilityLine button.activeOffDuty{background:#eef1f4!important;border-color:#c5ced7!important;color:#526273!important}
.nativeTracking{width:100%;margin-top:8px;border-radius:9px;padding:10px 12px;text-align:center;font-size:9px;font-weight:950;letter-spacing:.04em;border:1px solid var(--sl-border)}
.nativeTracking.on{background:#e5f8ed;color:#12663b;border-color:#9bdab5}.nativeTracking.off{background:var(--sl-surface-2);color:var(--sl-muted)}


/* v1.2.2 professional native job home */
.card.empty{min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:linear-gradient(180deg,var(--sl-surface),var(--sl-surface-2));border-style:solid}
.card.empty .readyIcon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--sl-surface-2);border:1px solid var(--sl-border);color:var(--sl-muted);font-size:22px;font-weight:950}.card.empty .readyIcon.online{background:#e5f8ed;border-color:#9bdab5;color:#12663b}.card.empty h2{margin:2px 0 0}.card.empty p{max-width:320px;line-height:1.45;margin:0}
html.swlc-native-shell .gpsStart,html.swlc-native-shell .gpsStop{display:none!important}

/* v1.2.8 iPhone Home Screen PWA install */
.installDownloadLink{display:flex!important;align-items:center;justify-content:center;text-decoration:none!important;box-sizing:border-box}.installSecondary{margin-top:7px!important;background:#eef4f9!important;color:#0b4da2!important;border:1px solid #cbd9e6!important}.installModal .installUrlBox{margin-top:10px}

.installIosNote{margin:12px 0;padding:11px 12px;border-radius:10px;background:#fff7e6;border:1px solid #efd08a;color:#5e4610;display:grid;gap:3px;font-size:10px;line-height:1.4}.installIosNote b{font-size:9px;letter-spacing:.08em}.installIosNote span{font-weight:700}
