.trip-details{border-top:1px solid #b8c8d855;margin-top:16px;text-align:left}.trip-details summary{padding:18px 24px;cursor:pointer;font-weight:600}.trip-detail-body{padding:0 24px 24px}.trip-detail-body dl{display:grid;gap:14px;margin:0 0 20px}.trip-detail-body dt{font-size:13px;opacity:.75}.trip-detail-body dd{margin:4px 0 0;overflow-wrap:anywhere}.trip-message{white-space:pre-wrap}.trip-document-links{display:flex;flex-wrap:wrap;gap:16px;margin:18px 0}.trip-detail-body .danger{margin-top:16px}.withdraw-confirmation button{margin:8px 12px 0 0}.pilot-flight{border:1px solid #b8c8d866;margin:20px 0;padding:20px;border-left:3px solid #f58200}.pilot-flight h3{margin:8px 0}.pilot-flight p{margin:8px 0}.pilot-flight.withdrawn{border-left-color:#7a8692}.pilot-flight .trip-status{font-weight:700}.pilot-flight .trip-route{display:flex;justify-content:space-between;gap:20px;margin:16px 0}.trip-route span:last-child{text-align:right}.pilot-flight small{display:block}.pilot-flight .trip-details{margin-bottom:0}.pilot-flight .trip-detail-body{padding-bottom:0}@media(max-width:600px){.trip-detail-body{padding:0 16px 16px}.trip-details summary{padding:16px}.pilot-flight{padding:12px}.trip-document-links{flex-direction:column}}

.pilot-flight .trip-stops{display:grid;gap:8px;max-width:260px;text-align:center}.pilot-flight .trip-stops-track{display:flex;justify-content:space-evenly;border-top:2px solid #b3c4d2;margin-top:8px}.pilot-flight .trip-stops-track i{width:10px;height:10px;background:#f07800;border-radius:50%;margin-top:-6px}.trip-stop-names{display:block;color:inherit;overflow-wrap:anywhere;line-height:1.4}

.trip-cancellation{margin:16px 0;border:1px solid #b8c8d866;padding:16px 20px}.trip-cancellation summary{cursor:pointer;font-weight:600;color:#a73524}.trip-cancellation textarea{display:block;width:100%;box-sizing:border-box;margin:8px 0 16px}.trip-cancellation .danger{min-height:44px}

.pilot-flight.trip-just-edited{outline:2px solid #f58200;outline-offset:3px;box-shadow:0 0 0 6px rgba(245,130,0,.12);scroll-margin-block:24px}

.pilot-flight .trip-route+.trip-route{border-top:1px solid #b8c8d855;padding-top:16px}.pilot-flight .trip-route>span:nth-child(2){text-align:center}.card>.route+.route{border-top:1px solid #b8c8d855}

.pilot-flight.cancelled{border-left-color:transparent}

.trip-handover{margin-top:20px;padding:16px;border:1px solid #b8c8d866;border-radius:6px}.trip-handover summary{cursor:pointer;font-weight:600}.trip-handover label{display:block;margin:12px 0}.trip-handover select{display:block;width:100%;padding:12px;border:1px solid #b8c8d8;border-radius:4px;background:transparent;color:inherit}

.pilot-flight.cancelled{background:#f4f6f7;border:1px solid #d6dde3;border-radius:8px;color:#536574}
.pilot-flight.cancelled .trip-status{display:inline-block;background:#e9edf0;color:#536574;padding:6px 12px;border-radius:4px}
.pilot-flight.cancelled .trip-route>span>b{color:#778592;text-decoration:line-through;text-decoration-thickness:1px}
.pilot-flight.cancelled .trip-route small,.pilot-flight.cancelled>p,.pilot-flight.cancelled .trip-stops{color:#6c7d8c}
.pilot-flight.cancelled .trip-stops-track i{background:#87939d}
.pilot-flight.cancelled.trip-just-edited{outline-color:#87939d;box-shadow:0 0 0 6px #87939d20}
@media(prefers-color-scheme:dark){.pilot-flight.cancelled{background:#1c252e;border-color:#394653;color:#a3afba}.pilot-flight.cancelled .trip-status{background:#26313c;color:#a3afba}.pilot-flight.cancelled .trip-route>span>b,.pilot-flight.cancelled .trip-route small,.pilot-flight.cancelled>p,.pilot-flight.cancelled .trip-stops{color:#a3afba}}

.flight-schedule { padding:24px; margin:16px 0; border:1px solid var(--app-border,#d3dfeb); border-radius:8px; background:var(--app-raised,#f7f9fb); color:var(--app-ink,#002950); }
.flight-schedule h3 { margin:0 0 16px; }
.schedule-row { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:12px 0; }
.schedule-row>div { display:grid; gap:5px; }
.schedule-row>div:last-child { text-align:right; }
.schedule-row small,.flight-schedule>small { color:var(--app-muted,#59738b); }
.schedule-editor fieldset { margin:18px 0; padding:18px; border:1px solid #d3dfeb; }
.schedule-editor label { flex:1; min-width:0; }
.schedule-editor input { display:block; width:100%; margin-top:8px; }
@media(max-width:540px) { .flight-schedule {padding:16px;} .schedule-row {gap:8px;flex-wrap:wrap;} .schedule-row small {font-size:11px;} }

.flight-share-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 24px));max-width:none;max-height:94dvh;border:0;border-radius:16px;padding:20px;background:#fff;color:#002950;overflow:auto;box-shadow:0 24px 80px #00182d55}
.flight-share-dialog::backdrop{background:#00182db3;backdrop-filter:blur(5px)}
.flight-share-dialog header{display:flex;align-items:center;justify-content:space-between;padding:0;margin:0 0 12px;background:transparent}
.flight-share-dialog h2{font-size:20px;margin:0}.flight-share-dialog [data-close]{font-size:26px;border:0;background:transparent;padding:4px 12px}
.flight-share-dialog>img{display:block;max-width:100%;width:100%;height:auto;border-radius:8px}.flight-share-dialog [hidden]{display:none!important}
.flight-share-dialog button{font:inherit;cursor:pointer;border:1px solid #d8e2ea;border-radius:6px;padding:12px 16px;color:var(--app-ink,#002950);background:var(--app-surface,white)}
.flight-share-dialog .share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.flight-share-dialog [data-share]{grid-column:1/-1;background:#f58200;color:#002950;border-color:#f58200;font-weight:700}
.flight-share-dialog .share-appearance{display:flex;justify-content:center;gap:8px;margin:0 0 14px}.flight-share-dialog [aria-pressed=true]{background:#002950;color:white}
.flight-share-dialog [role=status]{font-size:14px;line-height:1.5}.flight-share-dialog [role=status]:empty{display:none}.flight-share-dialog .share-back{width:100%;margin-top:12px}.flight-share-dialog>input{box-sizing:border-box;width:100%;padding:10px}

.pilot-flight.closed{background:#f4f6f7;border:1px solid #d6dde3;border-radius:8px;color:#657583}
.pilot-flight.closed .trip-status{display:inline-block;background:#e9edf0;color:#657583;padding:6px 12px;border-radius:999px}
.pilot-flight.closed .trip-route>span>b,.pilot-flight.closed h3{color:#657583;text-decoration:none}
.pilot-flight.trip-checked-in{border-left:4px solid #27836c}
.pilot-flight.trip-checked-in .trip-status{display:inline-block;background:#e7f3ed;color:#226c58;padding:6px 12px;border-radius:999px}
@media(prefers-color-scheme:dark){.pilot-flight.closed{background:#1c252e;border-color:#394653;color:#a3afba}.pilot-flight.closed .trip-status{background:#26313c;color:#a3afba}.pilot-flight.closed .trip-route>span>b,.pilot-flight.closed h3{color:#a3afba}}

.booking-entry.closed{background:var(--app-raised,#f4f6f7);border-color:var(--app-border,#d6dde3);color:var(--app-muted,#657583)}.booking-entry.closed .booking-status{background:var(--app-raised,#e9edf0);color:var(--app-muted,#657583)}.booking-entry.closed strong{text-decoration:none}

.trip-top-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 20px}.card>.trip-top-actions{padding:4px 24px;margin:16px 0}.trip-top-actions .danger{background:#b42318;color:#fff;border-color:#b42318}.trip-top-actions button{min-height:44px}@media(max-width:480px){.trip-top-actions button{width:100%}}

.trip-booking-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:16px;align-items:center}
.flight-share-dialog.boarding-card-dialog{box-sizing:border-box;width:min(680px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--border,#b8c8d8);border-radius:16px;background:var(--surface,#fff);color:var(--text,#002950);overflow:auto;box-shadow:0 24px 80px #00182d55}
.boarding-card-dialog::backdrop{background:#00121dcc;backdrop-filter:blur(4px)}
.boarding-card-dialog h2{font-size:24px;line-height:1.2;margin:0 0 18px}
.boarding-card-dialog select{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;margin:0 0 16px;padding:10px 36px 10px 12px;font:inherit;font-size:14px;text-overflow:ellipsis;border:1px solid var(--border,#b8c8d8);border-radius:8px;background:var(--surface,#fff);color:inherit}
.boarding-card-dialog select[hidden]{display:none}
.boarding-card-dialog .boarding-card-preview{display:block;width:auto;max-width:100%;height:auto;max-height:56dvh;object-fit:contain;margin:0 auto 20px;border-radius:8px}
.boarding-card-dialog .boarding-card-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--border,#b8c8d8)}
.boarding-card-dialog .boarding-card-actions button{box-sizing:border-box;flex:0 1 auto;min-width:0;max-width:100%;min-height:44px;margin:0;padding:10px 14px;font:inherit;font-size:14px;line-height:1.4;white-space:normal;overflow-wrap:break-word;text-align:center}
@media(max-width:480px){.flight-share-dialog.boarding-card-dialog{padding:18px}.boarding-card-dialog h2{font-size:22px}.boarding-card-dialog .boarding-card-preview{max-height:52dvh}}
button.message-link{background:none!important;border:0!important;box-shadow:none!important;color:inherit;padding:8px 4px;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-weight:500;cursor:pointer}
.flight-message-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:90vh;overflow:auto;border:1px solid #cbd8e3;border-radius:16px;padding:28px;color:#002950;background:#fff;box-shadow:0 24px 80px #00295033}
.flight-message-dialog::backdrop{background:#001b35aa;backdrop-filter:blur(3px)}
.flight-message-dialog h2{margin:0 0 12px}.flight-message-dialog label{display:block;margin:16px 0}.flight-message-dialog input,.flight-message-dialog textarea,.flight-message-dialog select{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px;border:1px solid #b7cbdc;border-radius:6px;font:inherit;background:inherit;color:inherit}.flight-message-dialog [hidden]{display:none!important}
@media(prefers-color-scheme:dark){.flight-message-dialog{background:#142737;color:#e5edf4;border-color:#466075}}

.trip-top-actions{justify-content:flex-end}
.trip-booking-actions .message-link{margin-left:auto}

.booking-save-success{position:fixed;z-index:1000;bottom:24px;left:50%;transform:translateX(-50%);box-sizing:border-box;width:max-content;max-width:calc(100vw - 32px);margin:0;padding:20px 28px;border:1px solid #a8d6c2;border-left:5px solid #18734d;border-radius:12px;background:#eef9f2;color:#145438;font-size:18px;font-weight:600;box-shadow:0 8px 32px #00295026}
.pilot-flight .trip-route>span>b{display:block;font-size:clamp(26px,3vw,36px);line-height:1.2;margin-bottom:5px}.pilot-flight .trip-route>span:first-child,.pilot-flight .trip-route>span:last-child{min-width:0;flex:1}.pilot-flight .trip-route small{overflow-wrap:anywhere}
.pilot-acceptance-notice{margin:16px 0;padding:14px 18px;border-left:3px solid #f58200;background:color-mix(in srgb,#f58200 10%,transparent);border-radius:4px}.pilot-acceptance-notice ul{margin:8px 0 0;padding-left:20px}.pilot-acceptance-notice li+li{margin-top:5px}
.pilot-flight-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.pilot-flight-confirm-action{flex:0 1 440px;text-align:right}.pilot-flight-confirm-action>button{margin:0}.pilot-flight-confirm-action .flight-confirmation{text-align:left}.pilot-flight-confirm-action:empty{display:none}@media(max-width:600px){.pilot-flight-heading{flex-wrap:wrap;gap:12px}.pilot-flight-confirm-action{flex:1 1 100%;text-align:left}}
.pilot-flight-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.pilot-flight-actions>button{margin:0}.pilot-flight-actions>.trip-handover{flex-basis:100%}
.pilot-flight .trip-route{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px}
.pilot-flight .trip-route>span{min-width:0}.pilot-flight .trip-route>span>b{white-space:nowrap}
.pilot-flight .trip-route small{line-height:1.5;overflow-wrap:break-word}
.pilot-flight .trip-stops{max-width:none;width:100%}.pilot-flight .trip-stops-track{border-top:0;min-height:12px;margin-top:0;align-items:center}
.pilot-flight .trip-stops-track i{margin-top:0}.pilot-flight .trip-stop-names{text-align:center}
@media(max-width:640px){
 .pilot-flight .trip-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 24px;margin:24px 0}
 .pilot-flight .trip-route>span:first-child{grid-column:1;grid-row:1}
 .pilot-flight .trip-route>span:last-child{grid-column:2;grid-row:1}
 .pilot-flight .trip-route>span:nth-child(2){grid-column:1/-1;grid-row:2;padding-top:8px}
 .pilot-flight .trip-route>span>b{font-size:28px;letter-spacing:.02em}
 .pilot-flight .trip-route small{font-size:13px}
 .pilot-flight-heading{flex-direction:column;gap:12px}.pilot-flight-heading>div{min-width:0;max-width:100%}
 .pilot-flight-confirm-action{flex:auto;width:100%;text-align:left}.pilot-flight-confirm-action>button{width:100%;white-space:normal}
}
.flight-accept-dialog{box-sizing:border-box;width:min(540px,calc(100vw - 32px));max-height:90dvh;overflow:auto;margin:auto;padding:28px;border:1px solid var(--border,#cbd8e3);border-radius:12px;background:var(--surface,#fff);color:var(--text,#002950);box-shadow:0 24px 80px #00182d55;text-align:left}.flight-accept-dialog::backdrop{background:#00182db3;backdrop-filter:blur(3px)}.flight-accept-dialog h2{margin:0 0 16px;font-size:24px}.flight-accept-dialog .actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:24px}.flight-accept-dialog .actions button{margin:0}.flight-accept-dialog [role=alert]{color:#b42318}[data-theme=dark] .flight-accept-dialog{background:#1b2935;color:#e2edf5;border-color:#465968}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .flight-accept-dialog{background:#1b2935;color:#e2edf5;border-color:#465968}}

/* All flight states use a compact, readable badge. */
.pilot-flight .trip-status{display:inline-flex;align-items:center;width:fit-content;max-width:100%;box-sizing:border-box;padding:6px 12px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.35;background:#fff2dc;color:#80500d}
.pilot-flight .trip-status[data-status=confirmed],.pilot-flight.trip-checked-in .trip-status{background:#e7f3ec;color:#276443}
.pilot-flight .trip-status[data-status=cancelled],.pilot-flight .trip-status[data-status=withdrawn],.pilot-flight .trip-status[data-status=closed]{background:#e9edf0;color:#536574}
[data-theme=dark] .pilot-flight .trip-status{background:#4b402b;color:#ffe0a4}
[data-theme=dark] .pilot-flight .trip-status[data-status=confirmed],[data-theme=dark] .pilot-flight.trip-checked-in .trip-status{background:#253f34;color:#b8e6cc}
[data-theme=dark] .pilot-flight .trip-status[data-status=cancelled],[data-theme=dark] .pilot-flight .trip-status[data-status=withdrawn],[data-theme=dark] .pilot-flight .trip-status[data-status=closed]{background:#314654;color:#e2eaf0}
@media(prefers-color-scheme:dark){html:not([data-theme=light]) .pilot-flight .trip-status{background:#4b402b;color:#ffe0a4}html:not([data-theme=light]) .pilot-flight .trip-status[data-status=confirmed],html:not([data-theme=light]) .pilot-flight.trip-checked-in .trip-status{background:#253f34;color:#b8e6cc}html:not([data-theme=light]) .pilot-flight .trip-status[data-status=cancelled],html:not([data-theme=light]) .pilot-flight .trip-status[data-status=withdrawn],html:not([data-theme=light]) .pilot-flight .trip-status[data-status=closed]{background:#314654;color:#e2eaf0}}

.pilot-flight-summary{display:flex;align-items:stretch;gap:24px;padding:20px 24px;margin:24px 0;border:1px solid #cbd8e3;border-radius:12px;background:#fff;color:#002950}
.pilot-summary-total{display:flex;flex-direction:column;justify-content:center;min-width:105px;padding-right:24px;border-right:1px solid #dce5ec}.pilot-summary-total strong{font-size:36px;line-height:1.15;font-weight:700}.pilot-summary-total span{font-size:13px;margin-top:6px;color:#5c7286}
.pilot-flight-summary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:16px;flex:1;margin:0}.pilot-summary-item{display:flex;flex-direction:column;justify-content:center;gap:8px}.pilot-summary-item dt{font-size:13px;display:flex;align-items:center;gap:7px;color:#5c7286}.pilot-summary-item dd{font-size:26px;line-height:1.2;font-weight:650;margin:0}.pilot-summary-item i{height:8px;width:8px;flex-shrink:0;border-radius:50%;background:#8697a5}.pilot-summary-item[data-state=requested] i{background:#f58200}.pilot-summary-item[data-state=confirmed] i,.pilot-summary-item[data-state=checkedIn] i{background:#2b8961}.pilot-summary-item[data-state=cancelled] i{background:#b96359}
@media(max-width:600px){.pilot-flight-summary{padding:16px;gap:16px}.pilot-summary-total{min-width:70px;padding-right:16px}.pilot-summary-total strong{font-size:30px}.pilot-flight-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.pilot-summary-item dt{font-size:12px;align-items:flex-start}.pilot-summary-item i{margin-top:4px}.pilot-summary-item dd{font-size:23px}}
[data-theme=dark] .pilot-flight-summary{background:#1b2935;color:#e2edf5;border-color:#465968}[data-theme=dark] .pilot-summary-total{border-color:#465968}[data-theme=dark] .pilot-summary-total span,[data-theme=dark] .pilot-summary-item dt{color:#b2c3d0}
@media(prefers-color-scheme:dark){html:not([data-theme=light]) .pilot-flight-summary{background:#1b2935;color:#e2edf5;border-color:#465968}html:not([data-theme=light]) .pilot-summary-total{border-color:#465968}html:not([data-theme=light]) .pilot-summary-total span,html:not([data-theme=light]) .pilot-summary-item dt{color:#b2c3d0}}

.schedule-journey { padding:18px 0; border-top:1px solid var(--app-border,#d3dfeb); }
.schedule-journey header { font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.035em; margin-bottom:16px; }
.schedule-timeline { display:grid; grid-template-columns:minmax(0,1fr) minmax(64px,.8fr) minmax(0,1fr); gap:10px; align-items:center; }
.schedule-endpoint { display:flex; flex-direction:column; gap:4px; min-width:0; }
.schedule-endpoint:last-child { text-align:right; }
.schedule-endpoint>span { font-weight:700; }
.schedule-endpoint>small { color:var(--app-muted,#59738b); overflow-wrap:break-word; }
.schedule-endpoint>strong { font-size:clamp(26px,5vw,36px); line-height:1.2; white-space:nowrap; font-variant-numeric:tabular-nums; }
.schedule-connection { display:flex; flex-direction:column; align-items:center; text-align:center; gap:3px; color:var(--app-muted,#59738b); font-size:13px; }
.schedule-connection>span { font-size:30px; color:var(--app-ink,#002950); }
.schedule-report { font-size:14px; margin:16px 0 0; }
