:root{
  --xr-bg:#0d1011;
  --xr-surface:#121617;
  --xr-surface-2:#171b1c;
  --xr-border:#343a3c;
  --xr-gold:#e3b34a;
  --xr-green:#62d985;
  --xr-red:#ff6969;
  --xr-text:#f0f2ef;
  --xr-muted:#929a9c;
}

/* Functional header actions. */
.header-icons{display:flex;align-items:center;gap:4px}
.header-icons a{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:7px;color:#aeb5b6;text-decoration:none;border:1px solid transparent}
.header-icons a:hover,.header-icons a:focus-visible{color:var(--xr-gold);background:rgba(227,179,74,.08);border-color:rgba(227,179,74,.25)}
.header-icons .notification-dot{position:absolute;top:-3px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;display:grid;place-items:center;background:#dc4c4c;color:#fff;font-size:8px;font-weight:800}

/* Shared, aligned content components. */
.xr-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.xr-section-head h2{margin:0 0 3px}.xr-section-head p{margin:0}
.xr-trip-link,.xr-heading-number{color:var(--xr-gold)!important;font-weight:800;text-decoration:none;font-variant-numeric:tabular-nums}
.xr-trip-link:hover{text-decoration:underline}
.xr-click-row{cursor:pointer}.xr-click-row:hover{background:rgba(227,179,74,.045)}
.xr-click-row:focus-visible{outline:2px solid var(--xr-gold);outline-offset:-2px}
.xr-state-pill{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-height:22px;padding:3px 7px;border:1px solid #485052;border-radius:12px;background:#1d2223;color:#c3c9ca;font-size:8px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xr-state-pill.ok{border-color:#397b4d;background:#153d25;color:var(--xr-green)}
.xr-state-pill.warning{border-color:#766020;background:#2c2512;color:#ecc65f}
.xr-state-pill.danger{border-color:#8e3434;background:#461a1d;color:var(--xr-red)}
.xr-empty-state{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px;color:var(--xr-muted)}
.xr-empty-state>i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(227,179,74,.1);color:var(--xr-gold);font-size:18px}
.xr-empty-state h2,.xr-empty-state h3{margin:0;color:var(--xr-text)}.xr-empty-state p{max-width:620px;margin:0;line-height:1.55}
.xr-empty-state>div{display:flex;gap:8px;margin-top:5px}.xr-empty-state.compact{min-height:96px;padding:14px}.xr-empty-state.compact>i{width:30px;height:30px;font-size:12px}.xr-empty-state.tall{min-height:430px}
.xr-empty-inline{padding:20px;text-align:center;color:var(--xr-muted)}

/* Dashboard: every summary is actionable. */
.xr-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.xr-kpi{display:flex!important;flex-direction:column;gap:3px;color:inherit!important;text-decoration:none;transition:border-color .15s,transform .15s}
.xr-kpi:hover{border-color:#715c2a;transform:translateY(-1px)}.xr-kpi b{font-variant-numeric:tabular-nums}.xr-kpi small{color:var(--xr-muted);font-size:9px}
.xr-kpi.warning{border-color:#66551f}.xr-kpi.danger{border-color:#703332}
.xr-inbox{margin-bottom:12px}.xr-inbox-list{display:grid}
.xr-inbox-item{display:grid;grid-template-columns:5px minmax(170px,.85fr) minmax(220px,1.5fr) 145px 12px;align-items:center;gap:12px;padding:10px 4px;color:var(--xr-text)!important;text-decoration:none;border-top:1px solid #292e30}
.xr-inbox-item:hover{background:rgba(255,255,255,.025)}.xr-inbox-marker{width:5px;height:32px;border-radius:3px;background:#c3983d}.severity-3 .xr-inbox-marker{background:var(--xr-red)}
.xr-inbox-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}.xr-inbox-item>div>span,.xr-inbox-item time{color:var(--xr-muted);font-size:9px}.xr-inbox-reasons{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:4px!important}
.xr-inbox-reasons span{padding:3px 6px;border-radius:8px;background:#27231a;color:#e5bf61!important}.severity-3 .xr-inbox-reasons span{background:#351a1c;color:#ff8989!important}
.xr-recent{margin-top:12px}

/* Trips: fixed action width and normalized filters. */
.trips-filters{display:grid;grid-template-columns:minmax(210px,1.25fr) minmax(170px,.9fr) minmax(190px,1fr) minmax(160px,.8fr) 34px;gap:8px;align-items:end;margin:0 0 10px}
.trips-filters label{display:flex;flex-direction:column;gap:4px;margin:0;min-width:0}.trips-filters label>span{font-size:9px;font-weight:650;color:#aeb4b6}
.trip-filter-field input,.trips-filters select{width:100%;height:32px;padding-inline:10px!important;font-size:10.5px!important;border-radius:6px!important}
.trip-filter-clear{width:34px;height:32px;padding:0;border:1px solid #55451f;border-radius:6px;background:#101112;color:#e0b75e;cursor:pointer}.trip-filter-clear:hover{background:#d2a64b;color:#0b0c0d}
.trips-overview-card{padding:0!important;overflow:hidden}.trips-table-scroll{overflow:auto;width:100%;scrollbar-width:thin}
.trips-overview-table{width:100%;min-width:1510px;table-layout:fixed;border-collapse:collapse;font-size:10px}
.trips-overview-table th,.trips-overview-table td{height:44px;padding:7px 8px!important;white-space:nowrap;vertical-align:middle;overflow:hidden;text-overflow:ellipsis}
.trips-overview-table th{height:34px;font-size:8px;color:#c6cbcd}.trips-overview-table th:nth-child(1){width:92px}.trips-overview-table th:nth-child(2){width:150px}.trips-overview-table th:nth-child(3){width:110px}.trips-overview-table th:nth-child(4){width:118px}.trips-overview-table th:nth-child(5){width:94px}.trips-overview-table th:nth-child(6),.trips-overview-table th:nth-child(7),.trips-overview-table th:nth-child(8){width:130px}.trips-overview-table th:nth-child(9){width:100px}.trips-overview-table th:nth-child(10){width:126px}.trips-overview-table th:nth-child(11){width:190px}.trips-overview-table th:nth-child(12){width:142px}
.trips-overview-table tbody tr[data-trip-id]{cursor:pointer}.trips-overview-table tbody tr[data-trip-id]:hover{background:rgba(227,179,74,.035)}
.trip-customer{font-weight:650}.trip-reference{font-variant-numeric:tabular-nums}.trip-location{font-weight:500}
.trips-overview-table td.actions{width:142px!important;min-width:142px!important;overflow:visible!important;padding-right:9px!important}
.trip-action-group{display:flex;align-items:center;justify-content:flex-start;gap:5px;flex-wrap:nowrap}.trip-action-group form{display:flex;margin:0}
.trip-action{box-sizing:border-box;flex:0 0 27px;width:27px;height:27px;min-height:27px!important;padding:0!important;display:inline-grid;place-items:center;border:1px solid #65501d;border-radius:6px;background:#101112;color:#e0b75e;text-decoration:none;cursor:pointer;font-size:10px}.trip-action:hover{background:#d2a64b;color:#0b0c0d}.trip-delete{font:inherit;color:#d7645d;border-color:#69312e}.trip-no-results{text-align:center!important;color:var(--xr-muted)!important;height:60px!important}
.terminal-filters{grid-template-columns:minmax(240px,480px) minmax(180px,260px)}.terminal-status-table{min-width:1120px}.terminal-status-table th,.terminal-status-table td{white-space:nowrap}
.xr-adapter-history{margin-top:12px}.xr-adapter-history summary{cursor:pointer;color:var(--xr-gold);font-weight:700}

/* Planner board. */
.xr-planning-head{align-items:flex-end!important}.xr-date-nav{display:flex;align-items:flex-end;gap:7px}.xr-date-nav form label{display:grid;gap:3px;margin:0}.xr-date-nav form span{font-size:8px;color:var(--xr-muted)}
.xr-planning-summary{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 10px}.xr-planning-summary span{display:inline-flex;gap:5px;padding:6px 9px;border:1px solid var(--xr-border);border-radius:12px;background:var(--xr-surface);font-size:9px;color:var(--xr-muted)}.xr-planning-summary b{color:var(--xr-text)}.xr-planning-summary .warning{border-color:#66551f;color:#e5bf61}.xr-planning-summary .danger{border-color:#793536;color:#ff7a7a}
.xr-plan-lane{margin-bottom:10px;border:1px solid var(--xr-border);border-radius:8px;background:var(--xr-surface);overflow:hidden}.xr-plan-lane>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-bottom:1px solid #2e3436;background:rgba(255,255,255,.018)}.xr-plan-lane>header>div{display:flex;align-items:center;gap:9px}.xr-plan-lane>header h2{font-size:12px;margin:0}.xr-plan-lane>header p{font-size:8px;color:var(--xr-muted);margin:2px 0 0}.xr-plan-lane>header>span{display:grid;place-items:center;min-width:24px;height:22px;border-radius:11px;background:#252a2b;font-size:9px;font-weight:800}.xr-plan-lane.unplanned{border-color:#655221}.xr-plan-lane.unplanned>header i{color:var(--xr-gold)}
.xr-driver-avatar{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#313738;color:var(--xr-gold);font-weight:800}.xr-plan-cards{display:grid;grid-template-columns:repeat(3,minmax(290px,1fr));gap:8px;padding:8px}.xr-plan-card{display:grid;grid-template-columns:minmax(0,1fr) 170px;border:1px solid #343a3c;border-radius:7px;background:#101415;overflow:hidden}.xr-plan-card.has-conflict{border-color:#8e3434}.xr-plan-card-main{display:flex;flex-direction:column;gap:7px;padding:9px 10px;color:var(--xr-text)!important;text-decoration:none;min-width:0}.xr-plan-card-main:hover{background:rgba(227,179,74,.035)}.xr-plan-card-top{display:flex;justify-content:space-between;gap:8px}.xr-plan-card-top strong{color:var(--xr-gold);font-size:10px}.xr-plan-card-top time{font-size:12px;font-weight:800}.xr-plan-ident{display:flex;flex-direction:column;gap:2px}.xr-plan-ident b{font-size:11px}.xr-plan-ident span{font-size:8px;color:var(--xr-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xr-plan-route{display:flex;align-items:center;gap:5px;color:#c2c7c8;font-size:8px;min-width:0}.xr-plan-route span{display:flex;align-items:center;gap:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xr-plan-route span i{color:#d6a942}.xr-plan-route>i{font-size:6px;color:#697173}.xr-plan-badges{display:flex;gap:4px;flex-wrap:wrap}.xr-plan-assign{display:flex;align-items:flex-end;padding:9px;border-left:1px solid #303638}.xr-plan-assign label{display:grid;gap:4px;width:100%;margin:0}.xr-plan-assign label span{font-size:8px;color:var(--xr-muted)}.xr-plan-assign select{width:100%;min-width:0}

/* Help, documents and GPS. */
.xr-live-map{height:520px;border-radius:8px;border:1px solid var(--xr-border);margin-bottom:12px}
.xr-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.xr-help-grid .card{position:relative;padding-left:72px;min-height:170px}.xr-help-grid h2{margin:0 0 7px}.xr-help-grid p{color:var(--xr-muted);line-height:1.55}.xr-help-icon{position:absolute;left:18px;top:20px;display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#2c2514;color:var(--xr-gold)}.xr-signature-canvas{width:100%;height:220px;border:1px solid #cfd6df;border-radius:8px;touch-action:none;background:#fff}.xr-signature-image{max-width:260px;margin-top:8px}

/* Trip editor validation, duplicate warning and keyboard clarity. */
.xr-form-status{display:flex;align-items:center;gap:6px;min-height:28px;padding:5px 8px;border-radius:5px;background:#252015;color:#e3bd60;font-size:9px}.xr-form-status.ok{background:#153d25;color:var(--xr-green)}.xr-form-status.error{background:#461a1d;color:#ff8585}
.xroute-new-actions button:disabled,.xr-hcn-route-action:disabled{opacity:.42!important;cursor:not-allowed!important;filter:saturate(.45)}
.xr-field-invalid{outline:1px solid var(--xr-red)!important;outline-offset:1px}.xr-duplicate-warning{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #735e24;border-radius:6px;background:#292313;color:#e7c568;font-size:9px}.xr-duplicate-warning a{color:#ffd87a;font-weight:800}
.xroute-stop[data-stop-role="work"]>.xroute-date,.xroute-stop[data-stop-role="work"]>input[type="time"],.xroute-stop[data-stop-role="work"]>.xr-picker-clear-wrap{visibility:visible!important;pointer-events:auto!important}
.xr-hcn-route-row{align-self:center!important}.xr-hcn-route-action{flex:0 0 28px}

@media(max-width:1280px){.xr-plan-cards{grid-template-columns:repeat(2,minmax(290px,1fr))}.xr-plan-card{grid-template-columns:minmax(0,1fr) 155px}.xr-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.trips-filters{grid-template-columns:1fr 1fr}.trip-filter-clear{align-self:end}.xr-plan-cards{grid-template-columns:1fr}.xr-inbox-item{grid-template-columns:5px 1fr 18px}.xr-inbox-item time,.xr-inbox-reasons{grid-column:2}.xr-inbox-item>i{grid-column:3;grid-row:1/3}.xr-help-grid{grid-template-columns:1fr}}
@media(max-width:650px){.xr-date-nav{width:100%;flex-wrap:wrap}.xr-date-nav form{flex:1}.xr-date-nav input{width:100%}.xr-plan-card{grid-template-columns:1fr}.xr-plan-assign{border-left:0;border-top:1px solid #303638}.trips-filters{grid-template-columns:1fr}.xr-kpis{grid-template-columns:1fr}.xr-help-grid .card{padding-left:18px;padding-top:70px}}

html[data-theme="light"] .xr-plan-lane,html[data-theme="light"] .xr-plan-card,html[data-theme="light"] .xr-kpi{background:#fff}
html[data-theme="light"] .xr-plan-card-main,html[data-theme="light"] .xr-inbox-item{color:#242a2d!important}
html[data-theme="light"] .xr-state-pill{background:#f3f5f5;color:#3c4548}


/* Compact categorized planning tables. */
.xr-planning-table-panel{margin:0 0 14px;border:1px solid var(--xr-border);border-left-width:4px;border-radius:8px;background:var(--xr-surface);overflow:hidden}
.xr-planning-table-panel.planned{border-color:#247b49}.xr-planning-table-panel.unplanned{border-color:#80631f}
.xr-planning-table-head{height:auto;min-height:56px;padding:10px 14px!important;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#101415!important;border-bottom:1px solid #303638!important}
.xr-planning-table-head>div{display:flex;align-items:center;gap:10px}.xr-planning-table-head h2{margin:0;font-size:16px}.xr-planning-table-head>div>i{color:var(--xr-green)}.xr-planning-table-panel.unplanned .xr-planning-table-head>div>i{color:var(--xr-gold)}
.xr-planning-table-head>div>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:14px;background:#176a3a;color:#d8ffe4;font-size:11px;font-weight:800}
.xr-planning-table-panel.unplanned .xr-planning-table-head>div>span{background:#d99c24;color:#17130b}
.xr-planning-search{position:relative;display:block;width:min(320px,35vw);margin:0}.xr-planning-search input{width:100%;height:34px;padding:7px 34px 7px 11px!important;border-radius:6px!important;font-size:11px!important}.xr-planning-search>i{position:absolute;right:11px;top:10px;color:#98a0a2;font-size:12px}
.xr-planning-table-wrap{width:100%;overflow:auto;scrollbar-width:thin}
.xr-planning-table{width:100%;min-width:1320px;table-layout:fixed;border-collapse:collapse;background:#101415}
.xr-planning-table th,.xr-planning-table td{height:42px;padding:7px 9px!important;border-right:1px solid #293032;border-bottom:1px solid #293032;font-size:clamp(8.5px,.58vw,10.5px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.xr-planning-table th{height:34px;color:#b9c0c1;background:#171c1e;font-size:9px;font-weight:700;position:sticky;top:0;z-index:1}
.xr-planning-table tbody tr:hover{background:rgba(227,179,74,.045)}.xr-planning-table tbody tr.has-conflict{box-shadow:inset 3px 0 #ff6969}.xr-planning-table tbody tr[hidden]{display:none}
.xr-planning-table th:nth-child(1){width:92px}.xr-planning-table th:nth-child(2){width:66px}.xr-planning-table th:nth-child(3){width:155px}.xr-planning-table th:nth-child(4){width:120px}.xr-planning-table th:nth-child(5){width:105px}.xr-planning-table th:nth-child(6){width:125px}.xr-planning-table th:nth-child(7){width:74px}.xr-planning-table th:nth-child(8){width:95px}
.xr-table-assign{margin:0}.xr-table-assign select{width:100%;height:29px;padding:4px 24px 4px 7px!important;border-radius:5px!important;font-size:10px!important}
.xr-stop-count{text-align:center!important;font-weight:800;font-variant-numeric:tabular-nums}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html[data-theme="light"] .xr-planning-table-panel,html[data-theme="light"] .xr-planning-table{background:#fff}html[data-theme="light"] .xr-planning-table-head{background:#f8faf9!important}html[data-theme="light"] .xr-planning-table th{background:#eef1f1;color:#4c5558}html[data-theme="light"] .xr-planning-table td{color:#242a2d}
@media(max-width:850px){.xr-planning-table-head{align-items:flex-start;flex-direction:column}.xr-planning-search{width:100%}.xr-planning-table{min-width:1180px}}


/* Anonymous X-Route carrier pool. */
.xr-planning-table-panel.pool{border-color:#2d6f91;background:#101518}.xr-planning-table-panel.pool .xr-planning-table-head>div>i{color:#62bce9}.xr-planning-table-panel.pool .xr-planning-table-head>div>span{background:#185273;color:#dff5ff}
.xr-pool-privacy{display:flex;align-items:center;gap:6px;margin:0;color:#9ecce2;font-size:10px}.xr-pool-table{min-width:1260px}.xr-pool-table th:last-child{width:115px}.xr-pool-fee{color:#83dda0!important;font-weight:800}.xr-pool-table form,.xr-pool-action-cell form{margin:0}
.xr-pool-claim,.xr-pool-publish,.xr-pool-withdraw{white-space:nowrap;font-size:9px!important}.xr-pool-publish{border-color:#2d6f91;color:#9edcff}.xr-pool-withdraw{border-color:#765f25;color:#e8c668}
.xr-pool-order-form{max-width:980px;margin:auto}.xr-pool-order-form .gridform{grid-template-columns:repeat(3,minmax(0,1fr))}.xr-pool-form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--xr-border);padding-top:14px}.xr-pool-form-foot span{color:#9ecce2;font-size:11px}.xr-pool-created{max-width:680px;margin:8vh auto;text-align:center}.xr-pool-created>i{font-size:38px;color:var(--xr-green)}
@media(max-width:850px){.xr-pool-privacy{align-self:flex-start}.xr-pool-order-form .gridform{grid-template-columns:1fr}.xr-pool-form-foot{align-items:flex-start;flex-direction:column}}


/* Keep planning pool actions fully inside the table frame. */
.xr-planning-table-panel.unplanned .xr-planning-table th:last-child{width:132px}
.xr-pool-action-cell{padding:5px 7px!important;overflow:visible!important}
.xr-pool-action-cell form{width:100%;min-width:0}
.xr-pool-action-cell .smallbtn{display:flex;width:100%;min-width:0!important;max-width:100%;padding:4px 6px!important;align-items:center;justify-content:center;box-sizing:border-box}


/* Consistent planning header controls */
.xr-date-nav>a.smallbtn,
.xr-date-nav>button.smallbtn,
.xr-date-nav>a.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  height:46px;
  margin:0;
  border:1px solid #d7a52f;
  border-radius:6px;
  background:#e8b746;
  color:#17130a;
  box-shadow:none;
  font-family:Inter,system-ui,sans-serif;
  font-size:13px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
}
.xr-date-nav>a.smallbtn{width:46px;min-width:46px;padding:0}
.xr-date-nav>button.smallbtn,
.xr-date-nav>a.btn{padding:0 15px}
.xr-date-nav>a.smallbtn:hover,
.xr-date-nav>button.smallbtn:hover,
.xr-date-nav>a.btn:hover{background:#f0c45c;border-color:#e1b547;color:#17130a}
html[data-theme="light"] .xr-date-nav>a.smallbtn,
html[data-theme="light"] .xr-date-nav>button.smallbtn,
html[data-theme="light"] .xr-date-nav>a.btn{background:#e8b746!important;border-color:#c9911b!important;color:#17130a!important}


/* Precisely aligned planning date controls. */
.xr-date-nav{
  display:grid;
  grid-template-columns:46px 145px 46px auto auto;
  align-items:end;
  gap:8px;
}
.xr-date-nav>form{margin:0;min-width:0}
.xr-date-nav>form label{display:grid;grid-template-rows:14px 46px;gap:3px;margin:0}
.xr-date-nav>form label>span{display:flex;align-items:center;height:14px;line-height:14px}
.xr-date-nav input[type="date"]{
  box-sizing:border-box;
  width:145px;
  min-width:145px;
  height:46px!important;
  min-height:46px!important;
  margin:0;
  padding:0 12px!important;
  text-align:center;
  text-align-last:center;
  font-family:Inter,system-ui,sans-serif;
  font-size:13px!important;
  font-weight:700;
  line-height:46px;
}
.xr-date-nav>a.smallbtn,
.xr-date-nav>button.smallbtn,
.xr-date-nav>a.btn{
  box-sizing:border-box;
  align-self:end;
  height:46px!important;
  min-height:46px!important;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
}
@media(max-width:650px){
  .xr-date-nav{display:flex;align-items:flex-end}
  .xr-date-nav>form{flex:0 0 145px}
}
