/* KPI typography follows the approved visual reference. */
.route-kpis dt{font-size:.78rem;font-weight:650}
.route-kpis dd{font-size:clamp(1.25rem,1.8vw,1.62rem);font-weight:700;letter-spacing:-.025em;line-height:1.62}
.route-kpis small{font-size:.72rem}
.routes-table-v8 .route-cell--price>strong{white-space:nowrap;overflow-wrap:normal}
.routes-table-v8 .route-cell--arrival>strong{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}
.arrival-next-day{position:relative;top:-.5em;font-size:.56em;font-weight:650;line-height:1;white-space:nowrap;color:var(--muted)}
.routes-table-v8 .route-row-cta{width:40px;min-width:40px;height:40px;min-height:40px;padding:9px;flex:none}
.routes-table-v8 .route-row-cta .icon{width:18px;height:18px;margin:0;flex:none}
.routes-table-v8 .comfort-list{display:flex;flex-wrap:wrap;gap:4px;max-width:92px}
.routes-table-v8 .comfort-unknown{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center}
.route-filter select,.route-comfort-picker>summary{--filter-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23607089' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");background-image:var(--filter-chevron);background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding-right:38px}
.route-filter select{appearance:none;-webkit-appearance:none}
.route-comfort-picker>summary:after{content:none}
.route-comfort-picker[open]>summary{background-image:var(--filter-chevron)}
@media(min-width:1121px){
 .routes-table-v8 table{table-layout:fixed;min-width:0}
 .routes-table-v8 .col-departure{width:21%}.routes-table-v8 .col-arrival{width:21%}
 .routes-table-v8 .col-duration{width:9%}.routes-table-v8 .col-schedule{width:12%}
 .routes-table-v8 .col-price{width:16%}.routes-table-v8 .col-ticket{width:6%}
 .routes-table-v8 .col-comfort{width:8%}.routes-table-v8 .col-action{width:7%}
 .routes-table-v8 td,.routes-table-v8 th{min-width:0;overflow-wrap:anywhere}
 .routes-table-v8 th:nth-child(6),.routes-table-v8 th:nth-child(7),.routes-table-v8 th:nth-child(8){padding-left:6px;padding-right:6px;font-size:.7rem;letter-spacing:0;white-space:nowrap}
 .routes-table-v8 th:nth-child(7) button{gap:4px;white-space:nowrap}
 .routes-table-v8 .table-icon-chip:after{right:0;left:auto;transform:translateY(4px)}
 .routes-table-v8 .table-icon-chip:hover:after,.routes-table-v8 .table-icon-chip:focus-visible:after{transform:translateY(0)}
 .routes-table-v8 th:nth-child(6) button{gap:4px;white-space:nowrap}
}
@media(max-width:1120px){
 .routes-table-v8 colgroup{display:none}
 .routes-table-v8 .route-cell--duration{grid-column:1/-1}
 .routes-table-v8 .route-cell--duration>strong{white-space:nowrap}
 .routes-table-v8 .route-cell--ticket{gap:4px}
 .routes-table-v8 .route-cell--ticket .route-cell__label{white-space:nowrap;flex-shrink:0}
 .routes-table-v8 .route-cell--action{display:flex;justify-content:flex-end;align-items:center}
 .routes-table-v8 .comfort-list{max-width:none}
}
