:root{--navy:#061b45;--navy2:#0a2f67;--blue:#0876ef;--blue2:#19a7ff;--green:#18a94b;--sky:#c9efff;--ink:#0a2e55;--card:#ffffffee;--line:#cfe5f5;--shadow:0 14px 35px rgba(20,88,135,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#9bdcff 0,#e9f8ff 45%,#f5fbff 100%);min-height:100vh}body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(226,248,255,.96),rgba(226,248,255,.78)),url('/assets/images/hero/hero-vehicles.jpg') center/cover no-repeat;opacity:.24}body:after{content:"";position:fixed;z-index:-1;width:420px;height:140px;right:-80px;top:105px;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(18px)}a{text-decoration:none;color:inherit}.topbar{height:74px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);display:flex;align-items:center;gap:16px;padding:8px 18px;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);box-shadow:0 7px 24px rgba(28,89,129,.12)}.brand img{width:62px;height:58px;object-fit:contain;border-radius:10px}.top-title{font-size:21px;font-weight:900;flex:1;line-height:1.1}.eyebrow{display:block;font-size:9px;letter-spacing:1.4px;color:#1877d2;margin-bottom:3px}.top-right{display:flex;gap:9px;align-items:center;font-weight:800}.agent-name{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-link{padding:9px 12px;border:1px solid #a9d1ef;border-radius:10px;color:#0757ad;background:#fff}.logout{background:#e52f3f;color:#fff;padding:10px 15px;border-radius:10px}.shell{display:flex;min-height:calc(100vh - 74px)}.sidebar{width:250px;background:linear-gradient(180deg,#061b45,#092f72 65%,#061b45);color:#fff;padding:16px 12px;flex-shrink:0;box-shadow:12px 0 30px rgba(2,28,67,.12)}.side-brand{text-align:center;border-bottom:1px solid #ffffff22;padding:2px 5px 18px;margin-bottom:12px}.side-brand img{width:112px;height:82px;object-fit:contain;background:#07152d;border-radius:12px;padding:4px}.side-brand b{font-size:11px;line-height:1.35;display:block;margin-top:8px}.side-brand small{display:block;color:#a9d6ff;margin-top:5px;font-size:10px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:12px;border-radius:10px;color:#e9f3ff;font-weight:800;font-size:13px;display:flex;align-items:center;gap:9px;transition:.15s}.sidebar nav a:hover{background:#0b64ef}.sidebar nav a.active{background:linear-gradient(90deg,#0b73ef,#168ff8);box-shadow:0 7px 18px rgba(7,117,239,.25)}.nav-icon{width:22px;text-align:center;font-size:16px}.sidebar nav .logout-link{color:#ffb0b6;margin-top:8px}.side-service{margin-top:18px;border:1px solid #ffffff22;background:#ffffff0b;border-radius:12px;padding:12px;font-size:10px;color:#cde7ff}.side-service strong,.side-service span,.side-service a{display:block}.side-service a{color:#7fe5a2;font-size:13px;font-weight:900;margin-top:7px}.content{flex:1;padding:22px;max-width:1550px;margin:auto;width:100%}.hero{background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(234,249,255,.9));border:1px solid #fff;border-radius:18px;padding:22px;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"DSR";position:absolute;right:22px;bottom:-26px;font-size:105px;font-weight:900;color:#0876ef0b}.hero h1{margin:0 0 8px;font-size:28px}.muted{color:#55708a}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0}.kpi{background:var(--card);border:1px solid #fff;border-radius:15px;padding:17px;box-shadow:var(--shadow)}.kpi strong{display:block;font-size:27px;margin-bottom:5px;color:#075db6}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.card{background:var(--card);border:1px solid #fff;border-radius:16px;padding:18px;box-shadow:var(--shadow)}.wide{grid-column:1/-1}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px;border-bottom:1px solid #dcebf5;text-align:left;font-size:13px}.table th{color:#49657e;background:#f4fbff}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#fff2b5;font-weight:900;font-size:11px}.badge.green{background:#d6f7df;color:#087a2c}.badge.red{background:#ffd9dc;color:#a50d1b}.btn{border:0;border-radius:10px;padding:11px 15px;background:var(--blue);color:#fff;font-weight:900;cursor:pointer;display:inline-block}.btn.green{background:var(--green)}.btn.dark{background:var(--navy)}.btn.light{background:#fff;color:var(--blue);border:1px solid #9bc7ef}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-grid label{font-size:12px;font-weight:900}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:11px;margin-top:5px;border:1px solid #b9d5ea;border-radius:9px;background:#fff}.form-grid textarea{min-height:100px}.full{grid-column:1/-1}.steps{display:flex;gap:5px;overflow:auto;margin:14px 0}.step{min-width:105px;padding:9px;text-align:center;border-radius:9px;background:#e7f1fa;font-size:11px;font-weight:900}.step.done{background:#c9f2d5;color:#087a2c}.step.current{background:#0b64ef;color:#fff}.drop{border:2px dashed #5ea8e6;border-radius:14px;padding:25px;text-align:center;background:#effaff}.note{background:#fff7cf;border-left:5px solid #f59e0b;padding:12px;border-radius:8px}.note.error{border-left-color:#ef3340;background:#fff0f1}.note.success{border-left-color:#16a34a;background:#e7f8ec}.msg{padding:12px;border-radius:12px;background:#eff8ff;margin:8px 0}.msg.admin{background:#e5f7e8}.profile{display:flex;gap:18px;align-items:center}.profile img{width:100px;height:100px;border-radius:50%;object-fit:cover;background:#fff}footer{text-align:center;padding:18px;color:#4c6880;font-size:12px}label{display:block;margin-bottom:12px;font-size:12px;font-weight:900}label input,label select,label textarea{display:block;width:100%;padding:11px;margin-top:5px;border:1px solid #b9d5ea;border-radius:9px;background:#fff}
/* DSR agent login and portal styles */
.login-page{min-height:100vh;background:#071b3f}.login-page:before{opacity:1;background:linear-gradient(90deg,rgba(4,24,61,.82),rgba(4,24,61,.35)),url('/assets/images/hero/hero-vehicles.jpg') center/cover no-repeat}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.login-visual{position:relative;min-height:100vh;display:flex;align-items:flex-end;padding:50px}.visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,53,.15),rgba(4,20,53,.82))}.visual-content{position:relative;z-index:1;max-width:650px;color:#fff}.login-logo{width:210px;height:150px;object-fit:contain;background:#07152d;border-radius:18px;padding:8px;margin-bottom:18px}.visual-pill{display:inline-block;background:#0a76ee;color:#fff;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.7px}.visual-content h1{font-size:46px;line-height:1.02;margin:18px 0 12px}.visual-content p{font-size:17px;line-height:1.6;color:#dcefff;max-width:600px}.visual-points{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.visual-points span{background:#ffffff18;border:1px solid #ffffff32;padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800}.visual-footer{border-top:1px solid #ffffff32;padding-top:15px;color:#cbe8ff;font-size:12px}.visual-footer b{font-size:16px;color:#fff}.login-panel{background:linear-gradient(180deg,#f8fdff,#e8f8ff);display:flex;align-items:center;justify-content:center;padding:35px}.login-card{width:min(470px,100%);background:#ffffffed;border:1px solid #fff;border-radius:24px;padding:30px;box-shadow:0 24px 60px rgba(0,35,75,.25)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.login-brand img{width:72px;height:60px;object-fit:contain;background:#07152d;border-radius:10px}.login-brand b{display:block;font-size:14px;color:#073b78}.login-brand small{display:block;color:#66809a;margin-top:3px}.login-card h2{font-size:32px;margin:10px 0 5px;color:#061b45}.login-card form{margin-top:20px}.login-row{display:flex;justify-content:space-between;align-items:center;font-size:12px}.check{display:flex;gap:7px;align-items:center;font-weight:700}.check input{width:auto;margin:0}.login-row a{color:#0876ef;font-weight:900}.login-btn{width:100%;font-size:14px;padding:14px;margin-top:8px;background:linear-gradient(90deg,#0866ee,#159cf4);box-shadow:0 9px 20px rgba(8,118,239,.24)}.login-trust{display:flex;justify-content:space-around;border-top:1px solid #dcebf5;margin-top:20px;padding-top:15px;color:#2b638f;font-size:11px;font-weight:900}.tiny{font-size:11px;margin-top:18px}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.sidebar{width:220px}.login-shell{grid-template-columns:1fr}.login-visual{min-height:48vh}.login-panel{min-height:52vh}.visual-content h1{font-size:36px}}
@media(max-width:720px){.shell{display:block}.sidebar{width:100%;padding:10px}.side-brand{display:flex;align-items:center;gap:10px;text-align:left}.side-brand img{width:65px;height:55px}.sidebar nav{display:flex;overflow:auto}.sidebar nav a{white-space:nowrap;font-size:12px}.content{padding:12px}.grid,.form-grid{grid-template-columns:1fr}.kpis{grid-template-columns:1fr 1fr}.top-title{font-size:16px}.top-right .agent-name,.home-link{display:none}.login-visual{padding:25px;min-height:54vh}.login-panel{padding:16px}.login-card{padding:22px}.visual-content h1{font-size:31px}.login-logo{width:170px;height:115px}}
.dsr-global-nav{position:fixed;right:18px;bottom:18px;z-index:9999;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;filter:drop-shadow(0 7px 16px rgba(0,30,70,.18))}.dsr-nav-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border-radius:10px;border:1px solid #9cc8e8;background:rgba(255,255,255,.96);color:#063d7b;font:800 12px/1 Arial,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 5px 15px rgba(0,35,70,.12)}.dsr-dashboard{background:#063f91;color:#fff;border-color:#063f91}@media(max-width:600px){.dsr-global-nav{right:10px;bottom:10px}.dsr-nav-btn{min-height:36px;padding:8px 10px;font-size:11px}}
.star-card{margin:16px 0;background:linear-gradient(135deg,#e8f7ff,#f5fbff)}.stars{color:#f3a300}.btn{display:inline-block}

.quick-agent-progress{margin-bottom:18px;background:linear-gradient(135deg,#ffffff,#f2fbff);border:1px solid #c7e1ee}.quick-agent-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.quick-agent-head h2{margin:0}.quick-agent-head p{margin:4px 0 0;color:#6b8191}.quick-agent-track{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.quick-agent-step{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #dbe9f0;border-radius:9px;background:#f8fbfd}.quick-agent-step span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#dfe9ee;font-size:11px;font-weight:900;flex:0 0 25px}.quick-agent-step b{font-size:10px}.quick-agent-step.done span{background:#10a451;color:#fff}.quick-agent-step.current{border-color:#7bb9e2;background:#eef8ff}.quick-agent-step.current span{background:#075bd0;color:#fff}.quick-agent-current{margin-top:10px;padding:9px 11px;border-radius:8px;background:#eaf7ff;font-size:10px}@media(max-width:700px){.quick-agent-head{align-items:flex-start;flex-direction:column}.quick-agent-track{grid-template-columns:1fr}.quick-agent-step:nth-child(n+3){display:none}}

.quick-agent-progress .journey-line{--journey-pos:0%}.quick-agent-progress[data-order-stage="order_submitted"] .journey-line{--journey-pos:0%}.quick-agent-progress[data-order-stage="accepted"] .journey-line{--journey-pos:11%}.quick-agent-progress[data-order-stage="agent_en_route"] .journey-line{--journey-pos:22%}.quick-agent-progress[data-order-stage="verification_submitted"] .journey-line{--journey-pos:33%}.quick-agent-progress[data-order-stage="awaiting_payment"] .journey-line{--journey-pos:44%}.quick-agent-progress[data-order-stage="payment_processing"] .journey-line{--journey-pos:55%}.quick-agent-progress[data-order-stage="payment_paid"] .journey-line{--journey-pos:66%}.quick-agent-progress[data-order-stage="awaiting_certificate"] .journey-line{--journey-pos:77%}.quick-agent-progress[data-order-stage="certificate_generated"] .journey-line{--journey-pos:88%}.quick-agent-progress[data-order-stage="completed"] .journey-line{--journey-pos:100%}
@media(max-width:700px){.quick-agent-progress .panel-head{flex-wrap:wrap}.quick-agent-progress .panel-head .btn{font-size:9px}.quick-agent-progress .vehicle-journey{padding-left:0;padding-right:0}}

.quick-agent-progress.stage-changed{animation:dsrStageFlash .75s ease 2;box-shadow:0 0 0 3px rgba(8,118,239,.12),0 10px 30px rgba(8,118,239,.16)}
@keyframes dsrStageFlash{50%{transform:scale(1.006);background:#f4fbff}}

.quick-agent-progress[data-order-stage="order_submitted"] .journey-line{--journey-pos:0%}.quick-agent-progress[data-order-stage="accepted"] .journey-line{--journey-pos:10%}.quick-agent-progress[data-order-stage="agent_en_route"] .journey-line{--journey-pos:20%}.quick-agent-progress[data-order-stage="agent_arrived"] .journey-line{--journey-pos:30%}.quick-agent-progress[data-order-stage="verification_submitted"] .journey-line{--journey-pos:40%}.quick-agent-progress[data-order-stage="awaiting_payment"] .journey-line{--journey-pos:50%}.quick-agent-progress[data-order-stage="payment_processing"] .journey-line{--journey-pos:60%}.quick-agent-progress[data-order-stage="payment_paid"] .journey-line{--journey-pos:70%}.quick-agent-progress[data-order-stage="awaiting_certificate"] .journey-line{--journey-pos:80%}.quick-agent-progress[data-order-stage="certificate_generated"] .journey-line{--journey-pos:90%}.quick-agent-progress[data-order-stage="completed"] .journey-line{--journey-pos:100%}

/* DSR final workflow stage mapping — preserves existing quick-journey dimensions */
.quick-agent-progress[data-order-stage="agent_arrived"] .journey-line,.quick-order-progress[data-order-stage="agent_arrived"] .journey-line{--journey-pos:27%;}
.quick-agent-progress[data-order-stage="verification_ongoing"] .journey-line,.quick-order-progress[data-order-stage="verification_ongoing"] .journey-line{--journey-pos:36%;}
.quick-agent-progress[data-order-stage="documents_uploaded"] .journey-line,.quick-order-progress[data-order-stage="documents_uploaded"] .journey-line{--journey-pos:45%;}
.quick-agent-progress[data-order-stage="verification_done"] .journey-line,.quick-order-progress[data-order-stage="verification_done"] .journey-line{--journey-pos:55%;}
.quick-agent-progress[data-order-stage="awaiting_payment"] .journey-line,.quick-order-progress[data-order-stage="awaiting_payment"] .journey-line{--journey-pos:64%;}
.quick-agent-progress[data-order-stage="payment_paid"] .journey-line,.quick-order-progress[data-order-stage="payment_paid"] .journey-line{--journey-pos:73%;}
.quick-agent-progress[data-order-stage="awaiting_certificate"] .journey-line,.quick-order-progress[data-order-stage="awaiting_certificate"] .journey-line{--journey-pos:82%;}
.quick-agent-progress[data-order-stage="certificate_generated"] .journey-line,.quick-order-progress[data-order-stage="certificate_generated"] .journey-line{--journey-pos:91%;}
.quick-agent-progress[data-order-stage="completed"] .journey-line,.quick-order-progress[data-order-stage="completed"] .journey-line{--journey-pos:100%;}


/* DSR dashboard single next-stage control */
.dsr-dashboard-current-order{overflow:hidden}
.dsr-dashboard-journey-row{position:relative;display:flex;align-items:center;gap:18px;min-height:86px;padding:12px 0}
.dsr-dashboard-journey-row .journey-line{flex:1;min-width:180px}
.dsr-dashboard-journey-row .journey-label{min-width:145px}
.dsr-dashboard-action-form{margin:0;flex:0 0 auto}
.dsr-next-stage-btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:205px;min-height:54px;padding:10px 18px;border:2px solid #35bfff;border-radius:14px;background:linear-gradient(135deg,#063b92,#0876ef 52%,#043a86);color:#fff;text-decoration:none;font-size:11px;font-weight:1000;letter-spacing:.35px;text-transform:uppercase;cursor:pointer;box-shadow:0 0 8px rgba(0,168,255,.75),0 0 20px rgba(0,118,239,.55),inset 0 0 14px rgba(255,255,255,.12);animation:dsrNextPulse 1.8s ease-in-out infinite}
.dsr-next-stage-btn b{font-size:17px;color:#76f7b2;text-shadow:0 0 8px rgba(118,247,178,.9)}
.dsr-next-stage-btn span:last-child{position:relative;z-index:2}
.dsr-next-stage-btn:hover{transform:translateY(-1px);box-shadow:0 0 10px rgba(0,214,255,.95),0 0 28px rgba(0,118,239,.8),inset 0 0 16px rgba(255,255,255,.16)}
.dsr-btn-glow{position:absolute;inset:-7px;border-radius:17px;background:linear-gradient(90deg,transparent,rgba(74,245,255,.48),transparent);filter:blur(5px);z-index:-1;animation:dsrBtnSweep 2.2s linear infinite}
.dsr-open-verification{background:linear-gradient(135deg,#006d3a,#10a451 55%,#087b42);border-color:#63f5a0;box-shadow:0 0 8px rgba(16,164,81,.75),0 0 22px rgba(16,164,81,.55),inset 0 0 14px rgba(255,255,255,.12)}
.dsr-open-verification b{color:#fff}
@keyframes dsrNextPulse{0%,100%{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.14);transform:scale(1.018)}}
@keyframes dsrBtnSweep{0%{transform:translateX(-90%);opacity:.15}45%{opacity:.75}100%{transform:translateX(90%);opacity:.15}}
@media(max-width:900px){.dsr-dashboard-journey-row{flex-wrap:wrap}.dsr-dashboard-journey-row .journey-line{flex-basis:100%}.dsr-dashboard-journey-row .journey-label{min-width:0;flex:1}.dsr-next-stage-btn{min-width:190px}}
@media(max-width:600px){.dsr-dashboard-journey-row{display:grid;grid-template-columns:1fr}.dsr-dashboard-journey-row .journey-line{min-width:0}.dsr-dashboard-journey-row .journey-label{width:100%}.dsr-dashboard-action-form,.dsr-next-stage-btn{width:100%}}

.sidebar .nav-group{margin:2px 0}.sidebar .nav-group summary{list-style:none;cursor:pointer;padding:12px;border-radius:10px;color:#e9f3ff;font-weight:800;font-size:13px;display:flex;align-items:center;gap:9px}.sidebar .nav-group summary::-webkit-details-marker{display:none}.sidebar .nav-group summary:after{content:'▾';margin-left:auto;font-size:9px;opacity:.75}.sidebar .nav-group[open] summary:after{content:'▴'}.sidebar .nav-group[open] summary,.sidebar .nav-group summary:hover{background:#0b64ef;color:#fff}.sidebar .nav-group>.sub{padding-left:30px;font-size:12px}.sidebar .nav-group>.sub .nav-icon{font-size:12px}

/* DSR CUSTOMER CALL CONTACT — additive, shown only after agent accepts an order */
.dsr-agent-customer-call,.dsr-agent-full-call{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0;padding:12px 14px;border:1px solid #b9dced;border-radius:14px;background:linear-gradient(135deg,#f7fcff,#eaf7ff);box-shadow:0 6px 18px rgba(0,74,120,.08)}
.dsr-agent-customer-call-info,.dsr-agent-full-call>div{display:flex;align-items:center;gap:10px;min-width:0}.dsr-agent-customer-call-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0b6fd3;color:#fff;font-size:20px;font-weight:900;flex:0 0 38px}.dsr-agent-customer-call small,.dsr-agent-full-call small{display:block;color:#60798a;font-size:9px;font-weight:900;letter-spacing:.7px}.dsr-agent-customer-call strong,.dsr-agent-full-call strong{display:block;color:#063b68;font-size:15px;letter-spacing:.2px}.dsr-agent-call-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:9px 15px;border-radius:11px;background:#12a84b;color:#fff!important;text-decoration:none!important;font-weight:900;font-size:11px;white-space:nowrap;box-shadow:0 5px 14px rgba(18,168,75,.22)}.dsr-agent-call-btn:hover{filter:brightness(.96);transform:translateY(-1px)}
@media(max-width:600px){.dsr-agent-customer-call,.dsr-agent-full-call{align-items:stretch}.dsr-agent-customer-call-info,.dsr-agent-full-call>div{flex:1}.dsr-agent-call-btn{width:100%}}
