/* Экран «Поездка» пассажира.
   Раздел бывшего ui-fixes-20260926.css (порядок правил внутри раздела прежний; разложено tools/css-sections.py). */
/* Экран «Поездка» на телефоне (поручение владельца 22.10.2026): одна поездка — один экран между шапкой и меню, без прокрутки. */
body.design-787 .trip-screen[hidden]{display:none!important}
@media(max-width:759px){
 body.design-787.trip-screen-on .app-page[data-page="home"]:not([hidden]) > :not(#trip-screen){display:none!important}
 html:has(body.design-787.trip-screen-on .app-page[data-page="home"]:not([hidden])),body.design-787.trip-screen-on:has(.app-page[data-page="home"]:not([hidden])){overflow:hidden;overscroll-behavior:none}
 body.design-787 .trip-screen{position:fixed;left:0;right:0;z-index:20;display:flex;flex-direction:column;overflow:hidden;background:var(--787-bg,#f3f6f9);color:var(--787-ink,#16293b)}
 .trip-screen .ts-switch{display:flex;gap:6px;align-items:center;padding:10px 16px 0}
 .trip-screen .ts-one{flex:1;font-size:15px}
 .trip-screen .ts-tab{flex:1;min-width:0;min-height:44px;padding:6px 8px;border:1px solid var(--787-line,#dce4eb);border-radius:12px;background:#fff;color:var(--787-ink);font-size:13px;font-weight:700;line-height:1.15}
 .trip-screen .ts-tab.on{background:var(--design-header,#123e6a);border-color:var(--design-header,#123e6a);color:#fff}
 .trip-screen .ts-new{flex:0 0 auto;min-height:44px;padding:6px 12px;border:1px dashed #9db6cd;border-radius:12px;background:#fff;color:var(--787-blue,#154f7f);font-size:14px;font-weight:700}
 .trip-screen .ts-card{margin:10px 16px 0;padding:14px 16px;border:1px solid var(--787-line,#dce4eb);border-radius:16px;background:#fff}
 .trip-screen .ts-stages{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:6px}
 .trip-screen .ts-stages i{height:4px;border-radius:2px;background:#dce4eb}.trip-screen .ts-stages i.done{background:#7fa8cc}.trip-screen .ts-stages i.now{background:var(--design-header,#123e6a)}
 .trip-screen .ts-stage-names{display:grid;grid-template-columns:repeat(5,1fr);font-size:11px;line-height:1.2;color:var(--787-muted,#55636f);text-align:center}
 .trip-screen .ts-stage-names b{color:var(--design-header,#123e6a)}
 .trip-screen .ts-title{margin:12px 0 2px;font-size:22px;line-height:1.2;font-weight:700}
 .trip-screen .ts-sub{margin:0;font-size:15px;color:var(--787-muted,#55636f)}
 .trip-screen .ts-driver{display:flex;gap:12px;align-items:center}
 .trip-screen .ts-avatar{flex:0 0 46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--787-soft,#edf5fb);color:var(--design-header,#123e6a);font-weight:800}
 .trip-screen .ts-driver-who{flex:1;min-width:0}
 .trip-screen .ts-driver-who strong{display:block;overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}
 .trip-screen .ts-driver-who span{display:block;overflow:hidden;font-size:14px;color:var(--787-muted,#55636f);text-overflow:ellipsis;white-space:nowrap}
 .trip-screen .ts-plate{padding:4px 8px;border:1.5px solid var(--787-ink,#16293b);border-radius:6px;font-family:var(--font-data,monospace);font-size:13px;font-weight:700;white-space:nowrap}
 .trip-screen .ts-points{display:grid;grid-template-columns:14px 1fr;gap:4px 10px;align-items:center;font-size:15px}
 .trip-screen .ts-points i{width:10px;height:10px;border-radius:50%;background:#1b7a46}.trip-screen .ts-points i.to{border-radius:2px;background:var(--787-orange,#b04f00)}
 .trip-screen .ts-points span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .trip-screen .ts-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
 .trip-screen .ts-meta span{padding:4px 10px;border-radius:999px;background:var(--787-soft,#edf5fb);color:var(--design-header,#123e6a);font-size:13px}
 .trip-screen .ts-links{padding:6px 12px 0}
 .trip-screen .ts-link{min-height:44px;padding:0 8px;border:0;background:none;color:var(--787-blue,#154f7f);font-size:14px;font-weight:700}
 .trip-screen .ts-spacer{flex:1}
 .trip-screen .ts-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 16px calc(6px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--787-line,#dce4eb);background:#fff}
 .trip-screen .ts-actions.one{grid-template-columns:1fr}
 .trip-screen .ts-actions button{min-height:52px;border-radius:14px;font-size:16px;font-weight:700}
 .trip-screen .ts-main{border:1px solid var(--787-orange,#b04f00);background:var(--787-orange,#b04f00);color:#fff}
 .trip-screen .ts-second{border:1px solid var(--787-line,#dce4eb);background:#fff;color:var(--787-ink,#16293b)}
 .trip-screen .ts-cancel{grid-column:1/-1;min-height:40px!important;border:0;background:none;color:var(--787-danger,#a93a34);font-size:14px!important;text-decoration:underline}
 /* Кнопки всегда на экране: если сведения не поместились (длинные адреса, крупный текст в системе), листается
    только середина экрана, а «Написать / Позвонить / Отменить» остаются у нижнего меню. Найдено на Test .182, 360×640. */
 body.design-787 .trip-screen{overflow-y:auto;overscroll-behavior:contain}
 .trip-screen .ts-actions{position:sticky;bottom:0;z-index:1;flex-shrink:0;margin-top:auto}
 .trip-screen .ts-meta{flex-wrap:nowrap;min-width:0}
 .trip-screen .ts-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:759px) and (max-height:700px){
 .trip-screen .ts-card{margin-top:8px;padding:10px 14px}.trip-screen .ts-title{margin-top:8px;font-size:19px}.trip-screen .ts-sub{font-size:14px}
 .trip-screen .ts-avatar{flex-basis:38px;height:38px}.trip-screen .ts-meta{margin-top:6px}.trip-screen .ts-links{padding-top:2px}
 .trip-screen .ts-actions{padding-top:8px}.trip-screen .ts-actions button{min-height:46px}.trip-screen .ts-cancel{min-height:36px!important}
 .trip-screen .ts-switch{padding-top:6px}.trip-screen .ts-tab,.trip-screen .ts-new{min-height:40px}
 .trip-screen .ts-link{min-height:36px}.trip-screen .ts-points{gap:2px 10px}
}
@media(max-width:379px){.trip-screen .ts-actions button{padding:0 6px;font-size:15px;white-space:nowrap}}
.trip-screen .ts-status.ts-flash{animation:tsFlash 1.2s ease-out 2}
/* «Поездка» на 320×568 (проверка 23.10.2026): «Написать водителю» обрезалось, «Подробнее о поездке» уходило под кнопки. */
@media(max-width:379px){.trip-screen .ts-actions button{font-size:14px;line-height:1.15;white-space:normal}}
@media(max-width:759px) and (max-height:600px){
 .trip-screen .ts-card{margin-top:6px;padding:8px 12px}.trip-screen .ts-title{margin-top:4px;font-size:18px}.trip-screen .ts-sub{font-size:13px}
 .trip-screen .ts-meta{margin-top:4px}.trip-screen .ts-links{padding:0 12px}.trip-screen .ts-link{min-height:32px}
 .trip-screen .ts-actions{padding-top:6px;gap:6px}.trip-screen .ts-actions button{min-height:44px}.trip-screen .ts-cancel{min-height:32px!important}
}
#driver-active-list .status-pill.ts-flash{animation:tsFlash 1.2s ease-out 2}
/* «Поездка» на iPhone SE в Safari (видно 375×547, 24.10.2026): «Подробнее о поездке» уходило под кнопки. На низком
   экране подписи этапов скрыты (полосы этапов и заголовок статуса остаются), отступы плотнее. */
@media(max-width:759px) and (max-height:580px){
 .trip-screen .ts-stage-names{display:none}
 .trip-screen .ts-switch{padding-top:2px}
 .trip-screen .ts-card{margin-top:6px}
 .trip-screen .ts-title{margin-top:4px}
 .trip-screen .ts-meta{margin-top:4px}
}
