:root{--navy-950: #0b1220;--navy-900: #111827;--navy-800: #132c56;--navy-700: #1f3f70;--amber-500: #fbbf24;--amber-400: #facc15;--amber-100: #fef3c7;--green-500: #16a34a;--green-100: #dcfce7;--red-500: #ef4444;--red-100: #fee2e2;--sky-100: #dbeafe;--ink: #111827;--muted: #64748b;--line: #e2e8f0;--surface: #ffffff;--shadow-soft: 0 18px 45px rgba(15, 23, 42, .08);--shadow-strong: 0 26px 70px rgba(15, 23, 42, .18);color-scheme:light;color:var(--ink);background:#eef2f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--ink: #e5edf7;--muted: #9aa8bc;--line: rgba(148, 163, 184, .22);--surface: #101827;--amber-100: rgba(251, 191, 36, .16);--green-100: rgba(34, 197, 94, .15);--red-100: rgba(248, 113, 113, .15);--sky-100: rgba(96, 165, 250, .15);--shadow-soft: 0 20px 52px rgba(0, 0, 0, .32);--shadow-strong: 0 32px 78px rgba(0, 0, 0, .46);color-scheme:dark;background:#070b14}*{box-sizing:border-box}html,body,#root{width:100%;min-width:0}html,body{overflow-x:hidden;background:#eef2f7}body{margin:0;background:linear-gradient(135deg,#fbbf241a,#fff0 36%),linear-gradient(180deg,#eef2f7,#f8fafc)}button,input,select,textarea{font:inherit;color:var(--ink)}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}img,svg{max-width:100%}.app{width:100%;min-width:0;min-height:100vh;display:grid;grid-template-columns:292px minmax(0,1fr)}.mobileMenuButton,.menuBackdrop{display:none}.sidebar{position:sticky;top:0;height:100vh;overflow:hidden;padding:22px;color:#fff;background:linear-gradient(180deg,#132c56fa,#0b1220fc 58%,#090f1b);display:flex;flex-direction:column;gap:22px;border-right:1px solid rgba(255,255,255,.08)}.brand{display:flex;align-items:center;gap:12px;padding:10px 8px 18px;border-bottom:1px solid rgba(255,255,255,.09)}.brand strong{display:block;font-size:16px;line-height:1.1}.brand span{display:block;margin-top:4px;color:#ffffff94;font-size:13px;font-weight:700}.brandMark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:#fff;box-shadow:0 16px 30px #00000038;border:1px solid rgba(251,191,36,.52)}.brandMark img{width:41px;height:41px;object-fit:contain}nav{display:grid;gap:8px}nav button,.logout{width:100%;min-width:0;border:0;border-radius:15px;padding:13px 14px;display:flex;gap:11px;align-items:center;justify-content:flex-start;background:transparent;color:#ffffffc2;font-weight:850;transition:background .16s ease,color .16s ease,transform .16s ease}nav button svg,.logout svg{flex:0 0 auto}nav button:hover,.logout:hover{background:#ffffff14;color:#fff}nav button.active{background:linear-gradient(135deg,var(--amber-500),#fde68a);color:var(--navy-950);box-shadow:0 16px 30px #fbbf243d}.logout{margin-top:auto}main{width:100%;min-width:0;padding:22px}.top{position:sticky;top:16px;z-index:20;margin-bottom:14px;border:1px solid rgba(226,232,240,.88);border-radius:20px;padding:14px 68px 14px 16px;background:#ffffffe0;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topIdentity{min-width:0}.top p,.eyebrow{margin:0;color:#b45309;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.top h1{margin:0;color:var(--navy-950);font-size:26px;line-height:1.04;font-weight:950;overflow-wrap:anywhere}.driverTitleRow{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;margin:4px 0 3px;min-width:0}.driverTitleRow h1{min-width:0;flex:0 1 auto}.top span{display:block;color:var(--muted);font-weight:760;overflow-wrap:anywhere}.topActions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.top button,.primaryButton,form button{border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,var(--amber-500),#fde68a);padding:10px 15px;color:var(--navy-950);font-weight:950;box-shadow:0 14px 28px #fbbf2438;transition:transform .16s ease,box-shadow .16s ease}.top button:hover,.primaryButton:hover,form button:hover{transform:translateY(-1px);box-shadow:0 18px 34px #fbbf2447}.themeToggle,.top .themeToggle,.loginThemeToggle.themeToggle{width:42px;height:42px;border:1px solid rgba(226,232,240,.92);border-radius:999px;padding:0;background:#ffffffeb;color:var(--navy-950);box-shadow:0 12px 26px #0f172a12}.themeToggle:hover,.top .themeToggle:hover,.loginThemeToggle.themeToggle:hover{background:#fff;box-shadow:0 16px 34px #0f172a1a}.topThemeToggle{position:absolute;top:12px;right:14px}.spinIcon{animation:spin 1s linear infinite}.statusPill{width:fit-content;min-height:31px;border-radius:999px;display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:7px 10px;color:var(--navy-950);font-size:12px;font-weight:950;white-space:nowrap}.statusPill.good{background:var(--green-100);color:#166534}.statusPill.warning{background:var(--amber-100);color:#92400e}.statusPill.danger{background:var(--red-100);color:#991b1b}.alert{margin-bottom:14px;border:1px solid transparent;border-radius:16px;padding:13px 15px;font-weight:900;box-shadow:0 12px 26px #0f172a0d}.error{border-color:#fecaca;background:#fff1f2;color:#991b1b}.success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;min-width:0}.actionGrid{grid-template-columns:minmax(320px,.78fr) minmax(0,1fr)}.singleColumn{grid-template-columns:minmax(0,760px)}.panel{min-width:0;border:1px solid rgba(226,232,240,.9);border-radius:20px;padding:18px;background:#fffffff0;box-shadow:var(--shadow-soft);align-self:start}.panel h2{margin:0;color:var(--navy-950);font-size:20px;line-height:1.15;font-weight:950}.panel p{color:var(--muted);line-height:1.55}.panelHeader{display:flex;align-items:center;gap:13px;margin-bottom:16px}.panelHeader.compact{margin-bottom:8px}.panelIcon{width:45px;height:45px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;background:#fff7e6;color:#92400e;border:1px solid #fde68a}.panelIcon.good{background:var(--green-100);color:#166534;border-color:#bbf7d0}.panelIcon.danger{background:var(--red-100);color:#991b1b;border-color:#fecaca}.panelIcon.money{background:var(--sky-100);color:var(--navy-800);border-color:#bfdbfe}.dashboardLayout{grid-template-columns:minmax(0,1fr) minmax(360px,500px)}.dashboardHero{grid-column:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,340px);align-items:center;gap:18px;overflow:hidden;min-height:118px;padding:16px 18px;color:#fff;background:linear-gradient(135deg,#132c56fa,#0b1220fa),#111827;border-color:#ffffff14;box-shadow:var(--shadow-strong)}.dashboardHero .eyebrow{color:var(--amber-400)}.heroCopy{min-width:0}.heroCopy h2{margin:5px 0 6px;color:#fff;font-size:26px;line-height:1;overflow-wrap:anywhere}.heroCopy p{max-width:520px;margin:0;color:#ffffffb8;font-size:13px}.heroActions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:10px}.heroRechargeButton{min-height:34px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:7px;padding:8px 13px;background:linear-gradient(135deg,var(--amber-500),#fde68a);color:var(--navy-950);font-size:13px;font-weight:950;box-shadow:0 14px 28px #fbbf2433}.heroCopy strong{display:inline-flex;border-radius:999px;padding:7px 11px;background:#ffffff1a;color:#fde68a;font-size:12px}.progressMeter{min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:12px;background:#ffffff14}.progressMeterTop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.progressMeterTop span{color:#ffffffb8;font-size:12px;font-weight:850}.progressMeterTop strong{color:#fff;font-size:15px;font-weight:950}.progressTrack{height:28px;overflow:hidden;border-radius:999px;background:#ffffff2b;box-shadow:inset 0 1px 2px #00000038}.progressFill{min-width:38px;height:100%;border-radius:inherit;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:950;transition:width .24s ease}.progressMeter.good .progressFill{background:linear-gradient(90deg,#16a34a,#22c55e)}.progressMeter.warning .progressFill{background:linear-gradient(90deg,#f59e0b,#fbbf24);color:var(--navy-950)}.progressMeter.danger .progressFill{background:linear-gradient(90deg,#dc2626,#ef4444)}.dashboardStats{grid-column:1;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:14px;min-width:0}.statCard{min-width:0;border:1px solid rgba(226,232,240,.92);border-radius:16px;padding:11px;background:#ffffffeb;box-shadow:0 12px 28px #0f172a0f}.statIcon{width:30px;height:30px;border-radius:11px;display:grid;place-items:center;margin-bottom:8px;background:var(--amber-100);color:#92400e}.statCard.good .statIcon{background:var(--green-100);color:#166534}.statCard.warning .statIcon{background:var(--amber-100);color:#92400e}.statCard.danger .statIcon{background:var(--red-100);color:#991b1b}.statCard.money .statIcon{background:var(--sky-100);color:var(--navy-800)}.statCard span{display:block;color:var(--muted);font-size:10px;font-weight:900}.statCard strong{display:block;margin-top:4px;color:var(--navy-950);font-size:14px;line-height:1.25;font-weight:950;overflow-wrap:anywhere}.homeMain{grid-column:1;display:grid;gap:18px;min-width:0}.homeAside{grid-column:2;grid-row:1 / span 3;min-width:0}.calendarPanel{width:100%;max-width:520px;justify-self:stretch;background:linear-gradient(180deg,#fff,#fffaf0)}.calendarHeader{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #f1e3c6;padding-bottom:13px;margin-bottom:12px}.calendarHeader h2{margin:0;font-size:18px}.calendarControls{display:flex;align-items:center;gap:7px}.calendarControls button{width:34px;height:34px;border:1px solid #f1e3c6;border-radius:999px;display:grid;place-items:center;background:#fff;color:var(--navy-950);padding:0;box-shadow:0 8px 16px #1118270f}.calendarControls strong{border-radius:999px;background:var(--navy-950);color:#fff;padding:8px 11px;font-size:12px;font-weight:950;text-transform:uppercase}.calendarBoard{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendarWeekday{text-align:center;color:var(--muted);font-size:10px;font-weight:950;text-transform:uppercase}.calendarCell{aspect-ratio:1;min-width:0;border:1px solid #f1e3c6;border-radius:13px;display:grid;place-items:center;background:#fffc}.calendarCell.blank{border-color:transparent;background:#f8fafc8c}.dayCircle{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:950;line-height:1;box-shadow:inset 0 -1px #ffffff8c,0 8px 14px #11182714}.dayCircle b{color:#fff;font-size:inherit;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.24)}.paid{background:var(--green-500)}.unpaid{background:var(--red-500)}.today{outline:3px solid var(--amber-500);outline-offset:2px}.legend{margin-top:12px;margin-right:14px;display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:850}.legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.paidDot{background:var(--green-500)}.unpaidDot{background:var(--red-500)}.formPanel{background:linear-gradient(180deg,#fffffffa,#f8fafcf5)}.formIntro{margin:-4px 0 16px;color:var(--muted);font-size:14px;line-height:1.5}label{display:grid;gap:7px;margin:14px 0;color:#334155;font-size:13px;font-weight:950}input,select,textarea{width:100%;min-width:0;border:1.5px solid #d9e2ef;border-radius:15px;padding:13px 14px;outline:none;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input:focus,select:focus,textarea:focus{border-color:var(--amber-500);background:#fff;box-shadow:0 0 0 4px #fbbf2429}input[type=file]{max-width:100%;font-size:14px}.fileInputHidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}textarea{min-height:130px;resize:vertical}.dateTimeInput{display:block;max-width:100%;min-width:0;-webkit-appearance:none;appearance:none}.dateTimeInput::-webkit-date-and-time-value{min-width:0;text-align:left}.rechargeFlow{display:grid;gap:12px;margin:16px 0}.rechargeField{position:relative;display:grid;gap:9px;margin:0;border:1px solid #d9e2ef;border-left:4px solid #cbd5e1;border-radius:16px;padding:12px;background:#ffffffc2;color:#334155;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.rechargeField>span{color:#334155;font-size:12px;font-weight:950}.rechargeField.complete{border-color:#16a34a5c;border-left-color:var(--green-500);background:linear-gradient(135deg,#f0fdf4f0,#fffffff5);box-shadow:0 12px 28px #16a34a14}.rechargeField.complete>span{color:#166534}.rechargeField.complete input{border-color:#bbf7d0;background:#fbfffd}.rechargeField.invalid{border-color:#fecaca;border-left-color:var(--red-500);background:#fff1f2;box-shadow:0 12px 28px #ef444414}.rechargeField.invalid>span{color:#991b1b}form .proofButton{width:100%;min-height:48px;border:1px solid rgba(22,163,74,.32);border-radius:15px;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;box-shadow:0 14px 28px #16a34a2e}form .proofButton:hover{box-shadow:0 18px 34px #16a34a3d}form .proofButton:disabled{cursor:wait;opacity:.74}.proofField.invalid .proofButton{border-color:#fecaca;background:#fff;color:#991b1b;box-shadow:none}.proofStatus{display:inline-flex;align-items:center;min-width:0;color:var(--muted);font-size:12px;font-weight:850;overflow-wrap:anywhere}.proofField.invalid .proofStatus{color:#dc2626}.historyPanel{min-height:0}.historyHeader{position:relative}.historyTitle{min-width:0}.historyToggle{width:38px;height:38px;margin-left:auto;border:1px solid var(--line);border-radius:999px;display:grid;place-items:center;flex:0 0 auto;padding:0;background:#fff;color:var(--navy-950);box-shadow:0 10px 22px #0f172a0f}.historyToggle svg{transition:transform .16s ease}.historyPanel:not(.collapsed) .historyToggle svg{transform:rotate(180deg)}.historyContent{margin-top:6px}.historyPanel.collapsed{padding-bottom:14px}.historyPanel.collapsed .panelHeader{margin-bottom:0}.historyPanel .history:first-of-type,.detailPanel .info:first-of-type{border-top:0}.history,.info{border-top:1px solid var(--line);padding:13px 0;display:grid;gap:5px}.history{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.history strong,.info strong{min-width:0;color:var(--navy-950);font-size:14px;font-weight:950;overflow-wrap:anywhere}.history span,.info span{color:var(--muted);font-size:13px;font-weight:780}.history span{text-align:right}.info{grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);align-items:start}.rechargeProcess{position:relative;display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;align-items:center;margin-top:18px;overflow:hidden;border:1px solid #fde68a;border-radius:20px;padding:16px;background:linear-gradient(135deg,#fffbebf5,#fffffffa);box-shadow:0 18px 42px #92400e1a}.rechargeOverlay{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:22px;background:#0b1220c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:rechargeBackdropIn .18s ease-out}.rechargeProcess.featured{width:min(560px,100%);grid-template-columns:108px minmax(0,1fr);gap:22px;border:1px solid rgba(251,191,36,.78);border-radius:26px;padding:28px;box-shadow:0 34px 90px #00000057;animation:rechargeCardIn .22s ease-out}.rechargeProcess.received{border-color:#bbf7d0;background:linear-gradient(135deg,#f0fdf4fa,#fffffffa);box-shadow:0 18px 42px #1665341a}.rechargeAnimation{position:relative;display:grid;place-items:center;width:74px;height:74px;border-radius:20px;background:var(--navy-950);color:var(--amber-500);overflow:hidden}.rechargeProcess.received .rechargeAnimation{color:#22c55e}.rechargeProcess.featured .rechargeAnimation{width:96px;height:96px;border-radius:28px}.pulseRing{position:absolute;width:46px;height:46px;border:2px solid currentColor;border-radius:50%;opacity:.52;animation:rechargePulse 1.35s ease-out infinite}.rechargeProcess.featured .pulseRing{width:62px;height:62px}.receiptIcon{position:relative;z-index:2;display:grid;place-items:center}.scanLine{position:absolute;left:12px;right:12px;height:2px;border-radius:999px;background:currentColor;box-shadow:0 0 14px currentColor;animation:rechargeScan 1.45s ease-in-out infinite}.rechargeProcess.received .scanLine{animation:none;top:auto;bottom:16px;opacity:.36}.rechargeProcessCopy{min-width:0}.rechargeProcessCopy strong{display:block;color:var(--navy-950);font-size:17px;line-height:1.25;font-weight:950}.rechargeProcess.featured .rechargeProcessCopy strong{padding-right:34px;font-size:24px}.rechargeProcessCopy p{margin:7px 0 0;color:#4b5563;font-size:14px;line-height:1.45}.rechargeProcessCopy em{display:block;margin-top:9px;color:#92400e;font-size:13px;font-style:normal;font-weight:900}.rechargeMeta{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.rechargeMeta span{border-radius:999px;background:#11182714;padding:6px 9px;color:var(--navy-950);font-size:12px;font-weight:900}.rechargeOverlayClose{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:999px;padding:0;background:#11182714;color:var(--navy-950);box-shadow:none}.rechargeOverlayClose:hover{background:#11182724;transform:none}.rechargeOverlayAction{width:fit-content;margin-top:16px;border:0;border-radius:999px;padding:12px 18px;background:var(--navy-950);color:#fff;font-weight:950}.loginPage{position:relative;width:100%;min-width:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:linear-gradient(135deg,#132c561a,#fff0 34%),linear-gradient(145deg,#eef3fb,#fff 46%,#fff8e8)}.loginThemeToggle{position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:5;width:42px;height:42px;min-height:42px;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center}.loginShell{width:min(1080px,100%);min-width:0;min-height:640px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);overflow:hidden;border:1px solid rgba(226,232,240,.95);border-radius:32px;background:#ffffffeb;box-shadow:0 34px 95px #1118272e}.loginBrandPanel{padding:48px;color:#fff;background:linear-gradient(145deg,#132c56fa,#1f3f70fa 64%,#0b1220fc);display:flex;flex-direction:column;justify-content:center}.loginBadge{width:fit-content;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid rgba(251,191,36,.32);border-radius:999px;background:#fbbf2421;color:#fcd34d;font-size:12px;font-weight:950;text-transform:uppercase}.loginBadge span{width:8px;height:8px;border-radius:50%;background:var(--amber-500);box-shadow:0 0 0 6px #fbbf2429}.loginLogoWrap{margin-top:30px;width:88px;height:88px;border-radius:25px;display:grid;place-items:center;background:#fff;box-shadow:0 18px 36px #0003}.loginLogoWrap img{width:76px;height:76px;object-fit:contain}.loginBrandPanel h1{max-width:520px;margin:34px 0 0;color:#fff;font-size:58px;line-height:.98;font-weight:950;overflow-wrap:anywhere}.loginBrandPanel h1 span{display:block;color:var(--amber-500)}.loginBrandPanel p{max-width:480px;margin:22px 0 0;color:#ffffffc2;font-size:15px;line-height:1.7}.loginBenefits{display:grid;gap:12px;margin-top:34px}.loginBenefits div{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:12px;background:#ffffff12;color:#ffffffdb;font-size:14px;font-weight:780}.loginBenefits svg{flex:0 0 auto;color:var(--amber-500)}.loginCard{min-width:0;padding:48px;display:flex;flex-direction:column;justify-content:center;background:#fffffffa}.loginFormTop{margin-bottom:26px}.loginIcon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;color:var(--navy-800);background:#fff7e6;border:1px solid #f8d589}.loginFormTop>span{display:block;margin-top:20px;color:#b45309;font-size:12px;font-weight:950;text-transform:uppercase}.loginFormTop h2{margin:8px 0 0;color:var(--navy-950);font-size:34px;line-height:1}.loginFormTop p{margin:12px 0 0;color:var(--muted);line-height:1.6;font-weight:700}.loginField{margin:0 0 16px}.loginField span{display:block;margin-bottom:8px;font-size:13px}.passwordField{position:relative}.passwordField input{padding-right:162px}.passwordField button{position:absolute;top:50%;right:7px;transform:translateY(-50%);height:38px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:12px;padding:0 12px;background:var(--navy-800);color:#fff;font-size:12px;font-weight:900;box-shadow:none}.passwordField button:hover{transform:translateY(-50%);box-shadow:none}.loginSubmit{width:100%;margin-top:8px;border-radius:16px;padding:15px 18px;font-size:17px}.linkButton{background:transparent;box-shadow:none;padding:0;color:#92400e}:root[data-theme=dark] body{background:linear-gradient(135deg,#fbbf2414,#070b1400 34%),linear-gradient(180deg,#070b14,#0e1626)}:root[data-theme=dark] .sidebar{background:linear-gradient(180deg,#0a162bfc,#050a14 62%,#030712);border-right-color:#ffffff12}:root[data-theme=dark] .top,:root[data-theme=dark] .panel,:root[data-theme=dark] .statCard,:root[data-theme=dark] .loginShell,:root[data-theme=dark] .loginCard{border-color:#94a3b82e;background:#0f172ae0;box-shadow:var(--shadow-soft)}:root[data-theme=dark] .top{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}:root[data-theme=dark] .formPanel,:root[data-theme=dark] .calendarPanel{background:linear-gradient(180deg,#0f172aeb,#080d19f0)}:root[data-theme=dark] .dashboardHero,:root[data-theme=dark] .loginBrandPanel{background:linear-gradient(145deg,#132c56f5,#0b1220fc 70%,#030712);border-color:#fbbf241f}:root[data-theme=dark] .loginPage{background:linear-gradient(135deg,#fbbf2414,#070b1400 34%),linear-gradient(145deg,#070b14,#0c1424 48%,#17120a)}:root[data-theme=dark] .panel h2,:root[data-theme=dark] .top h1,:root[data-theme=dark] .statCard strong,:root[data-theme=dark] .history strong,:root[data-theme=dark] .info strong,:root[data-theme=dark] .loginFormTop h2,:root[data-theme=dark] .rechargeProcessCopy strong,:root[data-theme=dark] .rechargeMeta span{color:#f8fafc}:root[data-theme=dark] .top p,:root[data-theme=dark] .eyebrow,:root[data-theme=dark] .loginFormTop>span,:root[data-theme=dark] .linkButton{color:#facc15}:root[data-theme=dark] .top span,:root[data-theme=dark] .panel p,:root[data-theme=dark] .formIntro,:root[data-theme=dark] .rechargeField>span,:root[data-theme=dark] .history span,:root[data-theme=dark] .info span,:root[data-theme=dark] .statCard span,:root[data-theme=dark] .calendarWeekday,:root[data-theme=dark] .legend,:root[data-theme=dark] .loginFormTop p,:root[data-theme=dark] .rechargeProcessCopy p{color:var(--muted)}:root[data-theme=dark] .panelIcon,:root[data-theme=dark] .loginIcon,:root[data-theme=dark] .statIcon{background:#fbbf2424;border-color:#fbbf2447;color:#facc15}:root[data-theme=dark] .panelIcon.good,:root[data-theme=dark] .statCard.good .statIcon{background:#22c55e24;border-color:#22c55e3d;color:#4ade80}:root[data-theme=dark] .panelIcon.danger,:root[data-theme=dark] .statCard.danger .statIcon{background:#f8717124;border-color:#f8717142;color:#f87171}:root[data-theme=dark] .panelIcon.money,:root[data-theme=dark] .statCard.money .statIcon{background:#60a5fa24;border-color:#60a5fa3d;color:#93c5fd}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{border-color:#94a3b83d;background:#0206178a;color:#f8fafc}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#718096}:root[data-theme=dark] input:focus,:root[data-theme=dark] select:focus,:root[data-theme=dark] textarea:focus{border-color:#fbbf24c2;background:#020617c2;box-shadow:0 0 0 4px #fbbf241f}:root[data-theme=dark] .themeToggle,:root[data-theme=dark] .top .themeToggle,:root[data-theme=dark] .loginThemeToggle.themeToggle,:root[data-theme=dark] .historyToggle,:root[data-theme=dark] .calendarControls button{border-color:#94a3b833;background:#0f172aeb;color:#f8fafc;box-shadow:0 14px 32px #00000042}:root[data-theme=dark] .themeToggle:hover,:root[data-theme=dark] .top .themeToggle:hover,:root[data-theme=dark] .loginThemeToggle.themeToggle:hover,:root[data-theme=dark] .historyToggle:hover,:root[data-theme=dark] .calendarControls button:hover{background:#1e293bf5}:root[data-theme=dark] .statusPill.good{background:#22c55e24;color:#86efac}:root[data-theme=dark] .statusPill.warning{background:#fbbf2429;color:#fde68a}:root[data-theme=dark] .statusPill.danger{background:#f8717126;color:#fecaca}:root[data-theme=dark] .calendarHeader,:root[data-theme=dark] .history,:root[data-theme=dark] .info{border-color:var(--line)}:root[data-theme=dark] .calendarControls strong{background:#f8fafc;color:#0b1220}:root[data-theme=dark] .calendarCell{border-color:#94a3b829;background:#0f172a9e}:root[data-theme=dark] .calendarCell.blank{background:#02061740}:root[data-theme=dark] .rechargeField{border-color:#94a3b833;border-left-color:#94a3b86b;background:#0206174d}:root[data-theme=dark] .rechargeField.complete{border-color:#22c55e4d;border-left-color:#22c55e;background:linear-gradient(135deg,#14532d3d,#0f172ab8);box-shadow:0 14px 32px #00000038}:root[data-theme=dark] .rechargeField.complete>span{color:#86efac}:root[data-theme=dark] .rechargeField.complete input{border-color:#22c55e4d;background:#02061775}:root[data-theme=dark] .rechargeField.invalid{border-color:#f8717159;border-left-color:#f87171;background:#7f1d1d38}:root[data-theme=dark] .rechargeField.invalid>span,:root[data-theme=dark] .proofField.invalid .proofStatus{color:#fecaca}:root[data-theme=dark] .proofField.invalid .proofButton{border-color:#f8717159;background:#7f1d1d42;color:#fecaca}:root[data-theme=dark] .rechargeMeta span,:root[data-theme=dark] .rechargeOverlayClose{background:#94a3b81f}:root[data-theme=dark] .rechargeProcess{border-color:#fbbf245c;background:linear-gradient(135deg,#29200efa,#0f172afa);box-shadow:0 18px 42px #00000052}:root[data-theme=dark] .rechargeProcess.received{border-color:#22c55e5c;background:linear-gradient(135deg,#0b311ffa,#0f172afa)}:root[data-theme=dark] .rechargeAnimation{background:#020617e6}:root[data-theme=dark] .rechargeOverlay{background:#020617d1}:root[data-theme=dark] .rechargeOverlayAction{background:#f8fafc;color:#0b1220}:root[data-theme=dark] .error{border-color:#f871714d;background:#7f1d1d57;color:#fecaca}:root[data-theme=dark] .success{border-color:#22c55e47;background:#14532d52;color:#bbf7d0}:root[data-theme=dark] .mobileMenuButton{background:#f8fafc;color:#0b1220}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rechargePulse{0%{transform:scale(.62);opacity:.72}to{transform:scale(1.55);opacity:0}}@keyframes rechargeBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes rechargeCardIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rechargeScan{0%,to{top:14px;opacity:.18}50%{top:58px;opacity:.92}}@media(max-width:1180px){.dashboardLayout{grid-template-columns:1fr}.dashboardHero,.dashboardStats,.homeMain,.homeAside{grid-column:auto;grid-row:auto}.calendarPanel{max-width:620px}.dashboardStats{grid-template-columns:repeat(2,minmax(0,1fr))}.actionGrid{grid-template-columns:1fr}}@media(max-width:900px){.app{grid-template-columns:1fr}.mobileMenuButton{display:grid;place-items:center;position:fixed;top:calc(max(12px,env(safe-area-inset-top)) + 12px);left:calc(max(12px,env(safe-area-inset-left)) + 12px);z-index:40;width:44px;height:44px;border:0;border-radius:15px;background:var(--navy-950);color:#fff;box-shadow:0 14px 30px #1118273d}.sidebar{position:fixed;z-index:35;inset:0 auto 0 0;width:min(86vw,320px);height:100svh;transform:translate(-105%);transition:transform .18s ease;box-shadow:24px 0 60px #11182747}.menuOpen .sidebar{transform:translate(0)}.menuBackdrop{position:fixed;z-index:30;inset:0;border:0;background:#11182770}.menuOpen .menuBackdrop{display:block}main{width:100%;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.top{position:relative;top:auto;border-radius:20px;padding:13px 60px 14px 14px}.top>div:first-child{min-height:48px;padding-left:58px;padding-right:0}.top h1{font-size:22px;line-height:1.08}.driverTitleRow{gap:7px}.driverTitleRow h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.driverTitleRow .statusPill{min-height:24px;gap:4px;padding:4px 7px;font-size:10px}.driverTitleRow .statusPill svg{width:12px;height:12px}.topThemeToggle{top:13px;right:14px}.topActions{width:100%;flex-wrap:wrap}.topActions button,.topActions .statusPill{min-height:42px;flex:1 1 150px;justify-content:center}.grid{grid-template-columns:1fr}.panel{padding:18px;border-radius:18px}.dashboardHero{grid-template-columns:1fr;min-height:0;padding:18px;margin-bottom:8px}.heroCopy h2{font-size:25px}.heroActions{gap:8px}.dashboardStats{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin-bottom:12px}.history{grid-template-columns:1fr;gap:4px}.history span{text-align:left}.info{grid-template-columns:1fr}.calendarHeader{align-items:flex-start;flex-direction:column;gap:10px}.calendarControls{width:100%;justify-content:space-between}.calendarControls strong{min-width:0;text-align:center;white-space:normal}.rechargeProcess,.rechargeProcess.featured{grid-template-columns:1fr;gap:16px}.rechargeProcess.featured .rechargeProcessCopy strong{font-size:21px}.loginPage{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));align-items:stretch}.loginShell{min-height:auto;grid-template-columns:1fr;border-radius:24px}.loginCard{order:1;padding:28px 22px 24px}.loginBrandPanel{order:2;padding:28px 24px;min-height:0}.loginLogoWrap{width:72px;height:72px;border-radius:20px;margin-top:24px}.loginLogoWrap img{width:62px;height:62px}.loginBrandPanel h1{font-size:34px;margin-top:24px}.loginBrandPanel p{font-size:14px}.loginBenefits{margin-top:24px}.loginFormTop h2{font-size:30px}.passwordField input{padding-right:16px}.passwordField button{position:static;transform:none;width:100%;justify-content:center;margin-top:8px}.passwordField button:hover{transform:none}}@media(max-width:430px){main{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}.top button,.heroRechargeButton,form .primaryButton,form>button{width:100%}.dashboardHero{padding:16px;margin-bottom:12px}.dashboardLayout,.homeMain{gap:14px}.dashboardStats{gap:22px 16px;margin-bottom:18px}.heroActions{width:100%}.progressMeter{padding:10px}.progressTrack{height:26px}.heroCopy strong{width:100%;justify-content:center}.calendarBoard{gap:7px}.calendarCell{border-radius:9px}.dayCircle{width:24px;height:24px;font-size:11px}.rechargeOverlay{align-items:end;padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.rechargeProcess.featured{border-radius:22px;padding:20px 16px 16px}.rechargeProcess.featured .rechargeAnimation{width:86px;height:86px}.rechargeMeta span,.rechargeOverlayAction{width:100%;text-align:center}.dateTimeInput{padding-left:11px;padding-right:8px;font-size:15px}.loginCard{padding:24px 18px 20px}.loginPage{padding-top:calc(max(14px,env(safe-area-inset-top)) + 54px)}.loginThemeToggle{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right))}.loginBrandPanel{padding:24px 18px}.loginFormTop h2{font-size:28px}.loginBrandPanel h1{font-size:31px}}
