:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#1b2523;background:#f2f0ea;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}.portal-screen{width:min(100%,1060px);min-height:100vh;padding:28px clamp(18px,4vw,52px) 32px;margin:auto}.portal-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-line,.account-chip{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:#f6f3eb;background:#34544b;font-size:.75rem;font-weight:950;letter-spacing:-.08em}.brand-line strong,.account-chip strong{display:block;font-size:.85rem}.kicker{margin:0 0 7px;color:#758178;font-size:.68rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.brand-line .kicker{margin-bottom:2px}.account-chip{padding:5px 9px 5px 5px;border:1px solid #d8dbd0;border-radius:30px;background:#fbfaf6}.account-chip>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;color:#f6f3eb;background:#34544b;font-weight:850}.account-chip small{display:block;margin-top:2px;color:#7a867f;font-size:.64rem}.account-banner{display:flex;align-items:center;gap:10px;margin-top:35px;padding:11px 13px;border:1px solid #d7dcc8;border-radius:11px;background:#e9edda}.secure-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;color:#516148;background:#d3e49a;font-size:.56rem;font-weight:950}.account-banner div{display:grid;gap:3px}.account-banner strong{font-size:.75rem}.account-banner small{color:#647066;font-size:.72rem}.portal-nav{display:flex;gap:7px;margin-top:30px;padding-bottom:7px;border-bottom:1px solid #d9dad1;overflow-x:auto}.portal-nav button{flex:0 0 auto;padding:8px 11px;border:0;border-radius:7px;color:#79847d;background:transparent;font-size:.78rem}.portal-nav button:hover,.portal-nav button.active{color:#172422;background:#e2f25b;font-weight:850}.page-heading{padding:42px 0 27px}.page-heading h1{max-width:700px;margin:0;font-size:clamp(2.45rem,7vw,5.4rem);line-height:.88;letter-spacing:-.075em}.vehicle-card{padding:clamp(22px,4vw,38px);border-radius:21px;color:#f6f3eb;background:#34544b}.card-topline,.vehicle-heading,.vehicle-footer{display:flex;align-items:center;justify-content:space-between;gap:15px}.vehicle-card .kicker{color:#b4c4b8}.live-pill,.due-pill{color:#172422;background:#e2f25b;border-radius:999px;font-size:.65rem;font-weight:850;padding:6px 8px;white-space:nowrap}.live-pill i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:#44725b}.vehicle-heading{align-items:start;margin-top:18px}.vehicle-heading h2{margin:0;font-size:clamp(1.9rem,5vw,3.5rem);line-height:.95;letter-spacing:-.065em}.vehicle-heading p{margin:10px 0 0;color:#c0d0c3;font-size:.8rem}.car-mark{display:grid;place-items:center;width:47px;height:47px;border:1px solid #7caa92;border-radius:14px;color:#172422;background:#91b5a4;font-weight:950}.map-area{display:flex;align-items:center;gap:12px;min-height:145px;margin-top:28px;padding:20px;border:1px dashed #83a693;border-radius:14px;background:#2f5145}.map-area>div{display:grid;gap:6px}.map-area strong{font-size:.85rem}.map-area small{max-width:400px;color:#b8cabe;font-size:.73rem;line-height:1.4}.map-crosshair{display:grid;place-items:center;width:35px;height:35px;border:1px solid #a7c8b2;border-radius:50%;color:#e2f25b;font-size:1.2rem}.vehicle-footer{margin-top:18px;color:#b4c4b8;font-size:.72rem}.vehicle-footer strong{color:#f6f3eb;font-size:.72rem}.vehicle-footer button{margin-left:auto;padding:0;border:0;color:#e2f25b;background:transparent;font-size:.72rem;font-weight:850}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}.billing-card,.service-card,.activity-card,.list-panel,.support-panel{border-radius:16px;background:#fbfaf6}.billing-card,.service-card{display:flex;flex-direction:column;min-height:210px;padding:22px}.billing-card .kicker,.service-card .kicker{margin:0}.billing-card .card-topline{align-items:start}.due-pill{color:#80623e;background:#f6ebcd}.amount{margin-top:24px;font-size:2.1rem;letter-spacing:-.07em}.billing-card p,.service-card p{margin:7px 0 0;color:#7a867f;font-size:.75rem}.outline-button{align-self:start;margin-top:auto;padding:9px 11px;border:1px solid #bdc8b8;border-radius:8px;color:#34544b;background:transparent;font-size:.72rem;font-weight:850}.service-card>strong{margin-top:27px;font-size:1.28rem;letter-spacing:-.045em}.service-line{display:flex;align-items:center;gap:8px;margin-top:auto;color:#56675d;font-size:.75rem}.done-dot{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:#44725b;background:#dfefdf;font-size:.5rem;font-weight:950}.activity-card,.list-panel{margin-top:13px;padding:22px}.section-title{display:flex;align-items:start;justify-content:space-between;gap:15px}.section-title h2{margin:0;font-size:1.35rem;letter-spacing:-.05em}.private-label{color:#849086;font-size:.68rem}.activity-list{display:grid;gap:0;margin-top:22px}.activity-list>div{display:grid;grid-template-columns:15px 1fr;gap:12px;min-height:52px}.activity-dot{position:relative;width:9px;height:9px;margin-top:4px;border:2px solid #aab9aa;border-radius:50%;background:#fbfaf6}.activity-dot:after{position:absolute;top:7px;left:2px;width:1px;height:44px;content:"";background:#d9ddd2}.activity-list>div:last-child .activity-dot:after{display:none}.activity-dot.current{border-color:#769650;background:#e2f25b}.activity-list p{display:grid;gap:4px;margin:0}.activity-list strong{font-size:.78rem}.activity-list small{color:#7a867f;font-size:.7rem}.list-panel>.vehicle-card{margin-top:22px}.privacy-note{display:block;margin:13px 0 0;color:#7a867f;font-size:.72rem;line-height:1.5}.invoice-list{display:grid;margin-top:22px}.invoice-list>div{display:grid;grid-template-columns:35px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e3e4dc}.invoice-list>div:last-child{border-bottom:0}.invoice-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:#80623e;background:#f6ebcd;font-size:.57rem;font-weight:950}.invoice-icon.paid{color:#44725b;background:#dfefdf}.invoice-list p{display:grid;gap:4px;margin:0}.invoice-list strong{font-size:.78rem}.invoice-list small{color:#7a867f;font-size:.68rem}.invoice-list b{font-size:.76rem}.invoice-status{color:#80623e;font-size:.65rem;font-weight:850}.paid-text{color:#44725b}.support-panel{max-width:680px;padding:clamp(24px,6vw,48px)}.support-mark{display:grid;place-items:center;width:45px;height:45px;margin-bottom:25px;border-radius:50%;color:#172422;background:#e2f25b;font-weight:900}.support-panel h2{max-width:480px;margin:0;font-size:clamp(2rem,5vw,3.7rem);line-height:.94;letter-spacing:-.065em}.support-panel>p{max-width:440px;margin:17px 0 25px;color:#6f7d74;line-height:1.5}.support-panel textarea{display:block;width:100%;min-height:112px;padding:12px;border:1px solid #d4d8cd;border-radius:9px;outline:0;resize:vertical;color:#1b2523;background:#f2f0ea;font-size:.8rem}.support-panel textarea:focus{border-color:#7e9b52;box-shadow:0 0 0 3px #dfeab5}.dark-button{display:flex;justify-content:space-between;width:100%;margin-top:10px;padding:13px 14px;border:0;border-radius:9px;color:#f6f3eb;background:#34544b;font-size:.78rem;font-weight:850}footer{display:flex;justify-content:space-between;gap:15px;margin-top:42px;color:#8a958e;font-size:.67rem}.signal-waiting{color:#6e6652;background:#f4e7c2}.signal-waiting i{background:#b88742}.signal-live i{background:#44725b}.vehicle-list{display:grid;gap:13px;margin-top:22px}.vehicle-list .vehicle-card{margin-top:0}.account-actions{display:flex;align-items:center;gap:10px}.logout-button{padding:8px 10px;border:1px solid #c9d0c5;border-radius:8px;color:#34544b;background:transparent;font-size:.72rem;font-weight:850}.empty-panel{padding:clamp(24px,5vw,42px);border:1px dashed #c5cec0;border-radius:17px;background:#fbfaf6}.empty-panel h2{max-width:450px;margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:.95;letter-spacing:-.06em}.empty-panel p{max-width:480px;margin:15px 0 0;color:#6f7d74;line-height:1.5}.portal-auth-shell{display:grid;place-items:center;min-height:100vh;padding:24px;background:#f2f0ea}.portal-auth-card{width:min(100%,510px);padding:clamp(25px,6vw,52px);border:1px solid #d9ddd3;border-radius:22px;background:#fbfaf6;box-shadow:0 20px 55px #30453c12}.portal-auth-card h1{max-width:430px;margin:0;font-size:clamp(2.5rem,8vw,4.8rem);line-height:.9;letter-spacing:-.08em}.auth-kicker{margin-top:58px}.auth-copy{max-width:410px;margin:18px 0 25px;color:#6f7d74;line-height:1.5}.auth-form{display:grid;gap:13px}.auth-form label{display:grid;gap:6px;color:#4d5b53;font-size:.72rem;font-weight:850}.auth-form input{width:100%;padding:12px;border:1px solid #ccd4c8;border-radius:8px;outline:0;color:#172422;background:#f2f0ea}.auth-form input:focus{border-color:#7e9b52;box-shadow:0 0 0 3px #dfeab5}.auth-form .dark-button{margin-top:5px}.form-error{margin:0;padding:9px 10px;border-radius:8px;color:#8c4038;background:#f8e1d9;font-size:.75rem}.change-card>.secure-icon{margin-bottom:20px}.loading-state{color:#526159;font-size:.82rem}@media(max-width:600px){.portal-header{align-items:start}.account-chip div{display:none}.account-chip{padding:5px}.account-chip>span{width:32px;height:32px}.overview-grid{grid-template-columns:1fr}.vehicle-footer{align-items:start;flex-wrap:wrap}.invoice-list>div{grid-template-columns:32px minmax(0,1fr) auto}.invoice-status{grid-column:2}.account-actions{align-items:start}footer{flex-direction:column}}
