:root{--nav:#171b20;--blue:#d99425;--bg:#f4f5f6;--line:#dfe3e7;--text:#1b2025;--muted:#6d747b;--gold:#d99425;--gold2:#f0b24b;--charcoal:#252a30}
*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--text)}
.layout{min-height:100vh}aside{position:fixed;inset:0 auto 0 0;width:240px;background:linear-gradient(180deg,#15191e,#22272d);padding:18px;color:#fff;display:flex;flex-direction:column}.brand{font-size:24px;font-weight:800;margin-bottom:24px}.brand small{display:block;font-size:10px;font-weight:400;opacity:.7;letter-spacing:.04em}.xroute-brand{display:flex;align-items:center;gap:10px;letter-spacing:.03em}.brand-copy{font-size:21px}.xmark{width:37px;height:44px;position:relative;display:inline-block;flex:0 0 37px}.xmark-gold,.xmark-dark{position:absolute;left:14px;top:0;width:10px;height:44px;border-radius:2px;transform-origin:center}.xmark-gold{background:linear-gradient(180deg,var(--gold2),#c77a0d);transform:rotate(-42deg)}.xmark-dark{background:linear-gradient(180deg,#4a5057,#20252a);transform:rotate(42deg)}
aside a{color:#eef0f2;text-decoration:none;padding:11px;border-radius:8px;margin:2px 0}aside a:hover{background:rgba(217,148,37,.18);color:#ffd58f}.spacer{flex:1}main{margin-left:240px}header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;gap:14px;align-items:center;padding:0 24px}header span{color:var(--muted);font-size:13px}header a{margin-left:auto}.content{padding:24px}.driver-main{margin-left:0;max-width:720px;margin-right:auto;margin-left:auto}h1{margin-bottom:4px}.muted{color:var(--muted)}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;overflow:auto}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.kpis b{font-size:30px;display:block;margin-top:8px}.kpis span{color:var(--muted)}table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}th{color:var(--muted);font-size:12px}.two{display:grid;grid-template-columns:1fr 2fr;gap:18px}.form,.gridform{display:grid;gap:13px}.gridform{grid-template-columns:repeat(3,1fr)}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#59616a}input,select,textarea{padding:10px;border:1px solid var(--line);border-radius:7px;background:#fff}button,.btn{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#171b20;border:0;padding:10px 14px;border-radius:8px;text-decoration:none;display:inline-block;font-weight:700;cursor:pointer}.danger{background:#c33;color:#fff}.small,.smallbtn{font-size:12px;padding:7px 9px}.smallbtn{background:#fff4df;color:#8a5607;border-radius:6px;text-decoration:none}.wide{grid-column:1/-1}.pagehead{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.actions{display:flex;gap:6px;align-items:center}.actions form{margin:0}.flash{padding:12px;margin-bottom:12px;border-radius:8px}.flash.success{background:#e8f6ec}.flash.danger{background:#fdeaea;color:#9b2222}.badge{background:#fff2da;color:#87540a;padding:5px 8px;border-radius:999px;font-size:12px}.login-card{max-width:460px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;margin:8vh auto;box-shadow:0 18px 50px rgba(18,23,28,.08)}.login-card form{display:grid;gap:14px}.hint{margin-top:18px;color:var(--muted);font-size:13px;line-height:1.6}.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:24px}.login-brand h1{font-size:31px;letter-spacing:.05em;margin:0}.login-brand p{margin:4px 0 0;color:var(--muted);font-size:12px}.login-x{width:48px;height:56px;flex-basis:48px}.login-x .xmark-gold,.login-x .xmark-dark{left:19px;width:11px;height:56px}.planner{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.planrow{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line)}.drivername{padding:16px;background:#fafbfd}.drivername small{display:block;color:var(--muted);margin-top:5px}.jobs{padding:10px;display:flex;gap:10px;flex-wrap:wrap}.job{background:#fff6e7;border:1px solid #e8bd76;padding:10px;border-radius:8px;min-width:230px}.job span{display:block;font-size:12px;margin:5px 0;color:#45525e}.job select{padding:6px;width:100%}.unplanned{background:#fff3db;border-color:#f1c36d}.driver-wrap{max-width:540px;margin:auto}.driver-trip{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin:14px 0}.triptop{display:flex;justify-content:space-between;align-items:center}.driver-trip form{display:grid;gap:10px}
/* X-Route trip editor */
.trip-editor{max-width:1700px;margin:auto}.trip-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.trip-editor-head h1{font-size:21px}.crumb{margin:0 0 4px;font-size:11px}.editor-actions{display:flex;gap:8px}.reference-tabs{display:grid;grid-template-columns:repeat(9,minmax(110px,1fr));background:#ececec;border:1px solid #cfcfcf;border-radius:0;overflow-x:auto;padding:0}.reference-tabs .trip-tab{border:0;border-right:1px solid #cfcfcf;border-radius:0;background:#efefef;color:#222;padding:7px 10px;font-size:12px;font-weight:500}.reference-tabs .trip-tab.active{background:#fff;color:#111;border-top:2px solid var(--gold);padding-top:5px}.trip-panel{display:none}.trip-panel.active{display:block}.reference-editor form{background:#fff;border:1px solid #d6d6d6;border-top:0}.legacy-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:24px;padding:14px}.legacy-column{min-width:0}.legacy-section{padding:4px 0 12px}.legacy-section h3,.finance-block h3{font-size:12px;margin:5px 0 7px;color:#5a5a5a}.legacy-row{display:grid;grid-template-columns:105px minmax(0,1fr) 18px;gap:5px;align-items:center;margin-bottom:5px}.legacy-row>label{display:block;color:#444;font-weight:400;font-size:11px;line-height:1.15}.legacy-row input,.legacy-row select,.legacy-row textarea{border:1px solid #aeb5bd;border-radius:0;padding:4px 5px;font-size:12px;min-width:0;height:25px}.legacy-row textarea{height:auto;resize:vertical}.split-row{grid-template-columns:105px minmax(0,1fr) minmax(0,1fr) 18px}.container-row{grid-template-columns:105px 1.4fr .7fr}.checkbox-row{grid-template-columns:105px auto 1fr}.checkbox-row input[type=checkbox]{width:14px;height:14px}.checkbox-row span{font-size:11px}.textarea-row{grid-template-columns:105px 1fr}.note-section .textarea-row{align-items:start;margin-bottom:8px}.options-section{margin-top:4px}.info-dot{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#e99200;color:#fff;font-size:10px;font-weight:700}.route-reference-block{border-bottom:1px solid #ddd;padding:9px 8px;background:#fff}.route-reference-block:nth-child(even){background:#f5f5f5}.route-table-head{display:grid;grid-template-columns:100px 1.4fr 70px 70px 70px 80px 80px 65px 65px 70px 70px 110px;gap:5px;padding:7px 8px;background:#efefef;border-bottom:1px solid #ccc;font-size:10px;color:#444}.route-primary-row{display:grid;grid-template-columns:100px 1.4fr 18px 70px 70px 70px 80px 80px 65px 65px 70px 70px 110px;gap:5px;align-items:center}.route-primary-row b{font-size:11px}.route-primary-row input,.route-primary-row select{height:24px;border-radius:0;padding:3px 5px;font-size:11px}.route-primary-row input[type=checkbox]{width:14px;height:14px}.route-secondary-row{display:grid;grid-template-columns:100px 160px 220px 28px 1fr 28px 28px;gap:5px;align-items:center;margin-top:5px;font-size:10px}.route-secondary-row input{height:24px;border-radius:0;padding:3px 5px}.timeslot{color:#d40000}.icon-btn{padding:3px 5px;border-radius:0;font-size:12px;background:#fff;border:1px solid #aeb5bd;color:#222}.route-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:12px;max-width:520px;margin-left:auto}.route-metrics>div{display:flex;justify-content:space-between;border:1px solid #c7c7c7;background:#f5f5f5;padding:4px 6px;font-size:10px}.finance-reference-grid{display:grid;grid-template-columns:320px 360px 1fr;gap:28px;padding:14px}.finance-block{min-width:0}.finance-form-row{display:grid;grid-template-columns:110px 1fr auto;gap:6px;align-items:center;margin-bottom:6px}.finance-form-row label{display:block;font-size:11px;font-weight:400;color:#444}.finance-form-row input,.finance-form-row select,.surcharge-row input,.third-party-lines input{height:25px;border-radius:0;padding:3px 5px;font-size:11px}.finance-form-row input[type=checkbox],.surcharge-row input[type=checkbox]{width:14px;height:14px}.finance-block hr{border:0;border-top:1px solid #bbb;margin:12px 0}.surcharge-row{display:grid;grid-template-columns:90px 18px 70px 70px;gap:5px;align-items:center;margin-bottom:4px;font-size:11px}.third-party-lines{display:grid;grid-template-columns:100px 1fr;gap:6px;margin-top:12px}.finance-block textarea{width:100%;border-radius:0;border:1px solid #aeb5bd}.finance-footer{display:flex;justify-content:center;gap:34px;align-items:center;padding:10px 14px 18px;font-size:12px}.finance-footer button{padding:6px 12px}.empty-panel{margin:12px;min-height:280px;background:#fff;border:1px solid var(--line);padding:18px}.empty-panel h2{margin-top:0}
/* Reference screenshot dark/gold palette, applied site-wide */
:root{--nav:#0b0c0d;--blue:#d2a64b;--bg:#141516;--line:#47433c;--text:#f1f1ed;--muted:#aaa9a4;--gold:#d2a64b;--gold2:#e0b75e;--charcoal:#191a1b;--panel:#141516;--panel2:#1e1e1d;--input:#141516}
html,body{background:#141516;color:#f1f1ed}body{color-scheme:dark}
aside{background:linear-gradient(180deg,#0b0c0d,#0c0d0e);border-right:1px solid #3c3426;color:#f3f1ea}aside a{color:#e8e7e2}aside a:hover,aside a.active{background:#2b261b;color:#e0b75e;border:1px solid #4b402a}main{background:#141516;min-height:100vh}header{background:#0b0c0d;border-bottom:1px solid #3c3426;color:#f1f1ed}header span{color:#aaa9a4}.content{background:#141516}
h1,h2,h4,strong,b{color:#f4f2ec}.muted{color:#aaa9a4!important}label{color:#d7d5ce}.card,.login-card,.planner,.driver-trip,.editor-card,.empty-panel{background:#191a1b;border-color:#47433c;color:#f1f1ed;box-shadow:none}.drivername{background:#151617}.job,.unplanned{background:#211d16;border-color:#5d4a29;color:#f1f1ed}.job span{color:#c9c6bd}
input,select,textarea{background:#141516!important;color:#f1f1ed!important;border:1px solid #59554e!important;box-shadow:none!important}input::placeholder,textarea::placeholder{color:#73736f}select option{background:#141516;color:#f1f1ed}input:focus,select:focus,textarea:focus{outline:1px solid #d2a64b;border-color:#d2a64b!important}
button,.btn{background:linear-gradient(180deg,#e0b75e,#d2a64b);color:#171512;border:1px solid #d6aa50}.smallbtn{background:#151617;color:#ead28c;border:1px solid #6a5630}.smallbtn:hover{background:#2b261b}.danger{background:#8e3030;color:#fff;border-color:#a74747}.badge{background:#18351f;color:#8bd397;border:1px solid #315c39}.flash.success{background:#17351f;color:#a8e1b1;border:1px solid #315c39}.flash.danger{background:#3a1717;color:#ffb7b7;border:1px solid #6c2f2f}
table{background:#191a1b}th,td{border-color:#3e3d39;color:#e9e7e0}th{color:#b2b0aa;background:#151617}
.reference-tabs{background:#0f1011;border-color:#47433c}.reference-tabs .trip-tab{background:#141516;color:#d8d6cf;border-right-color:#47433c}.reference-tabs .trip-tab:hover{background:#211d16;color:#efd181}.reference-tabs .trip-tab.active{background:linear-gradient(180deg,#dfb55c,#cfa147);color:#16130d;border-top:1px solid #e5bf69;border-right-color:#8a713e}.reference-editor form{background:#141516;border-color:#47433c}.legacy-section h3,.finance-block h3{color:#d6aa50}.legacy-row>label,.finance-form-row label{color:#d8d6cf}.legacy-row input,.legacy-row select,.legacy-row textarea,.finance-form-row input,.finance-form-row select,.surcharge-row input,.third-party-lines input,.finance-block textarea{background:#141516!important;color:#f1f1ed!important;border-color:#59554e!important}.info-dot{background:#d49324;color:#111}.route-reference-block,.route-reference-block:nth-child(even){background:#141516;border-bottom-color:#47433c}.route-reference-block:nth-child(even){background:#181919}.route-table-head{background:#1e1e1d;border-color:#47433c;color:#c8c5bd}.route-primary-row b{color:#e4c06d}.route-secondary-row{color:#c7c4bc}.icon-btn{background:#141516;color:#e7c46f;border-color:#695a3e}.route-metrics>div{background:#1e1e1d;border-color:#59554e;color:#ddd9cf}.timeslot{color:#ff6b63}.finance-block hr{border-color:#47433c}.finance-footer{border-top:1px solid #3f3a30;color:#f1f1ed}
.trip-editor-head{border-bottom:1px solid #342f26;padding-bottom:8px}.trip-editor-head h1{color:#f3f1ea}.crumb{color:#d2a64b!important}.editor-actions .smallbtn{background:#0f1011;color:#f1f1ed;border-color:#5a4a2b}.editor-actions button{background:linear-gradient(180deg,#e0b75e,#d2a64b);color:#15130f}.login-card{background:#111213}.login-brand h1{color:#e1b85f}.login-brand p,.hint{color:#aaa9a4}.xmark-gold{background:linear-gradient(180deg,#e0b75e,#c99838)}.xmark-dark{background:linear-gradient(180deg,#383a3b,#171819)}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#0f1011}::-webkit-scrollbar-thumb{background:#4b463d;border:2px solid #0f1011}::-webkit-scrollbar-thumb:hover{background:#6a5a3a}
@media(max-width:1250px){.legacy-grid{grid-template-columns:1fr 1fr}.wide-notes{grid-column:1/-1}.finance-reference-grid{grid-template-columns:1fr 1fr}.finance-reference-grid .finance-block:last-child{grid-column:1/-1}.route-table-head{display:none}.route-primary-row{grid-template-columns:100px 1fr 18px 70px 70px 70px}.route-primary-row>*:nth-child(n+7){display:none}.route-secondary-row{grid-template-columns:100px 160px 1fr 28px 1fr 28px 28px}}
@media(max-width:850px){aside{position:static;width:100%;min-height:auto}main{margin:0}.kpis,.two,.gridform,.legacy-grid,.finance-reference-grid{grid-template-columns:1fr}.content{padding:14px}.planrow{grid-template-columns:1fr}.wide-notes,.finance-reference-grid .finance-block:last-child{grid-column:auto}.trip-editor-head{align-items:flex-start;gap:10px}.reference-tabs{grid-template-columns:repeat(9,130px)}.legacy-row,.split-row,.container-row,.checkbox-row,.textarea-row{grid-template-columns:1fr}.legacy-row>label{margin-top:4px}.info-dot{display:none}.route-primary-row,.route-secondary-row{grid-template-columns:1fr}.route-primary-row>*:nth-child(n+7){display:block}.route-metrics{grid-template-columns:1fr 1fr;max-width:none}.finance-form-row,.surcharge-row{grid-template-columns:1fr}.editor-actions{flex-shrink:0}}
@media print{aside,header,.btn,button{display:none!important}main{margin:0}.content{padding:0}.card{border:0}.invoice{box-shadow:none}}
