*{box-sizing:border-box}body{margin:0;background:#07111f;color:#eef3f8;font:16px Arial;line-height:1.5}header{display:flex;justify-content:space-between;gap:20px;padding:18px 5%;background:#091728;border-bottom:1px solid #24364c;position:sticky;top:0}header a{color:#fff;text-decoration:none;font-weight:bold}header span{color:#b9a36a;font-weight:normal}nav{display:flex;gap:20px}main{max-width:1100px;margin:auto;padding:35px 18px}section{background:#0d1b2c;border:1px solid #24364c;border-radius:14px;padding:25px;margin-bottom:22px}h1{font-size:clamp(2rem,5vw,3.5rem)}label{display:block;margin:14px 0;font-weight:bold}input,select,textarea{width:100%;margin-top:6px;padding:13px;border:1px solid #34495f;border-radius:8px;background:#081522;color:white;font:inherit}textarea{resize:vertical;min-height:90px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check{display:flex;align-items:center;gap:10px;padding:12px;background:#0a1725;border:1px solid #24364c;border-radius:8px}.check input{width:20px;margin:0}.button,button{display:inline-block;background:#b9a36a;color:#07111f;border:0;border-radius:8px;padding:13px 20px;font-weight:bold;text-decoration:none;cursor:pointer}.submit{width:100%}.notice{border-left:4px solid #b9a36a}.muted{color:#9eacbb}.flash{padding:13px;background:#173b35;border-radius:8px;margin-bottom:20px}.table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #24364c}.narrow{max-width:480px;margin:50px auto}.hero{text-align:center;padding:80px 20px}.head{display:flex;justify-content:space-between;align-items:center;gap:20px}dt{color:#9eacbb;font-weight:bold;margin-top:10px}dd{margin:2px 0 12px;white-space:pre-wrap}@media(max-width:700px){header{flex-direction:column}nav{overflow:auto}.grid,.checks{grid-template-columns:1fr}.head{flex-direction:column;align-items:stretch}.button{width:100%;text-align:center}section{padding:20px}main{padding:22px 12px}}.trip-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.trip-summary>div,.task-card,.draft-row{border:1px solid #24364c;border-radius:12px;padding:14px;background:#101f32;color:#eef3f8}.section-head,.task-top,.draft-row{display:flex;justify-content:space-between;gap:14px;align-items:center}.task-card{margin:12px 0}.task-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:12px}.task-grid form{display:grid;gap:10px}.task-meta{font-size:.9rem;color:#9eacbb}.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:700;background:#26384d;color:#eef3f8}.badge-confirmed{background:#1f5d43;color:#d9fbe8}.badge-sent,.badge-acknowledged{background:#214c70;color:#dbeafe}.badge-needs-attention,.badge-rejected{background:#71343b;color:#ffe4e6}.badge-requested{background:#6b5420;color:#fff1b8}.badge-not-required{background:#26384d;color:#cbd5e1}.badge-cancelled{background:#3b4552;color:#cbd5e1}.badge-acknowledged{background:#214c70;color:#dbeafe}.email-preview{white-space:pre-wrap;overflow:auto;max-height:420px;background:#081522;border:1px solid #34495f;color:#eef3f8;border-radius:10px;padding:14px;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.actions{display:flex;gap:12px;flex-wrap:wrap}.secondary{background:#26384d;color:#eef3f8}.muted{color:#64748b}.check{display:flex;gap:8px;align-items:center}.check input{width:auto}.draft-row{margin:8px 0}@media(max-width:800px){.trip-summary{grid-template-columns:1fr 1fr}.task-grid{grid-template-columns:1fr}}@media(max-width:520px){.trip-summary{grid-template-columns:1fr}.task-top,.section-head,.draft-row{align-items:flex-start;flex-direction:column}.actions button,.actions a{width:100%}}
.email-review-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;margin-bottom:20px;background:#101f32;border:1px solid #34495f;border-left:4px solid #b9a36a;border-radius:10px}.email-review-banner strong{display:block;color:#fff}.email-review-banner span:not(.badge){display:block;color:#9eacbb;font-size:.9rem;margin-top:3px}.email-style-note{padding:14px 16px;background:#0a1725;border:1px solid #24364c;border-radius:10px;color:#b9c5d1;margin:14px 0 18px}.email-style-note strong{color:#b9a36a}@media(max-width:520px){.email-review-banner{align-items:flex-start;flex-direction:column}}
.email-review-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;margin-bottom:20px;background:#101f32;border:1px solid #34495f;border-left:4px solid #b9a36a;border-radius:10px}.email-review-banner strong{display:block;color:#fff}.email-review-banner span:not(.badge){display:block;color:#9eacbb;font-size:.9rem;margin-top:3px}.email-style-note{padding:14px 16px;background:#0a1725;border:1px solid #24364c;border-radius:10px;color:#b9c5d1;margin:14px 0 18px}.email-style-note strong{color:#b9a36a}@media(max-width:520px){.email-review-banner{align-items:flex-start;flex-direction:column}}
/* EFO task-window / GAR UI */
.task-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.task-button{display:flex;align-items:center;gap:14px;padding:18px;background:#101f32;border:1px solid #34495f;border-radius:14px;text-decoration:none;color:#eef3f8;min-height:88px;transition:.15s}.task-button:hover{border-color:#b9a36a;transform:translateY(-1px)}.task-button strong{display:block;font-size:1rem}.task-button small{display:block;color:#9eacbb;margin-top:5px}.task-icon{font-size:1.8rem;line-height:1}.task-icon.large{font-size:2.8rem}.task-window-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.task-window-header>div:first-child{display:flex;align-items:center;gap:18px}.task-window-header h2{margin:0 0 7px}.gar-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#101f32;border:1px solid #34495f;border-left:4px solid #b9a36a}.gar-banner strong{display:block}.gar-banner span{display:block;color:#9eacbb}.gar-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gar-grid>div{background:#101f32;border:1px solid #34495f;border-radius:10px;padding:14px}.gar-status{display:flex;justify-content:space-between;gap:16px;padding:15px;background:#101f32;border:1px solid #34495f;border-radius:10px}.gar-status span{color:#9eacbb}.read-box{background:#101f32;border:1px solid #34495f;border-radius:10px;padding:14px;margin:12px 0}.read-box pre{white-space:pre-wrap;color:#dbe4ec;font:14px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.notice{padding:14px 16px;background:#2a2416;border:1px solid #6b5420;border-radius:10px;color:#f5df9d}.success{padding:14px 16px;background:#14382d;border:1px solid #1f5d43;border-radius:10px;color:#d9fbe8}.action-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px;background:#101f32;border:1px solid #6b5420;border-left:4px solid #b9a36a;border-radius:10px;margin:10px 0}.action-card strong{display:block}.action-card span{display:block;color:#9eacbb;margin-top:3px}@media(max-width:850px){.task-buttons{grid-template-columns:1fr 1fr}.gar-grid{grid-template-columns:1fr}}@media(max-width:560px){.task-buttons{grid-template-columns:1fr}.task-window-header,.gar-banner,.action-card{align-items:flex-start;flex-direction:column}.task-window-header>div:first-child{align-items:flex-start}.gar-grid{grid-template-columns:1fr}.action-card .button{width:100%}}

/* Customer traffic-light flight dashboard */
.customer-flight-list{display:grid;gap:18px}.customer-flight-card{background:#101f32;border:1px solid #2b4058;border-radius:14px;padding:20px}.customer-flight-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}.customer-flight-heading h3{font-size:1.45rem;margin:5px 0}.customer-flight-heading p{margin:4px 0}.eyebrow{font-size:.76rem;letter-spacing:.09em;color:#b9a36a;font-weight:700}.route-arrow{color:#b9a36a;padding:0 5px}.flight-status-counts{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0;padding:12px 0;border-top:1px solid #2b4058;border-bottom:1px solid #2b4058}.flight-status-counts span{display:flex;align-items:center;gap:7px;font-size:.88rem;color:#cbd5e1}.traffic-dot{display:inline-block;flex:0 0 11px;width:11px;height:11px;border-radius:50%;background:#64748b;box-shadow:0 0 0 3px rgba(100,116,139,.15)}.traffic-dot.green{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.15)}.traffic-dot.amber{background:#f5b942;box-shadow:0 0 0 3px rgba(245,185,66,.15)}.traffic-dot.red{background:#ef5350;box-shadow:0 0 0 3px rgba(239,83,80,.15)}.traffic-dot.grey{background:#8492a6}.mini-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.mini-progress-item{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #2b4058;border-radius:9px;background:#0b1929;color:#e5edf5;font-size:.9rem}.customer-action-summary{border-color:#71343b;background:#251923}.customer-action-summary>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.customer-action-summary p{flex-basis:100%;margin:0 0 0 22px}.empty-state{text-align:center;padding:34px 15px}.empty-state h3{margin-bottom:4px}@media(max-width:760px){.mini-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.customer-flight-heading{align-items:flex-start;flex-direction:column}.customer-flight-heading .button{width:100%}.mini-progress-grid{grid-template-columns:1fr}.customer-flight-card{padding:15px}}
.traffic-legend{display:flex;gap:16px;flex-wrap:wrap;padding:12px 0 18px;color:#9eacbb;font-size:.85rem}.traffic-legend span{display:flex;align-items:center;gap:8px}.customer-detail-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-detail-item{padding:14px;background:#101f32;border:1px solid #2b4058;border-radius:10px}.customer-detail-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.customer-detail-title strong{flex:1}.customer-detail-item p{font-size:.88rem;color:#9eacbb;margin:9px 0 0 20px}.customer-detail-item a{display:inline-block;margin:8px 0 0 20px;color:#d7c38e}.status-green{color:#86efac}.status-amber{color:#fcd34d}.status-red{color:#fca5a5}.status-grey{color:#a8b3c2}@media(max-width:650px){.customer-detail-progress{grid-template-columns:1fr}}

/* V61 commercial readability and spreadsheet layout */
article.card,.card{background:#ffffff!important;color:#172033!important;border:1px solid #d7dee8!important;border-radius:12px;padding:20px;margin:14px 0;box-shadow:0 2px 8px rgba(0,0,0,.08)}
article.card h2,article.card h3,article.card strong,article.card p,article.card label,article.card td,article.card th,.card h2,.card h3,.card strong,.card p,.card label,.card td,.card th{color:#172033!important}
article.card .muted,.card .muted{color:#526174!important}
article.card table,.card table{background:#fff!important;color:#172033!important}
article.card th,.card th{background:#eef2f7!important;color:#172033!important}
article.card td,.card td{background:#fff!important;color:#263449!important;border-bottom:1px solid #d7dee8!important}
.commercial-line{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.itinerary-table{min-width:1050px;background:#fff;color:#172033}
.itinerary-table th{background:#e9eef5;color:#172033;white-space:nowrap}
.itinerary-table td{background:#fff;color:#172033;vertical-align:middle}
.itinerary-table input{min-width:120px;background:#fff;color:#172033;border:1px solid #b8c3d1;padding:9px}
.itinerary-table input::placeholder{color:#718096}
@media(max-width:700px){.commercial-line{grid-template-columns:1fr}}

/* V70 mobile-first refinement while preserving the desktop two-column layout */
@media(max-width:760px){
  header{position:relative;padding:14px 16px;gap:12px}
  nav{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;gap:9px;padding:4px 0 8px;white-space:nowrap;scrollbar-width:thin}
  nav a{flex:0 0 auto;padding:8px 10px;border:1px solid #24364c;border-radius:8px;font-size:13px}
  main{padding:18px 10px}
  section{padding:16px;margin-bottom:14px;border-radius:12px}
  input,select,textarea{font-size:16px;min-height:46px}
  input[type=file]{font-size:14px;padding:10px;min-height:48px}
  .checks{grid-template-columns:1fr}
  .itinerary-table{min-width:980px}
  .head{gap:12px}
}
@media(min-width:761px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .checks{grid-template-columns:repeat(2,minmax(0,1fr))}
}
