
/* RentX V15 — Transport Operations */
.rx15-kpis{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin:0 0 16px;
}
.rx15-kpis>div,
.rx15-summary-grid>div{
    padding:15px;
    border:1px solid #e1e7ef;
    border-radius:13px;
    background:#fff;
}
.rx15-kpis span,
.rx15-summary-grid span,
.rx15-customer-meta span{
    display:block;
    color:#7b8799;
    font-size:11px;
}
.rx15-kpis strong,
.rx15-summary-grid b{
    display:block;
    margin-top:4px;
    color:#14243d;
    font-size:22px;
}
.rx15-summary-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px;
}
.rx15-summary-grid b{font-size:16px}
.rx15-two-col{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:14px;
}
.rx15-form{
    display:grid;
    gap:11px;
}
.rx15-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.rx15-form label{
    color:#536177;
    font-size:11px;
    font-weight:800;
}
.rx15-filterbar{
    display:grid;
    grid-template-columns:minmax(240px,1fr) 220px auto;
    gap:9px;
    margin-bottom:14px;
}
.rx15-table-wrap{overflow:auto}
.rx15-table{
    width:100%;
    border-collapse:collapse;
}
.rx15-table th,
.rx15-table td{
    padding:12px 10px;
    border-bottom:1px solid #e9edf3;
    text-align:start;
    vertical-align:middle;
}
.rx15-table th{
    color:#657187;
    font-size:10px;
    text-transform:uppercase;
}
.rx15-table td{font-size:12px}
.rx15-table td small{display:block;color:#8b96a7;margin-top:2px}
.rx15-pagination{margin-top:14px}
.rx15-status{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:0 9px;
    border-radius:999px;
    background:#eef2f7;
    color:#415067;
    font-size:10px;
    font-weight:900;
}
.rx15-status.awarded{background:#fff3cf;color:#876100}
.rx15-status.scheduled{background:#edf3ff;color:#315b9e}
.rx15-status.dispatched{background:#e9f0ff;color:#2651a2}
.rx15-status.in_transit{background:#e8f7ff;color:#15627d}
.rx15-status.delivered{background:#e8faef;color:#177548}
.rx15-status.completed{background:#ddf7e8;color:#0c6e3a}
.rx15-status.cancelled{background:#fde8e8;color:#9a2b2b}
.rx15-card-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.rx15-job-card{
    display:block;
    min-height:150px;
    padding:15px;
    border:1px solid #e1e7ef;
    border-radius:14px;
    background:#fff;
    color:#152238;
    text-decoration:none;
}
.rx15-job-card:hover{box-shadow:0 10px 28px rgba(11,31,59,.07)}
.rx15-job-card-head{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
}
.rx15-job-card h3{margin:16px 0 6px}
.rx15-job-card p{margin:0;color:#68758a}
.rx15-job-card small{display:block;margin-top:12px;color:#8b96a7}
.rx15-route{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:4px;
    margin:4px 0 18px;
}
.rx15-route>div{
    position:relative;
    min-height:62px;
    padding:10px 6px;
    border-radius:10px;
    background:#f7f9fc;
    text-align:center;
}
.rx15-route>div span{
    width:12px;
    height:12px;
    display:block;
    margin:0 auto 6px;
    border-radius:50%;
    background:#cbd5e1;
}
.rx15-route>div.current{
    background:#fff5cf;
    border:1px solid #f5cf4a;
}
.rx15-route>div.current span{background:#ffb800}
.rx15-route b{font-size:10px}
.rx15-finance-summary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
}
.rx15-finance-summary>div{
    padding:12px;
    border-radius:10px;
    background:#f7f9fb;
}
.rx15-finance-summary span,
.rx15-finance-summary b{display:block}
.rx15-finance-summary span{color:#7f8b9c;font-size:10px}
.rx15-finance-summary b{margin-top:3px;font-size:15px}
.rx15-finance-summary .total{
    grid-column:1/-1;
    background:#fff3cf;
}
.rx15-doc-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
}
.rx15-doc-grid>a{
    padding:11px;
    border:1px solid #e1e7ef;
    border-radius:10px;
    background:#fff;
    color:#21324a;
    text-decoration:none;
}
.rx15-doc-grid b,
.rx15-doc-grid span,
.rx15-doc-grid small{display:block}
.rx15-doc-grid span{margin-top:3px;color:#657287;font-size:11px}
.rx15-doc-grid small{margin-top:5px;color:#8c97a7;font-size:9px}
.rx15-list{display:grid;gap:8px}
.rx15-list>div{
    padding:11px;
    border:1px solid #e7ebf0;
    border-radius:10px;
    background:#fff;
}
.rx15-list b,
.rx15-list span{display:block}
.rx15-list span{margin-top:4px;color:#6f7c8e;font-size:11px}
.rx15-list form{margin-top:8px}
.rx15-timeline{display:grid;gap:0}
.rx15-timeline>div{
    display:grid;
    grid-template-columns:18px 1fr;
    gap:10px;
    position:relative;
    padding-bottom:16px;
}
.rx15-timeline>div>span{
    width:12px;height:12px;border-radius:50%;
    background:#ffb800;
    margin-top:4px;
}
.rx15-timeline>div:not(:last-child)::before{
    content:"";
    position:absolute;
    top:16px;
    bottom:0;
    inset-inline-start:5px;
    width:2px;
    background:#e2e8f0;
}
.rx15-timeline article{
    padding:0 0 8px;
}
.rx15-timeline article p{margin:4px 0;color:#657287}
.rx15-timeline article small{color:#8b96a7}
.rx15-customer-meta{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin:12px 0;
}
.rx15-customer-meta>div{
    padding:10px;
    border-radius:9px;
    background:#f7f9fb;
}
.rx15-customer-meta b{display:block;margin-top:3px}
.rx15-notice{
    margin:14px 0;
    padding:12px 14px;
    border:1px solid #f0d274;
    border-radius:10px;
    background:#fff9e6;
    color:#765a00;
    font-size:12px;
    font-weight:700;
}
@media(max-width:1100px){
    .rx15-kpis{grid-template-columns:repeat(3,1fr)}
    .rx15-summary-grid{grid-template-columns:repeat(2,1fr)}
    .rx15-card-grid{grid-template-columns:repeat(2,1fr)}
    .rx15-route{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
    .rx15-kpis,
    .rx15-summary-grid,
    .rx15-two-col,
    .rx15-form-grid,
    .rx15-card-grid,
    .rx15-finance-summary,
    .rx15-doc-grid,
    .rx15-customer-meta{grid-template-columns:1fr}
    .rx15-filterbar{grid-template-columns:1fr}
    .rx15-route{grid-template-columns:repeat(2,1fr)}
}

.rx15-job-banner{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:12px;
    margin-bottom:14px;
    padding:14px 16px;
    border:1px solid #f0d274;
    border-radius:13px;
    background:#fff9e6;
}
.rx15-job-banner>div span,.rx15-job-banner>div b{display:block}
.rx15-job-banner>div span{color:#806b28;font-size:10px}
.rx15-job-banner>div b{margin-top:3px;color:#27364e}
@media(max-width:760px){.rx15-job-banner{grid-template-columns:1fr}}
