:root{--navy:#102238;--ink:#17243a;--muted:#64748b;--green:#05845d;--green-dark:#036448;--green-soft:#ecf8f3;--paper:#fff;--canvas:#f4f7fb;--line:#dfe7ef}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}.auth-page,.welcome{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 80% 10%,#0d7457 0,#06283a 39%,#061a2c 100%)}.auth-card,.hero-card{width:min(100%,600px);padding:44px;border-radius:24px;background:#fff;box-shadow:0 24px 80px #0004}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none}.brand span,.loading-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#0ab67f;color:#fff;font-weight:850;font-size:13px}.brand.compact{font-size:15px}.eyebrow,.kicker{margin:0;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.1em}.auth-card h1,.hero-card h1{font-size:clamp(30px,6vw,46px);line-height:1.08;margin:28px 0 16px}.auth-card p,.lead,.muted{color:var(--muted);line-height:1.6}.button,.primary-button{display:inline-block;border:0;border-radius:10px;background:var(--green);color:#fff;padding:14px 18px;font-size:16px;font-weight:750;text-decoration:none;cursor:pointer;margin-top:18px}.small{font-size:13px;color:var(--muted);line-height:1.5;margin-top:20px}.auth-card{width:min(100%,460px)}form{display:grid;grid-gap:8px;gap:8px;margin-top:24px}label{font-weight:750;font-size:14px}input{border:1px solid #b9c8dc;font-size:16px}.notice,.pending,input{border-radius:10px;padding:14px}.notice,.pending{margin-top:18px;background:#fff7df;color:#805500;line-height:1.5}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);justify-content:space-between;padding:0 max(24px,6vw)}.portal-label,.topbar{display:flex;align-items:center}.portal-label{gap:8px;color:var(--muted);font-size:14px;font-weight:650}.portal-label i{width:8px;height:8px;border-radius:50%;background:#0ab67f;box-shadow:0 0 0 4px #e8f9f1}.shell{width:min(1180px,100%);margin:0 auto;padding:44px 24px 72px}.welcome-panel{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:28px}.welcome-panel h1{font-size:clamp(32px,5vw,48px);letter-spacing:-.045em;line-height:1.05;margin:9px 0 12px}.welcome-copy{margin:0;color:var(--muted);max-width:610px;line-height:1.6}.vehicle-badge{min-width:200px;background:var(--navy);color:#fff;border-radius:16px;padding:18px 20px;display:grid;grid-gap:5px;gap:5px}.vehicle-badge span{font-size:11px;letter-spacing:.09em;color:#a9c5d8;font-weight:800}.vehicle-badge strong{font-size:23px;letter-spacing:-.02em}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.stat-card,.surface{background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 30px rgba(16,34,56,.045)}.stat-card{padding:20px;border-radius:15px;min-height:148px;display:flex;flex-direction:column}.stat-card p{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 13px}.stat-card>strong{font-size:26px;line-height:1.05;letter-spacing:-.035em}.stat-card small{margin-top:auto;padding-top:11px;font-size:12px;color:var(--muted);line-height:1.4}.stat-card.primary{background:linear-gradient(135deg,#0a7657,#034e45);border-color:#0a7657;color:#fff}.stat-card.primary p,.stat-card.primary small{color:#ccede0}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.85fr);grid-gap:18px;gap:18px;margin-top:18px}.surface{border-radius:18px;padding:24px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.section-heading h2,.surface h2{font-size:20px;letter-spacing:-.025em;margin:7px 0 0}.score{text-align:right}.score strong{display:block;font-size:25px;letter-spacing:-.04em}.score span{color:var(--muted);font-size:12px}.progress-track{height:9px;border-radius:9px;background:#e9eef4;overflow:hidden;margin:23px 0 20px}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0aa877,#05845d)}.payout-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:12px}.payout-summary div{background:#f7fafc;border-radius:12px;padding:14px;display:grid;grid-gap:6px;gap:6px}.payout-summary span{font-size:12px;color:var(--muted)}.payout-summary strong{font-size:18px;letter-spacing:-.02em}.payment-list{border-top:1px solid var(--line)}.payment-row{display:grid;grid-template-columns:34px 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.status-icon{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-weight:850;font-size:14px}.status-icon.paid{background:#e6f7ef;color:#047151}.payment-amount,.payment-date{display:grid;grid-gap:3px;gap:3px}.payment-amount strong,.payment-date strong{font-size:14px}.payment-amount span,.payment-date span{font-size:12px;color:var(--muted)}.payment-amount{text-align:right}.right-column{display:grid;grid-gap:18px;gap:18px;align-content:start}.insight-card{background:linear-gradient(135deg,#10304a,#0b544b);border-color:#10304a;color:#fff}.insight-card .kicker{color:#9fe3c8}.insight-card h2{font-size:25px}.insight-card p:last-child{margin:13px 0 0;color:#d3e4ec;line-height:1.55;font-size:14px}.agreement-list{margin-top:17px;border-top:1px solid var(--line)}.agreement-list>div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.agreement-list span,.agreement-list>div>strong{display:grid;grid-gap:4px;gap:4px;font-size:14px}.agreement-list small{font-size:12px;font-weight:500;color:var(--muted)}.agreement-list>div>strong{text-align:right}.privacy-card{display:flex;gap:14px;background:#f7fbff}.privacy-symbol{flex:0 0 38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#dff4eb;color:#087451;font-weight:850}.privacy-card h2{font-size:17px}.privacy-card p:last-child{font-size:13px;color:var(--muted);line-height:1.55;margin:8px 0 0}.recent-card{margin-top:18px}.subtle-chip{padding:7px 10px;background:#f0f5f9;border-radius:999px;color:var(--muted);font-size:12px;font-weight:700}.insight-strip{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:20px}.insight-strip>div{padding:16px;border-radius:12px;background:#f8fafc;display:grid;grid-gap:7px;gap:7px}.insight-strip strong{font-size:15px}.insight-strip span{font-size:13px;color:var(--muted);line-height:1.5}.empty-state{margin-top:18px;padding:20px;border:1px dashed #c3d1df;border-radius:12px;color:var(--muted);line-height:1.55;font-size:14px}.loading{min-height:100vh;display:grid;place-items:center}.loading-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;max-width:430px;text-align:center;box-shadow:0 12px 40px #13263b14}.loading-card .loading-mark{margin:0 auto 18px}.loading-card h1{font-size:21px;letter-spacing:-.02em}@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.recent-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.shell{padding:28px 16px 48px}.topbar{height:68px;padding:0 16px}.portal-label{font-size:12px}.welcome-panel{display:grid;align-items:start}.vehicle-badge{width:100%;min-width:0}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:132px;padding:16px}.stat-card>strong{font-size:21px}.surface{padding:18px}.payment-row{grid-template-columns:29px 1fr;gap:10px}.payment-amount{grid-column:2;text-align:left}.section-heading{gap:10px}.score strong{font-size:20px}.insight-strip,.payout-summary{grid-template-columns:1fr}.auth-card,.hero-card{padding:28px}}.topbar-actions{display:flex;align-items:center;gap:16px}.signout-button{border:0;background:transparent;color:#53677e;font-weight:750;font-size:13px;cursor:pointer;padding:8px}.signout-button:hover{color:var(--green-dark)}.password-field{position:relative}.password-field input{padding-right:48px}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#53677e;display:grid;place-items:center;width:40px;height:40px;cursor:pointer;border-radius:8px}.password-toggle:hover{background:#f1f5f9;color:var(--green-dark)}.password-toggle:focus-visible{outline:2px solid var(--green);outline-offset:1px}.password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:620px){.topbar-actions{gap:7px}}