.ps-flights { max-width: 1100px; }
.flight-panel { padding: 24px; margin: 20px 0; border: 1px solid #dce3eb; border-radius: 12px; background: #fff; }
.flight-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; align-items: start; }
.ps-flights label { display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.ps-flights input:not([type=checkbox]), .ps-flights select { width: 100%; border: 1px solid #b7c4d4; border-radius: 6px; padding: 10px 12px; min-height: 46px; background: white; }
.ps-flights input:focus, .ps-flights select:focus, .ps-flights button:focus-visible { outline: 2px solid #3554d1; outline-offset: 2px; }
.ps-flights .flight-button { display: inline-flex; align-items: center; justify-content: center; background: #3554d1; border: 1px solid #3554d1; border-radius: 6px; color: white; padding: 12px 20px; min-height: 46px; height: auto; line-height: 1.4; white-space: nowrap; cursor: pointer; }
.flight-button:disabled { opacity: .55; cursor: wait; }
.ps-flights .flight-button.secondary { background: white; color: #3554d1; }
.flight-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.flight-notice { background: #edf3fc; padding: 16px; border-radius: 8px; margin-bottom: 20px; white-space: pre-line; overflow-wrap: anywhere; }
.flight-notice.error { background: #fff0ee; color: #9c2828; }
.ps-flights .flight-accept { display: flex; flex-direction: row; align-items: flex-start; gap: 10px; margin: 24px 0; }
.flight-accept input { margin-top: 6px; flex-shrink: 0; }
.ps-flights fieldset { border: 1px solid #dce3eb; border-radius: 8px; padding: 16px; margin-top: 20px; }
.ps-flights legend { padding: 0 8px; float: none; width: auto; font-size: 18px; }
.flight-journey { border-bottom: 1px solid #e7edf4; padding-bottom: 12px; margin-bottom: 12px; }
.flight-fare { background: #f6f8fc; padding: 16px; border-radius: 8px; margin-top: 16px; }
.flight-price { font-size: 24px; font-weight: 600; margin-top: 12px; }
.flight-details { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; }
.ps-flights [hidden] { display: none !important; }
@media (max-width: 575px) { .flight-panel { padding: 16px; } .flight-button { width: 100%; } }
