/* rate-engine/styles.css
   Extracted from the approved production Rate Search UI baseline
   (2026-08-07). Unchanged from the original — pure extraction. */


*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',Arial,sans-serif;background:#0B1926;color:#DDE8F2;overflow:hidden}
#app{display:flex;flex-direction:column;height:100vh}

#hdr{background:#040C18;border-bottom:2px solid #00FFB3;padding:14px 22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}
#hdr h1{font-size:18px;color:#00C5FF;font-weight:700;letter-spacing:.5px}
#hdr p{font-size:10.5px;color:#5A7A96;margin-top:2px}
#hdr .upd{font-size:10px;color:#3A5A78;text-align:right}
.nav-action{border:1px solid #27547d;background:#0b213c;color:#cfe3fb;border-radius:5px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}.nav-action:hover{border-color:#1677ff;color:#fff}

#body{display:flex;flex:1;overflow:hidden}

/* LEFT SIDEBAR */
#sidebar{width:300px;background:#040C18;border-right:1px solid #1A3050;padding:18px 16px;overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column;gap:14px}
.field{position:relative}
.field label{display:block;font-size:10px;color:#5A7A96;letter-spacing:1px;font-weight:700;margin-bottom:6px;text-transform:uppercase}
select,input[type=text]{width:100%;padding:10px 12px;font-size:13.5px;background:#0D1F30;border:1px solid #1A3050;border-radius:5px;color:#DDE8F2;outline:none;transition:border-color .15s;font-family:inherit}
select:focus,input:focus{border-color:#00C5FF}
select:hover,input:hover{border-color:#2A4060}
#originSel,#podSel{display:none}
.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chip-row:empty{margin-top:0}
.chip{display:flex;align-items:center;gap:6px;background:#0D2A40;border:1px solid #00C5FF;border-radius:14px;padding:4px 6px 4px 12px;font-size:11.5px;color:#DDE8F2;font-weight:600}
.chip .chip-x{cursor:pointer;color:#5A7A96;font-size:13px;line-height:1;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chip .chip-x:hover{color:#fff;background:#F5A623}
.carrier-checks{display:flex;flex-direction:column;gap:2px;background:#0D1F30;border:1px solid #1A3050;border-radius:5px;padding:6px}
.carrier-check-row{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:13px;color:#DDE8F2;transition:background .12s}
.carrier-check-row:hover{background:#0A1524}
.carrier-check-row input{width:15px;height:15px;accent-color:#00C5FF;cursor:pointer}
.carrier-check-row.checked{color:#00FFB3;font-weight:700}

/* FINAL V6 Owner blueprint: business-weighted Rate Search density. */
.result-count{display:flex;align-items:center;gap:10px;min-height:25px;font-size:10px;color:#7896ae}
.lifecycle-default{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid #26557a;border-radius:999px;color:#83d9ff;font-size:8px;font-weight:800;letter-spacing:.5px}
.rate-table{width:100%;min-width:1120px;table-layout:auto!important}
.rate-table th,.rate-table td{padding:6px 7px!important;white-space:nowrap}
.rate-table th{font-size:8px!important;letter-spacing:.35px}
.rate-table td{font-size:10px!important}
.rate-table th:first-child,.rate-table td:first-child{width:72px;max-width:92px}
.rate-table th:nth-child(2),.rate-table td:nth-child(2),.rate-table th:nth-child(3),.rate-table td:nth-child(3){width:145px;max-width:190px}
.rate-table th:nth-child(n+4):nth-child(-n+8),.rate-table td:nth-child(n+4):nth-child(-n+8){width:68px}
.rate-table th:last-child,.rate-table td:last-child{width:auto;min-width:190px}
.nac-search .condition-cell{width:190px;max-width:230px;overflow:hidden;text-overflow:ellipsis;cursor:help}
.nac-search th:nth-child(5),.nac-search td:nth-child(5),.nac-search th:nth-child(6),.nac-search td:nth-child(6),.nac-search th:nth-child(7),.nac-search td:nth-child(7),.nac-search th:nth-child(8),.nac-search td:nth-child(8){width:66px}
.live-search th:nth-child(1),.live-search td:nth-child(1){width:88px}.live-search th:nth-child(2),.live-search td:nth-child(2){width:90px}.live-search th:nth-child(3),.live-search td:nth-child(3){width:170px}.live-search th:nth-child(4),.live-search td:nth-child(4),.live-search th:nth-child(5),.live-search td:nth-child(5){width:145px}.live-search th:nth-child(6),.live-search td:nth-child(6){width:80px}.live-search th:nth-child(7),.live-search td:nth-child(7){width:74px}.live-search th:nth-child(8),.live-search td:nth-child(8){width:82px}
.special-search th:nth-child(4),.special-search td:nth-child(4){width:100px}.special-search th:nth-child(5),.special-search td:nth-child(5){width:90px}.special-search th:nth-child(9),.special-search td:nth-child(9){width:auto;min-width:240px}
.rate-primary,.num{font-variant-numeric:tabular-nums}

#originDropdown,#podDropdown{position:absolute;top:100%;left:0;right:0;background:#040C18;border:1px solid #00C5FF;border-top:none;border-radius:0 0 5px 5px;max-height:240px;overflow-y:auto;z-index:50;display:none}
#originDropdown.show,#podDropdown.show{display:block}
.origin-opt{padding:8px 12px;font-size:13px;color:#DDE8F2;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.origin-opt:hover,.origin-opt.active{background:#0D2A40}
.origin-opt .tag{font-size:9px;padding:2px 6px;border-radius:2px;background:#1A3050;color:#5A7A96}
.origin-opt .tag.std{background:#001A0A;color:#1ED966}

#searchBtn{width:100%;padding:13px;font-size:14px;font-weight:700;background:linear-gradient(135deg,#00C5FF,#00FFB3);color:#040C18;border:none;border-radius:5px;cursor:pointer;letter-spacing:.5px;transition:opacity .15s;margin-top:2px}
#searchBtn:hover{opacity:.88}

.sidebar-divider{height:1px;background:#1A3050;margin:2px 0}
.sidebar-foot{font-size:9.5px;color:#2A4A65;line-height:1.7;margin-top:auto;padding-top:10px;border-top:1px solid #1A3050}
.sidebar-stat{font-size:10px;color:#5A7A96;line-height:1.6}
.sidebar-stat b{color:#8AACCF}

/* RIGHT RESULTS PANEL */
#main{flex:1;overflow-y:auto;padding:20px 26px}
#placeholder{text-align:center;color:#3A5A78;padding:80px 20px;font-size:13px;line-height:2}
#placeholder .ico{font-size:36px;margin-bottom:14px;opacity:.5}

.result-count{font-size:11px;color:#5A7A96;margin-bottom:12px}
.lane-hdr-block{margin-bottom:8px}
.lane-hdr{font-size:19px;font-weight:800;color:#DDE8F2;letter-spacing:.2px}
.lane-hdr b{color:#00C5FF}
.lane-arrow{color:#5A7A96;margin:0 4px;font-weight:400}
.lane-hdr-sub{font-size:12px;font-weight:500;color:#5A7A96;margin-left:8px}

.result-card{background:#0D1F30;border-radius:8px;border:1px solid #1A3050;padding:18px 20px;margin-bottom:14px;max-width:760px}
.result-card{border-left:4px solid #1ED966}
.rc-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.rc-title{font-size:15px;font-weight:700;color:#DDE8F2}
.rc-route{font-size:11px;color:#8AACCF;margin-top:3px}
.rc-badge{padding:4px 10px;border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.5px;white-space:nowrap}
.badge-fak{background:#001A0A;color:#1ED966;border:1px solid #1ED966}

.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.price-box{background:#040C18;border-radius:5px;padding:12px;text-align:center;border:1px solid #1A3050}
.price-box .lbl{font-size:9px;color:#5A7A96;letter-spacing:1px;margin-bottom:5px;font-weight:700}
.price-box .val{font-size:19px;font-weight:700;color:#00FFB3}
.price-box .val.dash{color:#3A5A78;font-weight:600}

.meta-row{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#8AACCF;margin-top:10px;padding-top:10px;border-top:1px solid #1A3050}
.meta-row span b{color:#DDE8F2;font-weight:600}

.feeder-note{background:#001525;border-left:3px solid #00C5FF;border-radius:0 4px 4px 0;padding:10px 13px;margin-bottom:14px;font-size:11.5px;color:#8AACCF;line-height:1.6}
.feeder-note b{color:#00C5FF}

.surcharge-alert{border-radius:5px;padding:11px 13px;margin-top:12px;font-size:11.5px;line-height:1.7;white-space:pre-line}
.surcharge-alert.conditional{background:#1A1000;border:1px solid #F5A623;color:#FFD9A0}
.surcharge-alert.conditional b{color:#F5A623}
.surcharge-alert.included{background:#06121C;border:1px solid #2A4060;color:#9FC4E8}
.surcharge-alert.included b{color:#5DA8E0}

#noresult{text-align:center;color:#5A7A96;padding:40px 20px;font-size:13px;background:#0D1F30;border-radius:8px;border:1px solid #1A3050;max-width:760px}
.pod-group-hdr{font-size:12px;font-weight:700;color:#00C5FF;letter-spacing:.5px;margin:22px 0 10px;padding-bottom:6px;border-bottom:1px solid #1A3050;max-width:1040px}

/* ---- Comparison table ---- */
.rate-table{width:100%;max-width:1040px;border-collapse:collapse;margin-bottom:22px;background:#0D1F30;border:1px solid #1A3050;border-radius:8px;overflow:hidden}
.rate-table th{background:#040C18;color:#5A7A96;font-size:10.5px;letter-spacing:.6px;font-weight:700;text-align:left;padding:14px 16px;cursor:pointer;user-select:none;white-space:nowrap;border-bottom:1px solid #1A3050;transition:color .12s}
.rate-table th.num{text-align:right}
.rate-table th:hover{color:#00C5FF}
.rate-table th.sorted{color:#00FFB3}
.rate-table th:last-child{cursor:default}
.rate-table th .sort-hint{opacity:.35;font-size:9px;margin-left:3px}
.rate-table th:hover .sort-hint{opacity:.7}
.rate-table td{padding:16px;font-size:13.5px;color:#DDE8F2;border-bottom:1px solid #132540;white-space:nowrap}
.rate-table tr.rate-row.alt{background:#0F2032}
.rate-table tr.rate-row:last-of-type td{border-bottom:none}
.rate-table td.num{text-align:right;font-weight:700;color:#00FFB3;font-variant-numeric:tabular-nums;position:relative}
.rate-table td.num.dash{color:#3A5A78;font-weight:600}
.rate-table tr.rate-row:hover td{background:#0F2438}
.rate-table .carrier-cell{font-weight:800;font-size:14.5px}
.rate-table .feeder-badge{font-size:9px;color:#8AACCF;font-weight:600;margin-left:6px;background:#0A1524;padding:2px 6px;border-radius:3px;border:1px solid #1A3050;white-space:nowrap}
.rate-table .valid-cell{color:#5A7A96;font-size:11.5px}
.rate-table .via-cell{color:#8AACCF;font-size:12px}
.rate-table .service-cell{color:#8AACCF;font-size:11.5px;font-family:monospace}
.rate-table .remark-cell{max-width:260px;white-space:normal;font-size:11px;line-height:1.4;cursor:pointer}
.business-os-embedded #sidebar{width:260px}
.business-os-embedded #results{padding-left:14px;padding-right:14px}
.business-os-embedded .rate-table .remark-cell{width:210px;max-width:260px;min-width:180px}
.business-os-embedded .quote-select-cell{position:sticky;left:0;z-index:3;background:#071321;box-shadow:8px 0 12px rgba(0,0,0,.28);min-width:88px}
.business-os-embedded td.quote-select-cell{background:#0D1F30}
.business-os-embedded tr.alt td.quote-select-cell{background:#0F2032}
.business-os-embedded #hdr{display:none}
.business-os-embedded #hdr h1{font-size:14px}
.business-os-embedded #hdr p{font-size:9px}
.business-os-embedded #body{flex-direction:column}
.business-os-embedded #sidebar{width:100%;overflow:visible;display:grid;grid-template-columns:minmax(135px,.8fr) minmax(125px,.7fr) minmax(150px,.9fr) minmax(360px,2.1fr) auto;gap:6px;padding:6px 10px;border-right:0;border-bottom:1px solid #1A3050;align-items:end;z-index:10}
.business-os-embedded .field label{font-size:8.5px;margin-bottom:3px;letter-spacing:.08em}
.business-os-embedded select,.business-os-embedded input[type=text]{padding:7px 8px;font-size:11.5px;min-height:32px}
.business-os-embedded #sidebar>.field{min-width:0}
.business-os-embedded #sidebar>.field:nth-of-type(1){grid-column:1}
.business-os-embedded #sidebar>.field:nth-of-type(2){grid-column:2}
.business-os-embedded #sidebar>.field:nth-of-type(3){grid-column:3}
.business-os-embedded #sidebar>.field:nth-of-type(4){grid-column:4}
.business-os-embedded #searchBtn{grid-column:5;width:auto;padding:8px 12px;margin:0;font-size:11px;min-height:32px}
.business-os-embedded .carrier-checks{flex-direction:row;flex-wrap:nowrap;gap:3px;padding:3px;min-height:32px;overflow-x:auto}
.business-os-embedded .carrier-check-row{gap:3px;padding:3px 5px;font-size:9.5px;border:1px solid #1A3050;white-space:nowrap}
.business-os-embedded .carrier-check-row input{width:12px;height:12px}
.business-os-embedded .chip-row{position:absolute;top:100%;left:0;right:0;z-index:40;background:#040C18;margin-top:2px}
.business-os-embedded .sidebar-divider,.business-os-embedded .sidebar-stat,.business-os-embedded .sidebar-foot{display:none}
.business-os-embedded #main{padding:6px 10px}
.business-os-embedded .result-count{margin-bottom:5px}.business-os-embedded .lane-hdr{font-size:14px}.business-os-embedded .pod-group-hdr{margin:6px 0 4px;padding-bottom:3px}
.business-os-embedded .rate-table{margin-bottom:8px;max-width:none;table-layout:auto}
.business-os-embedded .rate-table th{padding:5px 6px;font-size:8.5px}
.business-os-embedded .rate-table td{padding:5px 6px;font-size:10.5px;line-height:1.15}
.business-os-embedded .rate-table .carrier-cell{font-size:11px}.business-os-embedded .rate-table .valid-cell,.business-os-embedded .rate-table .service-cell{font-size:9.5px}
.business-os-embedded .rate-table .remark-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15}
@media(max-width:1050px){
  .business-os-embedded #sidebar{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}
  .business-os-embedded #sidebar>.field:nth-of-type(4){grid-column:1/4}
  .business-os-embedded #searchBtn{grid-column:4;grid-row:1/3;align-self:stretch}
}
.quote-select-control{display:flex;align-items:center;gap:5px;color:#00FFB3;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}
.quote-select-control input{accent-color:#00FFB3}
.rate-table tr.quote-selected td{background:rgba(0,255,179,.06)}
.rate-table .remark-cell:hover{text-decoration:underline}
.rate-table .remark-empty{color:#2A4A65}
.rate-table .remark-conditional{color:#F5A623}
.rate-table .remark-included{color:#5DA8E0}
.rate-table .detail-btn{background:none;border:1px solid #1A3050;color:#5A7A96;border-radius:4px;width:24px;height:24px;cursor:pointer;font-size:12px;line-height:1}
.rate-table .detail-btn:hover{border-color:#00C5FF;color:#00C5FF}
.rate-table tr.detail-row td{background:#0A1626;padding:0 16px 16px;white-space:normal}
.rate-table tr.detail-row .feeder-note{margin:10px 0 0}
.rate-table tr.detail-row .surcharge-alert{margin-top:10px;margin-bottom:0}
.sort-arrow{margin-left:3px;font-size:9px}
.price-bar-wrap{position:relative;display:inline-block;min-width:64px}
.price-bar-fill{position:absolute;right:0;top:50%;transform:translateY(-50%);height:22px;background:linear-gradient(90deg,rgba(0,255,179,.03),rgba(0,255,179,.16));border-radius:4px;z-index:0}
.price-bar-val{position:relative;z-index:1;padding-right:2px}
.pod-group-hdr:first-of-type{margin-top:6px}

/* Public Rate Inquiry is an external-customer product, separate from the internal Rate Search. */
.public-rate-inquiry{background:linear-gradient(135deg,#eef4fb,#fff);color:#10213b;overflow:auto}
.public-rate-inquiry #hdr{background:linear-gradient(100deg,#03142d,#103f7a);border-bottom:3px solid #1677ff;padding:16px 24px}.public-rate-inquiry #hdr h1{color:#fff}.public-rate-inquiry #hdr p,.public-rate-inquiry #hdr .upd{color:#bdd2ee}
.public-rate-inquiry #body{flex-direction:column}.public-rate-inquiry #sidebar{width:100%;display:grid;grid-template-columns:minmax(160px,1fr) minmax(140px,.7fr) minmax(160px,1fr) minmax(340px,1.7fr) auto;gap:9px;padding:14px 22px;background:#fff;border:0;border-bottom:1px solid #d6e0ed;overflow:visible;align-items:end}
.public-rate-inquiry #sidebar>.field{min-width:0}.public-rate-inquiry #sidebar label{color:#40536e;margin-bottom:4px}.public-rate-inquiry #sidebar select,.public-rate-inquiry #sidebar input[type=text]{background:#f9fbfe;color:#10213b;border-color:#cbd7e6;padding:9px}.public-rate-inquiry #searchBtn{width:auto;margin:0;padding:10px 18px;background:#1677ff;color:#fff}
.public-rate-inquiry .carrier-checks{flex-direction:row;flex-wrap:wrap;background:#f9fbfe;border-color:#cbd7e6;padding:4px}.public-rate-inquiry .carrier-check-row{color:#30445f;padding:4px 7px;font-size:11px}.public-rate-inquiry .carrier-check-row:hover{background:#eaf3ff}.public-rate-inquiry .carrier-check-row.checked{color:#075fd7}
.public-rate-inquiry .sidebar-divider,.public-rate-inquiry .sidebar-stat,.public-rate-inquiry .sidebar-foot{display:none}.public-rate-inquiry #main{padding:16px 22px;background:#f4f7fb}.public-rate-inquiry #placeholder,.public-rate-inquiry #noresult{color:#61738b;background:#fff;border-color:#d6e0ed;max-width:none}.public-rate-inquiry .result-count,.public-rate-inquiry .lane-hdr-sub{color:#61738b}.public-rate-inquiry .lane-hdr{color:#10213b}.public-rate-inquiry .pod-group-hdr{color:#075fd7;border-color:#d6e0ed;max-width:none}
.public-rate-inquiry .rate-table{max-width:none;background:#fff;border-color:#d6e0ed;box-shadow:0 8px 24px rgba(14,43,76,.08)}.public-rate-inquiry .rate-table th{background:#062c5f;color:#d9e8fb;border-color:#174d84;padding:9px 10px}.public-rate-inquiry .rate-table td{color:#1a2b42;border-color:#e5ebf3;padding:10px;font-size:12px}.public-rate-inquiry .rate-table tr.rate-row.alt{background:#f7faff}.public-rate-inquiry .rate-table tr.rate-row:hover td{background:#eef5ff}.public-rate-inquiry .rate-table td.num{color:#075fd7}.public-rate-inquiry .rate-table .valid-cell{color:#61738b}.public-rate-inquiry .rate-table .service-cell{color:#30445f}.public-rate-inquiry .rate-table .remark-cell{max-width:300px;color:#6a4b00}.public-rate-inquiry .rate-table tr.detail-row td{background:#f6f9fd}
@media(max-width:900px){.public-rate-inquiry #sidebar{grid-template-columns:1fr 1fr}.public-rate-inquiry #searchBtn{grid-column:1/-1}.public-rate-inquiry #main{padding:10px}}

/* P0 UAT: internal Rate Search retains a compact left command panel while
   the result table consumes every remaining pixel. REMARK is the flex column. */
.internal-rate-layout #body{flex-direction:row}
.internal-rate-layout #body{flex-direction:column}
.internal-rate-layout #sidebar{width:100%;display:grid;grid-template-columns:minmax(160px,1fr) minmax(145px,.8fr) minmax(160px,1fr) minmax(330px,1.8fr) minmax(135px,.7fr) auto;gap:7px;padding:8px 10px;border-right:0;border-bottom:1px solid #1A3050;overflow:visible;align-items:end}
.internal-rate-layout #sidebar>.field:nth-of-type(n){display:block;grid-column:auto}.internal-rate-layout #searchBtn{grid-column:auto;width:auto;min-height:34px}.internal-rate-layout #main{width:100%;padding:8px 10px}.internal-rate-layout .zone-badge{color:#63d7ff;font-size:9px;white-space:nowrap}.origin-opt small{color:#4e789b;font-size:8px}
.internal-rate-layout #sidebar{width:252px;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-right:1px solid #1A3050;border-bottom:0;overflow-y:auto;align-items:stretch}
.internal-rate-layout #sidebar>.field{display:block;min-width:0}
.internal-rate-layout #sidebar>.field:nth-of-type(n){grid-column:auto}
.internal-rate-layout .carrier-checks{display:grid;grid-template-columns:1fr 1fr;gap:2px;overflow:visible}
.internal-rate-layout #searchBtn{width:100%;min-height:32px;padding:8px 10px;margin-top:2px}
.internal-rate-layout #main{min-width:0;flex:1;padding:7px 10px}
.internal-rate-layout #results,.internal-rate-layout .pod-group-hdr,.internal-rate-layout .rate-table{width:100%;max-width:none}
.internal-rate-layout .rate-table{table-layout:auto}
.internal-rate-layout .rate-table th,.internal-rate-layout .rate-table td{padding:5px 6px}
.internal-rate-layout .rate-table .remark-cell{width:auto;min-width:180px;max-width:none;white-space:normal;overflow:visible;text-overflow:clip}
@media(max-width:900px){.internal-rate-layout #sidebar{width:220px}.internal-rate-layout .carrier-checks{grid-template-columns:1fr}}
/* Final internal Rate Search workspace: horizontal controls, full-width results. */
.internal-rate-layout #body{flex-direction:column!important}.internal-rate-layout #sidebar{width:100%!important;display:grid!important;grid-template-columns:minmax(160px,1fr) minmax(145px,.8fr) minmax(160px,1fr) minmax(330px,1.8fr) minmax(135px,.7fr) auto!important;gap:7px!important;padding:8px 10px!important;border-right:0!important;border-bottom:1px solid #1A3050!important;overflow:visible!important;align-items:end!important}.internal-rate-layout #sidebar>.field:nth-of-type(n){grid-column:auto!important}.internal-rate-layout #searchBtn{grid-column:auto!important;width:auto!important;min-height:34px!important}.internal-rate-layout #main{width:100%!important;min-width:0!important;flex:1!important;padding:8px 10px!important}@media(max-width:1050px){.internal-rate-layout #sidebar{grid-template-columns:repeat(3,minmax(150px,1fr)) auto!important}.internal-rate-layout #searchBtn{grid-column:4!important;grid-row:1/3!important}}

/* Final compact authority-search workspace. */
.internal-rate-layout #hdr{display:none!important}
.internal-rate-layout #sidebar{grid-template-columns:minmax(135px,.72fr) minmax(190px,1fr) minmax(190px,1fr) minmax(160px,.8fr) minmax(125px,.6fr) auto!important;background:#071725!important;position:relative;z-index:20}
.internal-rate-layout #sidebar select,.internal-rate-layout #sidebar input[type=text],.dropdown-summary,.selection-summary{height:35px!important;padding:7px 10px!important;background:#0d2434;border:1px solid #24435b;border-radius:5px;color:#dceaf5;font:600 12px inherit;text-align:left;width:100%}
.selection-summary,.dropdown-summary{cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selection-summary b,.dropdown-summary b{color:#00d8ff;margin-left:5px}
.selection-popover,.compact-dropdown{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:245px;max-height:290px;overflow:auto;background:#071522;border:1px solid #23bfe7;border-radius:6px;padding:6px;z-index:90;box-shadow:0 12px 30px #0009}
.selection-popover.show,.compact-dropdown.show{display:block}
.popover-head,.selected-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;color:#dceaf5;font-size:11px}
.popover-head{border-bottom:1px solid #203b50}.popover-head button,.selected-row button,.remark-cell button,.remark-panel button{border:0;background:transparent;color:#50d8ff;cursor:pointer}
.selected-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.carrier-checks.compact-dropdown{flex-direction:column!important}.carrier-check-row{padding:5px 7px!important}
.internal-rate-layout #searchBtn{height:35px!important;min-height:35px!important;padding:7px 16px!important;white-space:nowrap}
.table-scroll{overflow-x:hidden;overflow-y:auto;max-height:calc(100vh - 65px);width:100%}
.rate-table{min-width:0!important;width:100%!important;table-layout:fixed!important}
.rate-table col.col-quote{width:7%}.rate-table col.col-zone{width:7%}.rate-table col.col-carrier{width:7%}.rate-table col.col-pol,.rate-table col.col-pod{width:10%}.rate-table col.col-rate{width:5.3%}.rate-table col.col-ft{width:3.7%}.rate-table col.col-validity{width:9%}.rate-table col.col-payment{width:7.5%}.rate-table col.col-remark{width:auto}
.rate-table th,.rate-table td{padding:7px 5px!important;font-size:9.5px!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
.rate-table th{font-size:8.5px!important;letter-spacing:.35px}.rate-table .num{text-align:right!important;font-variant-numeric:tabular-nums}.port-cell{font-size:9px!important}.zone-badge{font-size:7.5px!important;padding:2px 4px!important}
.remark-cell{display:flex;align-items:center;gap:4px;max-width:none}.remark-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffb43a}.remark-cell button{flex:0 0 auto;font-size:13px}
.validity-cell{line-height:1.15}.validity-cell .validity-status{margin-top:3px}
.validity-status{display:block;font-size:9px;font-weight:800}.validity-status.current{color:#34e7a7}.validity-status.upcoming{color:#42c7ff}.validity-status.expired{color:#ff7c83}.eligibility{display:block;color:#7894aa;font-size:8px;margin-top:2px}
.remark-panel{position:fixed;right:18px;bottom:18px;width:min(520px,calc(100vw - 36px));background:#071522;border:1px solid #23bfe7;border-radius:8px;padding:14px;z-index:120;box-shadow:0 16px 48px #000b;color:#dceaf5}.remark-panel>div{display:flex;justify-content:space-between}.remark-panel p{white-space:pre-wrap;line-height:1.55;margin:12px 0 0}
@media(max-width:1100px){.internal-rate-layout #sidebar{grid-template-columns:repeat(3,minmax(170px,1fr))!important}.internal-rate-layout #searchBtn{grid-column:auto!important;grid-row:auto!important}}


/* ================================================================
   OWNER-APPROVED RATE SEARCH FINAL VIEW — 30 AUG 2026
   Compact filter row, overlay-only Carrier menu, zero horizontal scroll,
   aligned commercial columns, short Remark preview + detail.
   ================================================================ */
.internal-rate-layout #body{flex-direction:column!important}
.internal-rate-layout #sidebar{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(125px,.72fr) minmax(160px,1fr) minmax(160px,1fr) minmax(145px,.82fr) minmax(120px,.65fr) auto!important;
  gap:6px!important;
  padding:6px 10px!important;
  overflow:visible!important;
  border-right:0!important;
  border-bottom:1px solid #1A3050!important;
  align-items:end!important;
  background:#071725!important;
  position:relative!important;
  z-index:30!important;
}
.internal-rate-layout #sidebar>.field{position:relative!important;min-width:0!important}
.internal-rate-layout #searchBtn{height:34px!important;min-height:34px!important;padding:7px 13px!important;margin:0!important;white-space:nowrap!important}
.internal-rate-layout #main{width:100%!important;min-width:0!important;padding:6px 10px!important;overflow-x:hidden!important}
.internal-rate-layout #results{width:100%!important;max-width:none!important;overflow-x:hidden!important}

/* Carrier menu must never reserve space in the normal layout. */
.internal-rate-layout .carrier-checks.compact-dropdown{
  display:none!important;
  position:absolute!important;
  top:calc(100% + 4px)!important;
  left:0!important;
  right:auto!important;
  width:250px!important;
  max-height:290px!important;
  overflow:auto!important;
  grid-template-columns:1fr!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:6px!important;
  background:#071522!important;
  border:1px solid #23bfe7!important;
  border-radius:6px!important;
  box-shadow:0 12px 30px #0009!important;
  z-index:120!important;
}
.internal-rate-layout .carrier-checks.compact-dropdown.show{display:flex!important}
.internal-rate-layout .carrier-check-row{display:flex!important;align-items:center!important;width:100%!important;padding:6px 8px!important;font-size:10px!important}

/* Multi-port popovers overlay only; selected count never grows filter height. */
.internal-rate-layout .selection-popover{position:absolute!important;z-index:120!important}
.internal-rate-layout .selection-summary,.internal-rate-layout .dropdown-summary{height:34px!important;min-height:34px!important}

/* One-view table. Header and body share a fixed colgroup. */
.internal-rate-layout .table-scroll{width:100%!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100vh - 70px)!important}
.internal-rate-layout .rate-table{width:100%!important;min-width:0!important;max-width:none!important;table-layout:fixed!important;margin:0!important}
.internal-rate-layout .rate-table col.col-zone{width:7%}
.internal-rate-layout .rate-table col.col-carrier{width:7%}
.internal-rate-layout .rate-table col.col-pol{width:10.5%}
.internal-rate-layout .rate-table col.col-pod{width:10.5%}
.internal-rate-layout .rate-table col.col-rate{width:5.25%}
.internal-rate-layout .rate-table col.col-ft{width:3.5%}
.internal-rate-layout .rate-table col.col-validity{width:9.5%}
.internal-rate-layout .rate-table col.col-payment{width:8%}
.internal-rate-layout .rate-table col.col-remark{width:auto}
.internal-rate-layout .rate-table th,
.internal-rate-layout .rate-table td{
  padding:6px 5px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  vertical-align:middle!important;
}
.internal-rate-layout .rate-table th{font-size:8.25px!important;letter-spacing:.25px!important}
.internal-rate-layout .rate-table td{font-size:9.4px!important;line-height:1.15!important}
.internal-rate-layout .rate-table td.num,
.internal-rate-layout .rate-table th.num{text-align:right!important;font-variant-numeric:tabular-nums!important}
.internal-rate-layout .rate-table .port-cell{font-size:8.8px!important}
.internal-rate-layout .rate-table .carrier-cell{font-size:9.6px!important}
.internal-rate-layout .validity-cell{font-size:8.8px!important;line-height:1.08!important}
.internal-rate-layout .validity-status{font-size:7.6px!important;margin-top:2px!important}

/* Remark: enough original text to understand the condition, then ellipsis + info. */
.internal-rate-layout .remark-cell{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
  max-width:none!important;
  white-space:nowrap!important;
}
.internal-rate-layout .remark-cell span{
  min-width:0!important;
  flex:1 1 auto!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#ffb43a!important;
}
.internal-rate-layout .remark-cell button{flex:0 0 auto!important}

@media(max-width:1100px){
  .internal-rate-layout #sidebar{grid-template-columns:repeat(3,minmax(150px,1fr))!important}
  .internal-rate-layout #searchBtn{grid-column:auto!important;grid-row:auto!important}
}


/* Owner-approved Rate Search compact grid + inline remark, 30 Aug 2026 */
.internal-rate-layout .table-scroll{overflow-x:hidden!important;overflow-y:auto!important}
.internal-rate-layout .rate-table{width:100%!important;table-layout:fixed!important;min-width:0!important}
.internal-rate-layout .rate-table col.col-zone{width:7.5%}
.internal-rate-layout .rate-table col.col-carrier{width:8%}
.internal-rate-layout .rate-table col.col-pol{width:9.5%}
.internal-rate-layout .rate-table col.col-pod{width:11%}
.internal-rate-layout .rate-table col.col-rate{width:6.4%}
.internal-rate-layout .rate-table col.col-ft{width:4.8%}
.internal-rate-layout .rate-table col.col-validity{width:11%}
.internal-rate-layout .rate-table col.col-payment{width:8%}
.internal-rate-layout .rate-table col.col-remark{width:auto}
.internal-rate-layout .rate-table th,.internal-rate-layout .rate-table td{box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.internal-rate-layout .rate-table th:nth-child(n+6):nth-child(-n+10),.internal-rate-layout .rate-table td.num{text-align:right!important;font-variant-numeric:tabular-nums}
.internal-rate-layout .rate-table th:nth-last-child(4),.internal-rate-layout .rate-table td:nth-last-child(4){text-align:center!important}
.internal-rate-layout .remark-cell{padding:0 6px!important}
.internal-rate-layout .remark-preview{width:100%;display:flex;align-items:center;gap:5px;border:0;background:transparent;color:inherit;padding:7px 0;cursor:pointer;text-align:left;min-width:0}
.internal-rate-layout .remark-preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:#d7e7f5}
.internal-rate-layout .remark-preview i{font-style:normal;color:#53d8ff;flex:0 0 auto}
.internal-rate-layout .rate-remark-detail td{padding:0!important;border-top:0!important;background:#061728!important}
.internal-rate-layout .rate-remark-inline{margin:0 8px 8px;padding:10px 12px;border:1px solid #9a6a18;border-left:3px solid #f4a62a;border-radius:6px;background:rgba(244,166,42,.07);white-space:normal!important}
.internal-rate-layout .rate-remark-inline>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#ffc15c}
.internal-rate-layout .rate-remark-inline button{border:0;background:transparent;color:#8da8c0;font-size:18px;cursor:pointer}
.internal-rate-layout .rate-remark-inline p{margin:5px 0 0;color:#dce8f3;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
/* Owner-approved compact five-zone Rate Search alignment. Keep commercial columns contiguous; Remark absorbs spare width. */
.internal-rate-layout .rate-table col.col-zone{width:6.2%!important}
.internal-rate-layout .rate-table col.col-carrier{width:7.2%!important}
.internal-rate-layout .rate-table col.col-pol{width:9.2%!important}
.internal-rate-layout .rate-table col.col-pod{width:10.2%!important}
.internal-rate-layout .rate-table col.col-rate{width:5.7%!important}
.internal-rate-layout .rate-table col.col-ft{width:3.8%!important}
.internal-rate-layout .rate-table col.col-validity{width:10.2%!important}
.internal-rate-layout .rate-table col.col-payment{width:8%!important}
.internal-rate-layout .rate-table col.col-remark{width:auto!important}
.internal-rate-layout .rate-table th:nth-child(n+5):nth-child(-n+9),.internal-rate-layout .rate-table td.num{text-align:right!important}
.special-zone-table{table-layout:fixed!important;width:100%!important}
.special-zone-table th:nth-child(1){width:8%}.special-zone-table th:nth-child(2){width:9%}.special-zone-table th:nth-child(3){width:12%}.special-zone-table th:nth-child(4){width:14%}.special-zone-table th:nth-child(5){width:10%}.special-zone-table th:nth-child(6){width:8%}.special-zone-table th:nth-child(7){width:6%}.special-zone-table th:nth-child(8){width:5%}.special-zone-table th:nth-child(9){width:13%}.special-zone-table th:nth-child(10){width:auto}

/* Owner V5 zone-specific Rate Search */
.internal-rate-layout .results,.internal-rate-layout #results{min-height:calc(100vh - 185px)}
.internal-rate-layout .table-scroll{max-height:none!important;overflow:auto!important;min-height:calc(100vh - 235px)}
.rate-table.zone-specific{width:100%;table-layout:auto}.rate-table.zone-specific th,.rate-table.zone-specific td{white-space:nowrap}.rate-table .rate-primary{color:#20e5b1;font-weight:900}.rate-table .condition-cell{max-width:260px;white-space:normal!important;line-height:1.35}.rate-table .remark-preview{display:flex;align-items:center;gap:6px;max-width:250px;border:0;background:transparent;color:#c4d5e4;font:10px Helvetica;padding:0;text-align:left;cursor:pointer}.rate-table .remark-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rate-table .remark-preview i{font-style:normal;color:#58cfff;font-size:12px}.rate-popover{position:fixed;z-index:99999;max-width:420px;min-width:230px;padding:10px;border:1px solid #2c638c;border-radius:7px;background:#071a2c;color:#d7e5f1;box-shadow:0 16px 44px rgba(0,0,0,.5);font:10px/1.45 Helvetica}.rate-popover b{display:block;color:#57cfff;font-size:8px;margin-bottom:6px}.rate-popover p{margin:0;white-space:normal}.live-search th:nth-child(1){width:92px}.live-search th:nth-child(3){width:210px}.live-search th:nth-child(11),.special-search th:nth-child(9),.nac-search th:nth-child(12){width:250px}.special-search th:nth-child(3){width:190px}.validity-status{display:block;font-size:7px;margin-top:2px}
.rate-table tr.lifecycle-expired td{color:#718297!important;background:rgba(84,101,122,.12)!important;filter:saturate(.45)}
.rate-table tr.lifecycle-expired td.num,.rate-table tr.lifecycle-expired .rate-primary{color:#8090a2!important;text-decoration:line-through;text-decoration-thickness:1px}
.rate-table tr.lifecycle-expired .validity-status.expired{display:inline-block;color:#ff9b71!important;border:1px solid rgba(255,125,82,.5);background:rgba(255,100,55,.12);border-radius:3px;padding:2px 5px;text-decoration:none!important;font-weight:800;letter-spacing:.45px}
.rate-table tr.lifecycle-upcoming .validity-status.upcoming{color:#8f9dff;font-weight:800}.rate-table tr.lifecycle-current .validity-status.current{color:#42d9b0;font-weight:800}
.result-count .live-standard-term{float:right;font-size:8px;color:#6f8ca4;font-weight:500}.all-search th:nth-child(5){width:220px}.all-search th:nth-child(10){width:250px}


/* ================================================================
   FINAL V6 CLOSURE PATCH — RATE SEARCH COLUMN PARITY
   Header/body share schema-specific colgroups. POL/POD and long context
   open on click. LIVE SPACE keeps Equipment / Space / Rate contiguous.
   ================================================================ */
.internal-rate-layout .rate-table.weekly-search,
.internal-rate-layout .rate-table.market-search,
.internal-rate-layout .rate-table.nac-search,
.internal-rate-layout .rate-table.live-search,
.internal-rate-layout .rate-table.special-search{table-layout:fixed!important;width:100%!important;max-width:none!important}
.rate-value-preview{width:100%;min-width:0;display:flex;align-items:center;gap:4px;border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer;font:inherit}
.rate-value-preview span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rate-value-preview i{font-style:normal;color:#58d7ff;font-size:10px;flex:0 0 auto}
.rate-popover.value-popover{max-width:560px}.rate-popover.value-popover p{white-space:pre-wrap;overflow-wrap:anywhere}
/* WEEKLY FAK + MARKET */
.weekly-search col.c-carrier,.market-search col.c-carrier{width:7.2%}.weekly-search col.c-pol,.market-search col.c-pol{width:11.5%}.weekly-search col.c-pod,.market-search col.c-pod{width:13%}.weekly-search col.c-rate,.market-search col.c-rate{width:6.2%}.weekly-search col.c-ft,.market-search col.c-ft{width:4%}.weekly-search col.c-validity,.market-search col.c-validity{width:10.6%}.weekly-search col.c-payment,.market-search col.c-payment{width:8.2%}.weekly-search col.c-remark,.market-search col.c-remark{width:auto}
.weekly-search th:nth-child(n+4):nth-child(-n+8),.market-search th:nth-child(n+4):nth-child(-n+8){text-align:right!important}
/* NAC / BCO */
.nac-search col.n-carrier{width:6.5%}.nac-search col.n-pol{width:9%}.nac-search col.n-pod{width:10%}.nac-search col.n-condition{width:14.5%}.nac-search col.n-rate{width:5.6%}.nac-search col.n-ft{width:3.7%}.nac-search col.n-validity{width:10.2%}.nac-search col.n-payment{width:7.5%}.nac-search col.n-remark{width:auto}
.nac-search .condition-cell{white-space:nowrap!important;max-width:none!important}.nac-search th:nth-child(n+5):nth-child(-n+9){text-align:right!important}
/* LIVE SPACE — route readable, Equipment / Space / Rate kept together */
.live-search col.l-etd{width:7.4%}.live-search col.l-carrier{width:6.8%}.live-search col.l-vessel{width:13%}.live-search col.l-pol{width:11%}.live-search col.l-pod{width:12%}.live-search col.l-equipment{width:7.2%}.live-search col.l-space{width:5.3%}.live-search col.l-rate{width:6.6%}.live-search col.l-ft{width:3.7%}.live-search col.l-payment{width:7.2%}.live-search col.l-remark{width:auto}
.live-search th:nth-child(6),.live-search th:nth-child(7),.live-search th:nth-child(8),.live-search td.live-core{background:rgba(28,176,212,.035)}.live-search td.live-core{border-left:0;border-right:0}.live-search th:nth-child(7),.live-search th:nth-child(8){text-align:right!important}
/* SPECIAL */
.special-search col.s-carrier{width:7%}.special-search col.s-pol{width:18%}.special-search col.s-pod{width:20%}.special-search col.s-equipment{width:9%}.special-search col.s-rate{width:7%}.special-search col.s-ft{width:4%}.special-search col.s-validity{width:11%}.special-search col.s-payment{width:8%}.special-search col.s-remark{width:auto}
.special-search th:nth-child(5),.special-search th:nth-child(6){text-align:right!important}
/* Remove legacy nth-child width assumptions from zone-specific views. */
.live-search th:nth-child(1),.live-search th:nth-child(3),.live-search th:nth-child(11),.special-search th:nth-child(3),.special-search th:nth-child(9),.nac-search th:nth-child(12){width:auto!important}

/* ================================================================
   RATE SEARCH FINAL UX CLOSURE · 01 SEP 2026
   Scope locked to rate-engine only. RATE / SUPPLY MASTER frozen.
   ================================================================ */
.rate-search-final #sidebar{
  grid-template-columns:minmax(118px,.68fr) minmax(155px,.93fr) minmax(155px,.93fr) minmax(132px,.76fr) minmax(118px,.62fr) minmax(132px,.78fr) 76px auto!important;
  gap:6px!important;align-items:end!important;
}
.rate-search-final #sidebar .field>label{display:flex!important;align-items:center!important;gap:5px!important}
.rate-search-final #sidebar .field>label small{font-size:7px!important;color:#607f98!important;letter-spacing:.4px!important}
.rate-search-final .clear-all-btn{height:34px!important;border:1px solid #325c7a!important;background:#0b2031!important;color:#b8d0e2!important;border-radius:5px!important;font-weight:800!important;font-size:9px!important;cursor:pointer!important;white-space:nowrap!important}
.rate-search-final .clear-all-btn:hover{border-color:#36c8f0!important;color:#fff!important}
.rate-search-final .lifecycle-field select{height:34px!important}
.rate-search-final .date-range{position:absolute;top:calc(100% + 4px);left:0;display:flex;gap:4px;z-index:125}
.rate-search-final .date-range input:not([hidden]){display:block;width:132px;height:32px;background:#071522;color:#dceaf5;border:1px solid #23bfe7;border-radius:5px;padding:4px 6px;font-size:9px}
.rate-search-final .compact-dropdown.port-dropdown,.rate-search-final .selection-popover,.rate-search-final .carrier-checks.compact-dropdown{max-height:calc(100vh - 175px)!important;min-height:0!important;overflow-y:auto!important}
.rate-search-final .port-dropdown{width:max(100%,300px)!important;right:auto!important}
.rate-search-final .origin-opt{padding:8px 9px!important;font-size:10px!important;border-bottom:1px solid #102a3c!important;cursor:pointer!important}
.rate-search-final .origin-opt:hover{background:#0d2b40!important;color:#fff!important}
.rate-search-final .dropdown-limit{padding:8px;color:#ffbd50;font-size:9px;border-bottom:1px solid #203b50}
.rate-search-final .sort-head{display:inline-flex;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;padding:0;cursor:pointer;width:100%;white-space:nowrap}
.rate-search-final .sort-head span{font-size:7px;color:#4b8baa}
.rate-search-final .rate-table th,.rate-search-final .rate-table td{text-align:center!important;vertical-align:middle!important}
.rate-search-final .rate-table td.num,.rate-search-final .rate-table th.num{text-align:center!important}
.rate-search-final .rate-value-preview{justify-content:center!important;text-align:center!important}
.rate-search-final .remark-preview{justify-content:center!important;width:100%!important}
.rate-search-final .district-cell{color:#49d9ff;font-weight:800}.rate-search-final .supplier-cell{color:#9cc8de;font-weight:700}.rate-search-final .etd-cell b{color:#29e6d1}

/* WEEKLY FAK: compact left/price block, preserve room for validity/payment. */
.rate-search-final .weekly-search .w-carrier{width:6.5%}.rate-search-final .weekly-search .w-pol{width:10%}.rate-search-final .weekly-search .w-pod{width:14%}
.rate-search-final .weekly-search .w-rate{width:5.5%}.rate-search-final .weekly-search .w-ft{width:3.6%}.rate-search-final .weekly-search .w-validity{width:10.5%}.rate-search-final .weekly-search .w-payment{width:8.5%}.rate-search-final .weekly-search .w-remark{width:auto}

/* NAC / BCO */
.rate-search-final .nac-search .n-carrier{width:5.7%}.rate-search-final .nac-search .n-district{width:7.2%}.rate-search-final .nac-search .n-pol{width:8.5%}.rate-search-final .nac-search .n-pod{width:10.5%}.rate-search-final .nac-search .n-condition{width:13%}.rate-search-final .nac-search .n-rate{width:5.2%}.rate-search-final .nac-search .n-ft{width:3.4%}.rate-search-final .nac-search .n-validity{width:9%}.rate-search-final .nac-search .n-payment{width:8%}.rate-search-final .nac-search .n-remark{width:auto}

/* LIVE SPACE: route compact, Equipment + Available Space + Rate visually grouped. */
.rate-search-final .live-search .l-district{width:6.4%}.rate-search-final .live-search .l-supplier{width:5.3%}.rate-search-final .live-search .l-carrier{width:5.8%}.rate-search-final .live-search .l-etd{width:6.8%}.rate-search-final .live-search .l-vessel{width:11.2%}.rate-search-final .live-search .l-pol{width:9%}.rate-search-final .live-search .l-pod{width:10.5%}.rate-search-final .live-search .l-equipment{width:6.5%}.rate-search-final .live-search .l-space{width:6.5%}.rate-search-final .live-search .l-rate{width:6.5%}.rate-search-final .live-search .l-ft{width:3.5%}.rate-search-final .live-search .l-payment{width:7.8%}.rate-search-final .live-search .l-remark{width:auto}
.rate-search-final .live-search th:nth-child(8),.rate-search-final .live-search th:nth-child(9),.rate-search-final .live-search th:nth-child(10),.rate-search-final .live-search td:nth-child(8),.rate-search-final .live-search td:nth-child(9),.rate-search-final .live-search td:nth-child(10){background:#0a2233!important}

/* MARKET: compact route block and dense four-rate group. */
.rate-search-final .market-search .m-district{width:6.5%}.rate-search-final .market-search .m-supplier{width:5.3%}.rate-search-final .market-search .m-carrier{width:6%}.rate-search-final .market-search .m-pol{width:8.2%}.rate-search-final .market-search .m-pod{width:12.5%}.rate-search-final .market-search .m-rate{width:5.25%}.rate-search-final .market-search .m-ft{width:3.4%}.rate-search-final .market-search .m-validity{width:9%}.rate-search-final .market-search .m-payment{width:7.8%}.rate-search-final .market-search .m-remark{width:auto}

/* SPECIAL: POD/Equipment/Rate pull left, metadata gets the remaining space. */
.rate-search-final .special-search .s-district{width:7%}.rate-search-final .special-search .s-supplier{width:5%}.rate-search-final .special-search .s-carrier{width:5.5%}.rate-search-final .special-search .s-pol{width:13%}.rate-search-final .special-search .s-pod{width:14.5%}.rate-search-final .special-search .s-equipment{width:7%}.rate-search-final .special-search .s-rate{width:6.5%}.rate-search-final .special-search .s-ft{width:3.5%}.rate-search-final .special-search .s-validity{width:9%}.rate-search-final .special-search .s-payment{width:8%}.rate-search-final .special-search .s-remark{width:auto}
.rate-search-final .equipment-tag{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:3px 6px;border:1px solid #26506a;border-radius:5px;font-weight:900;font-size:8.6px;letter-spacing:.15px;background:#0a2231;color:#dceaf5}
.rate-search-final .equipment-tag.fam-20ig{border-color:#18bda2;color:#70f2d4}.rate-search-final .equipment-tag.fam-40ig{border-color:#2f9ce8;color:#8ed2ff}.rate-search-final .equipment-tag.fam-oh{border-color:#d9a23d;color:#ffd17a}.rate-search-final .equipment-tag.fam-owoh{border-color:#a26be8;color:#d8b5ff}.rate-search-final .equipment-tag.fam-ow{border-color:#e47763;color:#ffb0a0}.rate-search-final .equipment-tag.fam-reefer{border-color:#55b6bf;color:#9ef5ff}

/* ALL: remove backend RESOURCE concept; commercial comparison only. */
.rate-search-final .all-search .a-zone{width:7%}.rate-search-final .all-search .a-carrier{width:7%}.rate-search-final .all-search .a-pol{width:10%}.rate-search-final .all-search .a-pod{width:12%}.rate-search-final .all-search .a-eq{width:8%}.rate-search-final .all-search .a-rate{width:6%}.rate-search-final .all-search .a-ft{width:4%}.rate-search-final .all-search .a-time{width:13%}.rate-search-final .all-search .a-payment{width:9%}.rate-search-final .all-search .a-remark{width:auto}

.rate-search-final .table-scroll{max-height:calc(100vh - 150px)!important;min-height:calc(100vh - 230px)!important;overflow-y:auto!important;overflow-x:hidden!important}
.rate-search-final .rate-popover{position:fixed;z-index:9999;max-width:min(520px,calc(100vw - 24px));background:#071522;border:1px solid #23bfe7;border-radius:7px;padding:10px 12px;color:#dceaf5;box-shadow:0 16px 42px #000b}.rate-search-final .rate-popover p{white-space:pre-wrap;margin:7px 0 0;line-height:1.45}
@media(max-width:1250px){.rate-search-final #sidebar{grid-template-columns:repeat(4,minmax(145px,1fr))!important}.rate-search-final #searchBtn,.rate-search-final .clear-all-btn{grid-column:auto!important}}
\n\n/* ================================================================
   RATE SEARCH FINAL MICRO-CLOSURE — C62D651B — 01 SEP 2026
   Scope: Rate Search only. Rate / Supply Master remains frozen.
   ================================================================ */
.internal-rate-layout #main{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  height:calc(100vh - 48px)!important;
  padding:6px 10px 0!important;
}
.internal-rate-layout #results{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
}
.internal-rate-layout .table-scroll{
  flex:1 1 auto!important;
  min-height:calc(100vh - 116px)!important;
  max-height:none!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:0!important;
}
.internal-rate-layout .rate-table{
  margin-bottom:0!important;
  height:auto!important;
}
.internal-rate-layout .rate-table th,
.internal-rate-layout .rate-table td{
  text-align:center!important;
  vertical-align:middle!important;
}
.internal-rate-layout .rate-table td.num,
.internal-rate-layout .rate-table th.num{
  text-align:center!important;
}
.internal-rate-layout .remark-preview,
.internal-rate-layout .rate-value-preview{
  justify-content:center!important;
  text-align:center!important;
}
/* Weekly/NAC/Market: tighter commercial price block; leave room for Validity/Payment/Remark. */
.weekly-search col.w-carrier{width:7%}.weekly-search col.w-pol{width:11%}.weekly-search col.w-pod{width:12%}
.weekly-search col.w-rate{width:5.4%}.weekly-search col.w-ft{width:3.8%}.weekly-search col.w-validity{width:10.5%}.weekly-search col.w-payment{width:9%}.weekly-search col.w-remark{width:auto}
.nac-search col.n-carrier{width:6%}.nac-search col.n-district{width:8%}.nac-search col.n-pol{width:9%}.nac-search col.n-pod{width:10%}.nac-search col.n-condition{width:12%}.nac-search col.n-rate{width:5.1%}.nac-search col.n-ft{width:3.6%}.nac-search col.n-validity{width:10%}.nac-search col.n-payment{width:8.5%}.nac-search col.n-remark{width:auto}
.market-search col.m-district{width:7%}.market-search col.m-supplier{width:6%}.market-search col.m-carrier{width:7%}.market-search col.m-pol{width:9%}.market-search col.m-pod{width:12%}.market-search col.m-rate{width:5.5%}.market-search col.m-ft{width:3.5%}.market-search col.m-validity{width:10%}.market-search col.m-payment{width:8.5%}.market-search col.m-remark{width:auto}
/* Live Space: one visual row, core commercial triplet kept together. */
.live-search thead th{background:#071f33!important}
.live-search col.l-district{width:7%}.live-search col.l-supplier{width:6%}.live-search col.l-carrier{width:7%}.live-search col.l-etd{width:7.5%}.live-search col.l-vessel{width:13%}.live-search col.l-pol{width:10%}.live-search col.l-pod{width:10%}.live-search col.l-equipment{width:7%}.live-search col.l-space{width:6.5%}.live-search col.l-rate{width:6.5%}.live-search col.l-ft{width:3.5%}.live-search col.l-payment{width:8%}.live-search col.l-remark{width:auto}
/* Special: Equipment + Rate are a paired visual lane; rate inherits equipment-family accent. */
.special-search col.s-district{width:7%}.special-search col.s-supplier{width:6%}.special-search col.s-carrier{width:6%}.special-search col.s-pol{width:12%}.special-search col.s-pod{width:13%}.special-search col.s-equipment{width:8%}.special-search col.s-rate{width:7%}.special-search col.s-ft{width:3.5%}.special-search col.s-validity{width:10%}.special-search col.s-payment{width:8%}.special-search col.s-remark{width:auto}
.special-search td.equipment-rate{font-weight:800!important}
.special-search td.equipment-rate.fam-20ig{color:#24e7c5!important}.special-search td.equipment-rate.fam-40ig{color:#62b9ff!important}.special-search td.equipment-rate.fam-oh{color:#ffc24b!important}.special-search td.equipment-rate.fam-owoh{color:#cf8cff!important}.special-search td.equipment-rate.fam-ow{color:#ff8a66!important}.special-search td.equipment-rate.fam-reefer{color:#7fe3ff!important}
.sortable-th{cursor:pointer!important}.sortable-th:hover{color:#50d8ff!important}.sort-arrow{display:inline-block!important;min-width:9px!important}

/* ================================================================
   RATE SEARCH VIEWPORT + COLUMN ALIGNMENT CLOSURE — 01 SEP 2026
   Scope: Rate Search only. Rate / Supply Master remains frozen.
   ================================================================ */
.rate-search-final #main{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
}
.rate-search-final #results{
  overflow:hidden!important;
}
.rate-search-final .result-count{
  flex:0 0 auto!important;
}
.rate-search-final .table-scroll{
  flex:1 1 0!important;
  height:0!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  background:#081a29!important;
}
.rate-search-final .rate-table{
  table-layout:fixed!important;
}
.rate-search-final .rate-table thead th{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  text-align:center!important;
  vertical-align:middle!important;
}
.rate-search-final .rate-table tbody td{
  text-align:center!important;
  vertical-align:middle!important;
}

/* NAC / BCO: compact expandable condition lane without changing its data. */
.rate-search-final .nac-search col.n-carrier{width:6%}
.rate-search-final .nac-search col.n-district{width:7.5%}
.rate-search-final .nac-search col.n-pol{width:8.5%}
.rate-search-final .nac-search col.n-pod{width:10%}
.rate-search-final .nac-search col.n-condition{width:10.5%}
.rate-search-final .nac-search col.n-rate{width:5.3%}
.rate-search-final .nac-search col.n-ft{width:3.5%}
.rate-search-final .nac-search col.n-validity{width:9.5%}
.rate-search-final .nac-search col.n-payment{width:8.5%}
.rate-search-final .nac-search col.n-remark{width:auto}

/* LIVE SPACE: readable route lanes and a compact commercial triplet. */
.rate-search-final .live-search col.l-district{width:6%}
.rate-search-final .live-search col.l-supplier{width:5%}
.rate-search-final .live-search col.l-carrier{width:5.5%}
.rate-search-final .live-search col.l-etd{width:6.5%}
.rate-search-final .live-search col.l-vessel{width:11%}
.rate-search-final .live-search col.l-pol{width:10%}
.rate-search-final .live-search col.l-pod{width:10%}
.rate-search-final .live-search col.l-equipment{width:6.5%}
.rate-search-final .live-search col.l-space{width:6%}
.rate-search-final .live-search col.l-rate{width:6%}
.rate-search-final .live-search col.l-ft{width:3.5%}
.rate-search-final .live-search col.l-payment{width:8.5%}
.rate-search-final .live-search col.l-remark{width:auto}

/* MARKET: balanced four-rate block with protected metadata lanes. */
.rate-search-final .market-search col.m-district{width:6%}
.rate-search-final .market-search col.m-supplier{width:5%}
.rate-search-final .market-search col.m-carrier{width:6%}
.rate-search-final .market-search col.m-pol{width:8.5%}
.rate-search-final .market-search col.m-pod{width:11.5%}
.rate-search-final .market-search col.m-rate{width:5.8%}
.rate-search-final .market-search col.m-ft{width:3.5%}
.rate-search-final .market-search col.m-validity{width:9.5%}
.rate-search-final .market-search col.m-payment{width:8.5%}
.rate-search-final .market-search col.m-remark{width:auto}

/* ================================================================
   RATE SEARCH SHARED COLUMN GEOMETRY CLOSURE — 02 SEP 2026
   Header and body remain driven by the same table colgroup.
   ================================================================ */
/* ALL: shift the complete commercial/right-side group left. */
.rate-search-final .all-search col.a-zone{width:6%}
.rate-search-final .all-search col.a-carrier{width:6%}
.rate-search-final .all-search col.a-pol{width:9%}
.rate-search-final .all-search col.a-pod{width:11%}
.rate-search-final .all-search col.a-eq{width:8%}
.rate-search-final .all-search col.a-rate{width:6%}
.rate-search-final .all-search col.a-ft{width:4%}
.rate-search-final .all-search col.a-time{width:13%}
.rate-search-final .all-search col.a-payment{width:9%}
.rate-search-final .all-search col.a-remark{width:auto}

/* WEEKLY FAK: compact route lanes so the continuous price block starts earlier. */
.rate-search-final .weekly-search col.w-carrier{width:6%}
.rate-search-final .weekly-search col.w-pol{width:9.5%}
.rate-search-final .weekly-search col.w-pod{width:11%}
.rate-search-final .weekly-search col.w-rate{width:5.2%}
.rate-search-final .weekly-search col.w-ft{width:3.6%}
.rate-search-final .weekly-search col.w-validity{width:10.5%}
.rate-search-final .weekly-search col.w-payment{width:9%}
.rate-search-final .weekly-search col.w-remark{width:auto}

/* LIVE SPACE: shift Vessel through Rate left as one continuous group. */
.rate-search-final .live-search col.l-district{width:5.5%}
.rate-search-final .live-search col.l-supplier{width:4.5%}
.rate-search-final .live-search col.l-carrier{width:5%}
.rate-search-final .live-search col.l-etd{width:6%}
.rate-search-final .live-search col.l-vessel{width:10.5%}
.rate-search-final .live-search col.l-pol{width:9.5%}
.rate-search-final .live-search col.l-pod{width:9.5%}
.rate-search-final .live-search col.l-equipment{width:6%}
.rate-search-final .live-search col.l-space{width:5.7%}
.rate-search-final .live-search col.l-rate{width:5.7%}
.rate-search-final .live-search col.l-ft{width:3.5%}
.rate-search-final .live-search col.l-payment{width:8.5%}
.rate-search-final .live-search col.l-remark{width:auto}

/* MARKET: tighten route + four-rate block without changing field order. */
.rate-search-final .market-search col.m-district{width:5.5%}
.rate-search-final .market-search col.m-supplier{width:4.5%}
.rate-search-final .market-search col.m-carrier{width:5.5%}
.rate-search-final .market-search col.m-pol{width:8%}
.rate-search-final .market-search col.m-pod{width:10.5%}
.rate-search-final .market-search col.m-rate{width:5.5%}
.rate-search-final .market-search col.m-ft{width:3.5%}
.rate-search-final .market-search col.m-validity{width:9.5%}
.rate-search-final .market-search col.m-payment{width:8.5%}
.rate-search-final .market-search col.m-remark{width:auto}

/* SPECIAL: bring POD and its paired Rate lane left through shared geometry. */
.rate-search-final .special-search col.s-district{width:5.5%}
.rate-search-final .special-search col.s-supplier{width:4.5%}
.rate-search-final .special-search col.s-carrier{width:5%}
.rate-search-final .special-search col.s-pol{width:10.5%}
.rate-search-final .special-search col.s-pod{width:12%}
.rate-search-final .special-search col.s-equipment{width:7.5%}
.rate-search-final .special-search col.s-rate{width:6.5%}
.rate-search-final .special-search col.s-ft{width:3.5%}
.rate-search-final .special-search col.s-validity{width:10%}
.rate-search-final .special-search col.s-payment{width:8%}
.rate-search-final .special-search col.s-remark{width:auto}

/* OWNER VISUAL ALIGNMENT FOLLOW-UP — move complete data groups further left. */
.rate-search-final .all-search col.a-zone{width:5.5%}
.rate-search-final .all-search col.a-carrier{width:5.5%}
.rate-search-final .all-search col.a-pol{width:8%}
.rate-search-final .all-search col.a-pod{width:10%}
.rate-search-final .all-search col.a-eq{width:7.5%}
.rate-search-final .all-search col.a-rate{width:5.5%}
.rate-search-final .all-search col.a-ft{width:3.5%}
.rate-search-final .all-search col.a-time{width:13%}
.rate-search-final .all-search col.a-payment{width:8.5%}
.rate-search-final .all-search col.a-remark{width:auto}

.rate-search-final .weekly-search col.w-carrier{width:5.5%}
.rate-search-final .weekly-search col.w-pol{width:8%}
.rate-search-final .weekly-search col.w-pod{width:10%}
.rate-search-final .weekly-search col.w-rate{width:4.8%}
.rate-search-final .weekly-search col.w-ft{width:3.5%}
.rate-search-final .weekly-search col.w-validity{width:10.5%}
.rate-search-final .weekly-search col.w-payment{width:8.5%}
.rate-search-final .weekly-search col.w-remark{width:auto}

.rate-search-final .nac-search col.n-carrier{width:5.5%}
.rate-search-final .nac-search col.n-district{width:6.5%}
.rate-search-final .nac-search col.n-pol{width:7.5%}
.rate-search-final .nac-search col.n-pod{width:8.5%}
.rate-search-final .nac-search col.n-condition{width:10.5%}
.rate-search-final .nac-search col.n-rate{width:5.1%}
.rate-search-final .nac-search col.n-ft{width:3.5%}
.rate-search-final .nac-search col.n-validity{width:9.5%}
.rate-search-final .nac-search col.n-payment{width:8.5%}
.rate-search-final .nac-search col.n-remark{width:auto}

.rate-search-final .live-search col.l-district{width:5%}
.rate-search-final .live-search col.l-supplier{width:4%}
.rate-search-final .live-search col.l-carrier{width:4.5%}
.rate-search-final .live-search col.l-etd{width:4.5%}
.rate-search-final .live-search col.l-vessel{width:10%}
.rate-search-final .live-search col.l-pol{width:9%}
.rate-search-final .live-search col.l-pod{width:9%}
.rate-search-final .live-search col.l-equipment{width:6%}
.rate-search-final .live-search col.l-space{width:5.5%}
.rate-search-final .live-search col.l-rate{width:5.5%}
.rate-search-final .live-search col.l-ft{width:3.5%}
.rate-search-final .live-search col.l-payment{width:8.5%}
.rate-search-final .live-search col.l-remark{width:auto}

.rate-search-final .market-search col.m-district{width:4.5%}
.rate-search-final .market-search col.m-supplier{width:3.5%}
.rate-search-final .market-search col.m-carrier{width:4.5%}
.rate-search-final .market-search col.m-pol{width:7.5%}
.rate-search-final .market-search col.m-pod{width:10%}
.rate-search-final .market-search col.m-rate{width:5.3%}
.rate-search-final .market-search col.m-ft{width:3.5%}
.rate-search-final .market-search col.m-validity{width:9.5%}
.rate-search-final .market-search col.m-payment{width:8.5%}
.rate-search-final .market-search col.m-remark{width:auto}

.rate-search-final .special-search col.s-district{width:4.5%}
.rate-search-final .special-search col.s-supplier{width:3.5%}
.rate-search-final .special-search col.s-carrier{width:4.5%}
.rate-search-final .special-search col.s-pol{width:8.5%}
.rate-search-final .special-search col.s-pod{width:11%}
.rate-search-final .special-search col.s-equipment{width:7%}
.rate-search-final .special-search col.s-rate{width:6%}
.rate-search-final .special-search col.s-ft{width:3.5%}
.rate-search-final .special-search col.s-validity{width:9.5%}
.rate-search-final .special-search col.s-payment{width:7.5%}
.rate-search-final .special-search col.s-remark{width:auto}

/* FINAL HEADER/BODY PARITY: retire every legacy cell-level width so the
   schema-specific colgroup is the single geometry authority. */
.rate-search-final .rate-table th,
.rate-search-final .rate-table td{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
}

/* Long commercial values receive real column width, not label offsets. */
.rate-search-final .all-search col.a-time{width:18%}
.rate-search-final .all-search col.a-payment{width:11%}
.rate-search-final .all-search col.a-remark{width:auto}

.rate-search-final .weekly-search col.w-validity{width:18%}
.rate-search-final .weekly-search col.w-payment{width:11%}
.rate-search-final .weekly-search col.w-remark{width:auto}

.rate-search-final .nac-search col.n-condition{width:17.5%}
.rate-search-final .nac-search col.n-rate{width:4.5%}
.rate-search-final .nac-search col.n-remark{width:auto}

.rate-search-final .live-search col.l-vessel{width:12.5%}
.rate-search-final .live-search col.l-pol{width:9.5%}
.rate-search-final .live-search col.l-pod{width:9.5%}
.rate-search-final .live-search col.l-rate{width:6%}
.rate-search-final .live-search col.l-remark{width:auto}

.rate-search-final .market-search col.m-pol{width:7.5%}
.rate-search-final .market-search col.m-pod{width:10%}
.rate-search-final .market-search col.m-rate{width:6.2%}
.rate-search-final .market-search col.m-remark{width:auto}

.rate-search-final .special-search col.s-pod{width:11.5%}
.rate-search-final .special-search col.s-rate{width:6.5%}
.rate-search-final .special-search col.s-validity{width:18%}
.rate-search-final .special-search col.s-payment{width:8%}
.rate-search-final .special-search col.s-remark{width:auto}

/* ==================================================================
   RATE SEARCH OWNER VISUAL ALIGNMENT CLOSURE — 02 SEP 2026
   Scope: Rate Search headers only. Body/data geometry and Rate/Supply
   Master remain untouched. This corrects the remaining perceived header
   offset without changing shared colgroup widths or data behavior.
   ================================================================== */

/* ALL — pull right-side metadata labels left to sit over their values. */
.rate-search-final .all-search th:nth-child(8){text-indent:-36px}
.rate-search-final .all-search th:nth-child(9){text-indent:-32px}
.rate-search-final .all-search th:nth-child(10){text-indent:-48px}

/* WEEKLY FAK — align Validity / Payment / Remark with body values. */
.rate-search-final .weekly-search th:nth-child(9){text-indent:-30px}
.rate-search-final .weekly-search th:nth-child(10){text-indent:-30px}
.rate-search-final .weekly-search th:nth-child(11){text-indent:-46px}

/* NAC / BCO — condition/commodity header visually follows its data lane. */
.rate-search-final .nac-search th:nth-child(5){text-indent:-28px}

/* LIVE SPACE — shift Vessel/Voyage, POL, POD and Rate labels left only. */
.rate-search-final .live-search th:nth-child(5){text-indent:-26px}
.rate-search-final .live-search th:nth-child(6){text-indent:-26px}
.rate-search-final .live-search th:nth-child(7){text-indent:-26px}
.rate-search-final .live-search th:nth-child(10){text-indent:-22px}

/* MARKET — move POL/POD and the complete 20GP→NOR commercial block left. */
.rate-search-final .market-search th:nth-child(4){text-indent:-20px}
.rate-search-final .market-search th:nth-child(5){text-indent:-24px}
.rate-search-final .market-search th:nth-child(6),
.rate-search-final .market-search th:nth-child(7),
.rate-search-final .market-search th:nth-child(8),
.rate-search-final .market-search th:nth-child(9){text-indent:-18px}

/* SPECIAL — POD/Rate and right-side metadata labels left; preserve the
   deliberately wider Validity lane so dates never become cramped. */
.rate-search-final .special-search th:nth-child(5){text-indent:-24px}
.rate-search-final .special-search th:nth-child(7){text-indent:-20px}
.rate-search-final .special-search th:nth-child(9){text-indent:-20px}
.rate-search-final .special-search th:nth-child(10){text-indent:-22px}
.rate-search-final .special-search th:nth-child(11){text-indent:-32px}

/* Use the complete remaining viewport height without changing table geometry. */
.rate-search-final #body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
.rate-search-final #main{
  flex:1 1 auto!important;
  height:auto!important;
  min-height:0!important;
}
.rate-search-final #results{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
}
.rate-search-final .table-scroll{
  flex:1 1 auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}


/* CHATGPT RATE SEARCH GEOMETRY CLOSURE — 02 SEP 2026
   Scope: Rate Search visual geometry only. Remove accumulated header-only offsets;
   let shared colgroups be the single source of truth so header/body centers match. */
.rate-search-final .rate-table th{
  text-indent:0!important;
  padding-left:4px!important;
  padding-right:4px!important;
  text-align:center!important;
}
.rate-search-final .rate-table td{
  padding-left:4px!important;
  padding-right:4px!important;
  text-align:center!important;
}
.rate-search-final .rate-table .sort-head{
  transform:none!important;
  margin:0!important;
  justify-content:center!important;
}

/* ALL: keep the commercial route/equipment block compact so validity/payment/remark
   begin earlier, but preserve enough width for full dates and payment terms. */
.rate-search-final .all-search col.a-zone{width:5.2%!important}
.rate-search-final .all-search col.a-carrier{width:5.6%!important}
.rate-search-final .all-search col.a-pol{width:8.7%!important}
.rate-search-final .all-search col.a-pod{width:10.2%!important}
.rate-search-final .all-search col.a-eq{width:7.2%!important}
.rate-search-final .all-search col.a-rate{width:5.5%!important}
.rate-search-final .all-search col.a-ft{width:3.3%!important}
.rate-search-final .all-search col.a-time{width:13.8%!important}
.rate-search-final .all-search col.a-payment{width:8.7%!important}
.rate-search-final .all-search col.a-remark{width:auto!important}

/* WEEKLY FAK: continuous price block stays tight; metadata receives usable room. */
.rate-search-final .weekly-search col.w-carrier{width:5.6%!important}
.rate-search-final .weekly-search col.w-pol{width:8.8%!important}
.rate-search-final .weekly-search col.w-pod{width:10.7%!important}
.rate-search-final .weekly-search col.w-rate{width:4.7%!important}
.rate-search-final .weekly-search col.w-ft{width:3.3%!important}
.rate-search-final .weekly-search col.w-validity{width:13.4%!important}
.rate-search-final .weekly-search col.w-payment{width:8.8%!important}
.rate-search-final .weekly-search col.w-remark{width:auto!important}

/* NAC / BCO: move Condition / Commodity into its actual body lane by geometry,
   never by header text offsets. */
.rate-search-final .nac-search col.n-carrier{width:5.2%!important}
.rate-search-final .nac-search col.n-district{width:6.3%!important}
.rate-search-final .nac-search col.n-pol{width:7.4%!important}
.rate-search-final .nac-search col.n-pod{width:8.6%!important}
.rate-search-final .nac-search col.n-condition{width:13.4%!important}
.rate-search-final .nac-search col.n-rate{width:4.7%!important}
.rate-search-final .nac-search col.n-ft{width:3.3%!important}
.rate-search-final .nac-search col.n-validity{width:10.2%!important}
.rate-search-final .nac-search col.n-payment{width:8.4%!important}
.rate-search-final .nac-search col.n-remark{width:auto!important}

/* LIVE SPACE: Vessel/POL/POD/Rate are allocated as one compact operational block. */
.rate-search-final .live-search col.l-district{width:5.1%!important}
.rate-search-final .live-search col.l-supplier{width:4.0%!important}
.rate-search-final .live-search col.l-carrier{width:5.0%!important}
.rate-search-final .live-search col.l-etd{width:5.4%!important}
.rate-search-final .live-search col.l-vessel{width:10.4%!important}
.rate-search-final .live-search col.l-pol{width:8.5%!important}
.rate-search-final .live-search col.l-pod{width:9.2%!important}
.rate-search-final .live-search col.l-equipment{width:5.8%!important}
.rate-search-final .live-search col.l-space{width:5.2%!important}
.rate-search-final .live-search col.l-rate{width:5.7%!important}
.rate-search-final .live-search col.l-ft{width:3.2%!important}
.rate-search-final .live-search col.l-payment{width:8.0%!important}
.rate-search-final .live-search col.l-remark{width:auto!important}

/* MARKET: align POL/POD and 20GP→NOR to the body without wasting the left side. */
.rate-search-final .market-search col.m-district{width:5.1%!important}
.rate-search-final .market-search col.m-supplier{width:3.8%!important}
.rate-search-final .market-search col.m-carrier{width:5.2%!important}
.rate-search-final .market-search col.m-pol{width:7.8%!important}
.rate-search-final .market-search col.m-pod{width:10.4%!important}
.rate-search-final .market-search col.m-rate{width:5.0%!important}
.rate-search-final .market-search col.m-ft{width:3.2%!important}
.rate-search-final .market-search col.m-validity{width:10.6%!important}
.rate-search-final .market-search col.m-payment{width:8.2%!important}
.rate-search-final .market-search col.m-remark{width:auto!important}

/* SPECIAL: keep POD/Rate tight while explicitly reserving room for validity. */
.rate-search-final .special-search col.s-district{width:5.0%!important}
.rate-search-final .special-search col.s-supplier{width:3.8%!important}
.rate-search-final .special-search col.s-carrier{width:4.8%!important}
.rate-search-final .special-search col.s-pol{width:9.2%!important}
.rate-search-final .special-search col.s-pod{width:10.8%!important}
.rate-search-final .special-search col.s-equipment{width:7.2%!important}
.rate-search-final .special-search col.s-rate{width:6.0%!important}
.rate-search-final .special-search col.s-ft{width:3.2%!important}
.rate-search-final .special-search col.s-validity{width:12.6%!important}
.rate-search-final .special-search col.s-payment{width:8.0%!important}
.rate-search-final .special-search col.s-remark{width:auto!important}

/* Maximise usable viewport. The parent iframe is also extended by the shell patch. */
.rate-search-final #body{min-height:0!important;height:100vh!important;overflow:hidden!important}
.rate-search-final #main{min-height:0!important;height:100%!important;display:flex!important;flex-direction:column!important}
.rate-search-final #results{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important}
.rate-search-final .table-scroll{flex:1 1 auto!important;min-height:calc(100vh - 168px)!important;max-height:none!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important}


/* ==================================================================
   OWNER FINAL TABLE ALIGNMENT STANDARD — 02 SEP 2026
   Approved rule:
   - ALL table headers centered.
   - Body: freight/rate + FT + VALIDITY centered.
   - All other descriptive/body fields left aligned.
   - Geometry is controlled by colgroups, never header text-indent hacks.
   ================================================================== */
.rate-search-final .rate-table th,
.rate-search-final .rate-table .sort-head{
  text-align:center!important;
  justify-content:center!important;
  text-indent:0!important;
}
.rate-search-final .rate-table td{
  text-align:left!important;
}
.rate-search-final .rate-value-preview,
.rate-search-final .remark-preview{
  justify-content:flex-start!important;
  text-align:left!important;
}
.rate-search-final .equipment-tag{
  justify-content:flex-start!important;
}

/* ALL — center only RATE / FT / VALIDITY-ETD. */
.rate-search-final .all-search td:nth-child(6),
.rate-search-final .all-search td:nth-child(7),
.rate-search-final .all-search td:nth-child(8){text-align:center!important}
.rate-search-final .all-search col.a-zone{width:4.7%!important}
.rate-search-final .all-search col.a-carrier{width:5.3%!important}
.rate-search-final .all-search col.a-pol{width:8.2%!important}
.rate-search-final .all-search col.a-pod{width:9.5%!important}
.rate-search-final .all-search col.a-eq{width:6.8%!important}
.rate-search-final .all-search col.a-rate{width:5.2%!important}
.rate-search-final .all-search col.a-ft{width:3.1%!important}
.rate-search-final .all-search col.a-time{width:13.5%!important}
.rate-search-final .all-search col.a-payment{width:8.2%!important}

/* WEEKLY FAK — 20GP→NOR + FT + VALIDITY centered; text fields left. */
.rate-search-final .weekly-search td:nth-child(n+4):nth-child(-n+9){text-align:center!important}
.rate-search-final .weekly-search col.w-carrier{width:5.2%!important}
.rate-search-final .weekly-search col.w-pol{width:8.2%!important}
.rate-search-final .weekly-search col.w-pod{width:10.0%!important}
.rate-search-final .weekly-search col.w-rate{width:4.5%!important}
.rate-search-final .weekly-search col.w-ft{width:3.0%!important}
.rate-search-final .weekly-search col.w-validity{width:13.0%!important}
.rate-search-final .weekly-search col.w-payment{width:8.2%!important}

/* NAC / BCO — move CONDITION lane earlier; price/FT/VALIDITY remain centered. */
.rate-search-final .nac-search td:nth-child(n+6):nth-child(-n+11){text-align:center!important}
.rate-search-final .nac-search col.n-carrier{width:5.0%!important}
.rate-search-final .nac-search col.n-district{width:6.0%!important}
.rate-search-final .nac-search col.n-pol{width:7.0%!important}
.rate-search-final .nac-search col.n-pod{width:8.0%!important}
.rate-search-final .nac-search col.n-condition{width:13.8%!important}
.rate-search-final .nac-search col.n-rate{width:4.5%!important}
.rate-search-final .nac-search col.n-ft{width:3.0%!important}
.rate-search-final .nac-search col.n-validity{width:10.0%!important}
.rate-search-final .nac-search col.n-payment{width:8.0%!important}

/* LIVE SPACE — move VESSEL/POL/POD block earlier; only RATE + FT centered. */
.rate-search-final .live-search td:nth-child(10),
.rate-search-final .live-search td:nth-child(11){text-align:center!important}
.rate-search-final .live-search col.l-district{width:4.6%!important}
.rate-search-final .live-search col.l-supplier{width:3.6%!important}
.rate-search-final .live-search col.l-carrier{width:4.5%!important}
.rate-search-final .live-search col.l-etd{width:4.8%!important}
.rate-search-final .live-search col.l-vessel{width:10.2%!important}
.rate-search-final .live-search col.l-pol{width:8.2%!important}
.rate-search-final .live-search col.l-pod{width:8.8%!important}
.rate-search-final .live-search col.l-equipment{width:5.8%!important}
.rate-search-final .live-search col.l-space{width:5.0%!important}
.rate-search-final .live-search col.l-rate{width:5.5%!important}
.rate-search-final .live-search col.l-ft{width:3.0%!important}
.rate-search-final .live-search col.l-payment{width:7.8%!important}

/* MARKET — POL/POD and freight block shift earlier; freight/FT/VALIDITY centered. */
.rate-search-final .market-search td:nth-child(n+6):nth-child(-n+11){text-align:center!important}
.rate-search-final .market-search col.m-district{width:4.6%!important}
.rate-search-final .market-search col.m-supplier{width:3.4%!important}
.rate-search-final .market-search col.m-carrier{width:4.5%!important}
.rate-search-final .market-search col.m-pol{width:7.6%!important}
.rate-search-final .market-search col.m-pod{width:10.0%!important}
.rate-search-final .market-search col.m-rate{width:4.9%!important}
.rate-search-final .market-search col.m-ft{width:3.0%!important}
.rate-search-final .market-search col.m-validity{width:10.4%!important}
.rate-search-final .market-search col.m-payment{width:8.0%!important}

/* SPECIAL — POD/RATE/VALIDITY/PAYMENT/REMARK group begins earlier. */
.rate-search-final .special-search td:nth-child(7),
.rate-search-final .special-search td:nth-child(8),
.rate-search-final .special-search td:nth-child(9){text-align:center!important}
.rate-search-final .special-search col.s-district{width:4.5%!important}
.rate-search-final .special-search col.s-supplier{width:3.4%!important}
.rate-search-final .special-search col.s-carrier{width:4.3%!important}
.rate-search-final .special-search col.s-pol{width:8.5%!important}
.rate-search-final .special-search col.s-pod{width:10.3%!important}
.rate-search-final .special-search col.s-equipment{width:7.0%!important}
.rate-search-final .special-search col.s-rate{width:5.8%!important}
.rate-search-final .special-search col.s-ft{width:3.0%!important}
.rate-search-final .special-search col.s-validity{width:12.4%!important}
.rate-search-final .special-search col.s-payment{width:7.8%!important}

/* Preserve centered validity internals while descriptive cells remain left aligned. */
.rate-search-final .validity-cell,
.rate-search-final .validity-status{ text-align:center!important }

/* ==================================================================
   RATE SEARCH ZONE-AWARE COMMERCIAL GEOMETRY — 02 SEP 2026 FINAL
   Sales-first layout. Each zone owns its column geometry.
   Shared rules:
   - Every header is centered and may wrap to two lines; never ellipsize headers.
   - Body freight/rate + FT + VALIDITY are centered.
   - Other descriptive body fields are left aligned.
   - Remark is a compact reminder; full text remains available via info click.
   Core commercial priority: CARRIER + POL + POD + PRICE + VALIDITY + FT.
   ================================================================== */

/* Header contract: full labels, centered, compact two-line wrapping. */
.rate-search-final .rate-table thead th{
  text-align:center!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.05!important;
  padding:5px 3px!important;
  height:26px!important;
  vertical-align:middle!important;
}
.rate-search-final .rate-table thead .sort-head{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  line-height:1.05!important;
  text-align:center!important;
  justify-content:center!important;
  align-items:center!important;
  gap:3px!important;
}
.rate-search-final .rate-table tbody td{
  text-align:left!important;
  padding-left:5px!important;
  padding-right:4px!important;
}
.rate-search-final .rate-value-preview,
.rate-search-final .remark-preview{
  justify-content:flex-start!important;
  text-align:left!important;
}
.rate-search-final .equipment-tag{justify-content:flex-start!important}

/* Compact Remark contract. It is a warning cue, not a primary reading lane. */
.rate-search-final .remark-preview{gap:3px!important}
.rate-search-final .remark-preview span{max-width:100%!important}
.rate-search-final .remark-preview i{margin-left:1px!important}

/* ------------------------------------------------------------------
   ALL — shared executive browse view.
   Priority: Carrier + route + rate + date; Remark deliberately compact.
   ------------------------------------------------------------------ */
.rate-search-final .all-search col.a-zone{width:6%!important}
.rate-search-final .all-search col.a-carrier{width:7%!important}
.rate-search-final .all-search col.a-pol{width:12%!important}
.rate-search-final .all-search col.a-pod{width:14%!important}
.rate-search-final .all-search col.a-eq{width:8%!important}
.rate-search-final .all-search col.a-rate{width:7%!important}
.rate-search-final .all-search col.a-ft{width:4%!important}
.rate-search-final .all-search col.a-time{width:14%!important}
.rate-search-final .all-search col.a-payment{width:8%!important}
.rate-search-final .all-search col.a-remark{width:10%!important}
.rate-search-final .all-search td:nth-child(6),
.rate-search-final .all-search td:nth-child(7),
.rate-search-final .all-search td:nth-child(8){text-align:center!important}

/* ------------------------------------------------------------------
   WEEKLY FAK — route + four equipment prices + validity are the product.
   ------------------------------------------------------------------ */
.rate-search-final .weekly-search col.w-carrier{width:8%!important}
.rate-search-final .weekly-search col.w-pol{width:15%!important}
.rate-search-final .weekly-search col.w-pod{width:17%!important}
.rate-search-final .weekly-search col.w-rate{width:6%!important}
.rate-search-final .weekly-search col.w-ft{width:4%!important}
.rate-search-final .weekly-search col.w-validity{width:14%!important}
.rate-search-final .weekly-search col.w-payment{width:8%!important}
.rate-search-final .weekly-search col.w-remark{width:10%!important}
.rate-search-final .weekly-search td:nth-child(n+4):nth-child(-n+9){text-align:center!important}

/* ------------------------------------------------------------------
   NAC / BCO — Condition / Commodity is a commercial eligibility field.
   ------------------------------------------------------------------ */
.rate-search-final .nac-search col.n-carrier{width:6%!important}
.rate-search-final .nac-search col.n-district{width:8%!important}
.rate-search-final .nac-search col.n-pol{width:10%!important}
.rate-search-final .nac-search col.n-pod{width:13%!important}
.rate-search-final .nac-search col.n-condition{width:15%!important}
.rate-search-final .nac-search col.n-rate{width:5%!important}
.rate-search-final .nac-search col.n-ft{width:4%!important}
.rate-search-final .nac-search col.n-validity{width:11%!important}
.rate-search-final .nac-search col.n-payment{width:6%!important}
.rate-search-final .nac-search col.n-remark{width:7%!important}
.rate-search-final .nac-search td:nth-child(n+6):nth-child(-n+11){text-align:center!important}

/* ------------------------------------------------------------------
   LIVE SPACE — ETD/Vessel/Route/Equipment/Available Space are operational core.
   Price + FT centered; descriptive operational values remain left aligned.
   ------------------------------------------------------------------ */
.rate-search-final .live-search col.l-district{width:7%!important}
.rate-search-final .live-search col.l-supplier{width:5%!important}
.rate-search-final .live-search col.l-carrier{width:6%!important}
.rate-search-final .live-search col.l-etd{width:7%!important}
.rate-search-final .live-search col.l-vessel{width:14%!important}
.rate-search-final .live-search col.l-pol{width:10%!important}
.rate-search-final .live-search col.l-pod{width:12%!important}
.rate-search-final .live-search col.l-equipment{width:7%!important}
.rate-search-final .live-search col.l-space{width:6%!important}
.rate-search-final .live-search col.l-rate{width:6%!important}
.rate-search-final .live-search col.l-ft{width:3.5%!important}
.rate-search-final .live-search col.l-payment{width:6.5%!important}
.rate-search-final .live-search col.l-remark{width:10%!important}
.rate-search-final .live-search td:nth-child(10),
.rate-search-final .live-search td:nth-child(11){text-align:center!important}

/* ------------------------------------------------------------------
   MARKET — compact rate block; route gets the space, Remark stays secondary.
   ------------------------------------------------------------------ */
.rate-search-final .market-search col.m-district{width:8%!important}
.rate-search-final .market-search col.m-supplier{width:5%!important}
.rate-search-final .market-search col.m-carrier{width:7%!important}
.rate-search-final .market-search col.m-pol{width:13%!important}
.rate-search-final .market-search col.m-pod{width:15%!important}
.rate-search-final .market-search col.m-rate{width:6%!important}
.rate-search-final .market-search col.m-ft{width:4%!important}
.rate-search-final .market-search col.m-validity{width:11%!important}
.rate-search-final .market-search col.m-payment{width:6%!important}
.rate-search-final .market-search col.m-remark{width:7%!important}
.rate-search-final .market-search td:nth-child(n+6):nth-child(-n+11){text-align:center!important}

/* ------------------------------------------------------------------
   SPECIAL — Equipment is a primary commercial dimension, not auxiliary metadata.
   ------------------------------------------------------------------ */
.rate-search-final .special-search col.s-district{width:7%!important}
.rate-search-final .special-search col.s-supplier{width:4%!important}
.rate-search-final .special-search col.s-carrier{width:7%!important}
.rate-search-final .special-search col.s-pol{width:12%!important}
.rate-search-final .special-search col.s-pod{width:16%!important}
.rate-search-final .special-search col.s-equipment{width:11%!important}
.rate-search-final .special-search col.s-rate{width:8%!important}
.rate-search-final .special-search col.s-ft{width:4%!important}
.rate-search-final .special-search col.s-validity{width:13%!important}
.rate-search-final .special-search col.s-payment{width:6%!important}
.rate-search-final .special-search col.s-remark{width:12%!important}
.rate-search-final .special-search td:nth-child(7),
.rate-search-final .special-search td:nth-child(8),
.rate-search-final .special-search td:nth-child(9){text-align:center!important}

/* Keep validity's internal status centered while its column remains compact. */
.rate-search-final .validity-cell,
.rate-search-final .validity-status{text-align:center!important}

/* ==================================================================
   RATE SEARCH FINAL COLUMN ENGINE — 02 SEP 2026
   Root fix for header/body drift:
   - Force deterministic fixed table layout so colgroup geometry is authoritative.
   - Neutralize legacy per-cell width/min-width rules that were overriding colgroups.
   - Each zone has its own widths and every zone totals exactly 100%.
   - Headers centered; freight/FT/validity body centered; descriptive body left.
   ================================================================== */
.rate-search-final .rate-table{
  width:100%!important;
  max-width:none!important;
  table-layout:fixed!important;
}
.rate-search-final .rate-table th,
.rate-search-final .rate-table td{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.rate-search-final .rate-table tbody td{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.rate-search-final .rate-value-preview,
.rate-search-final .remark-preview{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.rate-search-final .rate-value-preview span,
.rate-search-final .remark-preview span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.rate-search-final .equipment-tag{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* ALL = 100% */
.rate-search-final .all-search col.a-zone{width:6%!important}
.rate-search-final .all-search col.a-carrier{width:7%!important}
.rate-search-final .all-search col.a-pol{width:13%!important}
.rate-search-final .all-search col.a-pod{width:15%!important}
.rate-search-final .all-search col.a-eq{width:9%!important}
.rate-search-final .all-search col.a-rate{width:7%!important}
.rate-search-final .all-search col.a-ft{width:4%!important}
.rate-search-final .all-search col.a-time{width:17%!important}
.rate-search-final .all-search col.a-payment{width:9%!important}
.rate-search-final .all-search col.a-remark{width:13%!important}

/* WEEKLY FAK = 100% */
.rate-search-final .weekly-search col.w-carrier{width:7%!important}
.rate-search-final .weekly-search col.w-pol{width:14%!important}
.rate-search-final .weekly-search col.w-pod{width:16%!important}
.rate-search-final .weekly-search col.w-rate{width:5%!important}
.rate-search-final .weekly-search col.w-ft{width:4%!important}
.rate-search-final .weekly-search col.w-validity{width:15%!important}
.rate-search-final .weekly-search col.w-payment{width:9%!important}
.rate-search-final .weekly-search col.w-remark{width:15%!important}

/* NAC / BCO = 100% */
.rate-search-final .nac-search col.n-carrier{width:5.5%!important}
.rate-search-final .nac-search col.n-district{width:8%!important}
.rate-search-final .nac-search col.n-pol{width:9%!important}
.rate-search-final .nac-search col.n-pod{width:12%!important}
.rate-search-final .nac-search col.n-condition{width:15%!important}
.rate-search-final .nac-search col.n-rate{width:5%!important}
.rate-search-final .nac-search col.n-ft{width:4%!important}
.rate-search-final .nac-search col.n-validity{width:11%!important}
.rate-search-final .nac-search col.n-payment{width:6.5%!important}
.rate-search-final .nac-search col.n-remark{width:9%!important}

/* LIVE SPACE = 100% */
.rate-search-final .live-search col.l-district{width:6.5%!important}
.rate-search-final .live-search col.l-supplier{width:4.5%!important}
.rate-search-final .live-search col.l-carrier{width:6.5%!important}
.rate-search-final .live-search col.l-etd{width:6.5%!important}
.rate-search-final .live-search col.l-vessel{width:14%!important}
.rate-search-final .live-search col.l-pol{width:10.5%!important}
.rate-search-final .live-search col.l-pod{width:12%!important}
.rate-search-final .live-search col.l-equipment{width:7%!important}
.rate-search-final .live-search col.l-space{width:6%!important}
.rate-search-final .live-search col.l-rate{width:6%!important}
.rate-search-final .live-search col.l-ft{width:3.5%!important}
.rate-search-final .live-search col.l-payment{width:6.5%!important}
.rate-search-final .live-search col.l-remark{width:10%!important}

/* MARKET = 100% */
.rate-search-final .market-search col.m-district{width:7%!important}
.rate-search-final .market-search col.m-supplier{width:4%!important}
.rate-search-final .market-search col.m-carrier{width:6%!important}
.rate-search-final .market-search col.m-pol{width:12%!important}
.rate-search-final .market-search col.m-pod{width:14%!important}
.rate-search-final .market-search col.m-rate{width:5%!important}
.rate-search-final .market-search col.m-ft{width:4%!important}
.rate-search-final .market-search col.m-validity{width:11%!important}
.rate-search-final .market-search col.m-payment{width:7%!important}
.rate-search-final .market-search col.m-remark{width:15%!important}

/* SPECIAL = 100% */
.rate-search-final .special-search col.s-district{width:6%!important}
.rate-search-final .special-search col.s-supplier{width:4%!important}
.rate-search-final .special-search col.s-carrier{width:6%!important}
.rate-search-final .special-search col.s-pol{width:12%!important}
.rate-search-final .special-search col.s-pod{width:16%!important}
.rate-search-final .special-search col.s-equipment{width:12%!important}
.rate-search-final .special-search col.s-rate{width:8%!important}
.rate-search-final .special-search col.s-ft{width:4%!important}
.rate-search-final .special-search col.s-validity{width:14%!important}
.rate-search-final .special-search col.s-payment{width:8%!important}
.rate-search-final .special-search col.s-remark{width:10%!important}


/* ================================================================
   RATE SEARCH FINAL RESCUE — 02 SEP 2026
   Canonical visual authority. Business priority first; header/body geometry
   is one TABLE + one COLGROUP. Headers centered. Semantic body alignment.
   ================================================================ */
.rate-search-final .rate-table{
  width:100%!important; max-width:none!important; min-width:0!important;
  table-layout:fixed!important; border-collapse:collapse!important;
}
.rate-search-final .rate-table th,
.rate-search-final .rate-table td{
  width:auto!important; min-width:0!important; max-width:none!important;
  box-sizing:border-box!important; vertical-align:middle!important;
  padding:6px 6px!important; overflow:hidden!important; text-overflow:ellipsis!important;
}
.rate-search-final .rate-table thead th{
  text-align:center!important; white-space:normal!important; line-height:1.08!important;
  overflow:visible!important; text-overflow:clip!important; overflow-wrap:normal!important;
}
.rate-search-final .rate-table tbody td{ text-align:left!important; white-space:nowrap!important; }
.rate-search-final .rate-table tbody td.num,
.rate-search-final .rate-table tbody td.date-cell{ text-align:center!important; font-variant-numeric:tabular-nums!important; }
.rate-search-final .rate-table tbody td.text-cell{ text-align:left!important; }
.rate-search-final .rate-table .rate-value-preview{ justify-content:flex-start!important; text-align:left!important; }
.rate-search-final .rate-table .remark-preview{ justify-content:flex-start!important; text-align:left!important; }
.rate-search-final .rate-table .equipment-tag{ display:inline-block!important; }
.rate-search-final .sort-head{ justify-content:center!important; white-space:normal!important; line-height:1.08!important; }

/* Core field emphasis: Carrier / POL / POD / Price / FT / Validity. */
.rate-search-final .carrier-cell{font-weight:700!important;color:#dceaf5!important}
.rate-search-final .rate-primary{font-weight:900!important}
.rate-search-final .district-cell,.rate-search-final .supplier-cell{font-size:8.8px!important}
.rate-search-final .remark-cell-host{font-size:8.9px!important}

/* ALL: sales comparison first; Zone becomes supporting context. = 100% */
.rate-search-final .all-search col.a-carrier{width:7%!important}
.rate-search-final .all-search col.a-pol{width:13%!important}
.rate-search-final .all-search col.a-pod{width:15%!important}
.rate-search-final .all-search col.a-eq{width:9%!important}
.rate-search-final .all-search col.a-rate{width:7%!important}
.rate-search-final .all-search col.a-ft{width:4%!important}
.rate-search-final .all-search col.a-time{width:17%!important}
.rate-search-final .all-search col.a-zone{width:7%!important}
.rate-search-final .all-search col.a-payment{width:8%!important}
.rate-search-final .all-search col.a-remark{width:13%!important}

/* WEEKLY FAK: approved matrix preserved. = 100% */
.rate-search-final .weekly-search col.w-carrier{width:7%!important}
.rate-search-final .weekly-search col.w-pol{width:14%!important}
.rate-search-final .weekly-search col.w-pod{width:16%!important}
.rate-search-final .weekly-search col.w-rate{width:5%!important}
.rate-search-final .weekly-search col.w-ft{width:4%!important}
.rate-search-final .weekly-search col.w-validity{width:15%!important}
.rate-search-final .weekly-search col.w-payment{width:9%!important}
.rate-search-final .weekly-search col.w-remark{width:15%!important}

/* NAC / BCO: approved structure preserved; Condition gets protected width. = 100% */
.rate-search-final .nac-search col.n-carrier{width:5.5%!important}
.rate-search-final .nac-search col.n-district{width:7%!important}
.rate-search-final .nac-search col.n-pol{width:9%!important}
.rate-search-final .nac-search col.n-pod{width:11.5%!important}
.rate-search-final .nac-search col.n-condition{width:17%!important}
.rate-search-final .nac-search col.n-rate{width:5%!important}
.rate-search-final .nac-search col.n-ft{width:4%!important}
.rate-search-final .nac-search col.n-validity{width:11%!important}
.rate-search-final .nac-search col.n-payment{width:6%!important}
.rate-search-final .nac-search col.n-remark{width:9%!important}

/* LIVE SPACE: commercial decision sequence first. = 100% */
.rate-search-final .live-search col.l-carrier{width:6.5%!important}
.rate-search-final .live-search col.l-etd{width:7%!important}
.rate-search-final .live-search col.l-vessel{width:15%!important}
.rate-search-final .live-search col.l-pol{width:11%!important}
.rate-search-final .live-search col.l-pod{width:12%!important}
.rate-search-final .live-search col.l-equipment{width:7%!important}
.rate-search-final .live-search col.l-space{width:7%!important}
.rate-search-final .live-search col.l-rate{width:6.5%!important}
.rate-search-final .live-search col.l-ft{width:4%!important}
.rate-search-final .live-search col.l-district{width:6%!important}
.rate-search-final .live-search col.l-supplier{width:4%!important}
.rate-search-final .live-search col.l-payment{width:6%!important}
.rate-search-final .live-search col.l-remark{width:8%!important}
.rate-search-final .live-search th:nth-child(6),.rate-search-final .live-search th:nth-child(7),.rate-search-final .live-search th:nth-child(8),
.rate-search-final .live-search td:nth-child(6),.rate-search-final .live-search td:nth-child(7),.rate-search-final .live-search td:nth-child(8){background:#0a2233!important}

/* MARKET: rate matrix first; metadata after Validity. = 100% */
.rate-search-final .market-search col.m-carrier{width:6%!important}
.rate-search-final .market-search col.m-pol{width:11%!important}
.rate-search-final .market-search col.m-pod{width:13%!important}
.rate-search-final .market-search col.m-rate{width:5%!important}
.rate-search-final .market-search col.m-ft{width:4%!important}
.rate-search-final .market-search col.m-validity{width:11%!important}
.rate-search-final .market-search col.m-district{width:6%!important}
.rate-search-final .market-search col.m-supplier{width:4%!important}
.rate-search-final .market-search col.m-payment{width:7%!important}
.rate-search-final .market-search col.m-remark{width:13%!important}

/* SPECIAL: Equipment / Rate protected; metadata secondary. = 100% */
.rate-search-final .special-search col.s-carrier{width:6%!important}
.rate-search-final .special-search col.s-pol{width:13%!important}
.rate-search-final .special-search col.s-pod{width:16%!important}
.rate-search-final .special-search col.s-equipment{width:12%!important}
.rate-search-final .special-search col.s-rate{width:8%!important}
.rate-search-final .special-search col.s-ft{width:4%!important}
.rate-search-final .special-search col.s-validity{width:14%!important}
.rate-search-final .special-search col.s-district{width:6%!important}
.rate-search-final .special-search col.s-supplier{width:4%!important}
.rate-search-final .special-search col.s-payment{width:7%!important}
.rate-search-final .special-search col.s-remark{width:10%!important}


/* ================================================================
   CONTENT-DRIVEN COLUMN GEOMETRY — 02 SEP 2026
   FINAL AUTHORITY FOR RATE SEARCH COLUMN SIZING.
   Widths are written inline by contentFitTable() from BODY values.
   Legacy percentage col rules above are intentionally neutralised here.
   ================================================================ */
.rate-search-final .table-scroll{overflow-x:auto!important;overflow-y:auto!important}
.rate-search-final .rate-table[data-column-sizing="body-content"] col{width:auto}
.rate-search-final .rate-table[data-column-sizing="body-content"] th,
.rate-search-final .rate-table[data-column-sizing="body-content"] td{
  padding-left:6px!important;padding-right:6px!important;
}
.rate-search-final .rate-table[data-column-sizing="body-content"] thead th{
  text-align:center!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.12!important;
  padding-left:4px!important;padding-right:4px!important;
}
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.text-cell,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.carrier-cell,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.district-cell,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.supplier-cell,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.remark-cell-host{
  text-align:left!important;
}
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.num,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.date-cell,
.rate-search-final .rate-table[data-column-sizing="body-content"] tbody td.etd-cell{
  text-align:center!important;
}
.rate-search-final .rate-table[data-column-sizing="body-content"] .rate-value-preview{
  justify-content:flex-start!important;text-align:left!important;
}

/* ================================================================
   OWNER FINAL ALIGNMENT MODEL — 02 SEP 2026
   FINAL AUTHORITY. SIMPLE HEADER-TO-BODY ALIGNMENT.
   No content-driven JS sizing. No two-line headers. No business fields removed.
   ================================================================ */
.rate-search-final .table-scroll{
  overflow-x:auto!important;
  overflow-y:auto!important;
}
.rate-search-final .rate-table,
.rate-search-final .rate-table.zone-specific{
  width:100%!important;
  min-width:max-content!important;
  table-layout:auto!important;
}
.rate-search-final .rate-table col,
.rate-search-final .rate-table.zone-specific col{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
}
.rate-search-final .rate-table th,
.rate-search-final .rate-table td{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  padding:6px 8px!important;
  vertical-align:middle!important;
}
.rate-search-final .rate-table thead th,
.rate-search-final .rate-table .sort-head{
  white-space:nowrap!important;
  line-height:1.15!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

/* ALL — text fields follow body left edge; Equipment/Rate/FT stay centered. */
.rate-search-final .all-search th:nth-child(1),
.rate-search-final .all-search th:nth-child(2),
.rate-search-final .all-search th:nth-child(3),
.rate-search-final .all-search th:nth-child(7),
.rate-search-final .all-search th:nth-child(8),
.rate-search-final .all-search th:nth-child(9),
.rate-search-final .all-search th:nth-child(10),
.rate-search-final .all-search td:nth-child(1),
.rate-search-final .all-search td:nth-child(2),
.rate-search-final .all-search td:nth-child(3),
.rate-search-final .all-search td:nth-child(7),
.rate-search-final .all-search td:nth-child(8),
.rate-search-final .all-search td:nth-child(9),
.rate-search-final .all-search td:nth-child(10){text-align:left!important}
.rate-search-final .all-search th:nth-child(4),
.rate-search-final .all-search th:nth-child(5),
.rate-search-final .all-search th:nth-child(6),
.rate-search-final .all-search td:nth-child(4),
.rate-search-final .all-search td:nth-child(5),
.rate-search-final .all-search td:nth-child(6){text-align:center!important}
.rate-search-final .all-search th:nth-child(1) .sort-head,
.rate-search-final .all-search th:nth-child(2) .sort-head,
.rate-search-final .all-search th:nth-child(3) .sort-head,
.rate-search-final .all-search th:nth-child(7) .sort-head,
.rate-search-final .all-search th:nth-child(8) .sort-head,
.rate-search-final .all-search th:nth-child(9) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .all-search th:nth-child(4) .sort-head,
.rate-search-final .all-search th:nth-child(5) .sort-head,
.rate-search-final .all-search th:nth-child(6) .sort-head{justify-content:center!important;text-align:center!important}

/* WEEKLY FAK — descriptive/header fields exactly follow left-aligned body. */
.rate-search-final .weekly-search th:nth-child(1),
.rate-search-final .weekly-search th:nth-child(2),
.rate-search-final .weekly-search th:nth-child(3),
.rate-search-final .weekly-search th:nth-child(9),
.rate-search-final .weekly-search th:nth-child(10),
.rate-search-final .weekly-search th:nth-child(11),
.rate-search-final .weekly-search td:nth-child(1),
.rate-search-final .weekly-search td:nth-child(2),
.rate-search-final .weekly-search td:nth-child(3),
.rate-search-final .weekly-search td:nth-child(9),
.rate-search-final .weekly-search td:nth-child(10),
.rate-search-final .weekly-search td:nth-child(11){text-align:left!important}
.rate-search-final .weekly-search th:nth-child(1) .sort-head,
.rate-search-final .weekly-search th:nth-child(2) .sort-head,
.rate-search-final .weekly-search th:nth-child(3) .sort-head,
.rate-search-final .weekly-search th:nth-child(9) .sort-head,
.rate-search-final .weekly-search th:nth-child(10) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .weekly-search th:nth-child(n+4):nth-child(-n+8),
.rate-search-final .weekly-search td:nth-child(n+4):nth-child(-n+8){text-align:center!important}
.rate-search-final .weekly-search th:nth-child(n+4):nth-child(-n+8) .sort-head{justify-content:center!important;text-align:center!important}

/* NAC / BCO — business text fields left; rate block + FT centered. */
.rate-search-final .nac-search th:nth-child(1),
.rate-search-final .nac-search th:nth-child(2),
.rate-search-final .nac-search th:nth-child(3),
.rate-search-final .nac-search th:nth-child(4),
.rate-search-final .nac-search th:nth-child(5),
.rate-search-final .nac-search th:nth-child(11),
.rate-search-final .nac-search th:nth-child(12),
.rate-search-final .nac-search th:nth-child(13),
.rate-search-final .nac-search td:nth-child(1),
.rate-search-final .nac-search td:nth-child(2),
.rate-search-final .nac-search td:nth-child(3),
.rate-search-final .nac-search td:nth-child(4),
.rate-search-final .nac-search td:nth-child(5),
.rate-search-final .nac-search td:nth-child(11),
.rate-search-final .nac-search td:nth-child(12),
.rate-search-final .nac-search td:nth-child(13){text-align:left!important}
.rate-search-final .nac-search th:nth-child(1) .sort-head,
.rate-search-final .nac-search th:nth-child(2) .sort-head,
.rate-search-final .nac-search th:nth-child(3) .sort-head,
.rate-search-final .nac-search th:nth-child(4) .sort-head,
.rate-search-final .nac-search th:nth-child(11) .sort-head,
.rate-search-final .nac-search th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .nac-search th:nth-child(n+6):nth-child(-n+10),
.rate-search-final .nac-search td:nth-child(n+6):nth-child(-n+10){text-align:center!important}
.rate-search-final .nac-search th:nth-child(n+6):nth-child(-n+10) .sort-head{justify-content:center!important;text-align:center!important}

/* LIVE SPACE — requested text fields left; ETD/Equipment/Space/Rate/FT centered. */
.rate-search-final .live-search th:nth-child(1),
.rate-search-final .live-search th:nth-child(3),
.rate-search-final .live-search th:nth-child(4),
.rate-search-final .live-search th:nth-child(5),
.rate-search-final .live-search th:nth-child(10),
.rate-search-final .live-search th:nth-child(11),
.rate-search-final .live-search th:nth-child(12),
.rate-search-final .live-search th:nth-child(13),
.rate-search-final .live-search td:nth-child(1),
.rate-search-final .live-search td:nth-child(3),
.rate-search-final .live-search td:nth-child(4),
.rate-search-final .live-search td:nth-child(5),
.rate-search-final .live-search td:nth-child(10),
.rate-search-final .live-search td:nth-child(11),
.rate-search-final .live-search td:nth-child(12),
.rate-search-final .live-search td:nth-child(13){text-align:left!important}
.rate-search-final .live-search th:nth-child(1) .sort-head,
.rate-search-final .live-search th:nth-child(4) .sort-head,
.rate-search-final .live-search th:nth-child(5) .sort-head,
.rate-search-final .live-search th:nth-child(10) .sort-head,
.rate-search-final .live-search th:nth-child(11) .sort-head,
.rate-search-final .live-search th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .live-search th:nth-child(2),
.rate-search-final .live-search th:nth-child(6),
.rate-search-final .live-search th:nth-child(7),
.rate-search-final .live-search th:nth-child(8),
.rate-search-final .live-search th:nth-child(9),
.rate-search-final .live-search td:nth-child(2),
.rate-search-final .live-search td:nth-child(6),
.rate-search-final .live-search td:nth-child(7),
.rate-search-final .live-search td:nth-child(8),
.rate-search-final .live-search td:nth-child(9){text-align:center!important}
.rate-search-final .live-search th:nth-child(2) .sort-head,
.rate-search-final .live-search th:nth-child(6) .sort-head,
.rate-search-final .live-search th:nth-child(7) .sort-head,
.rate-search-final .live-search th:nth-child(8) .sort-head,
.rate-search-final .live-search th:nth-child(9) .sort-head{justify-content:center!important;text-align:center!important}

/* MARKET — descriptive fields left; 20/40/NOR/FT remain centered. */
.rate-search-final .market-search th:nth-child(1),
.rate-search-final .market-search th:nth-child(2),
.rate-search-final .market-search th:nth-child(3),
.rate-search-final .market-search th:nth-child(9),
.rate-search-final .market-search th:nth-child(10),
.rate-search-final .market-search th:nth-child(11),
.rate-search-final .market-search th:nth-child(12),
.rate-search-final .market-search th:nth-child(13),
.rate-search-final .market-search td:nth-child(1),
.rate-search-final .market-search td:nth-child(2),
.rate-search-final .market-search td:nth-child(3),
.rate-search-final .market-search td:nth-child(9),
.rate-search-final .market-search td:nth-child(10),
.rate-search-final .market-search td:nth-child(11),
.rate-search-final .market-search td:nth-child(12),
.rate-search-final .market-search td:nth-child(13){text-align:left!important}
.rate-search-final .market-search th:nth-child(1) .sort-head,
.rate-search-final .market-search th:nth-child(2) .sort-head,
.rate-search-final .market-search th:nth-child(3) .sort-head,
.rate-search-final .market-search th:nth-child(9) .sort-head,
.rate-search-final .market-search th:nth-child(10) .sort-head,
.rate-search-final .market-search th:nth-child(11) .sort-head,
.rate-search-final .market-search th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .market-search th:nth-child(n+4):nth-child(-n+8),
.rate-search-final .market-search td:nth-child(n+4):nth-child(-n+8){text-align:center!important}
.rate-search-final .market-search th:nth-child(n+4):nth-child(-n+8) .sort-head{justify-content:center!important;text-align:center!important}

/* SPECIAL — all descriptive fields left; only Rate and FT centered. */
.rate-search-final .special-search th:nth-child(1),
.rate-search-final .special-search th:nth-child(2),
.rate-search-final .special-search th:nth-child(3),
.rate-search-final .special-search th:nth-child(4),
.rate-search-final .special-search th:nth-child(7),
.rate-search-final .special-search th:nth-child(8),
.rate-search-final .special-search th:nth-child(9),
.rate-search-final .special-search th:nth-child(10),
.rate-search-final .special-search th:nth-child(11),
.rate-search-final .special-search td:nth-child(1),
.rate-search-final .special-search td:nth-child(2),
.rate-search-final .special-search td:nth-child(3),
.rate-search-final .special-search td:nth-child(4),
.rate-search-final .special-search td:nth-child(7),
.rate-search-final .special-search td:nth-child(8),
.rate-search-final .special-search td:nth-child(9),
.rate-search-final .special-search td:nth-child(10),
.rate-search-final .special-search td:nth-child(11){text-align:left!important}
.rate-search-final .special-search th:nth-child(1) .sort-head,
.rate-search-final .special-search th:nth-child(2) .sort-head,
.rate-search-final .special-search th:nth-child(3) .sort-head,
.rate-search-final .special-search th:nth-child(4) .sort-head,
.rate-search-final .special-search th:nth-child(7) .sort-head,
.rate-search-final .special-search th:nth-child(8) .sort-head,
.rate-search-final .special-search th:nth-child(9) .sort-head,
.rate-search-final .special-search th:nth-child(10) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .special-search th:nth-child(5),
.rate-search-final .special-search th:nth-child(6),
.rate-search-final .special-search td:nth-child(5),
.rate-search-final .special-search td:nth-child(6){text-align:center!important}
.rate-search-final .special-search th:nth-child(5) .sort-head,
.rate-search-final .special-search th:nth-child(6) .sort-head{justify-content:center!important;text-align:center!important}

/* Remove EQUIPMENT display boxes ONLY where Owner requested: ALL + LIVE SPACE. */
.rate-search-final .all-search .equipment-tag,
.rate-search-final .live-search .equipment-tag{
  display:inline!important;
  padding:0!important;
  margin:0!important;
  min-width:0!important;
  max-width:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  font-weight:700!important;
  line-height:inherit!important;
}

/* Left-aligned preview controls must follow the same edge as their cell text. */
.rate-search-final .all-search .remark-preview,
.rate-search-final .weekly-search .remark-preview,
.rate-search-final .nac-search .remark-preview,
.rate-search-final .live-search .remark-preview,
.rate-search-final .market-search .remark-preview,
.rate-search-final .special-search .remark-preview{
  justify-content:flex-start!important;
  text-align:left!important;
}

/* ================================================================
   OWNER FINAL ALIGNMENT CORRECTION — 02 SEP 2026
   Visual UAT correction from deployment v=897dfe56.
   Highest-authority alignment only; no field removal/reorder/data changes.
   ================================================================ */

/* Keep headers on one line wherever possible. */
.rate-search-final .rate-table thead th,
.rate-search-final .rate-table thead .sort-head{
  white-space:nowrap!important;
}

/* ALL: left descriptive fields; center Equipment/Rate/FT. */
.rate-search-final .rate-table.all-search thead th:nth-child(1),
.rate-search-final .rate-table.all-search thead th:nth-child(2),
.rate-search-final .rate-table.all-search thead th:nth-child(3),
.rate-search-final .rate-table.all-search thead th:nth-child(7),
.rate-search-final .rate-table.all-search thead th:nth-child(8),
.rate-search-final .rate-table.all-search thead th:nth-child(9),
.rate-search-final .rate-table.all-search thead th:nth-child(10),
.rate-search-final .rate-table.all-search tbody td:nth-child(1),
.rate-search-final .rate-table.all-search tbody td:nth-child(2),
.rate-search-final .rate-table.all-search tbody td:nth-child(3),
.rate-search-final .rate-table.all-search tbody td:nth-child(7),
.rate-search-final .rate-table.all-search tbody td:nth-child(8),
.rate-search-final .rate-table.all-search tbody td:nth-child(9),
.rate-search-final .rate-table.all-search tbody td:nth-child(10){text-align:left!important}
.rate-search-final .rate-table.all-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.all-search thead th:nth-child(2) .sort-head,
.rate-search-final .rate-table.all-search thead th:nth-child(3) .sort-head,
.rate-search-final .rate-table.all-search thead th:nth-child(7) .sort-head,
.rate-search-final .rate-table.all-search thead th:nth-child(8) .sort-head,
.rate-search-final .rate-table.all-search thead th:nth-child(9) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .rate-table.all-search thead th:nth-child(4),
.rate-search-final .rate-table.all-search thead th:nth-child(5),
.rate-search-final .rate-table.all-search thead th:nth-child(6),
.rate-search-final .rate-table.all-search tbody td:nth-child(4),
.rate-search-final .rate-table.all-search tbody td:nth-child(5),
.rate-search-final .rate-table.all-search tbody td:nth-child(6){text-align:center!important}

/* WEEKLY FAK: descriptive + validity/payment/remark follow left body edge. */
.rate-search-final .rate-table.weekly-search thead th:nth-child(1),
.rate-search-final .rate-table.weekly-search thead th:nth-child(2),
.rate-search-final .rate-table.weekly-search thead th:nth-child(3),
.rate-search-final .rate-table.weekly-search thead th:nth-child(9),
.rate-search-final .rate-table.weekly-search thead th:nth-child(10),
.rate-search-final .rate-table.weekly-search thead th:nth-child(11),
.rate-search-final .rate-table.weekly-search tbody td:nth-child(1),
.rate-search-final .rate-table.weekly-search tbody td:nth-child(2),
.rate-search-final .rate-table.weekly-search tbody td:nth-child(3),
.rate-search-final .rate-table.weekly-search tbody td.date-cell:nth-child(9),
.rate-search-final .rate-table.weekly-search tbody td:nth-child(10),
.rate-search-final .rate-table.weekly-search tbody td:nth-child(11){text-align:left!important}
.rate-search-final .rate-table.weekly-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.weekly-search thead th:nth-child(2) .sort-head,
.rate-search-final .rate-table.weekly-search thead th:nth-child(3) .sort-head,
.rate-search-final .rate-table.weekly-search thead th:nth-child(9) .sort-head,
.rate-search-final .rate-table.weekly-search thead th:nth-child(10) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .rate-table.weekly-search tbody td.date-cell:nth-child(9) .validity-status{text-align:left!important}

/* NAC / BCO: all descriptive fields + validity/payment/remark left. */
.rate-search-final .rate-table.nac-search thead th:nth-child(1),
.rate-search-final .rate-table.nac-search thead th:nth-child(2),
.rate-search-final .rate-table.nac-search thead th:nth-child(3),
.rate-search-final .rate-table.nac-search thead th:nth-child(4),
.rate-search-final .rate-table.nac-search thead th:nth-child(5),
.rate-search-final .rate-table.nac-search thead th:nth-child(11),
.rate-search-final .rate-table.nac-search thead th:nth-child(12),
.rate-search-final .rate-table.nac-search thead th:nth-child(13),
.rate-search-final .rate-table.nac-search tbody td:nth-child(1),
.rate-search-final .rate-table.nac-search tbody td:nth-child(2),
.rate-search-final .rate-table.nac-search tbody td:nth-child(3),
.rate-search-final .rate-table.nac-search tbody td:nth-child(4),
.rate-search-final .rate-table.nac-search tbody td:nth-child(5),
.rate-search-final .rate-table.nac-search tbody td.date-cell:nth-child(11),
.rate-search-final .rate-table.nac-search tbody td:nth-child(12),
.rate-search-final .rate-table.nac-search tbody td:nth-child(13){text-align:left!important}
.rate-search-final .rate-table.nac-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.nac-search thead th:nth-child(2) .sort-head,
.rate-search-final .rate-table.nac-search thead th:nth-child(3) .sort-head,
.rate-search-final .rate-table.nac-search thead th:nth-child(4) .sort-head,
.rate-search-final .rate-table.nac-search thead th:nth-child(11) .sort-head,
.rate-search-final .rate-table.nac-search thead th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .rate-table.nac-search tbody td.date-cell:nth-child(11) .validity-status{text-align:left!important}

/* LIVE SPACE: requested descriptive columns left; numeric/date core remains centered. */
.rate-search-final .rate-table.live-search thead th:nth-child(1),
.rate-search-final .rate-table.live-search thead th:nth-child(3),
.rate-search-final .rate-table.live-search thead th:nth-child(4),
.rate-search-final .rate-table.live-search thead th:nth-child(5),
.rate-search-final .rate-table.live-search thead th:nth-child(10),
.rate-search-final .rate-table.live-search thead th:nth-child(11),
.rate-search-final .rate-table.live-search thead th:nth-child(12),
.rate-search-final .rate-table.live-search thead th:nth-child(13),
.rate-search-final .rate-table.live-search tbody td:nth-child(1),
.rate-search-final .rate-table.live-search tbody td:nth-child(3),
.rate-search-final .rate-table.live-search tbody td:nth-child(4),
.rate-search-final .rate-table.live-search tbody td:nth-child(5),
.rate-search-final .rate-table.live-search tbody td:nth-child(10),
.rate-search-final .rate-table.live-search tbody td:nth-child(11),
.rate-search-final .rate-table.live-search tbody td:nth-child(12),
.rate-search-final .rate-table.live-search tbody td:nth-child(13){text-align:left!important}
.rate-search-final .rate-table.live-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.live-search thead th:nth-child(4) .sort-head,
.rate-search-final .rate-table.live-search thead th:nth-child(5) .sort-head,
.rate-search-final .rate-table.live-search thead th:nth-child(10) .sort-head,
.rate-search-final .rate-table.live-search thead th:nth-child(11) .sort-head,
.rate-search-final .rate-table.live-search thead th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}

/* MARKET: descriptive + validity/metadata/payment/remark left. */
.rate-search-final .rate-table.market-search thead th:nth-child(1),
.rate-search-final .rate-table.market-search thead th:nth-child(2),
.rate-search-final .rate-table.market-search thead th:nth-child(3),
.rate-search-final .rate-table.market-search thead th:nth-child(9),
.rate-search-final .rate-table.market-search thead th:nth-child(10),
.rate-search-final .rate-table.market-search thead th:nth-child(11),
.rate-search-final .rate-table.market-search thead th:nth-child(12),
.rate-search-final .rate-table.market-search thead th:nth-child(13),
.rate-search-final .rate-table.market-search tbody td:nth-child(1),
.rate-search-final .rate-table.market-search tbody td:nth-child(2),
.rate-search-final .rate-table.market-search tbody td:nth-child(3),
.rate-search-final .rate-table.market-search tbody td.date-cell:nth-child(9),
.rate-search-final .rate-table.market-search tbody td:nth-child(10),
.rate-search-final .rate-table.market-search tbody td:nth-child(11),
.rate-search-final .rate-table.market-search tbody td:nth-child(12),
.rate-search-final .rate-table.market-search tbody td:nth-child(13){text-align:left!important}
.rate-search-final .rate-table.market-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(2) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(3) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(9) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(10) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(11) .sort-head,
.rate-search-final .rate-table.market-search thead th:nth-child(12) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .rate-table.market-search tbody td.date-cell:nth-child(9) .validity-status{text-align:left!important}

/* SPECIAL: descriptive fields left; ONLY Rate + FT centered. */
.rate-search-final .rate-table.special-search thead th:nth-child(1),
.rate-search-final .rate-table.special-search thead th:nth-child(2),
.rate-search-final .rate-table.special-search thead th:nth-child(3),
.rate-search-final .rate-table.special-search thead th:nth-child(4),
.rate-search-final .rate-table.special-search thead th:nth-child(7),
.rate-search-final .rate-table.special-search thead th:nth-child(8),
.rate-search-final .rate-table.special-search thead th:nth-child(9),
.rate-search-final .rate-table.special-search thead th:nth-child(10),
.rate-search-final .rate-table.special-search thead th:nth-child(11),
.rate-search-final .rate-table.special-search tbody td:nth-child(1),
.rate-search-final .rate-table.special-search tbody td:nth-child(2),
.rate-search-final .rate-table.special-search tbody td:nth-child(3),
.rate-search-final .rate-table.special-search tbody td:nth-child(4),
.rate-search-final .rate-table.special-search tbody td.date-cell:nth-child(7),
.rate-search-final .rate-table.special-search tbody td:nth-child(8),
.rate-search-final .rate-table.special-search tbody td:nth-child(9),
.rate-search-final .rate-table.special-search tbody td:nth-child(10),
.rate-search-final .rate-table.special-search tbody td:nth-child(11){text-align:left!important}
.rate-search-final .rate-table.special-search thead th:nth-child(1) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(2) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(3) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(4) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(7) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(8) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(9) .sort-head,
.rate-search-final .rate-table.special-search thead th:nth-child(10) .sort-head{justify-content:flex-start!important;text-align:left!important}
.rate-search-final .rate-table.special-search thead th:nth-child(5),
.rate-search-final .rate-table.special-search thead th:nth-child(6),
.rate-search-final .rate-table.special-search tbody td:nth-child(5),
.rate-search-final .rate-table.special-search tbody td:nth-child(6){text-align:center!important}
.rate-search-final .rate-table.special-search tbody td.date-cell:nth-child(7) .validity-status{text-align:left!important}

/* Remove Equipment display boxes in ALL, LIVE SPACE, and SPECIAL. Keep text/color semantics only. */
.rate-search-final .rate-table.all-search .equipment-tag,
.rate-search-final .rate-table.live-search .equipment-tag,
.rate-search-final .rate-table.special-search .equipment-tag{
  display:inline!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  line-height:inherit!important;
  font:inherit!important;
  font-weight:700!important;
}

/* FINAL LIVE SPACE ALIGNMENT AUTHORITY — 02 SEP 2026
   Scope: Equipment / Available Space / Rate / FT only. */
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(6),
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(7),
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(8),
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(9),
.rate-search-final.internal-rate-layout .rate-table.live-search tbody td:nth-child(6),
.rate-search-final.internal-rate-layout .rate-table.live-search tbody td:nth-child(7),
.rate-search-final.internal-rate-layout .rate-table.live-search tbody td:nth-child(8),
.rate-search-final.internal-rate-layout .rate-table.live-search tbody td:nth-child(9){
  text-align:center!important;
}
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(6) .sort-head,
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(7) .sort-head,
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(8) .sort-head,
.rate-search-final.internal-rate-layout .rate-table.live-search thead th:nth-child(9) .sort-head{
  justify-content:center!important;
  text-align:center!important;
}
