.transport-site{border-top:1px solid #bacbbf;margin-top:20px;padding-top:16px}
.transport-site summary{font-weight:700;cursor:pointer;min-height:44px}
.transport-fields{display:grid;gap:16px}
.transport-fields label{display:grid;gap:6px}
.site-photos{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}
.site-photos img{width:120px;height:92px;object-fit:cover;border-radius:8px}
.site-photo{display:grid;gap:6px}
.site-photo input{width:auto;min-height:24px}
.site-photo span{display:flex;align-items:center;gap:8px}
.transport-stop{padding:16px 0;border-top:1px solid #bacbbf;overflow-wrap:anywhere}
.transport-stop p{white-space:pre-wrap;margin:8px 0}
.transport-message{width:100%;min-height:340px;margin:16px 0;box-sizing:border-box}
.transport-ready{padding:16px;border:1px solid #bacbbf;border-radius:12px;background:#eef4ef;overflow-wrap:anywhere}
.transport-ready strong{display:block;font-size:19px}
.transport-ready p{margin:10px 0;color:#465e50}
.transport-open{display:block;min-height:44px;padding:10px 0;color:#20573f;text-underline-offset:3px}
.transport-message-label{display:block;margin-top:20px;font-weight:700}
.transport-message{min-height:230px;max-height:40vh;font-size:14px;line-height:1.5}
.transport-site-check,.transport-share-help{padding:14px 0;border-top:1px solid #bacbbf;margin-top:18px}
.transport-site-check summary,.transport-share-help summary{min-height:32px;cursor:pointer;font-weight:600}
.transport-stop .site-photos img{max-width:120px}
.driver-route{font-weight:700;font-size:20px}
.transport-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.transport-history-row{display:grid;gap:10px;padding:16px 0;border-top:1px solid #bacbbf}
.driver-page{margin:0;background:#f6f8f6;color:#253d34;font:17px/1.6 Arial,sans-serif}
.driver-page main{max-width:680px;margin:auto;padding:24px 20px}
.driver-page header,.driver-page section{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #bacbbf}
.driver-page h1{font-size:28px;margin:12px 0}
.driver-page h2{font-size:22px;margin:0 0 12px}
.driver-page h3{font-size:20px;margin:0;overflow-wrap:anywhere}
.driver-page p{margin:12px 0;overflow-wrap:anywhere}
.driver-actions{display:flex;flex-wrap:wrap;gap:12px}
.driver-actions a{padding:12px 16px;border-radius:8px;background:#25664f;color:#fff;text-decoration:none;min-height:24px}
.driver-page a:focus-visible{outline:3px solid #bd7f18;outline-offset:3px}
.driver-photos{display:grid;gap:16px}
.driver-photos img{width:100%;height:auto;border-radius:8px}
.driver-note{white-space:pre-wrap}
@media(max-width:400px){.transport-actions>*{width:100%;box-sizing:border-box}.driver-page main{padding:20px 16px}}

.transport-site{grid-column:1/-1}
#transport-form [name="pickup"]{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:600px){#transport-form .form-grid>label{grid-column:1/-1}}
.partner-information-card{padding:16px;background:#eef4ef;border:1px solid #bacbbf;border-radius:12px;overflow-wrap:anywhere}
.partner-information-card strong{font-size:19px}
.partner-information-card p{margin:8px 0 0;color:#465e50}
.partner-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:18px 0}
.partner-tabs button{padding:10px 6px;min-height:48px;font-size:14px;line-height:1.4;white-space:normal}
#contact-form .partner-tabs button[aria-selected="true"]{background:#25664f;color:#fff;border-color:#25664f}
.partner-tabs button:focus-visible{outline:3px solid #bd7f18;outline-offset:2px}
#contact-form [role=tabpanel]{padding:4px 0}
#contact-form [role=tabpanel]>.transport-site,#contact-form [role=tabpanel]>.invoice-profile-section{border:0;padding:0;margin:0}
#contact-form [role=tabpanel]>.transport-site>summary,#contact-form [role=tabpanel]>.invoice-profile-section>summary{display:none}
#contact-form [role=tabpanel]>.invoice-profile-section>.fold-content{padding:0}
#contact-form .transport-fields input:not([type=checkbox]),#contact-form .transport-fields textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #789184;border-radius:8px;padding:12px;font:inherit;min-height:46px;color:#253d34;background:#fff}
#contact-form .transport-fields label>span{font-size:13px;color:#465e50}
#contact-form .transport-fields textarea{min-height:88px;resize:vertical}
#contact-form .transport-fields input:focus-visible,#contact-form .transport-fields textarea:focus-visible{outline:2px solid #25664f;outline-offset:2px}
.contact-card .contact-basic{font-size:13px;line-height:1.5;color:#465e50;overflow-wrap:anywhere;margin:8px 0}
@media(max-width:380px){.partner-tabs button{font-size:12px}}

#transport-message{white-space:pre-wrap;overflow:auto;overflow-wrap:anywhere;padding:12px;border:1px solid #789184;border-radius:8px}
#transport-message a,.transport-ready a{color:#125f94;text-decoration:underline;text-underline-offset:3px}

.transport-history-toolbar,.transport-row-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.transport-history-toolbar{padding:0 0 16px;border-bottom:1px solid #bacbbf}
.transport-history-toolbar>strong{font-size:18px}
.transport-list-count{font-size:13px;color:#465e50;margin:16px 0 4px}
.transport-history-row{padding:20px 0;gap:14px}
.transport-history-row:first-of-type{border-top:0}
.transport-row-heading time{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.transport-status{font-size:12px;background:#edf3ed;color:#315640;padding:4px 8px;border-radius:6px}
.transport-route{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.transport-route>div{min-width:0}
.transport-route small{display:block;font-size:12px;color:#465e50;margin-bottom:4px}
.transport-route strong{font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.transport-cargo{margin:0;font-size:14px;color:#465e50;overflow-wrap:anywhere}
.transport-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.transport-row-actions button,.transport-row-actions a{min-height:44px;padding:10px 12px;font-size:13px;box-sizing:border-box;display:inline-flex;align-items:center}
.transport-row-actions a{color:#125f94;text-decoration:underline;text-underline-offset:3px}
.transport-row-actions .transport-delete{color:#9b3429;border-color:#cfaaa4;margin-left:auto}
.transport-row-actions span{font-size:13px;color:#465e50}
.transport-list-empty{padding:32px 12px;text-align:center;color:#465e50}
@media(max-width:380px){.transport-route{grid-template-columns:1fr;gap:12px}.transport-history-toolbar>strong{font-size:16px}}

.vehicle-tabs{display:flex;gap:6px;margin:18px 0 8px;flex-wrap:wrap}
.vehicle-tabs button{flex:1;min-height:44px;font-size:13px;padding:8px;white-space:normal}
.vehicle-tabs button[aria-pressed=true]{background:#25664f;color:white;border-color:#25664f}
.transport-plan{margin:0 0 18px;padding:14px 0;border-bottom:1px solid #bacbbf}
.transport-plan summary{min-height:44px;font-weight:600;cursor:pointer}
.transport-plan p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}

.transport-actions{position:sticky;bottom:0;background:var(--paper,#fffef8);padding:12px 0;z-index:3;border-top:1px solid #bacbbf}
.transport-actions>[data-copy-transport]{flex:2}
.transport-actions>*{min-height:48px}
.site-missing{color:#8c3c25;font-size:13px}
.driver-photos{display:flex;flex-wrap:wrap;gap:10px}
.driver-photos a{width:110px;height:84px}
.driver-photos img{width:110px;height:84px;object-fit:cover}
#transport-form,#contact-form{scroll-margin-bottom:100px}
@media(max-width:400px){.transport-actions>*{width:auto;flex:1}}

.transport-vehicle{margin:20px 0;padding:16px 0;border-top:1px solid #bacbbf;border-bottom:1px solid #bacbbf}
.transport-vehicle summary{min-height:44px;cursor:pointer;font-weight:700}
.transport-vehicle input{min-width:0;max-width:100%;box-sizing:border-box}
.transport-audiences{margin-top:8px}
#transport-recipient{font-size:14px;color:#465e50;overflow-wrap:anywhere}
.transport-audiences button:focus-visible{outline:3px solid #25664f;outline-offset:3px}

.trip-notice .transport-ready{border:0;border-bottom:1px solid #c8d7ce;border-radius:0;background:transparent;padding:0 0 12px}
.trip-notice .transport-ready p{margin:4px 0;font-size:14px}
.trip-notice .transport-ready a{display:inline-block;padding:5px 0}
.trip-notice .transport-message-label,.notice-preview-label{font-size:14px;font-weight:700;margin:14px 0 6px}
.trip-notice .transport-audiences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:#edf2ee;padding:3px;border-radius:10px}
.trip-notice .transport-audiences button{border:0;background:transparent;color:#315443;min-height:44px}
.trip-notice .transport-audiences button[aria-pressed=true]{background:#245f4b!important;color:#fff!important}
.trip-notice #transport-recipient{font-size:14px;margin:8px 0;color:#355447;overflow-wrap:anywhere}
.trip-notice .transport-actions{position:static;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.2fr) minmax(0,1fr);gap:6px;border:0;padding:0;background:transparent}
.trip-notice .transport-actions button{width:100%;min-width:0;padding:6px;line-height:1.25}
.trip-notice #transport-feedback:empty{display:none}
.trip-notice .transport-message{white-space:pre-line;overflow-wrap:anywhere;min-height:0;max-height:35vh;overflow:auto;margin:0 0 12px;padding:12px 14px;background:#f6f8f5;border:1px solid #d6e1d8;line-height:1.55}
.trip-notice .transport-message a{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.trip-secondary{display:flex;flex-wrap:wrap;gap:8px}

dialog.transport-preview-dialog{width:min(760px,calc(100vw - 24px));max-width:none;height:min(900px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:hidden;border:1px solid #b9cec0;border-radius:12px;box-sizing:border-box}
.transport-preview-dialog[open]{display:flex;flex-direction:column}
.transport-preview-heading{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#fff;border-bottom:1px solid #c8d7ce}
.transport-preview-heading h2{margin:0;font-size:17px;line-height:1.4}
.transport-preview-heading button{min-width:68px;min-height:44px;flex-shrink:0}
.transport-preview-dialog iframe{display:block;width:100%;flex:1;min-height:0;border:0;background:#f6f8f5}
