:root{color:#10223a;background:radial-gradient(circle at top left,rgba(13,92,171,.18),transparent 28%),linear-gradient(180deg,#f7fbff,#eef3f8)}*{box-sizing:border-box}body{margin:0;font-family:Manrope,sans-serif}.platform-brand{display:flex;align-items:center;gap:12px;margin-bottom:10px}.platform-brand-logo{width:43px;height:43px;object-fit:contain;border-radius:10px;box-shadow:0 8px 18px #10223a1f;background:#fffc}.mobile-shell{min-height:100vh;padding:24px 16px 110px;max-width:520px;margin:0 auto}.hero-header{color:#10223a;margin-bottom:20px}.hero-header .member-topbar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.member-topbar-actions{display:flex;align-items:center;gap:10px}.member-greeting{display:flex;flex-direction:column;gap:2px}.member-greeting-label{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#6b8198}.member-greeting strong{font-size:28px;line-height:1.05;color:#10223a}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:14px;font-weight:700;color:#5c7fa1;margin:0 0 10px}.hero-header h1{margin:0;font-size:32px;line-height:1.05}.hero-subtitle{color:#5b6d81;line-height:1.5}.pwa-guide-card{margin-bottom:16px;border:1px solid rgba(13,92,171,.16);background:radial-gradient(circle at top right,rgba(13,92,171,.14),transparent 36%),#fffffff0}.pwa-guide-card.installed{border-color:#1a8f5d3d;background:radial-gradient(circle at top right,rgba(26,143,93,.12),transparent 38%),#fffffff0}.pwa-guide-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pwa-guide-head .ant-typography{margin-bottom:0}.pwa-guide-head .ant-typography+.ant-typography{margin-top:8px}.pwa-guide-kicker{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#5c7fa1}.pwa-guide-check{color:#1a8f5d;font-size:22px;margin-top:4px}.pwa-guide-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.pwa-guide-actions .ant-btn{border-radius:16px}.pwa-guide-modal{display:flex;flex-direction:column;gap:12px}.pwa-guide-step-card{border-radius:22px}.pwa-guide-step-card .ant-card-body{display:flex;gap:14px;align-items:flex-start;padding:16px 18px}.pwa-guide-step-card strong{display:block;color:#10223a;margin-bottom:4px}.pwa-guide-step-card p{margin:0;color:#5b6d81;line-height:1.5}.pwa-guide-step-number{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#0d5cab;color:#fff;font-weight:800;flex:0 0 auto}.pwa-guide-note{margin-top:14px;padding:14px 16px;border-radius:18px;background:#0d5cab14;color:#35506f;line-height:1.5}.booking-calendar-legend{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}.booking-calendar-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#4f6680}.booking-calendar-legend-swatch{width:12px;height:12px;border-radius:999px;border:1px solid rgba(16,34,58,.08)}.booking-calendar-legend-swatch.requested{background:#fff4bf}.booking-calendar-legend-swatch.confirmed{background:#ffd8d8}.booking-calendar-legend-swatch.shared-mission{background:#eadcff}.booking-calendar-legend-swatch.aircraft-out-of-uio{background:#fff4bf}.booking-calendar-cell{border-radius:10px;min-width:26px;min-height:26px;display:inline-flex;align-items:center;justify-content:center;padding:2px}.booking-calendar-day,.global-calendar-day{display:inline-flex;align-items:center;justify-content:center;width:100%;line-height:1}.booking-calendar-cell.requested{background:#fff4bf}.booking-calendar-cell.confirmed,.booking-calendar-cell.booked_endpoint{background:#ffd8d8}.booking-calendar-cell.shared_mission{background:#eadcff}.booking-calendar-cell.aircraft_out_of_uio{background:#fff4bf}.booking-calendar-cell.range-start,.booking-calendar-cell.range-end{background:#0d5cab;color:#fff}.booking-calendar-cell.range-between{background:#d8ebff}.booking-section-label{display:block;margin:6px 0 8px}.booking-calendar-footer{display:flex;justify-content:flex-end;padding-top:8px}.steps-card,.content-card,.slot-card,.option-card{border:1px solid rgba(255,255,255,.65);box-shadow:0 14px 40px #10223a14;background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.steps-card{margin-bottom:16px}.steps-card.compact{padding:18px 20px}.step-kicker{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#6b8198;margin-bottom:8px}.step-title{margin:0;font-size:26px;line-height:1.1;color:#10223a}.content-card{margin-bottom:16px}.trip-planner-card{background:radial-gradient(circle at top right,rgba(13,92,171,.12),transparent 38%),#ffffffeb;color:#10223a;border:1px solid rgba(255,255,255,.65);overflow:hidden}.trip-planner-card .ant-card-body{padding:20px}.trip-mode-toggle{display:grid;grid-template-columns:1fr .82fr 1.05fr;gap:10px;margin-bottom:24px}.trip-mode-toggle button{min-height:46px;border-radius:999px;border:1px solid rgba(13,92,171,.2);background:#ffffffb8;color:#35506f;font-family:inherit;font-size:14px;font-weight:800;letter-spacing:.01em}.trip-mode-toggle button.active{background:#0d5cab;color:#fff;border-color:#0d5cab;box-shadow:0 10px 24px #0d5cab38}.trip-mode-toggle button:disabled{opacity:.55}.trip-section-title.ant-typography{color:#10223a;margin:0 0 16px;font-size:24px;letter-spacing:0}.trip-multisegment-block+.trip-multisegment-block{margin-top:24px}.trip-route-card,.trip-date-card{position:relative;background:#fffffff5;color:#10223a;border:1px solid rgba(13,92,171,.14);border-radius:18px;overflow:hidden;box-shadow:0 14px 32px #10223a14}.trip-route-card{margin-bottom:18px}.trip-route-card:before{content:"";position:absolute;left:72px;top:57px;bottom:57px;border-left:2px dashed #c8d5e2;z-index:1}.trip-route-card:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#d9e2ec}.trip-route-row{position:relative;z-index:2;display:grid;grid-template-columns:54px 1fr;gap:14px;width:100%;min-height:88px;padding:22px 72px 20px 28px;border:0;background:transparent;text-align:left;align-items:center}.trip-route-marker{width:26px;height:26px;border:2px solid #0d5cab;border-radius:999px;background:#fff}.trip-route-icon{font-size:30px;color:#0d5cab}.trip-route-copy{display:flex;flex-direction:column;gap:8px;min-width:0}.trip-route-copy span,.trip-date-label{color:#6b8198;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.trip-route-copy strong{color:#10223a;font-size:18px;line-height:1.2}.trip-route-copy strong.placeholder{color:#6b8198;font-style:italic;font-weight:700}.trip-swap-button{position:absolute;z-index:3;right:18px;top:50%;width:48px;height:48px;transform:translateY(-50%);border:1px solid rgba(13,92,171,.18);border-radius:14px;background:#fff;color:#0d5cab;font-size:24px;display:inline-flex;align-items:center;justify-content:center}.trip-date-card{display:grid;grid-template-columns:1fr 1fr;margin-bottom:16px}.trip-date-card.one-way{grid-template-columns:1fr 1fr}.trip-date-field{min-width:0;padding:18px 14px 14px}.trip-date-field+.trip-date-field{border-left:1px solid #d9e2ec}.trip-date-field.disabled{background:#eef3f8;opacity:1}.trip-date-control{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;margin-top:8px}.trip-date-control>.anticon{font-size:24px;color:#0d5cab}.trip-date-field .ant-picker,.trip-date-field .ant-select{width:100%}.trip-date-field .ant-picker .ant-picker-input>input,.trip-date-field .ant-select .ant-select-selection-item,.trip-date-field .ant-select .ant-select-selection-placeholder{font-size:17px;font-style:italic;color:#10223a}.trip-date-field.disabled .ant-picker .ant-picker-input>input,.trip-date-field.disabled .ant-select .ant-select-selection-item{color:#6b8198}.trip-planner-card .booking-calendar-legend{margin-top:16px;margin-bottom:0}.trip-planner-card .booking-calendar-legend-item{color:#4f6680}.vertical-radio{display:flex;flex-direction:column;gap:12px}.mission-radio{height:auto;padding:18px 16px!important;display:flex!important;flex-direction:column;align-items:flex-start;gap:10px;border-radius:18px!important}.mission-card-copy{display:flex;flex-direction:column;gap:6px;width:100%}.mission-card-title{display:block;font-size:18px;line-height:1.2;color:#10223a;font-weight:800}.mission-card-description{display:block;font-size:14px;line-height:1.5;color:#5b6d81}.mission-card-tag{margin:2px 0 0;border-radius:999px;font-weight:700}.temporary-passenger-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.temporary-passenger-copy{display:flex;flex-direction:column;gap:4px}.temporary-passenger-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.family-passenger-list{display:flex;flex-direction:column;gap:12px}.passenger-option-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.passenger-collapse-label{display:flex;flex-direction:column;gap:4px}.passenger-collapse-label strong{font-size:15px;color:#10223a}.passenger-collapse-label span{font-size:12px;color:#5b6d81;font-weight:400}.sticky-cta{position:fixed;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(180deg,#f7fbff00,#eef3f8 28%)}.sticky-cta .ant-btn{max-width:520px;margin:0 auto;display:block}.booking-actions{max-width:520px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.booking-actions .ant-btn{width:100%}.confirmation-actions{grid-template-columns:1fr}.confirmation-actions .ant-btn{white-space:normal;min-height:52px}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at top,rgba(13,92,171,.28),transparent 30%),linear-gradient(160deg,#08111f,#10223a 40%,#eef3f8)}.login-card{width:min(100%,440px);border-radius:28px}.login-logo{width:66px;height:66px;object-fit:contain;margin-bottom:14px;border-radius:18px;box-shadow:0 16px 30px #10223a29;background:#ffffffe6}.slot-card{margin-bottom:14px;cursor:pointer;transition:transform .2s ease,border-color .2s ease}.slot-card.active{transform:translateY(-2px);border-color:#0d5cab}.slot-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.slot-time{margin:0;font-size:18px;font-weight:800}.slot-message,.logout-link{color:#5b6d81}.slot-card.available{border-left:6px solid #1a8f5d}.slot-card.occupied{border-left:6px solid #d64545}.slot-card.blocked{border-left:6px solid #8e98a4}.slot-card.warning{border-left:6px solid #e4a600}.slot-summary{margin-top:14px;padding-top:12px;border-top:1px solid #e9eef4;display:flex;flex-direction:column;gap:4px;color:#566b80;font-size:13px}.slot-summary strong{color:#10223a}.passenger-meta{display:flex;flex-direction:column;gap:8px}.rules-list{margin:0;padding-left:18px;line-height:1.7}.airport-card-stack{display:flex;flex-direction:column;gap:14px}.airport-trigger{width:100%;border:1px solid #d8e0ea;background:#fff;border-radius:22px;padding:14px 16px;text-align:left;box-shadow:inset 0 0 0 1px #fff9}.airport-trigger:focus,.airport-trigger:hover{border-color:#0d5cab;box-shadow:0 0 0 4px #0d5cab14}.airport-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#6b8198;margin-bottom:8px}.airport-trigger-content{display:flex;flex-direction:column;gap:2px}.airport-trigger-content strong{font-size:28px;line-height:1;color:#10223a}.airport-trigger-content span{color:#566b80;font-size:14px}.airport-trigger-content.placeholder strong{font-size:18px}.airport-drawer .ant-drawer-content{border-top-left-radius:28px;border-top-right-radius:28px}.reservations-drawer .ant-drawer-content{background:linear-gradient(180deg,#f7fbff,#eef3f8)}.reservation-list{display:flex;flex-direction:column;gap:12px}.reservation-card{cursor:pointer}.reservation-card.active{border-color:#0d5cab47}.reservation-item-stack{display:flex;flex-direction:column}.reservation-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.reservation-code-inline{margin-top:4px;color:#6b8198;font-size:.9rem;letter-spacing:.08em}.reservation-detail-card{margin-top:16px}.reservation-detail-inline-card{margin:-2px 0 12px}.global-calendar-request-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#6b8198}.global-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.global-calendar-header .ant-btn{color:#0d5cab}.global-calendar-request-meta .ant-tag{margin-inline-end:0}.global-calendar-request-list,.profile-family-list{display:flex;flex-direction:column}.global-calendar-request-item,.profile-family-row{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px solid #edf2f7}.global-calendar-request-item:last-child,.profile-family-row:last-child{border-bottom:0}.global-calendar-cell{border-radius:10px;min-width:26px;min-height:26px;display:inline-flex;align-items:center;justify-content:center;padding:2px}.global-calendar-cell.has-requests{background:#d8ebff}.global-calendar-cell.selected{background:#0d5cab;color:#fff}.global-calendar-cell.booked_endpoint,.global-calendar-cell.confirmed{background:#ffd8d8}.global-calendar-cell.aircraft_out_of_uio{background:#fff4bf}.global-calendar-cell.shared_mission{background:#eadcff}.global-calendar-cell.self_confirmed{background:#dff5df}.profile-explanation{margin:16px 0 0;color:#4f6680;line-height:1.6}.profile-dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:16px}.profile-chart-card .ant-card-body{display:flex;flex-direction:column;gap:14px}.profile-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.profile-chart-head .ant-typography{margin:0}.profile-chart-head span{font-size:12px;color:#6b8198;text-align:right}.profile-chart-body{display:flex;flex-direction:column;gap:14px}.profile-pie-ring{width:118px;height:118px;margin:0 auto;border-radius:999px;display:flex;align-items:center;justify-content:center}.profile-pie-hole{width:62px;height:62px;border-radius:999px;background:#fffffff2;display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 0 0 1px #10223a0f;padding:8px}.profile-pie-hole strong{font-size:12px;line-height:1.2;color:#10223a}.profile-chart-legend{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.profile-chart-legend-item{display:flex;gap:10px;align-items:center;min-width:0}.profile-chart-dot{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.profile-chart-legend-item div{display:flex;flex-direction:column;gap:2px}.profile-chart-legend-item strong{font-size:13px;color:#10223a}.profile-chart-legend-item span{font-size:12px;color:#5b6d81}.profile-bar-chart{display:flex;flex-direction:column;gap:14px}.profile-bar-row{display:flex;flex-direction:column;gap:8px}.profile-bar-copy{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-bar-copy strong{font-size:13px;color:#10223a}.profile-bar-copy span{font-size:12px;color:#5b6d81;text-align:right}.profile-bar-track{width:100%;height:12px;border-radius:999px;background:#dbe7f3;overflow:hidden}.profile-bar-fill{height:100%;border-radius:999px}.profile-history-collapse{background:transparent}.profile-year-label{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-year-label strong{color:#10223a}.profile-year-label span{color:#5b6d81}.profile-history-list{display:flex;flex-direction:column;gap:10px}.profile-history-card{margin-bottom:0}.profile-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.profile-family-row .ant-typography:first-child{color:#10223a}.profile-family-row .ant-typography:last-child{color:#5b6d81}.airport-drawer-search{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.airport-drawer-hint{font-size:14px;color:#4a6280}.airport-drawer-search .ant-input-affix-wrapper{border-radius:26px;padding:18px 20px;border-width:2px}.airport-drawer-search .ant-input{font-size:32px;line-height:1.1}.airport-result{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-bottom:1px solid #edf2f7;color:inherit;cursor:pointer;display:flex;gap:14px;text-align:left;padding:18px 6px}.airport-result-copy{display:flex;flex-direction:column;gap:4px}.airport-result-icon{font-size:22px;color:#1e7d75;margin-top:8px}.faq-collapse{background:transparent}.faq-answer{margin:0;color:#4f6680;line-height:1.6}.rules-stack{display:flex;flex-direction:column;gap:12px}.rule-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:18px;background:#0d5cab0f}.rule-row strong{color:#10223a}.rule-row span,.rules-copy{color:#4f6680;line-height:1.6}@media (max-width: 480px){.pwa-guide-actions{flex-direction:column}.pwa-guide-actions .ant-btn{width:100%}.booking-calendar-legend{flex-direction:column;gap:8px}}
