:root{--bg:#edf1f5;--panel:#fff;--ink:#17202b;--muted:#667085;--line:#d8dee7;--brand:#b11e33;--dark:#111923;--blue:#155eef;--orange:#b25e09;--green:#16794f;--red:#b42318;--purple:#7a5af8;--shadow:0 8px 25px rgba(17,25,35,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}h2{margin-top:0}
.topbar{height:72px;background:var(--dark);color:#fff;display:flex;align-items:center;padding:10px 18px;gap:14px;position:sticky;top:0;z-index:30}.topbar img{width:70px;height:48px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}.topbar h1{font-size:19px;margin:0}.topbar small{color:#cbd5e1}.userbox{margin-left:auto;display:flex;align-items:center;gap:10px}.identity{text-align:right}.identity b,.identity small{display:block}.alert-button{position:relative}.badge{position:absolute;top:-7px;right:-7px;background:var(--red);color:#fff;border-radius:20px;min-width:19px;height:19px;padding:1px 5px;font-size:11px;display:flex;align-items:center;justify-content:center}
.nav{height:52px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:4px;padding:6px 14px;position:sticky;top:72px;z-index:29;overflow:auto}.nav button{border:0;background:transparent;font-weight:800;padding:10px 13px;border-radius:8px;color:#475467;cursor:pointer;white-space:nowrap}.nav button.active{color:var(--brand);background:#f8e9ec}
main{max-width:1800px;margin:auto;padding:14px}.view{display:none}.view.active{display:block}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:900;cursor:pointer}.primary{background:var(--brand);color:#fff}.light{background:#fff;border:1px solid var(--line)}.full{width:100%}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;box-shadow:var(--shadow)}
.toolbar{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;margin-bottom:12px}.toolbar input,.toolbar select,.wide-input{border:1px solid var(--line);background:#fff;padding:11px;border-radius:9px}.wide-input{width:100%}
.command-stats,.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;margin-bottom:12px}.metric,.kpi{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;box-shadow:var(--shadow)}.metric strong,.kpi strong{font-size:24px;display:block}.metric span,.kpi span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:900}
.dispatch-layout{display:grid;grid-template-columns:350px 1fr;gap:12px;align-items:start}.queue-panel{background:#dce3ec;border:1px solid #cbd4df;border-radius:13px;padding:10px;position:sticky;top:136px;max-height:calc(100vh - 155px);overflow:auto}.panel-title,.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title h2,.page-title h2{margin:0;font-size:18px}.panel-title small,.page-title small{color:var(--muted)}.queue-count{background:var(--brand);color:#fff;border-radius:20px;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:900}
.queue-card{background:#fff;border-left:6px solid #98a2b3;border-radius:11px;padding:12px;margin-bottom:9px;box-shadow:0 5px 16px rgba(0,0,0,.09);cursor:grab}.queue-card.waiter{border-left-color:var(--red)}.queue-card h3{font-size:20px;margin:5px 0}.queue-top,.job-top{display:flex;justify-content:space-between;gap:8px}.tag{font-size:10px;font-weight:900;padding:4px 7px;border-radius:20px;background:#eef2f6}.queue-card p{font-size:13px;color:#475467}.meta-tags{display:flex;gap:5px;flex-wrap:wrap}
.technician-board{display:grid;grid-template-columns:repeat(4,minmax(225px,1fr));gap:8px}.tech-lane{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;min-height:155px}.tech-lane.dragover{outline:3px solid var(--blue)}.state-band{height:4px;background:var(--green)}.state-band.working{background:var(--blue)}.state-band.parts{background:var(--orange)}.state-band.waiter{background:var(--red)}.tech-head{display:flex;justify-content:space-between;padding:9px 10px;background:#f8fafc;border-bottom:1px solid var(--line)}.tech-head h3{margin:0}.tech-state{font-size:10px;font-weight:900;padding:5px 7px;border-radius:20px;background:#dcfae6;color:var(--green)}.tech-state.working{background:#fff3d6;color:#a15c00}.tech-state.overloaded{background:#fee4e2;color:var(--red)}.tech-jobs{padding:7px}.tech-job{border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:9px;padding:8px;margin-bottom:6px}.tech-job.parts{border-left-color:var(--orange)}.tech-job.waiter{box-shadow:0 0 0 2px #fecdca inset}.job-title{font-size:14px;font-weight:900}.job-note{font-size:11px;color:#475467;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-actions{display:grid;grid-template-columns:1fr auto;gap:6px;margin-top:6px}.job-actions select,.job-actions button{padding:6px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:11px}.drop-hint{text-align:center;padding:15px;border:2px dashed #c7ced8;border-radius:9px;color:var(--muted);font-size:12px}
.card-grid,.advisor-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.tech-card,.advisor-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px;box-shadow:var(--shadow)}.assignment{border:1px solid var(--line);border-left:6px solid var(--purple);border-radius:10px;padding:11px;margin-top:9px}.assignment.waiter{border-left-color:var(--red)}.assignment.parts{border-left-color:var(--blue)}.assignment-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;font-size:12px;margin-top:8px}.assignment-meta b{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.quick-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:9px}.quick-buttons button{padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:800}.eta-row{display:grid;grid-template-columns:1fr auto;gap:6px;margin-top:8px}.eta-row select{padding:8px;border:1px solid var(--line);border-radius:8px}
.spotlight{border:2px solid var(--brand);border-radius:13px;padding:14px;background:#fff8fa;margin-top:12px}.spotlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.spotlight-cell{background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px}.spotlight-cell b{display:block;font-size:10px;text-transform:uppercase;color:var(--muted)}
.parts-row{display:grid;grid-template-columns:90px 1.3fr 1fr 1fr 1.2fr 140px;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--line)}.parts-row input,.parts-row select{padding:8px;border:1px solid var(--line);border-radius:7px}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;text-transform:uppercase;color:var(--muted)}
.management-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}.load-row{display:grid;grid-template-columns:130px 1fr auto;gap:10px;align-items:center;padding:9px;border-bottom:1px solid var(--line)}.load-bar{height:9px;background:#e8edf3;border-radius:20px;overflow:hidden}.load-bar span{display:block;height:100%;background:var(--blue)}
.lounge{background:linear-gradient(145deg,#111827,#253247);color:#fff;min-height:760px;border-radius:16px;padding:28px}.lounge-head{display:flex;gap:18px;align-items:center;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:18px}.lounge-head img{width:135px;background:#fff;padding:8px;border-radius:10px}.lounge-head h2{font-size:32px;margin:0}.lounge-clock{margin-left:auto;text-align:right;font-size:26px;font-weight:900}.lounge-row{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;gap:18px;align-items:center;background:rgba(255,255,255,.09);padding:20px;border-radius:12px;margin-top:11px;font-size:20px}.lounge-row strong{font-size:25px}.eta{text-align:right;font-weight:900}
.login{position:fixed;inset:0;background:linear-gradient(145deg,#111827,#28364b);display:flex;align-items:center;justify-content:center;z-index:100}.loginbox{width:min(430px,calc(100% - 30px));background:#fff;border-radius:18px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.loginbox img{width:130px;display:block;margin:0 auto 18px}.loginbox h2,.loginbox p{text-align:center}.loginbox select,.loginbox input{width:100%;padding:12px;margin:7px 0;border:1px solid var(--line);border-radius:9px}.error{color:var(--red);font-weight:800;font-size:13px}.pilot-note{font-size:12px;color:var(--muted)}
dialog{border:0;border-radius:15px;padding:0;max-width:760px;width:calc(100% - 28px);box-shadow:0 30px 90px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(0,0,0,.52)}.modal-head{background:var(--dark);color:#fff;padding:16px 19px;display:flex;justify-content:space-between}.modal-body{padding:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.field label{display:block;font-size:12px;font-weight:900;color:var(--muted);margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.full-span{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.timeline{max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:9px;padding:8px}.event{padding:8px;border-bottom:1px solid var(--line)}
.drawer{position:fixed;right:14px;top:76px;width:min(390px,calc(100% - 28px));max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 25px 70px rgba(0,0,0,.25);z-index:90;padding:12px}.notification{border-bottom:1px solid var(--line);padding:10px 3px}.toast{position:fixed;right:18px;bottom:18px;background:#101828;color:#fff;padding:13px 16px;border-radius:10px;z-index:80}
@media(max-width:1450px){.technician-board{grid-template-columns:repeat(3,minmax(235px,1fr))}}@media(max-width:1100px){.dispatch-layout{grid-template-columns:290px 1fr}.technician-board{grid-template-columns:repeat(2,minmax(240px,1fr))}.command-stats,.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.dispatch-layout,.management-grid{grid-template-columns:1fr}.queue-panel{position:static;max-height:none}.technician-board{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr 1fr}.toolbar input{grid-column:1/-1}.spotlight-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){main{padding:9px}.command-stats,.kpi-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.parts-row{grid-template-columns:1fr 1fr}.lounge-row{grid-template-columns:1fr 1fr;font-size:15px}.spotlight-grid{grid-template-columns:1fr}}

.recommendation-panel{background:linear-gradient(135deg,#101828,#27364b);color:#fff;border-radius:13px;padding:14px 16px;margin-bottom:12px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;box-shadow:var(--shadow)}
.recommendation-panel h3{margin:0 0 4px}.recommendation-panel p{margin:0;color:#d0d5dd;font-size:13px}.recommendation-reasons{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.reason{font-size:11px;background:rgba(255,255,255,.12);border-radius:20px;padding:5px 8px}
.ro-details{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;font-size:11px}.ro-details b{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.priority-high{background:#fff3d6;color:#a15c00}.priority-emergency{background:#fee4e2;color:#b42318}.accepted{background:#dcfae6;color:#16794f}.pending-acceptance{background:#fff3d6;color:#a15c00}
.assignment-banner{display:flex;justify-content:space-between;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:8px;margin-top:8px}.assignment-banner b{font-size:11px}.accept-button{background:var(--green);color:#fff;border:0;border-radius:8px;padding:8px 11px;font-weight:900;cursor:pointer}
.alert-card{border-left:5px solid var(--brand);background:#fff;border-radius:10px;padding:10px;margin-bottom:8px;box-shadow:var(--shadow)}
.alert-card.assignment{border-left-color:var(--blue)}.alert-card.parts{border-left-color:var(--orange)}.alert-card.completed{border-left-color:var(--green)}

.dispatch-sequence{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.sequence-step{background:#fff;border:1px solid var(--line);border-radius:20px;padding:6px 10px;font-size:11px;font-weight:900}.sequence-step:first-child{background:#fee4e2;color:#b42318}
.dtc-list{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.dtc{font-family:Consolas,monospace;font-size:11px;font-weight:900;background:#101828;color:#fff;padding:4px 7px;border-radius:6px}
.pay-customer{background:#e0f2fe;color:#075985}.pay-warranty{background:#dcfce7;color:#166534}.pay-internal{background:#e5e7eb;color:#374151}
.category-badge{background:#ede9fe;color:#5b21b6}.waiter-banner{background:#fee4e2;color:#b42318;font-weight:950;border-radius:7px;padding:6px 8px;margin:7px 0}
.qualification{font-size:11px;border-radius:20px;padding:5px 8px;font-weight:900}.qualified{background:#dcfae6;color:#16794f}.fallback{background:#fff3d6;color:#a15c00}
.capability-panel{grid-column:1/-1}.capability-row{display:grid;grid-template-columns:140px 1fr auto;gap:10px;align-items:start;padding:10px;border-bottom:1px solid var(--line)}.capability-checks{display:flex;gap:6px;flex-wrap:wrap}.capability-check{display:flex;align-items:center;gap:5px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:11px}.capability-check input{width:16px;height:16px}
@media(max-width:800px){.capability-row{grid-template-columns:1fr}.capability-row .btn{justify-self:start}}

.pilot-banner{background:#fff8e6;border:1px solid #f3cf83;color:#694100;border-radius:10px;padding:10px 12px;margin-bottom:10px;font-size:13px}
.dispatch-layout{grid-template-columns:minmax(390px,42%) 1fr}
.queue-panel{position:sticky;top:136px;max-height:calc(100vh - 155px);background:#d8e0ea}
.queue-card{padding:15px;border-left-width:8px}.queue-card h3{font-size:23px}.queue-card p{font-size:14px;line-height:1.35}
.queue-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.queue-actions button{min-height:44px}.queue-actions select{min-height:44px;border:1px solid var(--line);border-radius:9px;padding:8px;background:#fff;font-weight:800}
.technician-board{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:8px}
.tech-lane{min-height:112px}.tech-head{padding:8px 10px}.tech-jobs{padding:6px}.tech-job{padding:7px}.job-actions{display:none}
.tech-lane.expanded .job-actions{display:grid}.tech-lane.expanded .job-note{white-space:normal}.tech-toggle{width:100%;border:0;background:transparent;text-align:left;padding:0;cursor:pointer}
.assign-summary{background:#f8fafc;border:1px solid var(--line);border-radius:11px;padding:12px;margin-bottom:12px}.assign-summary h3{margin:0 0 5px}
.assign-tech-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.assign-tech{display:flex;justify-content:space-between;align-items:center;min-height:58px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px;cursor:pointer;text-align:left}.assign-tech strong{display:block}.assign-tech small{color:var(--muted)}.assign-tech.recommended{border:2px solid var(--brand);background:#fff8fa}
.assign-state{font-size:11px;font-weight:900;padding:5px 8px;border-radius:20px}.assign-state.available{background:#dcfae6;color:#16794f}.assign-state.working{background:#fff3d6;color:#a15c00}.assign-state.overloaded{background:#fee4e2;color:#b42318}
.lounge{padding:34px}.lounge-row{font-size:22px;padding:23px}.lounge-row strong{font-size:28px}
@media(max-width:1180px){.dispatch-layout{grid-template-columns:minmax(350px,45%) 1fr}.technician-board{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:900px){
  .dispatch-layout{grid-template-columns:1fr}.queue-panel{position:static;max-height:none}.technician-board{grid-template-columns:repeat(2,minmax(220px,1fr))}
  .queue-card{padding:16px}.toolbar{grid-template-columns:1fr 1fr}.toolbar input{grid-column:1/-1}
}
@media(max-width:650px){.technician-board,.assign-tech-list{grid-template-columns:1fr}.queue-actions{grid-template-columns:1fr}.queue-actions button,.queue-actions select{width:100%}}

body{background:#f4f6f8}
.topbar{background:#fff;color:#111;border-bottom:1px solid var(--line);height:86px}
.brand-lockup{display:flex;align-items:center;gap:12px}.brand-lockup img{width:112px;height:62px;background:transparent;padding:0}.brand-lockup h1{font-size:24px;letter-spacing:.3px}.brand-lockup small{color:#c40018;font-weight:900;letter-spacing:2px}
.nav{top:86px;height:58px}.nav button.active{border-bottom:4px solid #d6001c;border-radius:8px 8px 0 0;background:#fff;color:#d6001c}
main{max-width:none;padding:14px 18px}.queue-panel{top:154px}
.command-stats{grid-template-columns:repeat(5,1fr)}.metric{display:flex;align-items:center;gap:12px;padding:15px}.metric strong{font-size:27px}.metric span{font-size:11px}
.dispatch-layout{grid-template-columns:minmax(430px,42%) 1fr;gap:14px}.queue-panel{background:#fff;border:1px solid #d9dee7;padding:0;overflow:hidden}.panel-title{padding:12px 14px;background:linear-gradient(90deg,#c90018,#e0001a);color:#fff;margin:0}.panel-title small{color:#fff}.queue-count{background:#fff;color:#c90018}
#dispatchQueue{padding:8px;max-height:620px;overflow:auto}.queue-card{box-shadow:none;border:1px solid #e1e5eb;border-left:7px solid #d0d5dd;margin-bottom:6px;border-radius:8px}.queue-card.waiter{border-left-color:#d6001c}.queue-card h3{font-size:24px}.queue-card p{color:#c40018;font-weight:800;text-transform:uppercase}
.technician-board{grid-template-columns:repeat(5,minmax(175px,1fr));gap:10px}.tech-lane{min-height:205px;border-radius:10px}.tech-head{background:#fff;padding:12px}.tech-head h3{font-size:20px}.tech-jobs{padding:10px}.drop-hint{border:0;padding:42px 8px}
.dashboard-bottom{display:grid;grid-template-columns:1.2fr .9fr 1fr 1.2fr;gap:12px;margin-top:14px}.dashboard-bottom>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:var(--shadow)}.dashboard-bottom h3{margin:0 0 8px;text-transform:uppercase}
.brand-panel{display:flex;align-items:center;gap:14px}.brand-panel img{width:145px}.brand-panel h3{font-size:24px;margin:0}.brand-panel span{color:#d6001c;letter-spacing:3px;font-weight:900}
.quick-panel select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px}.quick-panel button{width:100%}
.history-item{display:grid;grid-template-columns:auto 1fr auto;gap:8px;font-size:12px;padding:5px 0;border-bottom:1px solid #eee}.history-item:last-child{border-bottom:0}
.lounge-panel{text-align:center}.lounge-panel img{width:165px}.lounge-panel button{width:100%}
.brand-footer{background:#050505;color:#fff;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px;font-weight:900;letter-spacing:1px}.brand-footer img{width:70px;background:#fff;border-radius:7px;padding:3px}.footer-location{color:#ddd}
.lounge{background:#fff;color:#111;border:1px solid var(--line)}.lounge-head{border-bottom:5px solid #d6001c}.lounge-head img{width:190px}.lounge-head h2{color:#111}.lounge-head>div:nth-child(2)>div{color:#d6001c;font-weight:900}.lounge-row{background:#f8fafc;border:1px solid var(--line);color:#111}
@media(max-width:1350px){.technician-board{grid-template-columns:repeat(4,minmax(180px,1fr))}.dashboard-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:1000px){.topbar{height:auto;min-height:80px}.brand-lockup h1{font-size:20px}.brand-lockup img{width:90px}.dispatch-layout{grid-template-columns:1fr}.technician-board{grid-template-columns:repeat(3,minmax(190px,1fr))}.dashboard-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.technician-board,.dashboard-bottom{grid-template-columns:1fr}.brand-footer{flex-wrap:wrap}.topbar{align-items:flex-start}.userbox{flex-wrap:wrap;justify-content:flex-end}}

/* Atlas 1.4.2 — warmer operational color system */
:root{
  --soft-blue:#eaf3ff;
  --soft-green:#e9f8ef;
  --soft-gold:#fff4da;
  --soft-red:#fff0f1;
  --soft-purple:#f2edff;
}
body{
  background:
    radial-gradient(circle at 15% 0%, rgba(21,94,239,.08), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(177,30,51,.07), transparent 25%),
    #f3f6fa;
}
.topbar{
  background:linear-gradient(90deg,#ffffff 0%,#fffafb 70%,#f8fbff 100%);
  box-shadow:0 3px 14px rgba(17,25,35,.07);
}
.nav{
  background:linear-gradient(90deg,#ffffff,#f8fafc);
}
.nav button:hover{
  background:#f3f6fa;
}
.command-stats .metric:nth-child(1){
  background:linear-gradient(145deg,#fff,var(--soft-blue));
  border-top:4px solid #2e90fa;
}
.command-stats .metric:nth-child(2){
  background:linear-gradient(145deg,#fff,var(--soft-gold));
  border-top:4px solid #f79009;
}
.command-stats .metric:nth-child(3){
  background:linear-gradient(145deg,#fff,var(--soft-red));
  border-top:4px solid #f04438;
}
.command-stats .metric:nth-child(4){
  background:linear-gradient(145deg,#fff,var(--soft-green));
  border-top:4px solid #12b76a;
}
.command-stats .metric:nth-child(5){
  background:linear-gradient(145deg,#fff,var(--soft-purple));
  border-top:4px solid #7a5af8;
}
.queue-panel{
  box-shadow:0 10px 28px rgba(17,25,35,.10);
}
.queue-card{
  background:linear-gradient(145deg,#fff,#fbfcfe);
}
.queue-card.waiter{
  background:linear-gradient(145deg,#fff,#fff3f4);
}
.tech-lane{
  background:linear-gradient(180deg,#fff,#f9fbfd);
  transition:transform .16s ease, box-shadow .16s ease;
}
.tech-lane:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(17,25,35,.12);
}
.tech-state{
  box-shadow:inset 0 0 0 1px rgba(22,121,79,.08);
}
.dashboard-bottom>div{
  background:linear-gradient(145deg,#fff,#f8fafc);
}
.quick-panel{
  border-top:4px solid #2e90fa!important;
}
.history-panel{
  border-top:4px solid #7a5af8!important;
}
.lounge-panel{
  border-top:4px solid #12b76a!important;
}
.brand-panel{
  border-top:4px solid #d6001c!important;
}
.panel{
  background:linear-gradient(145deg,#fff,#fbfcfe);
}
.btn.primary{
  background:linear-gradient(135deg,#b11e33,#db0020);
  box-shadow:0 4px 10px rgba(177,30,51,.18);
}
.btn.primary:hover{
  filter:brightness(.96);
}
.pilot-banner{
  background:linear-gradient(90deg,#fff7df,#fffaf0);
}
@media (prefers-reduced-motion: reduce){
  .tech-lane{transition:none}
  .tech-lane:hover{transform:none}
}

/* Atlas Scan Intake 1.5 */
.scan-layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(440px,1.1fr);gap:14px;align-items:start}
.scan-camera-panel,.scan-review-panel{min-height:680px}.scan-privacy{background:#eaf7ef;border:1px solid #b8e3c8;color:#155f3c;border-radius:10px;padding:10px;margin-bottom:12px}.scan-note{background:#fff4da;border:1px solid #f3cf83;color:#704500;border-radius:10px;padding:10px;margin-bottom:12px}
.camera-button{display:flex;align-items:center;justify-content:center;min-height:58px;background:linear-gradient(135deg,#b11e33,#db0020);color:#fff;border-radius:11px;font-weight:950;font-size:18px;cursor:pointer;box-shadow:0 5px 14px rgba(177,30,51,.2)}
.scan-empty{height:470px;border:2px dashed #c8d0db;border-radius:12px;margin:12px 0;display:flex;align-items:center;justify-content:center;color:var(--muted);text-align:center;padding:20px;background:#f8fafc}.scan-preview{display:block;width:100%;max-height:520px;object-fit:contain;border:1px solid var(--line);border-radius:12px;margin:12px 0;background:#20242b}.scan-confirmation{background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:12px;margin:14px 0;font-weight:800}.scan-confirmation input{width:20px;height:20px;vertical-align:middle;margin-right:7px}.scan-import-button{min-height:54px;font-size:17px}
@media(max-width:950px){.scan-layout{grid-template-columns:1fr}.scan-camera-panel,.scan-review-panel{min-height:auto}.scan-empty{height:340px}}

.waiter-detection{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  background:linear-gradient(135deg,#fff,#fff5f6);
  border:1px solid #f4c7cc;border-left:6px solid #d6001c;
  border-radius:11px;padding:12px;margin:10px 0;
}
.confidence-badge{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border-radius:20px;font-size:12px;font-weight:900}
.confidence-badge.neutral{background:#eef2f6;color:#475467}
.confidence-badge.high{background:#fee4e2;color:#b42318}
.confidence-badge.medium{background:#fff3d6;color:#a15c00}
.confidence-badge.low{background:#eaf3ff;color:#155eef}
.waiter-toggle{display:flex!important;align-items:center;gap:9px;min-height:46px;border:2px solid #d0d5dd;border-radius:10px;padding:8px 12px;background:#fff;cursor:pointer}
.waiter-toggle input{width:22px!important;height:22px}
.waiter-toggle span{font-size:18px;font-weight:950;color:#b42318}
.waiter-toggle:has(input:checked){background:#fff0f1;border-color:#d6001c;box-shadow:0 0 0 3px rgba(214,0,28,.08)}
.scan-stamp-note{font-size:12px;color:#667085;margin-top:6px}

.scan-shell{max-width:1500px;margin:auto}
.scan-grid{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(420px,1.1fr);gap:14px}
.scan-drop{display:flex;align-items:center;justify-content:center;min-height:100px;border:2px dashed #98a2b3;border-radius:12px;background:linear-gradient(145deg,#fff,#f5f8fc);font-weight:950;cursor:pointer}
.scan-drop input{position:absolute;opacity:0;pointer-events:none}
.scan-preview{display:block;width:100%;max-height:700px;object-fit:contain;border:1px solid var(--line);border-radius:12px;background:#fff;margin-top:10px}
.scan-form-panel{box-shadow:none}
.scan-note{background:#fff8e6;border:1px solid #f3cf83;color:#694100;border-radius:9px;padding:9px;margin:12px 0;font-size:12px}
@media(max-width:900px){.scan-grid{grid-template-columns:1fr}}

.waiter-detection{display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(135deg,#fff,#fff5f6);border:1px solid #f4c7cc;border-left:6px solid #d6001c;border-radius:11px;padding:12px;margin:10px 0}.confidence-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:20px;font-size:12px;font-weight:900}.confidence-badge.neutral{background:#eef2f6;color:#475467}.confidence-badge.high{background:#fee4e2;color:#b42318}.confidence-badge.medium{background:#fff3d6;color:#a15c00}.confidence-badge.low{background:#eaf3ff;color:#155eef}.waiter-toggle{display:flex!important;align-items:center;gap:9px;min-height:46px;border:2px solid #d0d5dd;border-radius:10px;padding:8px 12px;background:#fff;cursor:pointer}.waiter-toggle input{width:22px!important;height:22px}.waiter-toggle span{font-size:18px;font-weight:950;color:#b42318}.waiter-toggle:has(input:checked){background:#fff0f1;border-color:#d6001c}

.scan-primary{
  background:linear-gradient(135deg,#155eef,#004eeb);
  color:#fff;
  border:0;
  box-shadow:0 4px 12px rgba(21,94,239,.22);
  min-height:44px;
  font-weight:950;
}
.scan-primary:hover{filter:brightness(.96)}
@media(max-width:700px){
  #scanROButton,#addROButton{min-height:50px;font-size:16px}
}

.ocr-status{margin-top:9px;padding:10px 12px;border-radius:9px;font-weight:800;font-size:13px}.ocr-status.neutral{background:#eef2f6;color:#475467}.ocr-status.working{background:#eaf3ff;color:#155eef}.ocr-status.success{background:#e9f8ef;color:#087443}.ocr-status.review{background:#fff4da;color:#9a5b00}

/* 2.4 safer scan behavior */
#waiterDetection{border-left-color:#667085}
#waiterDetection:has(.confidence-badge.high){border-left-color:#d6001c}

#scanVin[readonly]{background:#f2f4f7;color:#475467}
.ocr-status.success{border-left:5px solid #12b76a}

/* Atlas 3.1 stabilization */
.filter-toggle{display:flex;align-items:center;gap:7px;min-height:42px;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:900;white-space:nowrap}
.filter-toggle input{width:20px;height:20px}
.scan-action-row{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:12px}
.scan-action-row button{min-height:48px}
.advisor-tools,.parts-tools{display:flex;gap:10px;align-items:center;margin:10px 0 14px}
.advisor-tools .wide-input,.parts-tools .wide-input{flex:1}
.advisor-tools select,.parts-tools select{min-height:44px;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff}
.assignment-banner.pending{background:#fff7ed;border:1px solid #fed7aa;border-left:6px solid #f79009}
.assignment-banner.accepted-state{background:#ecfdf3;border:1px solid #abefc6;border-left:6px solid #12b76a}
.assignment-banner .accept-button{min-height:46px;font-weight:950}
.quick-buttons.locked{opacity:.55}
.quick-buttons.locked:after{content:"Accept this RO after you have the vehicle to unlock status updates.";display:block;grid-column:1/-1;font-size:12px;color:#667085;padding-top:4px}
.parts-age{font-size:11px;color:#667085}
@media(max-width:800px){
  .advisor-tools,.parts-tools{flex-direction:column;align-items:stretch}
  .scan-action-row{grid-template-columns:1fr}
  .toolbar{grid-template-columns:1fr 1fr}
  .filter-toggle{grid-column:1/-1}
}
