.gb-page{display:flex;flex-direction:column;gap:14px}
.gb-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.gb-flights{display:flex;flex-wrap:wrap;gap:8px}
.gb-flight-chip{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:12px;padding:10px 14px;cursor:pointer;font:inherit;text-align:left}
.gb-flight-chip:hover{border-color:#2563eb;background:#dbeafe}
.gb-flight-chip b{font-size:13px}
.gb-flight-chip span{font-size:13px;font-weight:650}
.gb-flight-hero{display:flex;flex-direction:column;gap:10px}
.gb-flight-hero-leg{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;border-radius:16px;padding:16px 20px;box-shadow:0 8px 24px rgba(37,99,235,.25)}
.gb-flight-hero-route{font-size:28px;font-weight:800;letter-spacing:.04em;margin-bottom:10px}
.gb-flight-hero-meta{display:flex;flex-wrap:wrap;gap:8px 28px}
.gb-flight-hero-meta small{display:block;font-size:11px;opacity:.8;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.gb-flight-hero-meta b{font-size:20px;font-weight:800}
.gb-kpi{background:#fff;border:1px solid #e1e7ef;border-radius:12px;padding:12px 14px}
.gb-kpi[data-gb-quick]{cursor:pointer}
.gb-kpi.on{border-color:#2563eb;background:#eff6ff}
.gb-kpi small{font-size:10px;color:#64748b;font-weight:700;letter-spacing:.04em}
.gb-kpi b{display:block;margin-top:4px;font-size:18px}
.gb-panel{background:#fff;border:1px solid #e1e7ef;border-radius:14px;padding:14px 16px}
.gb-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.gb-filters{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.gb-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 12px}
.gb-tabs button{border:1px solid #e2e8f0;background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:650;cursor:pointer}
.gb-tabs button.on{background:#eff6ff;border-color:#2563eb;color:#1d4ed8}
.gb-table{width:100%;border-collapse:collapse;font-size:12px}
.gb-table th{text-align:left;font-size:10px;color:#64748b;padding:8px 6px;border-bottom:1px solid #eef2f7}
.gb-table td{padding:8px 6px;border-bottom:1px solid #f1f5f9;vertical-align:top}
.gb-table tr{cursor:pointer}
.gb-table tr:hover{background:#f8fafc}
.gb-st{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;background:#e2e8f0}
.gb-st.open,.gb-st.paid,.gb-st.issued,.gb-st.full,.gb-st.collect{background:#dcfce7;color:#166534}
.gb-st.holding,.gb-st.deposit,.gb-st.hold,.gb-st.hold_apply{background:#fef3c7;color:#92400e}
.gb-st.refund{background:#dbeafe;color:#1e40af}
.gb-st.cancelled,.gb-st.forfeit{background:#fee2e2;color:#991b1b}
.gb-st.hold{background:#ffedd5;color:#9a3412}
.gb-st.closed{background:#e2e8f0;color:#334155}
.gb-st.broker{background:#ede9fe;color:#5b21b6}
.gb-st.wholesale{background:#fce7f3;color:#9d174d}
.gb-st.retail{background:#e0f2fe;color:#075985}
.gb-names{margin-top:10px;padding-top:10px;border-top:1px dashed #e2e8f0}
.gb-unnamed input[name^="name_"]{background:#fff7ed}
.gb-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.gb-form-grid label{font-size:11px;font-weight:700;color:#475569;display:flex;flex-direction:column;gap:4px}
.gb-form-grid label.gb-check-row{flex-direction:row;align-items:center;gap:8px;font-weight:650}
.gb-form-grid input[data-gb-vnd]{pointer-events:auto;background:#fff;min-height:36px}
.gb-ex-inline{margin-top:12px;padding-top:10px;border-top:1px dashed #e2e8f0}
.gb-avg-box{display:flex;flex-direction:column;gap:2px;justify-content:center}
.gb-avg-box small{font-size:11px;font-weight:700;color:#475569}
.gb-avg-box b{font-size:18px;color:#1d4ed8}
.gb-ms-toggle{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 12px}
.gb-ms-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.gb-ncc-row{display:flex;gap:6px;align-items:stretch}
.gb-ncc-row input,.gb-ncc-row select{flex:1;min-width:0}
.gb-ncc-row button{flex:none;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.gb-form-grid .full-width,.gb-form-grid label.full-width{grid-column:1/-1}
.gb-form-grid [hidden],.gb-form-grid label[hidden]{display:none !important}
.gb-form-grid input,.gb-form-grid select,.gb-form-grid textarea{font-weight:500}
.gb-modal form{pointer-events:auto;position:relative;z-index:2}
.gb-modal .gb-table tr{cursor:default}
.gb-ops-stack{display:flex;flex-direction:column;gap:12px;padding:4px 4px 12px}
.gb-ops-stack label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#334155}
.gb-ops-stack [hidden],.gb-ops-stack label[hidden],.gb-modal [hidden],.gb-is-hidden{display:none !important}
.gb-ops-stack input,.gb-ops-stack select{font-weight:500}
.gb-ops-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.gb-ops-facts small{display:block;font-size:10px;color:#64748b;font-weight:700}
.gb-ops-radios{display:flex;flex-direction:column;gap:8px;padding:8px 0}
.gb-ops-radios label{flex-direction:row;align-items:center;gap:8px;font-weight:650;cursor:pointer}
.gb-modal .vja-modal-scroll,.gb-detail{max-height:70vh;overflow:auto}
.gb-alert{padding:8px 10px;border-radius:10px;font-size:12px;margin:4px 0}
button.gb-alert{display:block;width:100%;text-align:left;cursor:pointer;font:inherit}
.gb-alert.warn{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
.gb-alert.danger{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.gb-alert.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}
.gb-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.gb-muted{color:#64748b;font-size:12px}
.gb-profit{font-weight:800}
.gb-profit.gain{color:#15803d}
.gb-profit.loss{color:#b91c1c}
.gb-extras{margin:12px 0;padding:12px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}
.gb-extras b{display:block;margin-bottom:4px}
.gb-paybox{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;margin:8px 0;padding:8px 10px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc}
.gb-paybox b{font-size:12px;font-weight:750;color:#1e3a8a;white-space:nowrap;align-self:center;margin:0;padding-bottom:2px}
.gb-paybox label{display:flex;flex-direction:column;gap:2px;font-size:11px;font-weight:700;color:#475569;margin:0;flex:1;min-width:140px;max-width:280px}
.gb-paybox input,.gb-paybox select{min-height:32px !important;height:32px;padding:4px 8px;margin:0;font-size:13px}
.gb-extra-row{display:grid;grid-template-columns:auto 110px 1fr 1fr;gap:8px;align-items:center;margin:8px 0;font-weight:650;font-size:12px}
.gb-extra-row input[type="number"],.gb-extra-row input[type="text"]{font-weight:500}
.gb-extra-amt{display:flex;flex-direction:column;gap:2px;min-width:0}
.gb-extra-amt [data-gb-extra-line]{font-size:11px;font-weight:650;color:#1d4ed8}
.gb-extra-block{margin:8px 0;padding-bottom:8px;border-bottom:1px dashed #e2e8f0}
.gb-extra-pax{display:flex;flex-direction:column;gap:6px;margin:6px 0 0;padding:8px 10px;border:1px solid #dbeafe;border-radius:10px;background:#fff}
.gb-extra-pax-lab{font-size:12px;font-weight:700;color:#1e3a8a}
.gb-extra-pax-list{display:flex;flex-wrap:wrap;gap:6px 8px}
.gb-extra-pax-list label,.gb-extra-who{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:12px;color:#1e293b;margin:0;padding:5px 10px;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;cursor:pointer}
.gb-extra-who:has(input:checked){border-color:#2563eb;background:#eff6ff;color:#1d4ed8}
.gb-sale-due{display:flex;flex-wrap:wrap;gap:6px 14px;margin:4px 0 8px;padding:8px 10px;border-radius:8px;background:#eff6ff;color:#1e3a8a;font-size:13px}
.gb-sale-pays{margin:8px 0 0}
.gb-sale-pays b{display:block;margin:0 0 4px;font-size:12px}
.gb-paybox button.ghost-btn{align-self:flex-end;height:32px;white-space:nowrap}
.gb-collect-list{display:flex;flex-direction:column;gap:8px;width:100%}
.gb-collect-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;width:100%;padding:8px 0;border-top:1px dashed #cbd5e1}
.gb-collect-row:first-child{border-top:0;padding-top:0}
.gb-collect-row b{font-size:12px;color:#1e3a8a;align-self:center}
.gb-paybox [data-gb-add-collect]{margin-top:4px}
.gb-inf-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;padding:8px 0;border-top:1px dashed #dbeafe}
.gb-inf-row:first-child{border-top:0;padding-top:0}
.gb-inf-row b{font-size:12px;color:#1e3a8a;align-self:center}
.gb-inf-row label{flex:1;min-width:140px;display:flex;flex-direction:column;gap:2px;font-size:11px;font-weight:700;color:#475569}
.gb-name-quick{margin:8px 0 10px;display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.gb-name-quick label{flex:1;min-width:220px;display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:#334155}
.gb-name-quick textarea{width:100%;min-height:72px;padding:8px;font:13px/1.4 inherit;border:1px solid #cbd5e1;border-radius:8px}
@media (max-width:720px){
  .gb-extra-row{grid-template-columns:auto 1fr; }
}
