.tt-container{display:flex;flex-direction:column;height:calc(100vh - 124px);gap:0;padding:0 8px}.tt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0;margin-bottom:8px}.tt-toolbar-right{display:flex;align-items:center;gap:10px}.tt-zoom-controls{display:flex;align-items:center;gap:2px;padding:2px;background:#f1f5f9;border-radius:7px}.tt-zoom-btn{padding:4px 10px;font-size:11px;font-weight:600;background:transparent;border:none;border-radius:5px;color:#64748b;cursor:pointer;transition:all .15s}.tt-zoom-btn:hover{background:#ffffff80;color:#334155}.tt-zoom-btn--active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.tt-zoom-nav{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:5px;color:#64748b;cursor:pointer;transition:all .15s}.tt-zoom-nav:hover{background:#fff9;color:#334155}.tt-save-bar{display:flex;align-items:center;gap:8px}.tt-save-count{font-size:12px;font-weight:500;color:#f59e0b}.tt-discard-btn{padding:5px 12px;font-size:12px;font-weight:500;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;transition:all .15s}.tt-discard-btn:hover{background:#e2e8f0;color:#334155}.tt-save-btn{padding:5px 16px;font-size:12px;font-weight:600;background:#1e293b;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:all .15s}.tt-save-btn:hover{background:#334155}.tt-save-btn:disabled,.tt-discard-btn:disabled{opacity:.5;cursor:not-allowed}.tt-agents-zone{flex:1 1 0;min-height:0;overflow-x:auto;overflow-y:auto;cursor:grab;will-change:scroll-position;-webkit-overflow-scrolling:touch;scroll-behavior:auto;border:1px solid #e2e8f0;border-bottom:none;border-radius:8px 8px 0 0;background:#fff}.tt-agents-zone:active{cursor:grabbing}.tt-agents-zone::-webkit-scrollbar{display:none}.tt-agents-zone{scrollbar-width:none}.tt-flights-zone{height:200px;flex-shrink:0;overflow-x:auto;overflow-y:auto;cursor:grab;will-change:scroll-position;-webkit-overflow-scrolling:touch;scroll-behavior:auto;border:1px solid #e2e8f0;border-radius:0 0 8px 8px;background:#f7f9fb;box-shadow:inset 0 2px 4px #0000000a;transition:background .2s,border-color .2s}.tt-flights-zone:active{cursor:grabbing}.tt-flights-zone--dragover{background:#f0f7ff;border-color:#93c5fd;box-shadow:inset 0 0 0 1px #93c5fd}.tt-flights-zone::-webkit-scrollbar{display:none}.tt-flights-zone{scrollbar-width:none}.tt-scroll-content{display:flex;flex-direction:column}.tt-time-axis{display:flex;position:sticky;top:0;z-index:20;background:#f8fafc;border-bottom:1px solid #e2e8f0;height:32px}.tt-time-axis--compact{height:26px;background:#edf0f4;border-bottom:1px solid #e2e8f0}.tt-time-axis--compact .tt-hour-label{font-size:10px;top:4px;color:#94a3b8}.tt-axis-bar{flex:1;position:relative;min-height:32px;will-change:transform}.tt-time-axis--compact .tt-axis-bar{min-height:26px}.tt-hour-marker{position:absolute;top:0;height:100%}.tt-hour-label{position:absolute;top:6px;transform:translate(-50%);font-size:11px;font-weight:500;color:#94a3b8;white-space:nowrap;-webkit-user-select:none;user-select:none}.tt-grid-line{position:absolute;top:0;left:0;width:1px;height:2000px;background:#f1f5f9;pointer-events:none;z-index:0}.tt-rows{position:relative}.tt-row{display:flex;min-height:32px;border-bottom:1px solid #f1f5f9;align-items:stretch;background:#fff;transition:background .15s}.tt-row:hover{background:#f8fafc}.tt-row--dragover{background:#dbeafe!important;box-shadow:inset 0 0 0 2px #3b82f6}.tt-empty-row{display:flex;align-items:center;justify-content:center;height:32px;color:#94a3b8;font-size:13px}.tt-row-label{width:180px;min-width:180px;flex-shrink:0;display:flex;align-items:center;gap:6px;padding:0 12px;border-right:1px solid #e2e8f0;overflow:hidden;z-index:10;background:#fff;cursor:default;position:sticky;left:0;box-shadow:2px 0 8px #0000000f}.tt-time-axis .tt-row-label{background:#f8fafc;z-index:30}.tt-time-axis--compact .tt-row-label{background:#edf0f4}.tt-row:hover .tt-row-label{background:#f8fafc}.tt-row--dragover .tt-row-label{background:#dbeafe}.tt-role-icon{flex-shrink:0;opacity:.7}.tt-agent-name{font-size:13px;font-weight:500;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.tt-row-blocks{flex:1;position:relative;height:100%;min-width:0;will-change:transform}.tt-block{position:absolute;border-radius:4px;border:1px solid #e2e8f0;display:flex;align-items:center;padding:0 5px;overflow:hidden;cursor:grab;box-shadow:none;transition:box-shadow .15s;z-index:1;-webkit-user-select:none;user-select:none}.tt-block:hover{box-shadow:0 2px 6px #00000014;z-index:2}.tt-block:active{cursor:grabbing}.tt-block-info{display:flex;align-items:center;gap:4px;overflow:hidden;flex:1;min-width:0}.tt-block-flight{font-size:11px;font-weight:600;white-space:nowrap}.tt-block-dest{font-size:10px;font-weight:500;white-space:nowrap;opacity:.8}.tt-block-times{font-size:9px;font-weight:400;white-space:nowrap;opacity:.7;font-family:SF Mono,Menlo,monospace}.tt-block-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:9px;font-weight:700;background:#06c;color:#fff;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 1px 3px #00000026;z-index:3}.tt-overlap-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:#fff7ed;border:1.5px solid #f97316;color:#f97316;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;z-index:5;pointer-events:auto;cursor:default;box-shadow:0 1px 4px #f9731640;line-height:1}.tt-now-line{position:absolute;top:0;bottom:0;width:2px;background:#ef44444d;z-index:3;pointer-events:none}.tt-now-line:before{content:"";position:absolute;top:-3px;left:-3px;width:8px;height:8px;background:#ef444480;border-radius:50%}.tt-row--pool{background:transparent;align-items:stretch;border-bottom:none}.tt-row--pool:hover{background:transparent}.tt-row--pool .tt-row-label{background:#f7f9fb;align-items:center;z-index:10;box-shadow:2px 0 8px #0000000f}.tt-time-axis--compact .tt-grid-line{display:none}.tt-flights-icon{color:#64748b;flex-shrink:0}.tt-flights-label{font-weight:600!important;font-size:13px;color:#1e293b}.tt-pool-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;border-radius:9px;font-size:10px;font-weight:600;background:#e2e8f0;color:#475569;flex-shrink:0}.tt-container--compact .tt-agents-zone{flex:0 0 auto;overflow-y:hidden}.tt-container--compact .tt-flights-zone{flex:1 1 0;height:auto;min-height:200px}.tt-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#64748b;font-size:14px}@media(max-width:768px){.tt-toolbar{flex-direction:column;align-items:stretch}.tt-toolbar-right{flex-wrap:wrap}.tt-row-label{width:120px;min-width:120px;padding:0 8px}.tt-agent-name{font-size:12px}}.smi-container{padding:20px;max-width:1400px}.smi-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.smi-header h3{font-size:15px;font-weight:600;color:#e6edf3;margin:0}.smi-back-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:500;color:#8b949e;background:#21262d;border:1px solid #30363d;border-radius:6px;cursor:pointer;transition:all .15s}.smi-back-btn:hover{color:#d1d5db;border-color:#484f58}.smi-station-selector{display:flex;align-items:center;gap:12px;margin-bottom:20px}.smi-station-selector label{font-size:13px;font-weight:500;color:#8b949e}.smi-station-selector select{padding:7px 12px;font-size:13px;color:#d1d5db;background:#0d1117;border:1px solid #30363d;border-radius:6px;min-width:220px}.smi-table{width:100%;border-collapse:collapse;margin-bottom:20px}.smi-table th{text-align:left;padding:10px 14px;font-size:11px;font-weight:600;color:#8b949e;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #21262d}.smi-table td{padding:10px 14px;font-size:13px;color:#d1d5db;border-bottom:1px solid #161b22}.smi-table tr:hover td{background:#161b2280}.smi-status-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;font-size:11px;font-weight:600;border-radius:12px;text-transform:uppercase;letter-spacing:.3px}.smi-status-badge--active{background:#22c55e26;color:#22c55e}.smi-status-badge--draft{background:#f59e0b26;color:#f59e0b}.smi-status-badge--none{background:#8b949e1a;color:#6e7681}.smi-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:500;color:#d1d5db;background:#21262d;border:1px solid #30363d;border-radius:6px;cursor:pointer;transition:all .15s}.smi-action-btn:hover{border-color:#484f58;background:#30363d}.smi-action-btn--primary{background:#1f6feb;border-color:#1f6feb;color:#fff}.smi-action-btn--primary:hover{background:#388bfd;border-color:#388bfd}.smi-action-btn--danger{color:#f85149}.smi-action-btn--danger:hover{background:#f8514926;border-color:#f85149}.smi-action-btn:disabled{opacity:.5;cursor:not-allowed}.smi-actions-cell{display:flex;gap:6px}.smi-reference{background:#0d1117;border:1px solid #21262d;border-radius:8px;margin-bottom:20px;overflow:hidden}.smi-reference-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.smi-reference-header:hover{background:#161b2280}.smi-reference-header h4{font-size:13px;font-weight:600;color:#d1d5db;margin:0;display:flex;align-items:center;gap:8px}.smi-reference-body{padding:12px 16px;border-top:1px solid #21262d}.smi-reference-body code{font-family:SF Mono,Fira Code,monospace;font-size:12px;background:#161b22;padding:2px 6px;border-radius:4px;color:#79c0ff}.smi-reference-body ul{margin:6px 0;padding-left:20px}.smi-reference-body li{font-size:12px;color:#8b949e;margin:4px 0;line-height:1.5}.smi-reference-body p{font-size:12px;color:#8b949e;margin:6px 0;line-height:1.5}.smi-detection{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;padding:14px 16px;background:#0d1117;border:1px solid #21262d;border-radius:8px}.smi-detection-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#d1d5db}.smi-detection-row .icon-ok{color:#22c55e}.smi-detection-row .icon-warn{color:#f59e0b}.smi-detection-stands{font-size:11px;color:#8b949e;font-family:SF Mono,Fira Code,monospace;margin-left:4px}.smi-preview-layout{display:grid;grid-template-columns:340px 1fr;gap:20px;margin-bottom:20px}@media(max-width:1100px){.smi-preview-layout{grid-template-columns:1fr}}.smi-alignment-panel{background:#0d1117;border:1px solid #21262d;border-radius:8px;overflow:hidden;max-height:700px;display:flex;flex-direction:column}.smi-alignment-header{padding:10px 14px;border-bottom:1px solid #21262d;font-size:13px;font-weight:600;color:#d1d5db;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.smi-alignment-bulk{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid #21262d;flex-shrink:0}.smi-alignment-bulk label{font-size:11px;color:#8b949e;white-space:nowrap}.smi-alignment-bulk input[type=number]{width:60px;padding:4px 6px;font-size:12px;color:#d1d5db;background:#161b22;border:1px solid #30363d;border-radius:4px;text-align:center}.smi-alignment-bulk button{padding:4px 10px;font-size:11px;font-weight:500;color:#d1d5db;background:#21262d;border:1px solid #30363d;border-radius:4px;cursor:pointer}.smi-alignment-bulk button:hover{background:#30363d}.smi-alignment-list{overflow-y:auto;flex:1}.smi-stand-row{display:flex;align-items:center;gap:8px;padding:6px 14px;border-bottom:1px solid #161b22;cursor:pointer;transition:background .1s}.smi-stand-row:hover{background:#1f6feb14}.smi-stand-row--selected{background:#1f6feb26}.smi-stand-row--taxi{border-top:1px solid #21262d}.smi-stand-label{font-size:12px;font-weight:600;color:#d1d5db;min-width:50px;font-family:SF Mono,Fira Code,monospace}.smi-stand-label--taxi{color:#79c0ff}.smi-rotation-input{width:55px;padding:3px 6px;font-size:12px;color:#d1d5db;background:#161b22;border:1px solid #30363d;border-radius:4px;text-align:center}.smi-rotation-slider{flex:1;min-width:0;accent-color:#1f6feb;height:4px}.smi-preset-btns{display:flex;gap:2px}.smi-preset-btn{padding:2px 5px;font-size:9px;font-weight:600;color:#8b949e;background:transparent;border:1px solid #30363d;border-radius:3px;cursor:pointer;line-height:1}.smi-preset-btn:hover{color:#d1d5db;border-color:#484f58}.smi-preview-panel{background:#0d1117;border:1px solid #21262d;border-radius:8px;overflow:hidden;position:relative;min-height:500px}.smi-preview-svg{width:100%;height:100%;min-height:500px;overflow:auto;position:relative}.smi-preview-svg>div>svg{width:100%;height:auto;display:block}.smi-upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;border:2px dashed #30363d;border-radius:8px;margin-bottom:20px;cursor:pointer;transition:all .15s;color:#8b949e}.smi-upload-zone:hover{border-color:#484f58;background:#161b2280}.smi-upload-zone.dragging{border-color:#1f6feb;background:#1f6feb14}.smi-upload-zone p{font-size:13px;margin:0}.smi-upload-zone small{font-size:11px;color:#6e7681}.smi-validate-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#0d1117;border:1px solid #21262d;border-radius:8px;margin-top:20px}.smi-validate-bar p{font-size:13px;color:#8b949e;margin:0}.smi-modal-overlay{position:fixed;inset:0;z-index:9999;background:#0009;display:flex;align-items:center;justify-content:center}.smi-modal{background:#161b22;border:1px solid #30363d;border-radius:10px;padding:24px;max-width:420px;width:100%}.smi-modal h4{font-size:15px;font-weight:600;color:#e6edf3;margin:0 0 10px}.smi-modal p{font-size:13px;color:#8b949e;margin:0 0 20px;line-height:1.5}.smi-modal-actions{display:flex;gap:10px;justify-content:flex-end}.smi-error{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:13px;color:#f85149;background:#f851491a;border:1px solid rgba(248,81,73,.2);border-radius:6px;margin-bottom:16px}.smi-success{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:13px;color:#22c55e;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:6px;margin-bottom:16px}.smi-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:#8b949e;font-size:13px;gap:8px}.smi-spin{animation:smi-spin 1s linear infinite}@keyframes smi-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.access-denied-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f1f5f9;padding:24px}.access-denied-card{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:400px;padding:48px 40px;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;text-align:center}.access-denied-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:#fef2f2;border-radius:50%;color:#dc2626}.access-denied-title{font-size:24px;font-weight:700;color:#1e293b;margin:0}.access-denied-text{font-size:14px;color:#64748b;line-height:1.6;margin:0}.access-denied-btn{margin-top:8px}.passenger-flights-page{max-width:1400px}.passenger-flights-page .page-header{margin-bottom:8px}.passenger-flights-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.passenger-flight-card{position:relative;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px 14px;cursor:pointer;transition:box-shadow .15s,border-color .15s;overflow:hidden}.passenger-flight-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#ccc}.passenger-flight-card--cancelled{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.06) 10px,rgba(220,38,38,.06) 20px),#fff}.passenger-flight-card--cancelled:hover{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.1) 10px,rgba(220,38,38,.1) 20px),#fff}.passenger-flight-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.passenger-flight-card__identity{display:flex;align-items:center;gap:8px}.passenger-flight-card__logo{width:24px;height:24px;object-fit:contain;border-radius:4px}.passenger-flight-card__airline-code{font-size:12px;font-weight:600;color:#666;min-width:24px;text-align:center}.passenger-flight-card__flight-number{font-size:16px;font-weight:700;color:#1a1a2e}.passenger-flight-card__body{margin-bottom:8px}.passenger-flight-card__route{display:flex;align-items:center;gap:6px;margin-bottom:8px}.passenger-flight-card__route-text{font-size:13px;color:#333}.passenger-flight-card__details{display:flex;justify-content:space-between;gap:8px}.passenger-flight-card__detail{display:flex;flex-direction:column;align-items:center;min-width:0}.passenger-flight-card__label{font-size:9px;font-weight:600;text-transform:uppercase;color:#94a3b8;white-space:nowrap;margin-bottom:2px;letter-spacing:.3px}.passenger-flight-card__value{font-size:15px;font-weight:600;color:#1e293b}.passenger-flight-card__value--time{font-family:SF Mono,Monaco,Inconsolata,monospace}.gate-editable{cursor:pointer;position:relative;padding:2px 4px;border-radius:4px;transition:background .15s,color .15s}.gate-editable:hover{background:#f1f5f9;color:#2563eb}.gate-editable__pencil{display:none;margin-left:4px;color:#94a3b8}.gate-editable:hover .gate-editable__pencil{display:inline;color:#2563eb}.gate-edit-inline{display:inline-flex;align-items:center;gap:4px}.gate-edit-inline__input{width:52px;padding:2px 6px;border:1.5px solid #cbd5e1;border-radius:5px;font-size:13px;font-weight:600;text-transform:uppercase;outline:none;background:#fff;color:#1e293b}.gate-edit-inline__input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.gate-edit-inline__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:5px;background:transparent;color:#64748b;cursor:pointer;transition:background .12s,color .12s}.gate-edit-inline__btn:hover{background:#f1f5f9;color:#334155}.gate-edit-inline__btn--save{color:#16a34a}.gate-edit-inline__btn--save:hover{background:#f0fdf4;color:#15803d}.passenger-flight-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid #eee}.passenger-flight-card__aircraft{font-size:12px;color:#666}.passenger-flight-card__indicators{display:flex;gap:6px;align-items:center}.passenger-flight-card__boarding-countdown{background:#2563eb73;color:#1a1a2e;padding:6px 0;border-radius:4px;margin-bottom:8px;overflow:hidden;position:relative}.passenger-flight-card__boarding-marquee{display:inline-block;white-space:nowrap;animation:marquee 12s linear infinite;padding-left:100%}.passenger-flight-card__boarding-text{font-size:12px;font-weight:600;letter-spacing:.3px}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.passenger-flight-card__go-boarding{background:#dc2626;padding:10px 16px;border-radius:4px;margin-bottom:8px;text-align:center;animation:go-boarding-blink 1s ease-in-out infinite}.passenger-flight-card__go-boarding-text{color:#fff;font-size:16px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}@keyframes go-boarding-blink{0%,to{background:#dc2626;box-shadow:0 0 10px #dc262680}50%{background:#b91c1c;box-shadow:0 0 20px #dc2626cc}}.passenger-flight-card__arrival-ssr{background:#2563eb14;padding:4px 0;border-radius:3px;margin-bottom:6px;overflow:hidden;position:relative}.passenger-flight-card__arrival-ssr-marquee{display:inline-block;white-space:nowrap;animation:arrival-ssr-marquee 18s linear infinite;padding-left:100%}.passenger-flight-card__arrival-ssr-text{font-size:11px;font-weight:500;letter-spacing:.2px;color:#3b82f6}@keyframes arrival-ssr-marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.hle-indicator,.final-indicator{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.hle-indicator__time,.final-indicator__time{font-family:SF Mono,Monaco,monospace;font-size:11px;font-weight:700}.hle-indicator--pending{background-color:#f3f4f6;color:#6b7280}.hle-indicator--due{background-color:#fef3c7;color:#92400e}.hle-indicator--complete{background-color:#d1fae5;color:#065f46}.final-indicator--pending{background-color:#f3f4f6;color:#6b7280}.final-indicator--due{background-color:#fee2e2;color:#991b1b}.final-indicator--complete{background-color:#d1fae5;color:#065f46}.hle-reminder--active{animation:hleReminder 1.5s ease-in-out infinite}@keyframes hleReminder{0%,to{background-color:#fef3c7;box-shadow:0 0 #fbbf2400}50%{background-color:#fde68a;box-shadow:0 0 8px 2px #fbbf2459}}.final-reminder--active{animation:finalReminder 1s ease-in-out infinite}@keyframes finalReminder{0%,to{background-color:#fee2e2;box-shadow:0 0 #ef444400}50%{background-color:#fecaca;box-shadow:0 0 8px 2px #ef444459}}.estimated-boarding-banner{position:fixed;top:60px;left:200px;right:0;z-index:99;padding:8px 24px;background-color:#8b5cf6;color:#fff;display:flex;justify-content:center;align-items:center;gap:12px;box-shadow:0 2px 6px #8b5cf640}.estimated-boarding-banner__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.estimated-boarding-banner__time{font-size:14px;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,monospace}.go-boarding-banner{position:fixed;top:60px;left:200px;right:0;z-index:100;padding:12px 24px;background:linear-gradient(90deg,#059669,#10b981);color:#fff;display:flex;justify-content:space-between;align-items:center;animation:goBoardingPulse 2s ease-in-out infinite;box-shadow:0 4px 12px #0596694d}@keyframes goBoardingPulse{0%,to{opacity:1}50%{opacity:.92}}.go-boarding-banner--active{background:linear-gradient(90deg,#dc2626,#ef4444);box-shadow:0 4px 12px #dc262666;animation:goBoardingBlinkRed 1s ease-in-out infinite}@keyframes goBoardingBlinkRed{0%,to{opacity:1;background:linear-gradient(90deg,#dc2626,#ef4444)}50%{opacity:.85;background:linear-gradient(90deg,#b91c1c,#dc2626)}}.go-boarding-banner__content{display:flex;align-items:center;gap:16px}.go-boarding-banner__icon{font-size:24px}.go-boarding-banner__text{display:flex;flex-direction:column;gap:2px}.go-boarding-banner__title{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.go-boarding-banner__flight{font-size:13px;opacity:.9}.go-boarding-banner__countdown{display:flex;flex-direction:column;align-items:flex-end}.go-boarding-banner__countdown-label{font-size:11px;opacity:.8;text-transform:uppercase}.go-boarding-banner__countdown-time{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;font-family:SF Mono,Monaco,monospace}.go-boarding-banner__dismiss{background:none;border:none;color:#fff;opacity:.7;cursor:pointer;padding:4px;border-radius:4px;transition:opacity .15s}.go-boarding-banner__dismiss:hover{opacity:1;background:#ffffff1a}.passenger-flight-detail{max-width:1100px}.passenger-flight-detail__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.passenger-flight-detail__back{display:inline-flex;align-items:center;gap:6px;color:#64748b;text-decoration:none;font-size:13px;font-weight:500;margin-bottom:8px;transition:color .15s}.passenger-flight-detail__back:hover{color:#06c}.passenger-flight-detail__title{font-size:28px;font-weight:700;color:#1a1a2e;margin:0;line-height:1}.passenger-flight-detail__route{font-size:15px;color:#64748b;font-weight:500;margin-top:6px}.passenger-flight-detail__header-right{display:flex;gap:10px;align-items:center}.passenger-flight-detail__id-debug{display:flex;align-items:center;gap:8px;padding:6px 12px;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;margin-bottom:12px;font-size:11px;font-family:monospace}.passenger-flight-detail__id-label{color:#6b7280;font-weight:500}.passenger-flight-detail__id-value{color:#1f2937;background-color:#e5e7eb;padding:2px 6px;border-radius:3px;word-break:break-all}.passenger-flight-detail__id-missing{color:#dc2626;font-weight:600}.passenger-flight-detail__quick-info{display:flex;align-items:stretch;gap:1px;background:#d1d5db;border-radius:10px;overflow:hidden;margin-bottom:20px}.passenger-flight-detail__quick-info-group{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px 20px;background:#fff}.passenger-flight-detail__quick-info-item{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:50px}.passenger-flight-detail__quick-info-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#94a3b8;letter-spacing:.5px}.passenger-flight-detail__quick-info-value{font-size:14px;font-weight:600;color:#1e293b}.passenger-flight-detail__quick-info-value--time{font-family:JetBrains Mono,SF Mono,Menlo,monospace}.passenger-flight-detail__quick-info-value--mono{font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:15px}.passenger-flight-detail__tabs{display:flex;gap:3px;padding:3px;background:#f5f5f7;border-radius:8px;margin-bottom:20px}.passenger-flight-detail__tab{display:flex;align-items:center;gap:6px;padding:10px 18px;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.passenger-flight-detail__tab:hover{background:#0000000a;color:#334155}.passenger-flight-detail__tab--active{background:#fff;color:#06c;box-shadow:0 1px 2px #00000014;font-weight:600}.passenger-flight-detail__tab-check{color:#22c55e;font-size:14px}.passenger-flight-detail__content{display:grid;grid-template-columns:1fr 320px;gap:24px}.passenger-flight-detail__main{display:flex;flex-direction:column;gap:20px}.passenger-flight-detail__sidebar{display:flex;flex-direction:column;gap:16px}.sidebar-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.sidebar-card__header{padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.sidebar-card__title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin:0}.sidebar-card__body{padding:16px}.sidebar-card__row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.sidebar-card__row:not(:last-child){border-bottom:1px solid #f1f5f9}.sidebar-card__label{font-size:13px;color:#64748b}.sidebar-card__value{font-size:13px;font-weight:600;color:#1e293b}.sidebar-card__value--mono{font-family:JetBrains Mono,SF Mono,Menlo,monospace}.boarding-countdown{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px}.boarding-countdown--active{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7}.boarding-countdown__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:8px}.boarding-countdown--active .boarding-countdown__label{color:#047857}.boarding-countdown__time{font-size:36px;font-weight:700;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,SF Mono,Menlo,monospace;color:#1e293b;line-height:1}.boarding-countdown--active .boarding-countdown__time{color:#059669}.boarding-countdown__time--empty{color:#cbd5e1}.boarding-countdown__estimated{font-size:12px;color:#64748b;margin-top:4px}.boarding-countdown--go-boarding{background:#dc2626;border-color:#b91c1c;animation:boarding-countdown-blink 1s ease-in-out infinite}.boarding-countdown--go-boarding .boarding-countdown__go-label{display:block;font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:#fff;margin-bottom:8px}.boarding-countdown--go-boarding .boarding-countdown__elapsed{display:block;font-size:32px;font-weight:700;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,SF Mono,Menlo,monospace;color:#fff;line-height:1}.boarding-countdown--go-boarding .boarding-countdown__estimated{color:#fffc}@keyframes boarding-countdown-blink{0%,to{background:#dc2626;box-shadow:0 0 15px #dc262680}50%{background:#b91c1c;box-shadow:0 0 25px #dc2626cc}}.boarding-countdown--completed{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.boarding-countdown--completed .boarding-countdown__label{color:#166534}.boarding-countdown--completed .boarding-countdown__time{color:#15803d}.tob-display{display:inline-flex;align-items:baseline;gap:1px;font-family:JetBrains Mono,SF Mono,Menlo,monospace}.tob-display__total{font-size:20px;font-weight:700;color:#1e293b}.tob-display__plus{font-size:14px;color:#94a3b8;margin:0 1px}.tob-display__infants{font-size:16px;font-weight:500;color:#64748b}.tob-display--compact .tob-display__total{font-size:14px}.tob-display--compact .tob-display__plus{font-size:11px}.tob-display--compact .tob-display__infants{font-size:13px}.pax-bag-form{background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 3px #00000014}.pax-bag-form__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e9ecef}.pax-bag-form__title{font-size:14px;font-weight:700;color:#1a1a2e;margin:0}.pax-bag-form__state-badge{padding:3px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.pax-bag-form__state-badge--hle{background:#fef3c7;color:#92400e}.pax-bag-form__state-badge--final{background:#dbeafe;color:#1e40af}.pax-bag-form__disabled-alert{margin-bottom:12px;padding:8px 12px;font-size:12px}.pax-bag-form__section{margin-bottom:10px;padding:10px 12px;background-color:#f8f9fa;border-radius:8px}.pax-bag-form__section:last-of-type{margin-bottom:0}.pax-bag-form__section-title{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#64748b;margin:0 0 8px}.pax-bag-form__section-icon{flex-shrink:0}.pax-bag-form__pax-grid{display:flex;align-items:center;gap:8px}.pax-bag-form__pax-cell{display:flex;flex-direction:column;align-items:center;gap:4px}.pax-bag-form__pax-label{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase}.pax-bag-form__pax-totals{display:flex;align-items:center;gap:6px;margin-left:auto}.pax-bag-form__total-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700;font-family:SF Mono,Menlo,monospace;white-space:nowrap}.pax-bag-form__total-badge--seated{background:#1e293b;color:#fff}.pax-bag-form__total-badge--infants{background:#f1f5f9;color:#475569}.pax-bag-form__input{width:56px;padding:6px 4px;font-size:15px;font-weight:600;text-align:center;border:1px solid #dee2e6;border-radius:6px;background-color:#fff;font-family:SF Mono,Menlo,monospace}.pax-bag-form__input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc26}.pax-bag-form__input:disabled{background-color:#f8f9fa;color:#666;border-color:#e9ecef}.pax-bag-form__input--error{border-color:#ef4444;background-color:#fef2f2}.pax-bag-form__baggage-row{display:flex;align-items:center;gap:12px}.pax-bag-form__baggage-field{display:flex;align-items:center;gap:6px}.pax-bag-form__baggage-tag{padding:3px 6px;border-radius:4px;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.pax-bag-form__baggage-tag--pcs{background:#3b82f6}.pax-bag-form__baggage-tag--kg{background:#f59e0b}.pax-bag-form__input--baggage{width:72px;font-size:16px}.pax-bag-form__baggage-avg{font-size:11px;font-weight:500;color:#16a34a;font-family:SF Mono,monospace;margin-left:auto;white-space:nowrap}.pax-bag-form__validation{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;margin-top:6px}.pax-bag-form__validation--valid{background:#d1fae5;color:#065f46}.pax-bag-form__validation--invalid{background:#fee2e2;color:#991b1b}.pax-bag-form__actions{display:flex;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid #e9ecef}.pax-bag-form__submit{flex:1}.pax-bag-form__actions .btn{padding:8px 16px;font-size:13px}.zone-input{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;padding:12px 16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:10px;border:1px solid #e2e8f0}.zone-input__field{display:flex;flex-direction:column;align-items:center;gap:4px}.zone-input__label{font-size:10px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:4px}.zone-input__input{width:56px;padding:8px 6px;text-align:center;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;font-weight:700;font-family:SF Mono,Menlo,monospace;background:#fff;color:#1e293b;transition:border-color .15s,box-shadow .15s,transform .1s}.zone-input__input:hover{border-color:#cbd5e1;transform:translateY(-1px)}.zone-input__input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf633;transform:translateY(-1px)}.zone-input__input:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.zone-input__input::placeholder{color:#cbd5e1}.zone-input__equals{font-size:16px;font-weight:600;color:#94a3b8;padding-bottom:8px}.zone-input__total{display:flex;flex-direction:column;align-items:center;gap:4px}.zone-input__total .zone-input__label{background:linear-gradient(135deg,#64748b,#475569)}.zone-input__total-value{min-width:70px;padding:8px 10px;text-align:center;font-size:14px;font-weight:700;font-family:SF Mono,Menlo,monospace;background:#f1f5f9;border:2px solid #e5e7eb;border-radius:8px;color:#1e293b;transition:all .15s}.zone-input__total-value--valid{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#34d399;color:#065f46}.zone-input__total-value--invalid{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#f87171;color:#991b1b;animation:zoneInvalidPulse 1.5s ease-in-out infinite}@keyframes zoneInvalidPulse{0%,to{opacity:1}50%{opacity:.8}}.ssr-panel{background:#fff;border-radius:8px;border:1px solid #e2e8f0}.ssr-subtabs{display:flex;border-bottom:1px solid #e2e8f0}.ssr-subtab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 0;background:none;border:none;border-bottom:2px solid transparent;font-size:12px;font-weight:500;color:#94a3b8;cursor:pointer;transition:color .12s,border-color .12s}.ssr-subtab:hover{color:#334155}.ssr-subtab--active{color:#0f172a;font-weight:600;border-bottom-color:#0f172a}.ssr-subtab__count{font-size:10px;font-weight:700;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;color:#64748b;border-radius:9px;padding:0 5px}.ssr-subtab--active .ssr-subtab__count{background:#0f172a;color:#fff}.ssr-manager{padding:12px 16px}.ssr-manager__empty{text-align:center;padding:24px 16px;color:#b0b8c4;font-size:12px}.ssr-manager__list{display:flex;flex-direction:column}.ssr-row{display:flex;align-items:center;gap:10px;padding:6px 4px;margin:0 -4px;border-radius:4px;transition:background .12s}.ssr-row:hover{background:#f1f5f9}.ssr-row:not(:last-child){border-bottom:1px solid #f1f5f9}.ssr-row__seat{font-size:13px;font-weight:700;font-family:JetBrains Mono,SF Mono,Menlo,monospace;color:#0f172a;min-width:32px}.ssr-row__seat--none{color:#cbd5e1;font-weight:500}.ssr-row__code{font-size:11px;font-weight:700;letter-spacing:.3px;padding:2px 7px;background:#e2e8f0;color:#334155;border-radius:3px}.ssr-row__desc{font-size:11px;color:#94a3b8;font-weight:500}.ssr-row__note{font-size:11px;color:#64748b;font-style:italic;margin-left:auto;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ssr-row__remove{margin-left:auto;padding:3px;background:none;border:none;color:#cbd5e1;cursor:pointer;border-radius:3px;transition:color .12s,background .12s;opacity:0}.ssr-row:hover .ssr-row__remove{opacity:1}.ssr-row__remove:hover{background:#fee2e2;color:#dc2626}.ssr-add{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9}.ssr-add__seat{width:52px;padding:5px 6px;text-align:center;font-size:12px;font-weight:600;font-family:JetBrains Mono,SF Mono,monospace;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#0f172a;outline:none;transition:border-color .12s}.ssr-add__seat:focus{border-color:#94a3b8}.ssr-add__code{flex:1;min-width:0;padding:5px 8px;font-size:12px;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#334155;outline:none;transition:border-color .12s}.ssr-add__code:focus{border-color:#94a3b8}.ssr-add__note{width:100px;padding:5px 8px;font-size:12px;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#334155;outline:none;transition:border-color .12s}.ssr-add__note:focus{border-color:#94a3b8}.ssr-add__btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:4px;background:#0f172a;color:#fff;cursor:pointer;flex-shrink:0;transition:background .12s}.ssr-add__btn:hover:not(:disabled){background:#334155}.ssr-add__btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.load-distribution{background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 3px #00000014}.load-distribution__progress{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.load-distribution__step{display:flex;flex-direction:column;align-items:center;gap:4px}.load-distribution__step-marker{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:700;background:#f1f5f9;color:#94a3b8;border:2px solid #e5e7eb;transition:all .2s ease}.load-distribution__step--active .load-distribution__step-marker{background:#06c;color:#fff;border-color:#06c;box-shadow:0 2px 6px #0066cc40}.load-distribution__step--complete .load-distribution__step-marker{background:#22c55e;color:#fff;border-color:#22c55e}.load-distribution__step-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#94a3b8}.load-distribution__step--active .load-distribution__step-label{color:#06c}.load-distribution__step--complete .load-distribution__step-label{color:#22c55e}.load-distribution__step-connector{width:60px;height:2px;background:#e5e7eb;margin:0 8px 18px;border-radius:1px}.load-distribution__step-connector--complete{background:#22c55e}.load-distribution__hle-summary{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;margin-bottom:12px}.load-distribution__summary-header{display:flex;justify-content:space-between;align-items:center}.load-distribution__summary-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:#22c55e;color:#fff;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.load-distribution__summary-tob{font-size:12px;font-weight:500;color:#065f46}.load-distribution__complete{text-align:center;padding:20px 16px}.load-distribution__complete-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-radius:50%;margin:0 auto 12px;box-shadow:0 3px 8px #22c55e40}.load-distribution__complete h3{font-size:16px;font-weight:700;color:#1a1a2e;margin:0 0 4px}.load-distribution__complete p{font-size:12px;color:#64748b;margin:0 0 14px}.load-distribution__final-summary{display:inline-flex;flex-direction:column;gap:6px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:12px 20px;text-align:left}.load-distribution__summary-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.load-distribution__summary-row span:first-child{font-size:11px;color:#64748b}.load-distribution__summary-row span:last-child{font-size:13px;font-weight:600;color:#1e293b}.load-distribution__resync-section{margin-top:20px;padding-top:20px;border-top:1px dashed #e5e7eb}.load-distribution__resync-hint{font-size:11px;color:#64748b;margin:0 0 12px}.load-distribution__resync-buttons{display:flex;gap:8px;justify-content:center}.load-distribution__resync-btn{font-size:11px;padding:4px 8px;gap:4px}.load-distribution__hle-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.load-distribution__hle-summary .load-distribution__resync-btn{flex-shrink:0}.passenger-flight-detail__tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#06c;color:#fff;border-radius:10px;font-size:11px;font-weight:700;margin-left:4px}.passenger-flight-detail__tab--active .passenger-flight-detail__tab-count{background:#0052a3}@media(max-width:1200px){.passenger-flight-detail__content{grid-template-columns:1fr 280px}}@media(max-width:1024px){.passenger-flight-detail__content{grid-template-columns:1fr}.passenger-flight-detail__sidebar{order:-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.go-boarding-banner{left:0}}@media(max-width:768px){.passenger-flights-list{grid-template-columns:1fr}.passenger-flight-card__details{grid-template-columns:repeat(2,1fr)}.zone-input{justify-content:center}.pax-bag-form__section{padding:16px}.ssr-add-form{flex-wrap:wrap}.ssr-add-form__note{flex:100%;order:-1;margin-bottom:8px}.go-boarding-banner{flex-direction:column;gap:12px;text-align:center;padding:16px}.go-boarding-banner__countdown{align-items:center}}.passenger-flight-detail__alert{margin-bottom:12px;display:flex;align-items:center;gap:8px}.sidebar-tob-grid{display:flex;gap:24px;margin-bottom:12px}.sidebar-tob-col{flex:1}.sidebar-tob-label{font-size:10px;font-weight:600;color:#64748b;margin-bottom:4px;text-transform:uppercase}.sidebar-tob-empty{color:#94a3b8;font-size:14px}.sidebar-tob-baggage{padding-top:12px;border-top:1px solid #e5e7eb}.sidebar-tob-baggage-value{font-size:14px;font-weight:600;color:#1e293b}.load-distribution__summary-value{font-weight:600}.hle-confirmation-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:hle-overlay-in .3s ease-out}@keyframes hle-overlay-in{0%{opacity:0}to{opacity:1}}.hle-confirmation-card{background:#fff;border-radius:16px;padding:48px 40px;text-align:center;max-width:420px;width:90%;box-shadow:0 20px 60px #0003;animation:hle-card-in .3s ease-out .1s both}@keyframes hle-card-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.hle-confirmation-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:#dcfce7;color:#16a34a;margin-bottom:20px}.hle-confirmation-title{font-size:20px;font-weight:700;color:#1e293b;margin:0 0 8px}.hle-confirmation-text{font-size:14px;color:#64748b;margin:0 0 28px;line-height:1.5}.hle-confirmation-btn{min-width:120px;padding:10px 32px;font-size:15px}.passenger-flight-card__ferry-badge{font-size:9px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.3px;padding:1px 5px;border-radius:3px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);text-transform:uppercase;margin-left:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.passenger-flight-card__ferry-indicator{font-size:11px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.3px;padding:2px 8px;border-radius:3px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:#f5f7fa;color:#1a1a2e;line-height:1.5}.app{display:flex;min-height:100vh}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:0}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.layout-body{display:flex;flex:1;overflow:hidden;height:calc(100vh - 64px)}.layout-main{flex:1;display:flex;flex-direction:column;overflow-y:auto;background-color:#f5f7fa;height:100%}.header{display:flex;align-items:center;padding:0 20px;background:#161c28;border-bottom:none;height:64px;position:sticky;top:0;z-index:100;position:relative}.header-logo-link{display:flex;align-items:center;flex-shrink:0;margin-right:12px}.header-logo{height:28px;width:auto;object-fit:contain;flex-shrink:0}.last-updated{font-size:11px;color:#94a3b8;font-style:italic;white-space:nowrap}.header-page-title{font-size:15px;font-weight:600;color:#e2e8f0;white-space:nowrap}.header-tabs{display:flex;align-items:center;gap:4px;padding:0 8px}.header-tab{display:flex;align-items:center;gap:0;padding:6px 10px;background:transparent;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:500;white-space:nowrap;transition:all .2s ease;position:relative}.header-tab:hover{background:#ffffff14;color:#e2e8f0}.header-tab-label{max-width:0;overflow:hidden;opacity:0;margin-left:0;transition:max-width .25s ease,opacity .2s ease,margin-left .2s ease}.header-tab:hover .header-tab-label,.header-tab--active .header-tab-label{max-width:120px;opacity:1;margin-left:6px}.header-tab--active{background:#3b82f626;color:#60a5fa}.header-tab--active:hover{background:#3b82f633}.header-center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;pointer-events:auto}.header-clock-time{font-size:22px;font-weight:700;font-family:SF Mono,Monaco,Consolas,monospace;color:#fff;letter-spacing:1px}.header-clock-ref{font-size:11px;font-weight:600;padding:3px 8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .15s}.header-clock-ref:hover{background:#ffffff26;color:#fff}.header-clock-ref--utc{background:#3b82f633;border-color:#3b82f666;color:#60a5fa}.header-date-selector{display:flex;align-items:center;gap:4px;position:relative}.header-date-btn{display:flex;align-items:center;justify-content:center;padding:4px 6px;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .15s}.header-date-btn:hover{background:#ffffff1a;color:#fff}.header-date-label{font-size:12px;color:#f59e0b;font-weight:500;white-space:nowrap}.header-date-today{margin-left:4px;padding:3px 8px;font-size:10px;font-weight:600;background:#3b82f633;border:1px solid rgba(59,130,246,.3);border-radius:4px;color:#60a5fa;cursor:pointer;transition:all .15s;text-transform:uppercase}.header-date-today:hover{background:#3b82f64d}.header-calendar{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;padding:12px;background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;z-index:1000;min-width:260px}.header-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.header-calendar-header button{padding:4px 10px;background:#f1f5f9;border:none;border-radius:4px;color:#475569;cursor:pointer;font-weight:600}.header-calendar-header button:hover{background:#e2e8f0}.header-calendar-header span{font-weight:600;color:#1e293b}.header-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.header-calendar-weekdays span{text-align:center;font-size:10px;font-weight:600;color:#94a3b8;padding:4px}.header-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.header-calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;background:transparent;border:none;border-radius:6px;color:#334155;cursor:pointer;transition:all .1s}.header-calendar-day:hover{background:#f1f5f9}.header-calendar-day--today{background:#dbeafe;color:#1d4ed8;font-weight:600}.header-calendar-day--selected{background:#06c;color:#fff}.header-calendar-empty{aspect-ratio:1}.station-indicator{position:fixed;bottom:16px;right:16px;z-index:50}.station-indicator--readonly{pointer-events:none}.station-indicator-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#161c28eb;border:1px solid rgba(255,255,255,.12);border-radius:20px;color:#e2e8f0;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.station-indicator-btn:hover{background:#161c28f5;border-color:#fff3}.station-indicator-btn--override{background:#8b5cf640;border-color:#8b5cf680}.station-indicator-label{font-size:10px;color:#a78bfa;text-transform:uppercase}.station-indicator-code{font-weight:600;color:#f1f5f9;font-size:13px}.station-indicator--readonly .station-indicator-code{font-size:12px;color:#94a3b8}.station-indicator-arrow{font-size:9px;color:#94a3b8;margin-left:2px}.station-indicator-dropdown{position:absolute;bottom:calc(100% + 8px);right:0;min-width:200px;max-height:300px;overflow-y:auto;background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;z-index:1000;animation:dropdown-fade-in .15s ease}.station-indicator-option{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 14px;background:transparent;border:none;text-align:left;cursor:pointer;transition:background .1s}.station-indicator-option:hover{background:#f1f5f9}.station-indicator-option--selected{background:#dbeafe}.station-indicator-option-code{font-weight:600;color:#1e293b}.station-indicator-option-name{font-size:12px;color:#64748b}.station-indicator-loading{padding:16px;text-align:center;color:#64748b;font-size:13px}.sidebar{width:220px;background:#161c28;border-right:none;padding:0;transition:width .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;flex-shrink:0;height:100%}.sidebar--collapsed{width:64px}.sidebar-nav{display:flex;flex-direction:column;padding:12px 8px;gap:4px;flex:1;transition:padding .3s cubic-bezier(.4,0,.2,1)}.sidebar-link{display:flex;align-items:center;gap:12px;padding:12px 14px;color:#94a3b8;font-weight:500;font-size:14px;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap;border-radius:8px;border-right:none}.sidebar-link:hover{background:#ffffff14;color:#e2e8f0;text-decoration:none}.sidebar-link--active{background:#3b82f626;color:#60a5fa;border-right:none}.sidebar-link--active:hover{background:#3b82f633}.sidebar-link-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:14px;font-weight:500;background:transparent;border-radius:6px;flex-shrink:0;color:inherit;transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar-link--active .sidebar-link-icon{background:#3b82f633;color:#60a5fa}.sidebar-link-text{opacity:1;overflow:hidden;transition:opacity .2s ease .12s,width .3s cubic-bezier(.4,0,.2,1)}.sidebar--collapsed .sidebar-link-text{opacity:0;width:0;overflow:hidden;transition:opacity .1s ease,width .3s cubic-bezier(.4,0,.2,1)}.sidebar--collapsed .sidebar-nav{padding:12px 0;align-items:center}.sidebar--collapsed .sidebar-link{padding:0;justify-content:center;align-items:center;width:100%;height:48px;gap:0}.sidebar--collapsed .sidebar-link-icon{margin:0;width:40px;height:40px;background:transparent;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar--collapsed .sidebar-link:hover .sidebar-link-icon{background:#ffffff1a}.sidebar--collapsed .sidebar-link--active .sidebar-link-icon{background:#3b82f640}.sidebar-divider{height:1px;background:#ffffff1a;margin:12px 14px}.sidebar-link--admin{margin-top:0;border-top:none;padding-top:12px}.sidebar-link--admin:first-of-type{margin-top:0}.sidebar-admin-section{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-link-badge--pulse-red{background:#dc2626;animation:pulse-badge 1.5s ease-in-out infinite}.sidebar-link-badge--pulse-orange{background:#ea580c;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.85}}.header-right{display:flex;align-items:center;gap:12px;margin-left:auto}.header-profile{position:relative}.header-profile-btn{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 8px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:8px;cursor:pointer;transition:all .15s ease;color:#fff}.header-profile-btn:hover{background:#ffffff1f;border-color:#fff3}.header-profile-btn--compact{padding:4px;border:none;background:transparent;border-radius:8px}.header-profile-btn--compact:hover{background:#ffffff14}.header-profile-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#06c;border-radius:6px;color:#fff;font-weight:600;font-size:13px}.header-profile-info{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.header-profile-name{font-size:13px;font-weight:500;color:#f1f5f9}.header-profile-role{font-size:11px;color:#94a3b8}.header-profile-arrow{display:flex;align-items:center;color:#94a3b8;margin-left:4px;transition:transform .15s ease}.header-profile-btn[aria-expanded=true] .header-profile-arrow{transform:rotate(180deg)}.header-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;z-index:1000;overflow:hidden;animation:dropdown-fade-in .15s ease}@keyframes dropdown-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.header-profile-dropdown-header{padding:16px;border-bottom:1px solid #e5e7eb}.header-profile-dropdown-name{font-size:15px;font-weight:600;color:#1e293b;margin-bottom:2px}.header-profile-dropdown-email{font-size:12px;color:#64748b;word-break:break-all}.header-profile-dropdown-section{padding:8px}.header-profile-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:#334155;font-size:13px;cursor:pointer;text-align:left;transition:background-color .1s ease}.header-profile-dropdown-item:hover{background:#f1f5f9}.header-profile-dropdown-item-icon{display:flex;align-items:center;color:#64748b}.header-profile-dropdown-divider{height:1px;background:#e5e7eb;margin:4px 0}.header-profile-dropdown-item--danger{color:#dc2626}.header-profile-dropdown-item--danger:hover{background:#fef2f2}.header-profile-dropdown-item--danger .header-profile-dropdown-item-icon{color:#dc2626}a.header-profile-dropdown-item{text-decoration:none}.page{flex:1;padding:24px;overflow-y:auto;min-height:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:16px}.page-header h1,.page-header h2{font-size:24px;font-weight:700;color:#1a1a2e;margin:0}.page-header-left{display:flex;flex-direction:column;gap:4px}.page-header-actions,.page-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.page-subtitle{color:#666;font-size:14px;margin-top:0}.page-subtitle-count{color:#06c;font-weight:500}.page-content{flex:1}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;color:#888}.empty-state h3{font-size:18px;font-weight:600;color:#1a1a2e;margin-bottom:8px}.empty-state p{font-size:14px;color:#666}.empty-state--no-assignments p{color:#666;margin-bottom:6px}.empty-state-icon{margin-bottom:16px;color:#ccc}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.status-badge-cancelled{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#dc2626;background:#dc26261a;border-radius:4px;animation:status-badge-pulse 2s ease-in-out infinite}@keyframes status-badge-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes realtime-flash{0%{background-color:#3b82f626}to{background-color:transparent}}.realtime-updated{animation:realtime-flash 1.5s ease-out}.realtime-indicator{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;cursor:default;position:relative}.realtime-indicator[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);right:0;background:#1e293b;color:#f1f5f9;font-size:11px;font-weight:500;padding:6px 10px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:1000}.realtime-indicator[data-tooltip]:before{content:"";position:absolute;top:calc(100% + 4px);right:8px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #1e293b;opacity:0;pointer-events:none;transition:opacity .15s;z-index:1000}.realtime-indicator:hover[data-tooltip]:after,.realtime-indicator:hover[data-tooltip]:before{opacity:1}.realtime-indicator-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.realtime-indicator-dot--connected{background:#22c55e;animation:realtime-pulse 2s ease-in-out infinite}.realtime-indicator-dot--connecting{background:#eab308;animation:realtime-blink 1s ease-in-out infinite}.realtime-indicator-dot--disconnected{background:#ef4444}@keyframes realtime-pulse{0%,to{opacity:1;box-shadow:0 0 #22c55e66}50%{opacity:.8;box-shadow:0 0 0 4px #22c55e00}}@keyframes realtime-blink{0%,to{opacity:1}50%{opacity:.3}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn--primary{background-color:#1e293b;color:#fff}.btn--primary:hover:not(:disabled){background-color:#0f172a}.btn--secondary{background-color:#e9ecef;color:#333}.btn--secondary:hover:not(:disabled){background-color:#ddd}.btn--small{padding:5px 10px;font-size:12px}.btn--success{background-color:#28a745;color:#fff}.btn--success:hover:not(:disabled){background-color:#218838}.btn--warning{background-color:#ffc107;color:#333}.btn--warning:hover:not(:disabled){background-color:#e0a800}.btn--danger{background-color:#dc3545;color:#fff;border:none}.btn--danger:hover:not(:disabled){background-color:#c82333}.btn--outline{background-color:transparent;color:#1e293b;border:1px solid #1e293b}.btn--outline:hover:not(:disabled){background-color:#1e293b0f}.btn--danger-outline{background-color:transparent;color:#dc2626;border:1px solid #dc2626}.btn--danger-outline:hover:not(:disabled){background-color:#fef2f2}.btn--ghost{background-color:transparent;color:var(--text-secondary, #666);border:1px solid transparent}.btn--ghost:hover:not(:disabled){background-color:var(--bg-tertiary, #f0f0f0)}.btn:disabled{opacity:.6;cursor:not-allowed}.form-label{display:block;font-size:13px;font-weight:600;color:#333;margin-bottom:6px}.form-select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #ddd;border-radius:6px;background-color:#fff}.form-select:focus{outline:none;border-color:#06c}.form-hint{font-size:12px;color:#666;margin-top:4px}.form-radio-group{display:flex;gap:16px}.form-radio-label{display:flex;align-items:center;gap:6px;cursor:pointer}.form-radio-label input[type=radio]{width:16px;height:16px;cursor:pointer}.priority-label{font-size:13px;font-weight:500}.priority-label--high{color:#dc3545}.priority-label--normal{color:#333}.priority-label--low{color:#666}.form-textarea{width:100%;padding:10px 12px;font-size:14px;border:1px solid #ddd;border-radius:6px;resize:vertical;font-family:inherit}.form-textarea:focus{outline:none;border-color:#06c}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background-color:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.modal-title{font-size:18px;font-weight:600;color:#1a1a2e;margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;color:#666;font-size:20px;cursor:pointer;border-radius:6px;transition:background-color .15s}.modal-close:hover{background-color:#f0f0f0}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #eee;background-color:#f8f9fa}.modal-form-group{margin-bottom:16px}.modal-form-group:last-child{margin-bottom:0}.registration-modal{max-width:420px}.registration-modal .modal-header h3{font-size:18px;font-weight:600;color:#1e293b;margin:0}.registration-modal-text{font-size:14px;color:#64748b;margin:0 0 20px;line-height:1.5}.registration-modal-field{margin-bottom:16px}.registration-modal-field label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:8px}.registration-modal-input{width:100%;padding:12px 14px;font-size:18px;font-weight:600;font-family:SF Mono,Monaco,Inconsolata,monospace;letter-spacing:1px;text-transform:uppercase;border:2px solid #e2e8f0;border-radius:8px;background-color:#f8fafc;color:#1e293b;transition:border-color .15s,box-shadow .15s}.registration-modal-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc26;background-color:#fff}.registration-modal-input::placeholder{color:#94a3b8;text-transform:none;font-weight:400}.registration-modal-warning{margin:16px 0 0;padding:10px 12px;font-size:13px;color:#b45309;background-color:#fef3c7;border-radius:6px;border-left:3px solid #f59e0b}.unified-tabs{display:flex;gap:3px;padding:3px;background:#f5f5f7;border-radius:8px;margin-bottom:12px}.unified-tabs--secondary{background:transparent;border-bottom:1px solid #e5e7eb;border-radius:0;padding:0;gap:0}.unified-tabs--compact{padding:2px;gap:2px}.unified-tabs--compact .unified-tab{padding:5px 10px;font-size:12px}.unified-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.unified-tab:hover{background:#0000000a;color:#334155}.unified-tab--active{background:#fff;color:#06c;box-shadow:0 1px 2px #00000014}.unified-tabs--secondary .unified-tab{border-radius:0;padding:10px 16px;border-bottom:2px solid transparent;margin-bottom:-1px}.unified-tabs--secondary .unified-tab:hover{background:transparent;color:#334155;border-bottom-color:#d1d5db}.unified-tabs--secondary .unified-tab--active{background:transparent;color:#06c;border-bottom-color:#06c;box-shadow:none}.unified-tab-icon{display:flex;align-items:center;justify-content:center;color:inherit;opacity:.85}.unified-tab--active .unified-tab-icon{opacity:1}.unified-tab-label{font-weight:inherit}.unified-tab-count{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;background:#e5e7eb;color:#64748b;border-radius:9px}.unified-tab--active .unified-tab-count,.unified-tab-count--has-items{background:#dbeafe;color:#06c}.unified-tab--active .unified-tab-count--has-items{background:#06c;color:#fff}.unified-tab-badge{display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:600;background:#ef4444;color:#fff;border-radius:8px}.airline-logo{display:inline-flex;align-items:center;justify-content:center;border-radius:4px;overflow:hidden}.airline-logo--fallback{background-color:#f1f5f9;color:#64748b;position:relative}.airline-logo--fallback svg{opacity:.7}.airline-logo-code{position:absolute;bottom:0;right:0;font-size:7px;font-weight:700;background-color:#ffffffe6;padding:0 2px;border-radius:2px 0 0;line-height:1}.service-request-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600}.service-request-badge--pending{background-color:#fff3cd;border:1px solid #ffc107;color:#856404}.service-request-badge--active{background-color:#e6f0ff;border:1px solid #b3d1ff;color:#06c}.chat-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background-color:#dc3545;color:#fff;font-size:11px;font-weight:700;border-radius:10px}.dev-toolbar-user-info{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background-color:#f8f9fa;border-radius:4px}.dev-toolbar-user-name{font-size:13px;font-weight:500;color:#333}.dev-toolbar-user-id{font-size:11px;color:#888;font-family:monospace}.dev-toolbar-reset-btn{width:100%;padding:10px 12px;font-size:13px;font-weight:600;border:1px solid #dc3545;background-color:transparent;color:#dc3545;border-radius:6px;cursor:pointer;transition:background-color .15s,color .15s}.dev-toolbar-reset-btn:hover{background-color:#dc3545;color:#fff}.date-selector{display:flex;align-items:center;gap:8px;background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:4px}.date-selector-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;color:#666;font-size:16px;cursor:pointer;border-radius:6px;transition:background-color .15s,color .15s}.date-selector-btn:hover{background-color:#f0f0f0;color:#333}.date-selector-display{font-size:14px;font-weight:600;color:#1a1a2e;min-width:140px;text-align:center}.date-selector-today{padding:6px 12px;font-size:12px;font-weight:500;border:1px solid #0066cc;background-color:transparent;color:#06c;border-radius:6px;cursor:pointer;transition:background-color .15s,color .15s}.date-selector-today:hover{background-color:#06c;color:#fff}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;background-color:#f8f9fa}.error-boundary-content{max-width:500px;text-align:center;background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #0000001a}.error-boundary-icon{font-size:48px;margin-bottom:16px}.error-boundary-title{font-size:24px;font-weight:600;color:#1a1a2e;margin:0 0 12px}.error-boundary-message{font-size:14px;color:#666;margin:0 0 24px;line-height:1.5}.error-boundary-details{text-align:left;margin-bottom:24px;padding:12px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.error-boundary-details summary{cursor:pointer;font-size:13px;font-weight:500;color:#666;margin-bottom:8px}.error-boundary-stack{font-size:11px;font-family:SF Mono,Menlo,monospace;color:#dc3545;white-space:pre-wrap;word-break:break-word;margin:8px 0 0;padding:12px;background-color:#fff;border-radius:4px;max-height:200px;overflow-y:auto}.error-boundary-actions{display:flex;justify-content:center;gap:12px}.auth-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background-color:#f8f9fa}.auth-loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#06c;border-radius:50%;animation:spin .8s linear infinite}.auth-loading p{margin-top:16px;color:#666;font-size:14px}.team-status-badge{display:flex;gap:2px;padding:2px 4px;background-color:#f8f9fa;border-radius:4px;font-size:10px;font-weight:600}.team-status-badge--complete{background-color:#d4edda}.team-status-badge--empty{background-color:#f8d7da}.team-status-role{width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:2px;font-size:9px}.team-status-role--assigned{background-color:#28a745;color:#fff}.team-status-role--missing{background-color:#dc3545;color:#fff}.dashboard-page{max-width:1400px}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 0 8px;border-bottom:1px solid #e9ecef;margin-bottom:8px}.dashboard-tabs{display:flex;gap:8px;margin-bottom:0;padding-bottom:0}.dashboard-tab{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;border:1px solid #e0e0e0;background-color:#fff;color:#666;cursor:pointer;border-radius:6px;transition:all .15s}.dashboard-tab:hover{border-color:#ccc;color:#333}.dashboard-tab--active{background-color:#f5f8ff;border-color:#06c;color:#06c}.dashboard-tab-label{font-weight:500}.dashboard-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:600;background-color:#f0f0f0;color:#666;border-radius:10px}.dashboard-tab--active .dashboard-tab-count{background-color:#06c;color:#fff}.dashboard-tab-count--has-items{background-color:#e9ecef;color:#333}.dashboard-tab--active .dashboard-tab-count--has-items{background-color:#06c;color:#fff}.dashboard-search{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;transition:border-color .15s}.dashboard-search:focus-within{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.dashboard-search-icon{color:#94a3b8;flex-shrink:0}.dashboard-search-input{border:none;outline:none;font-size:13px;font-family:inherit;background:transparent;color:#1a1a2e;width:160px}.dashboard-search-input::placeholder{color:#94a3b8}.dashboard-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;flex-shrink:0}.dashboard-search-clear:hover{background:#e2e8f0;color:#334155}.dashboard-content{min-height:400px}.dashboard-loading,.dashboard-empty{display:flex;align-items:center;justify-content:center;min-height:300px;color:#666;font-size:14px;background-color:#f8f9fa;border-radius:8px}.dashboard-table-container{background-color:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow:auto;max-height:calc(100vh - 220px)}.dashboard-table{width:100%;border-collapse:collapse;font-size:13px}.dashboard-th{padding:12px 10px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;color:#666;background-color:#f8f9fa;border-bottom:2px solid #e0e0e0;white-space:nowrap;vertical-align:middle;position:sticky;top:0;z-index:10}.dashboard-th--flight{min-width:100px}.dashboard-th--route{min-width:140px}.dashboard-th--location{min-width:80px}.dashboard-th--time{min-width:60px;text-align:center}.dashboard-th--milestones,.dashboard-th--status{min-width:240px;text-align:center}.dashboard-th--badge{min-width:50px;text-align:center}.dashboard-th-content{display:flex;align-items:center;gap:6px;position:relative}.dashboard-th-content--center{justify-content:center}.dashboard-th-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .15s}.dashboard-th-icon:hover{background:#e2e8f0;color:#475569}.dashboard-th-icon--active{color:#06c;background:#dbeafe}.dashboard-filter-dropdown{position:absolute;top:100%;left:0;margin-top:4px;min-width:120px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.dashboard-filter-option{padding:8px 12px;font-size:12px;font-weight:500;color:#334155;cursor:pointer;transition:background .1s}.dashboard-filter-option:hover{background:#f1f5f9}.dashboard-filter-option--active{background:#dbeafe;color:#06c}.dashboard-row{cursor:pointer;transition:background-color .15s}.dashboard-row:hover{background-color:#f0f7ff}.dashboard-row:not(:last-child){border-bottom:1px solid #e9ecef}.dashboard-row--favorite{background-color:#fffbeb}.dashboard-row--favorite:hover{background-color:#fef3c7}.dashboard-th--favorite{min-width:48px;text-align:center}.dashboard-th-favorite-row{display:flex;align-items:center;justify-content:center;gap:4px}.dashboard-search-floating{display:flex;align-items:center;gap:3px;z-index:200}.dashboard-search-floating .dashboard-th-search-input{width:150px;box-shadow:0 2px 8px #0000001a;border-radius:6px;padding:4px 8px;font-size:12px}.dashboard-cell--favorite{text-align:center;padding:10px 6px}.dashboard-favorite-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;cursor:pointer;font-size:16px;color:#d1d5db;transition:all .15s}.dashboard-favorite-btn:hover{color:#fbbf24;background:#fbbf241a}.dashboard-favorite-btn--active{color:#f59e0b}.dashboard-favorite-btn--active:hover{color:#d97706}.dashboard-favorite-placeholder{color:#e5e7eb;font-size:12px}.dashboard-cell{padding:10px;vertical-align:middle}.dashboard-cell--flight{font-weight:500}.dashboard-flight-info{display:flex;align-items:center;gap:8px}.dashboard-flight-info .airline-logo{flex-shrink:0}.dashboard-flight-number{font-size:14px;font-weight:600;color:#1a1a2e}.dashboard-aircraft-type{font-size:11px;color:#888;margin-left:auto}.dashboard-registration{font-size:11px;color:#64748b;font-weight:600;margin-left:auto}.dashboard-registration--editable{cursor:pointer;border-bottom:1px dashed #cbd5e1}.dashboard-registration--editable:hover{color:#3b82f6;border-color:#3b82f6}.dashboard-reg-edit{display:inline-flex;align-items:center;gap:3px;margin-left:auto}.dashboard-reg-input{width:72px;font-size:11px;font-weight:600;padding:1px 4px;border:1px solid #3b82f6;border-radius:3px;outline:none;text-transform:uppercase}.dashboard-reg-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:3px;background:#f1f5f9;color:#64748b;cursor:pointer;padding:0}.dashboard-reg-btn:hover{background:#e2e8f0}.dashboard-reg-btn--save{background:#3b82f6;color:#fff}.dashboard-reg-btn--save:hover{background:#2563eb}.dashboard-nightstop-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:#8b5cf6;margin-left:6px}.dashboard-cell--route{color:#333;font-size:12px}.dashboard-cell--location{font-size:12px;color:#555}.dashboard-location-separator{color:#ccc;margin:0 4px}.dashboard-stand-value--editable{cursor:pointer;border-bottom:1px dashed #cbd5e1}.dashboard-stand-value--editable:hover{color:#3b82f6;border-color:#3b82f6}.dashboard-stand-edit{display:inline-flex;align-items:center;gap:4px}.dashboard-cell--time{text-align:center;font-size:13px;font-weight:500;color:#333;font-family:SF Mono,Menlo,monospace}.dashboard-cell--milestones,.dashboard-cell--status{padding:8px 10px;text-align:center}.dashboard-cell--badge{text-align:center}.dashboard-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:700;border-radius:11px}.dashboard-badge--requests{background-color:#fff3cd;color:#856404}.dashboard-badge--chat{background-color:#dc3545;color:#fff}.dashboard-badge-empty{color:#ccc;font-size:12px}.dashboard-cell--ata-late{color:#dc3545;font-weight:700}.dashboard-cell--ata-on-time{color:#2e7d32;font-weight:700}.dashboard-cell--etd-on-time{color:#1f2937;font-weight:700}.dashboard-cell--etd-late,.dashboard-cell--atd-late{color:#dc3545;font-weight:700}.dashboard-cell--atd-on-time{color:#2e7d32;font-weight:700}.dashboard-cell--time-actual,.dashboard-cell--time-calculated{font-weight:600}.dashboard-cell--ed,.dashboard-cell--ed-on-time{color:#6f42c1;font-weight:700;position:relative}.dashboard-ed-indicator{font-size:9px;font-weight:700;padding:1px 4px;background-color:#6f42c1;color:#fff;border-radius:3px;margin-left:4px;vertical-align:middle}.dashboard-ed-indicator--on-time{background-color:#2e7d32}.dashboard-th-fav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:2px;background:transparent;border:none;border-radius:4px;cursor:pointer;padding:4px;position:relative;transition:all .15s}.dashboard-th-fav-star{font-size:15px;color:#d1d5db;transition:color .15s}.dashboard-th-fav-toggle:hover .dashboard-th-fav-star{color:#fbbf24}.dashboard-th-fav-toggle--active .dashboard-th-fav-star{color:#f59e0b}.dashboard-th-fav-count{position:absolute;top:-4px;right:-8px;display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;background:#fef3c7;color:#d97706;border-radius:8px}.dashboard-th-search-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .15s;margin-left:auto}.dashboard-th-search-toggle:hover{background:#e2e8f0;color:#475569}.dashboard-th-search-toggle--active{color:#06c;background:#dbeafe}.dashboard-th-search-input-wrapper{display:flex;align-items:center;gap:4px;margin-top:4px}.dashboard-th-search-input{width:100%;padding:3px 6px;font-size:11px;font-family:inherit;border:1px solid #d1d5db;border-radius:4px;outline:none;background:#fff;color:#1a1a2e}.dashboard-th-search-input:focus{border-color:#06c;box-shadow:0 0 0 1px #0066cc26}.dashboard-th-search-input::placeholder{color:#94a3b8}.dashboard-th-search-clear{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;flex-shrink:0}.dashboard-th-search-clear:hover{background:#e2e8f0;color:#334155}.segment-indicator{display:flex;flex-direction:column;gap:4px}.segment-indicator--preflight,.segment-indicator--complete,.segment-indicator--idle{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;padding:2px 0}.segment-indicator--complete{color:#16a34a;font-weight:500}.segment-indicator--complete .segment-indicator-icon--complete{color:#16a34a}.segment-indicator-label{font-weight:500}.segment-indicator-icon--grey{color:#9ca3af}.segment-indicator-icon--complete{color:#16a34a}.segment-indicator-icon--running{color:#06c}.segment-indicator-icon--nearDue{color:#d97706}.segment-indicator-icon--lateWarn{color:#ea580c}.segment-indicator-icon--lateCrit{color:#dc2626}.segment-rail{display:flex;align-items:center;gap:3px;padding:2px 0}.segment-rail-label{font-size:9px;font-weight:700;text-transform:uppercase;width:24px;flex-shrink:0}.segment-rail-label--pax{color:#06c}.segment-rail-label--baggage,.segment-rail-label--bag{color:#7c3aed}.segment-rail-arrow{color:#d1d5db;flex-shrink:0;transition:opacity .3s}.segment-rail-arrow--active{animation:segmentArrowPulse 1.8s ease-in-out infinite}@keyframes segmentArrowPulse{0%,to{opacity:.35}50%{opacity:1;color:#94a3b8}}.segment-node-placeholder{width:30px;height:30px;flex-shrink:0}.segment-node{display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0;position:relative;transition:transform .2s ease,box-shadow .2s ease}.segment-node--small{width:30px;height:30px}.segment-node--large{width:38px;height:38px;box-shadow:0 1px 3px #00000014}.segment-node:hover{transform:scale(1.12);z-index:2}.segment-node--completed{background-color:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.segment-node--future{background-color:#f8fafc;color:#94a3b8;border:1.5px dashed #e2e8f0}.segment-node--running,.segment-node--nearDue{background-color:#f8fafc;color:#475569;border:1px solid #e2e8f0}.segment-node--lateWarn{background-color:#fffbeb;color:#475569;border:1px solid #fde68a}.segment-node--lateCrit{background-color:#fef2f2;color:#475569;border:1px solid #fecaca}.segment-node[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#f1f5f9;font-size:10px;font-weight:500;padding:3px 8px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:20;line-height:1.3}.segment-node[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #1e293b;opacity:0;pointer-events:none;transition:opacity .15s;z-index:20}.segment-node:hover[data-tooltip]:after,.segment-node:hover[data-tooltip]:before{opacity:1}.segment-node-badge{position:absolute;top:-5px;right:-5px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid white;z-index:3;pointer-events:none}.segment-node-badge--progress{background:#eff6ff;color:#3b82f6}.segment-node-badge--progress svg{animation:segmentBadgeSpin 1s linear infinite}.segment-node-badge--late{background:#fef2f2;color:#dc2626;animation:segmentBadgeLatePulse 2s ease-in-out infinite}@keyframes segmentBadgeSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes segmentBadgeLatePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.segment-node--pulse,.segment-node--attention,.segment-node--blink{animation:none}.pairing-suggestions{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.pairing-suggestions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #e9ecef}.pairing-suggestions-header h3{margin:0;font-size:15px;font-weight:600;color:#1a1a2e}.pairing-suggestions-count{font-size:12px;color:#666;background:#f1f5f9;padding:3px 10px;border-radius:10px}.pairing-suggestions-list{display:flex;flex-direction:column;gap:8px}.pairing-suggestions-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:#666;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.pairing-suggestions-empty-icon{font-size:32px;color:#16a34a;margin-bottom:12px}.pairing-suggestions-empty h3{margin:0 0 8px;font-size:15px;font-weight:600;color:#333}.pairing-suggestions-empty p{margin:0;font-size:13px;color:#666;max-width:320px}.pairing-suggestion-card{padding:10px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px}.pairing-suggestion-flights{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pairing-suggestion-leg{flex:1;display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:#fff;border-radius:6px;border-left:3px solid #6b7280}.pairing-suggestion-leg--arrival{border-left-color:#22c55e}.pairing-suggestion-leg--departure{border-left-color:#3b82f6}.pairing-suggestion-leg-header{display:flex;align-items:center;gap:8px}.pairing-suggestion-leg-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b}.pairing-suggestion-flight-number{font-size:13px;font-weight:700;color:#1a1a2e}.pairing-suggestion-leg-details{display:flex;flex-direction:column;gap:1px}.pairing-suggestion-route{font-size:12px;color:#666}.pairing-suggestion-time{font-size:11px;color:#888;font-family:SF Mono,Menlo,monospace}.pairing-suggestion-reg{font-size:10px;font-family:SF Mono,Menlo,monospace;color:#555;margin-top:2px}.pairing-suggestion-connector{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 6px;color:#9ca3af}.pairing-suggestion-connector-line{width:24px;height:2px;background:#d1d5db}.pairing-suggestion-reasons{font-size:10px;font-weight:500;color:#059669;background:#d1fae5;padding:2px 6px;border-radius:4px;text-align:center;max-width:120px;line-height:1.3}.pairing-suggestion-flight-info{display:flex;align-items:center;gap:4px}.pairing-suggestion-actions{display:flex;justify-content:flex-end;gap:6px;padding-top:8px;border-top:1px solid #e5e7eb}.pairing-suggestion-reject-form{display:flex;align-items:center;gap:6px;width:100%}.pairing-suggestion-reject-input{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:5px;font-size:12px}.pairing-suggestion-reject-buttons{display:flex;gap:6px}.segment-preflight-icon{opacity:.4;transition:transform .2s ease,opacity .2s ease;cursor:default}.segment-indicator--preflight:hover .segment-preflight-icon{opacity:.7;transform:scale(1.15)}.segment-indicator--complete{cursor:default;transition:transform .2s ease}.segment-indicator--complete:hover{transform:scale(1.1)}.dashboard-th--ctot{min-width:60px;text-align:center}.dashboard-cell--ctot{color:#7c3aed;font-weight:700}.dashboard-ctot-display{display:inline-flex;align-items:center;gap:4px}.dashboard-ctot-edit-btn,.dashboard-ctot-clear-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;cursor:pointer;opacity:0;transition:all .15s}.dashboard-row:hover .dashboard-ctot-edit-btn,.dashboard-row:hover .dashboard-ctot-clear-btn{opacity:1}.dashboard-ctot-edit-btn{color:#9ca3af}.dashboard-ctot-edit-btn:hover{color:#7c3aed;background:#f5f3ff}.dashboard-ctot-clear-btn{color:#9ca3af}.dashboard-ctot-clear-btn:hover{color:#dc2626;background:#fef2f2}.dashboard-ctot-edit{display:inline-flex;align-items:center;gap:4px}.dashboard-ctot-input{width:52px;padding:4px 6px;font-size:13px;font-family:inherit;border:1px solid #7c3aed;border-radius:4px;text-align:center;outline:none;color:#7c3aed}.dashboard-ctot-input:focus{box-shadow:0 0 0 2px #7c3aed33}.dashboard-ctot-input--error{border-color:#dc2626}.dashboard-ctot-input--error:focus{box-shadow:0 0 0 2px #dc262633}.auto-confirm{display:inline-flex;align-items:center;gap:4px}.auto-confirm-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:50%;cursor:pointer;position:relative;transition:all .15s}.auto-confirm-btn--confirm{background:transparent;color:#16a34a}.auto-confirm-btn--confirm:hover{background:#dcfce7}.auto-confirm-ring{position:absolute;top:0;left:0}.auto-confirm-icon{position:relative;z-index:1}.auto-confirm-seconds{font-size:10px;font-weight:600;color:#94a3b8;min-width:16px;text-align:center}.auto-confirm-btn--cancel{background:#fee2e2;color:#dc2626}.auto-confirm-btn--cancel:hover{background:#fecaca}.dashboard-cell--eta{position:relative}.dashboard-eta-display{display:inline-flex;align-items:center;gap:4px}.dashboard-eta-edit-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;opacity:0;transition:all .15s}.dashboard-row:hover .dashboard-eta-edit-btn{opacity:1}.dashboard-eta-edit-btn:hover{color:#06c;background:#f0f7ff}.dashboard-eta-edit{display:inline-flex;align-items:center;gap:4px}.dashboard-eta-input{width:52px;padding:4px 6px;font-size:13px;font-family:inherit;border:1px solid #0066cc;border-radius:4px;text-align:center;outline:none}.dashboard-eta-input:focus{box-shadow:0 0 0 2px #06c3}.dashboard-eta-input--error{border-color:#dc2626}.dashboard-eta-input--error:focus{box-shadow:0 0 0 2px #dc262633}.dashboard-eta-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:4px;cursor:pointer;transition:all .15s}.dashboard-eta-btn--save{background:#dcfce7;color:#16a34a}.dashboard-eta-btn--save:hover{background:#bbf7d0}.dashboard-eta-btn--cancel{background:#fee2e2;color:#dc2626}.dashboard-eta-btn--cancel:hover{background:#fecaca}.dashboard-eta-pending-value{font-size:13px;font-weight:600;color:#06c;font-family:SF Mono,Menlo,monospace}.dashboard-eta-spinner{animation:spin 1s linear infinite;color:#06c}.step-progress{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500}.step-progress--scheduled{color:#94a3b8}.step-progress--complete{color:#16a34a}.step-progress-expand{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;flex-shrink:0;transition:all .15s}.step-progress-expand:hover{background:#f1f5f9;color:#475569}.step-progress-label{font-weight:600}.step-progress-time{font-weight:400;opacity:.7}.step-progress-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.step-progress-badge--grey{background:#f1f5f9;color:#64748b}.step-progress-badge--blue{background:#eff6ff;color:#2563eb}.step-progress-badge--red{background:#fef2f2;color:#dc2626}.step-progress-badge--green{background:#f0fdf4;color:#16a34a}.dashboard-row-expanded>td{padding:12px 16px;background:#f8fafc;border-bottom:2px solid #e0e0e0}.turnaround-timeline{display:flex;flex-direction:column;gap:8px;padding:4px 0}.turnaround-timeline-path{display:flex;align-items:center;gap:2px}.turnaround-timeline-path-label{font-size:9px;font-weight:700;text-transform:uppercase;width:28px;flex-shrink:0;color:#64748b}.turnaround-timeline-path-label--pax{color:#06c}.turnaround-timeline-path-label--baggage{color:#7c3aed}.turnaround-timeline-nodes{display:flex;align-items:center;gap:0;flex:1;overflow-x:auto}.turnaround-timeline-node{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;flex-shrink:0}.turnaround-timeline-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.turnaround-timeline-dot--completed{background:#dcfce7;border:1.5px solid #86efac;color:#16a34a}.turnaround-timeline-dot--running{background:#dbeafe;border:1.5px solid #93c5fd;color:#2563eb}.turnaround-timeline-dot--nearDue{background:#fef3c7;border:1.5px solid #fcd34d;color:#d97706}.turnaround-timeline-dot--lateWarn{background:#fed7aa;border:1.5px solid #fb923c;color:#ea580c}.turnaround-timeline-dot--lateCrit{background:#fecaca;border:1.5px solid #f87171;color:#dc2626}.turnaround-timeline-dot--future,.turnaround-timeline-dot--pending{background:#f8fafc;border:1.5px dashed #e2e8f0;color:#94a3b8}.turnaround-timeline-node-label{font-size:8px;font-weight:600;color:#94a3b8;text-align:center;max-width:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.turnaround-timeline-line{width:16px;height:2px;flex-shrink:0}.turnaround-timeline-line--completed{background:#86efac}.turnaround-timeline-line--active{background:#93c5fd}.turnaround-timeline-line--future{background:#e2e8f0;border-top:1px dashed #cbd5e1;height:0}.turnaround-timeline-dot[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#f1f5f9;font-size:10px;font-weight:500;padding:3px 8px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:20}.turnaround-timeline-dot:hover[data-tooltip]:after{opacity:1}.dashboard-flight-number--link{cursor:pointer;color:#06c}.dashboard-flight-number--link:hover{text-decoration:underline}.dashboard-cell--actions{width:36px;text-align:center}.dashboard-th--actions{width:36px;min-width:36px}.dashboard-actions-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:6px;color:#ef4444;cursor:pointer;opacity:1;transition:all .2s ease}.dashboard-actions-btn svg{transition:transform .2s ease}.dashboard-row:hover .dashboard-actions-btn{opacity:1}.dashboard-actions-btn:hover{background:#fef2f2;color:#dc2626}.dashboard-actions-btn:hover svg{transform:rotate(45deg)}.dashboard-actions-btn--active{opacity:1!important;background:#fef2f2;color:#dc2626}.dashboard-calm-empty{padding:60px;text-align:center;color:#64748b;font-size:15px;background:#f8f9fa;border-radius:10px}.dashboard-status-menu{width:200px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #00000014;z-index:9999;padding:4px 0;animation:dashboard-menu-in .15s ease-out forwards}@keyframes dashboard-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dashboard-status-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;font-size:13px;font-weight:500;color:#374151;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.dashboard-status-menu-item:hover{background:#f3f4f6}.dashboard-status-menu-icon{flex-shrink:0;color:#6b7280;transition:color .15s ease}.dashboard-status-menu-item--cancel:hover .dashboard-status-menu-icon{color:#dc2626}.dashboard-status-menu-item--divert:hover .dashboard-status-menu-icon{color:#f59e0b}.dashboard-status-menu-item--restore:hover .dashboard-status-menu-icon{color:#16a34a}.dashboard-status-menu-divider{border:none;border-top:1px solid var(--border-color, #E5E7EB);margin:4px 0}.dashboard-status-menu-item--depair:hover .dashboard-status-menu-icon{color:#d97706}.dashboard-status-menu-disabled{padding:10px 16px;font-size:12px;color:#9ca3af;font-style:italic}.dashboard-status-confirm{padding:12px 16px}.dashboard-status-confirm-msg{font-size:12px;color:#374151;margin-bottom:10px;line-height:1.5}.dashboard-status-confirm-actions{display:flex;gap:6px}.dashboard-status-confirm-btn{flex:1;padding:6px 10px;font-size:12px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.dashboard-status-confirm-btn--yes{background:#374151;color:#fff}.dashboard-status-confirm-btn--yes:hover{background:#1f2937}.dashboard-status-confirm-btn--yes:disabled{opacity:.5;cursor:not-allowed}.dashboard-status-confirm-btn--no{background:#f3f4f6;color:#374151}.dashboard-status-confirm-btn--no:hover{background:#e5e7eb}.dashboard-row--cancelled{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.06) 10px,rgba(220,38,38,.06) 20px)!important}.dashboard-row--cancelled:hover{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.1) 10px,rgba(220,38,38,.1) 20px)!important}.dashboard-column-settings{position:relative}.dashboard-column-settings-btn{display:flex;align-items:center;justify-content:center;gap:0;height:28px;padding:0 6px;background:transparent;border:1px solid transparent;border-radius:6px;color:#94a3b8;cursor:pointer;transition:all .15s;font-size:12px;font-weight:500;overflow:hidden}.dashboard-column-settings-label{font-size:12px;font-weight:500;max-width:0;overflow:hidden;white-space:nowrap;opacity:0;transition:max-width .2s ease,opacity .2s ease,margin-left .2s ease;margin-left:0}.dashboard-column-settings-btn:hover{color:#334155;background:#f1f5f9;border-color:#e2e8f0}.dashboard-column-settings-btn:hover .dashboard-column-settings-label{max-width:80px;opacity:1;margin-left:4px}.dashboard-column-settings-btn--active{border-color:#06c;color:#06c;background:#f0f7ff}.dashboard-column-popover{min-width:180px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f;z-index:100;padding:8px 0;animation:dashboard-menu-in .15s ease-out forwards}.dashboard-column-popover-header{display:flex;align-items:center;justify-content:space-between;padding:4px 12px 8px;border-bottom:1px solid #e9ecef;margin-bottom:4px}.dashboard-column-popover-title{font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b}.dashboard-column-popover-reset{font-size:11px;font-weight:500;color:#06c;background:none;border:none;cursor:pointer;padding:2px 6px;border-radius:4px}.dashboard-column-popover-reset:hover{background:#f0f7ff}.dashboard-column-popover-list{display:flex;flex-direction:column;gap:2px;padding:0 4px}.dashboard-column-popover-item{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:13px;font-weight:500;color:#334155;cursor:pointer;border-radius:4px;transition:background .1s}.dashboard-column-popover-item:hover{background:#f1f5f9}.dashboard-column-popover-item input[type=checkbox]{accent-color:#0066cc}.dashboard-ferry-badge{font-size:9px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.3px;padding:1px 5px;border-radius:3px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);text-transform:uppercase;margin-left:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dashboard-ferry-menu-marker{display:inline-flex;align-items:center;justify-content:center;width:16px;font-size:8px;font-weight:800;font-family:SF Mono,Menlo,monospace;color:#64748b;flex-shrink:0}.dashboard-status-menu-item--ferry:hover,.dashboard-status-menu-item--ferry:hover .dashboard-ferry-menu-marker{color:#475569}.dashboard-status-menu-item--ferry-remove:hover,.dashboard-status-menu-item--ferry-remove:hover .dashboard-ferry-menu-marker{color:#16a34a}.dashboard-ferry-submenu{padding-left:12px}.dashboard-ferry-submenu-item{font-size:12px!important;padding:6px 16px!important;color:#6b7280!important}.dashboard-ferry-submenu-item:hover{color:#374151!important}.flight-detail-page{max-width:1000px}.flight-detail-page--cancelled{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.05) 10px,rgba(220,38,38,.05) 20px)}.flight-detail-header{display:flex;align-items:center;gap:20px;margin-bottom:24px}.flight-detail-title{display:flex;align-items:baseline;gap:12px;flex:1}.flight-detail-number{font-size:28px;font-weight:700;color:#1a1a2e;margin:0;line-height:1}.flight-detail-route{font-size:15px;color:#64748b;font-weight:500}.flight-detail-flight-number{font-size:28px;font-weight:700;color:#1a1a2e}.flight-detail-subtitle{font-size:14px;color:#666}.flight-detail-back{padding:8px 16px;font-size:14px;font-weight:500;border:1px solid #ddd;background-color:#fff;color:#333;border-radius:6px;cursor:pointer;transition:background-color .15s,border-color .15s}.flight-detail-back:hover{background-color:#f0f0f0;border-color:#ccc}.flight-detail-tabs{display:flex;gap:2px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.flight-detail-tab{padding:12px 20px;font-size:14px;font-weight:500;border:none;background-color:transparent;color:#666;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.flight-detail-tab:hover{color:#333}.flight-detail-tab--active{color:#06c;border-bottom-color:#06c;font-weight:600}.flight-detail-content{background-color:#fff;border-radius:8px;padding:16px;margin-top:12px;box-shadow:0 1px 3px #00000014}.flight-detail-content h3{font-size:18px;font-weight:600;color:#1a1a2e;margin-bottom:16px}.flight-detail-sticky{position:sticky;top:0;z-index:20;background:#f5f7fa;margin:0 -24px;padding:0 24px}.quick-info-bar{display:flex;align-items:stretch;gap:1px;background:#d1d5db;border-radius:10px;overflow:hidden;margin-bottom:8px;box-shadow:0 2px 8px #0000000f}.quick-info-group{display:flex;align-items:flex-start;justify-content:center;gap:20px;padding:12px 20px;background:#fff}.quick-info-group--times{flex:1;gap:12px;padding:12px 16px;justify-content:center}.quick-info-group--progress{min-width:140px;padding:12px 16px}.quick-info-item{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:50px}.quick-info-item--aircraft{flex-direction:column;align-items:center;gap:3px;min-width:70px}.quick-info-item--location{min-width:44px}.quick-info-stand-edit{display:flex;align-items:center;gap:6px}.quick-info-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#94a3b8;letter-spacing:.5px}.quick-info-value{font-size:14px;font-weight:600;color:#1e293b}.quick-info-value--primary{font-size:16px;font-weight:700;color:#0f172a}.quick-info-value--mono{font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:15px;font-weight:600}.quick-info-value--time{font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:14px;font-weight:600}.quick-info-value--actual,.quick-info-value--ata-on-time{color:#16a34a}.quick-info-value--ata-late{color:#dc2626}.quick-info-value--atd-on-time{color:#16a34a}.quick-info-value--atd-late{color:#dc2626}.quick-info-value--ed{color:#6f42c1}.quick-info-value--ed-on-time{color:#6f42c1;font-weight:700}.quick-info-ed-badge{font-size:9px;font-weight:700;padding:1px 4px;background-color:#6f42c1;color:#fff;border-radius:3px;margin-left:4px;vertical-align:middle}.quick-info-ed-badge--on-time{background-color:#28a745}.quick-info-value--editable{cursor:pointer;border-bottom:1px dashed #cbd5e1;padding-bottom:2px}.quick-info-value--editable:hover{color:#06c;border-bottom-color:#06c}.quick-info-reg{font-size:11px;font-weight:500;color:#64748b;font-family:JetBrains Mono,SF Mono,Menlo,monospace}.quick-info-actype{font-size:12px;font-weight:500;color:#64748b;margin-left:6px}.quick-info-divider{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#06c;background:#eff6ff;padding:6px 12px;border-radius:6px;white-space:nowrap;margin:0 4px}.quick-info-input{width:50px;padding:4px 6px;font-size:14px;font-weight:600;font-family:SF Mono,Menlo,monospace;border:1px solid #0066cc;border-radius:4px;text-align:center;text-transform:uppercase}.quick-info-edit-actions{display:flex;gap:6px;margin-left:8px}.quick-info-reg-edit{display:flex;align-items:center;gap:6px}.quick-info-reg-edit .quick-info-input{width:100px}.quick-info-progress{display:flex;align-items:center;gap:10px}.quick-info-progress-bar{flex:1;height:8px;background:#e8e8e8;border-radius:4px;overflow:hidden;min-width:60px}.quick-info-progress-fill{height:100%;background:#28a745;border-radius:4px;transition:width .3s ease}.quick-info-progress-text{font-size:13px;font-weight:600;color:#333;white-space:nowrap}.fi-tab{display:flex;flex-direction:column}.fi-section-title{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#b0b8c4;margin:14px 0 6px}.fi-header{display:flex;justify-content:space-between;align-items:center}.fi-header-left{display:flex;align-items:center;gap:6px}.fi-flight-number{font-size:15px;font-weight:700;color:#0f172a}.fi-inbound{font-size:11px;color:#b0b8c4}.fi-nightstop{display:inline-flex;align-items:center;font-size:9px;font-weight:600;padding:2px 5px;background:#e2e8f0;color:#475569;border-radius:3px;letter-spacing:.3px}.fi-badge{padding:2px 6px;border-radius:3px;font-size:9px;font-weight:600}.fi-badge--manual{background:#fed7aa;color:#9a3412}.fi-route{display:flex;align-items:center;justify-content:center;gap:0;padding:6px 0;height:24px}.fi-route-code{font-weight:700;font-size:12px;color:#334155;padding:0 3px}.fi-route-station{font-weight:700;font-size:11px;color:#0f172a;background:#e2e8f0;padding:1px 7px;border-radius:3px}.fi-route-sep{display:flex;align-items:center;gap:3px;padding:0 3px}.fi-route-fl{font-size:9px;color:#b0b8c4}.fi-route-dash{width:14px;height:1px;background:#d1d5db}.fi-times-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:8px}.fi-times-col{padding:4px 14px 4px 28px}.fi-times-col:first-child{border-right:1px solid #f1f5f9}.fi-times-col:last-child{padding-right:0}.fi-times-col-title{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin-bottom:4px}.fi-time-row{display:flex;align-items:center;padding:3px 4px;margin:0 -4px;border-radius:4px;position:relative;transition:background .12s}.fi-time-row:hover{background:#f1f5f9}.fi-time-label{font-size:11px;font-weight:500;color:#94a3b8;min-width:28px}.fi-time-val{font-size:14px;font-weight:700;color:#0f172a;font-family:JetBrains Mono,SF Mono,Menlo,monospace;margin-left:auto}.fi-time-val--actual{color:#16a34a}.fi-time-val--calc{color:#64748b;font-weight:600}.fi-time-val--early{color:#16a34a}.fi-time-val--late{color:#dc2626}.fi-time-val--ctot{color:#7c3aed;font-weight:700}.fi-time-label--ctot,.fi-time-val--ed{color:#7c3aed}.fi-time-val--ed-ontime{color:#16a34a;font-weight:700}.fi-time-row--hle{margin-top:6px;padding-top:6px;border-top:1px dashed #cbd5e1}.fi-time-label--hle{color:#0369a1;font-weight:600;font-size:10px;white-space:nowrap}.fi-time-val--hle{color:#0369a1;font-weight:600}.fi-time-val--hle-past{color:#94a3b8}.fi-edit-btn{position:absolute;right:calc(100% + 4px);top:50%;transform:translateY(-50%);font-size:9px;font-weight:500;color:#b0b8c4;background:none;border:none;cursor:pointer;padding:1px 4px;border-radius:3px;white-space:nowrap;opacity:0;transition:opacity .15s,color .15s}.fi-time-row:hover .fi-edit-btn{opacity:1}.fi-edit-btn:hover{color:#475569;background:#f1f5f9}.fi-time-edit{display:flex;align-items:center;gap:4px;margin-left:auto}.fi-time-input{padding:2px 4px;font-size:11px;border:1px solid #d1d5db;border-radius:3px;font-family:inherit}.fi-ed-chip{font-size:8px;font-weight:700;padding:1px 5px;background:#7c3aed;color:#fff;border-radius:3px;margin-left:4px;letter-spacing:.3px}.fi-ed-chip--ontime{background:#16a34a}.fi-ed-strip{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 0;margin-top:6px;border-top:1.5px solid #e2e8f0}.fi-ed-strip-info{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:#334155}.fi-ed-strip-icon{color:#64748b}.fi-ed-strip-label{font-weight:600;color:#0f172a}.fi-ed-strip-toggle{font-size:10px;font-weight:600;color:#7c3aed;background:#f5f3ff;border:none;padding:3px 10px;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.fi-ed-strip-toggle:hover{background:#ede9fe;color:#6d28d9}.fi-ed-strip--active{border-top-color:#d8b4fe}.fi-ed-strip--active .fi-ed-strip-toggle{background:#ede9fe}.fi-ed-panel{padding:10px 16px 6px}.fi-ed-panel .ed-request-tab{padding:0;display:flex;flex-direction:column;align-items:center}.fi-ed-panel .ed-current-etd{background:none;border:none;border-radius:0;padding:0;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:8px}.fi-ed-panel .ed-current-etd-label{font-size:10px;font-weight:500;color:#64748b;margin-bottom:0}.fi-ed-panel .ed-current-etd-value{font-size:13px;font-weight:700;color:#0f172a;font-family:SF Mono,Menlo,monospace;gap:6px}.fi-ed-panel .ed-current-etd-badge{font-size:8px;font-weight:600;padding:1px 5px;border-radius:3px;background:#ede9fe;color:#475569}.fi-ed-panel .ed-current-etd-std{font-size:10px;margin-top:0;margin-left:0;color:#64748b}.fi-ed-panel .ed-new-btn{width:auto;margin-bottom:6px;padding:5px 14px;font-size:11px;font-weight:600;border-radius:4px;background:#f5f3ff;color:#0f172a;border:1px solid #d8d5e4;box-shadow:none;transition:background .12s}.fi-ed-panel .ed-new-btn:hover{background:#ede9fe}.fi-ed-panel .ed-form{display:flex;flex-direction:column;gap:10px;padding:10px 0 8px;margin:0 auto 4px;border:none;border-radius:0;box-shadow:none;background:transparent;width:260px;max-width:100%}.fi-ed-panel .ed-form-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.fi-ed-panel .ed-form-field{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.fi-ed-panel .ed-form-field--notes{display:flex;flex-direction:column;gap:3px}.fi-ed-panel .ed-form-field-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#64748b}.fi-ed-panel .ed-form-optional{font-weight:400;text-transform:none;letter-spacing:0;color:#94a3b8}.fi-ed-panel .ed-form-time-native,.fi-ed-panel .ed-form-select{padding:4px 8px;font-size:11px;font-weight:500;font-family:inherit;border:1px solid #1e293b;border-radius:5px;background:#fff;color:#0f172a;outline:none;width:100%;height:28px;box-sizing:border-box;transition:border-color .12s;-webkit-appearance:none}.fi-ed-panel .ed-form-time-native:focus,.fi-ed-panel .ed-form-select:focus{border-color:#1e293b;box-shadow:none;outline:none}.fi-ed-panel .ed-form-notes-input{width:100%;padding:5px 8px;font-size:12px;font-family:inherit;border:1px solid #d8d5e4;border-radius:5px;color:#0f172a;background:#fff;outline:none;transition:border-color .12s;border-color:#1e293b}.fi-ed-panel .ed-form-notes-input:focus{border-color:#7c3aed}.fi-ed-panel .ed-form-notes-input::placeholder{color:#b0b8c4}.fi-ed-panel .ed-form-actions{display:flex;gap:8px;margin-top:2px;justify-content:center}.fi-ed-panel .ed-form-submit{padding:5px 14px;font-size:11px;font-weight:600;background:#7c3aed;color:#fff;border:none;border-radius:5px;box-shadow:none;cursor:pointer;transition:background .12s}.fi-ed-panel .ed-form-submit:hover{background:#6d28d9}.fi-ed-panel .ed-form-cancel{padding:5px 14px;font-size:11px;font-weight:600;background:#e5e7eb;color:#374151;border:none;border-radius:5px;cursor:pointer;transition:background .12s}.fi-ed-panel .ed-form-cancel:hover{background:#d1d5db}.fi-ed-panel .ed-request-list{background:none;padding:0;border:none;width:100%}.fi-ed-panel .ed-request-list-title{display:none}.fi-ed-panel .ed-request-empty{padding:6px;font-size:10px;color:#94a3b8}.fi-ed-panel .ed-request-card{padding:6px 10px;border-radius:4px;border:none;border-left:2px solid #d8b4fe;margin-bottom:4px;background:#fafbfc}.fi-ed-panel .ed-request-card--validated{border-left-color:#86efac}.fi-ed-panel .ed-request-card--refused{border-left-color:#fca5a5}.fi-ed-panel .ed-request-card--standby{border-left-color:#cbd5e1}.fi-ed-panel .ed-request-card--pending{border-left-color:#fcd34d}.fi-ed-panel .ed-request-header{margin-bottom:2px}.fi-ed-panel .ed-request-time{font-size:12px;font-weight:600;color:#334155}.fi-ed-panel .ed-request-status{font-size:9px;padding:1px 5px;border-radius:3px}.fi-ed-panel .ed-request-body{margin-top:2px}.fi-ed-panel .ed-request-reason{font-size:10px;padding:2px 0;background:none;border-radius:0;color:#64748b}.fi-ed-panel .ed-request-notes{font-size:10px;padding:2px 0;margin-top:2px;color:#94a3b8;font-style:italic}.fi-ed-panel .ed-request-meta{font-size:9px;margin-top:2px;color:#b0b8c4}.fi-ed-panel .ed-request-refusal{font-size:10px;padding:2px 0;margin-top:2px;color:#dc2626}.fi-ed-panel .ed-request-actions{gap:4px;margin-top:4px}.fi-ed-panel .ed-request-actions .btn{padding:2px 8px;font-size:10px;font-weight:500}.fi-ed-panel .ed-request-cancel{margin-top:4px;font-size:9px;color:#94a3b8}.fi-ctot-chip{font-size:8px;font-weight:700;padding:1px 5px;background:#7c3aed;color:#fff;border-radius:3px;margin-left:4px;letter-spacing:.3px;font-family:JetBrains Mono,SF Mono,Menlo,monospace}.fi-ctot-toggle{font-size:10px;font-weight:600;color:#7c3aed;background:#f5f3ff;border:none;padding:3px 10px;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.fi-ctot-toggle:hover{background:#ede9fe;color:#6d28d9}.fi-ed-actions{display:flex;gap:4px}.fi-ed-strip-toggle--open{background:#7c3aed;color:#fff}.fi-ed-strip-toggle--open:hover{background:#6d28d9;color:#fff}.fi-ctot-toggle--open{background:#7c3aed;color:#fff}.fi-ctot-toggle--open:hover{background:#6d28d9;color:#fff}.fi-inline-card{position:relative;margin-top:4px;overflow:hidden;background:#faf8ff;border-radius:6px;animation:fi-card-in .15s ease-out}@keyframes fi-card-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.fi-inline-card-accent{height:2px;background:#d8b4fe}.fi-ctot-body{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0 6px}.fi-ctot-current-row{display:flex;align-items:center;gap:8px}.fi-ctot-current-label{font-size:10px;font-weight:500;color:#94a3b8}.fi-ctot-current-val{font-size:13px;font-weight:700;color:#6d28d9;font-family:SF Mono,Menlo,monospace}.fi-ctot-remove-btn{font-size:9px;font-weight:500;color:#94a3b8;background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:#cbd5e1;transition:color .12s}.fi-ctot-remove-btn:hover{color:#dc2626;text-decoration-color:#dc2626}.fi-ctot-input-row{display:flex;align-items:center;justify-content:center;gap:6px}.fi-ctot-time-native{padding:4px 8px;font-size:13px;font-weight:500;font-family:inherit;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#334155;outline:none;transition:border-color .12s}.fi-ctot-time-native:focus{border-color:#a78bfa}.fi-ctot-time-inputs{display:flex;align-items:center;gap:2px}.fi-ctot-time-input{width:40px;padding:5px 4px;font-size:14px;font-weight:600;font-family:JetBrains Mono,SF Mono,Menlo,monospace;border:1px solid #d1d5db;border-radius:5px;text-align:center;background:#fff;-moz-appearance:textfield}.fi-ctot-time-input::-webkit-outer-spin-button,.fi-ctot-time-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fi-ctot-time-input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed26}.fi-ctot-time-sep{font-size:14px;font-weight:700;color:#64748b}.fi-ctot-set-btn{font-size:11px;font-weight:500;color:#7c3aed;background:none;border:1px solid #d8b4fe;padding:4px 12px;border-radius:4px;cursor:pointer;transition:background .12s,color .12s}.fi-ctot-set-btn:hover{background:#f5f3ff;color:#6d28d9}.fi-ctot-clear-btn{font-size:10px;font-weight:600;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;padding:4px 10px;border-radius:5px;cursor:pointer;transition:background .15s}.fi-ctot-clear-btn:hover{background:#fee2e2}.fi-ctot-error{font-size:10px;color:#dc2626;text-align:center}.fi-delay-strip{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 0;margin-top:6px;border-top:1.5px solid #e2e8f0}.fi-delay-strip-info{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500}.fi-delay-strip-icon{color:#94a3b8}.fi-delay-strip-label{font-weight:600}.fi-delay-strip-time{color:#64748b;font-size:10px}.fi-delay-strip--ontime .fi-delay-strip-icon{color:#22c55e}.fi-delay-strip--ontime .fi-delay-strip-label{color:#16a34a}.fi-delay-strip--delayed{border-top-color:#fecaca;background:#fef2f2}.fi-delay-strip--delayed .fi-delay-strip-icon{color:#f59e0b}.fi-delay-strip--delayed .fi-delay-strip-label{color:#dc2626}.fi-delay-strip--pulse{animation:fi-delay-pulse 1.8s ease-in-out infinite}@keyframes fi-delay-pulse{0%,to{background:#fef2f2}50%{background:#fecaca}}.fi-delay-strip--reported .fi-delay-strip-icon{color:#22c55e}.fi-delay-strip--reported .fi-delay-strip-label{color:#16a34a}.fi-delay-strip-toggle{font-size:10px;font-weight:600;color:#dc2626;background:#fef2f2;border:none;padding:3px 10px;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.fi-delay-strip-toggle:hover{background:#fecaca;color:#b91c1c}.fi-delay-strip-toggle--cta{color:#fff;background:#dc2626;padding:4px 12px;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:.5px;animation:fi-delay-btn-pulse 1.8s ease-in-out infinite}.fi-delay-strip-toggle--cta:hover{background:#b91c1c;color:#fff}.fi-delay-strip--reported .fi-delay-strip-toggle{color:#16a34a;background:#f0fdf4}.fi-delay-strip--reported .fi-delay-strip-toggle:hover{background:#dcfce7;color:#15803d}.fi-delay-panel{padding:4px 0}.fi-delay-pills{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0}.fi-delay-code-pill{display:inline-flex;align-items:center;gap:4px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:3px 8px;font-size:11px}.fi-delay-code-pill-code{font-weight:700;color:#dc2626}.fi-delay-code-pill-duration{color:#64748b;font-weight:500}.fi-delay-form{background:#fefce8;border:1px solid #fde68a;border-radius:6px;padding:10px 12px}.fi-delay-form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:11px}.fi-delay-form-total{color:#64748b}.fi-delay-form-total strong{color:#dc2626}.fi-delay-sum{font-weight:700;font-size:11px;padding:2px 8px;border-radius:4px}.fi-delay-sum--ok{background:#dcfce7;color:#16a34a}.fi-delay-sum--error{background:#fef2f2;color:#dc2626}.fi-delay-code-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.fi-delay-select{flex:1;min-width:0;font-size:11px;padding:5px 6px;border:1px solid #e2e8f0;border-radius:4px;background:#fff}.fi-delay-input{font-size:11px;padding:5px 6px;border:1px solid #e2e8f0;border-radius:4px;background:#fff}.fi-delay-input--code{width:48px}.fi-delay-input--label{flex:1;min-width:0}.fi-delay-input--duration{width:52px;text-align:center}.fi-delay-remove-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px}.fi-delay-remove-btn:hover{color:#dc2626;background:#fef2f2}.fi-delay-add-btn{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:#64748b;background:none;border:1px dashed #cbd5e1;padding:4px 10px;border-radius:4px;cursor:pointer;margin-bottom:8px}.fi-delay-add-btn:hover{color:#334155;border-color:#94a3b8}.fi-delay-error{display:flex;align-items:center;gap:4px;font-size:11px;color:#dc2626;margin-bottom:6px}.fi-delay-form-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.fi-delay-cancel-btn{font-size:11px;font-weight:500;color:#64748b;background:#fff;border:1px solid #e2e8f0;padding:4px 12px;border-radius:4px;cursor:pointer}.fi-delay-cancel-btn:hover{background:#f8fafc}.fi-delay-save-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#fff;background:#dc2626;border:none;padding:4px 14px;border-radius:4px;cursor:pointer;transition:background .15s}.fi-delay-save-btn:hover{background:#b91c1c}.fi-delay-save-btn:disabled{opacity:.5;cursor:not-allowed}.fi-delay-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:fi-delay-spin .6s linear infinite}@keyframes fi-delay-spin{to{transform:rotate(360deg)}}@keyframes fi-delay-btn-pulse{0%,to{box-shadow:0 0 #dc262680}50%{box-shadow:0 0 0 6px #dc262600}}.fi-docs{margin-top:6px;padding-top:10px;border-top:1.5px solid #e2e8f0}.fi-docs .fi-section-title{text-align:center;color:#1e293b}.fi-docs-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:4px}.fi-doc{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;border:none;transition:background .15s}.fi-doc--ready{color:#334155;background:#f0fdf4;cursor:pointer}.fi-doc--ready:hover{background:#dcfce7}.fi-doc--ready:disabled{opacity:.7;cursor:wait}.fi-doc--pending{color:#b0b8c4;background:none}.fi-doc--placeholder{color:#d1d5db;background:none}.fi-doc-spinner{width:12px;height:12px;border:2px solid #e2e8f0;border-top-color:#475569;border-radius:50%;animation:fi-spin .6s linear infinite}@keyframes fi-spin{to{transform:rotate(360deg)}}.fi-team{margin-top:6px;padding-top:10px;border-top:1.5px solid #e2e8f0}.fi-team-empty{color:#b0b8c4;font-size:11px;display:flex;align-items:center;gap:6px;margin-top:4px}.fi-team-link{font-size:10px;color:#64748b;text-decoration:underline;text-decoration-color:#cbd5e1}.fi-team-link:hover{text-decoration-color:#64748b}.fi-team-grid{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:4px}.fi-team-member{display:flex;align-items:center;gap:4px}.fi-team-name{font-size:11px;font-weight:600;color:#334155}.fi-team-role{font-size:9px;color:#94a3b8}.flight-milestones-tab{display:flex;flex-direction:column;gap:4px}.milestones-progress{display:flex;align-items:center;gap:12px;padding:0;background:none;border-radius:0}.milestones-progress-count{font-size:13px;font-weight:700;color:#334155;font-family:SF Mono,Menlo,monospace}.milestones-progress-bar{flex:1;height:3px;background:#e2e8f0;border-radius:2px;overflow:hidden}.milestones-progress-fill{height:100%;background:#22c55e;border-radius:2px;transition:width .4s ease}.milestones-progress-info{display:flex;align-items:baseline;gap:4px;flex-shrink:0;margin:0}.milestones-progress-percent{font-size:11px;font-weight:600;color:#22c55e}.milestones-readonly-notice{font-size:11px;padding:5px 10px;border-radius:5px;text-align:center;background:#f8fafc;color:#64748b}.milestones-frozen-notice{font-size:11px;padding:5px 10px;border-radius:5px;text-align:center;background:#fffbeb;border:1px solid #fde68a;color:#92400e;margin-bottom:0}.mt-section{padding:6px 0}.mt-section-header{display:flex;align-items:center;gap:6px;margin-bottom:4px;padding-left:2px}.mt-section-arrow{font-size:12px;color:#94a3b8;line-height:1}.mt-section-icon-svg{color:#ca8a04;width:14px;height:14px}.mt-section-title{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#94a3b8}.mt-section-progress{margin-left:auto;font-size:10px;font-weight:600;color:#94a3b8;font-family:SF Mono,Menlo,monospace}.mt-section-pct{color:#22c55e;margin-left:3px}.mt-section-leg{font-size:10px;font-weight:500;color:#ca8a04}.mt-section-header--clickable{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;padding:4px 6px;margin:0 -6px 4px;transition:background .12s}.mt-section-header--clickable:hover{background:#f8fafc}.mt-section-chevron{font-size:10px;color:#94a3b8;transition:transform .2s;line-height:1}.mt-section-chevron--open{transform:rotate(90deg)}.mt-section--collapsed{padding-bottom:0}.mt-section-header--nightstop .mt-section-title{color:#ca8a04}.mt-grid{display:grid;gap:4px 0;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:4px 0 8px;align-items:center}.mt-grid::-webkit-scrollbar{height:3px}.mt-grid::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.mt-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;min-width:52px;padding:4px 0}.mt-cell--span{align-self:center}.mt-cell--empty{pointer-events:none}.mt-cell--pill{min-width:36px}.mt-cell--cl:before{content:"";position:absolute;top:50%;left:0;width:50%;height:1.5px;background:#e2e8f0;z-index:1;transform:translateY(-50%)}.mt-cell--cr:after{content:"";position:absolute;top:50%;right:0;width:50%;height:1.5px;background:#e2e8f0;z-index:1;transform:translateY(-50%)}.mt-cell--pl-done:before{height:2.5px;background:#22c55e}.mt-cell--pl-active:before{height:2.5px;background:#f59e0b}.mt-cell--pr-done:after{height:2.5px;background:#22c55e}.mt-cell--pr-active:after{height:2.5px;background:#f59e0b}.mt-pill{font-size:8px;font-weight:700;padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px;z-index:3;line-height:1;min-width:28px;text-align:center}.mt-pill--pax{background:#eff6ff;color:#3b82f6}.mt-pill--bag{background:#fefce8;color:#ca8a04}.mt-node-wrap{display:flex;flex-direction:column;align-items:center;gap:3px;position:relative;z-index:2}.mt-node{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transition:transform .15s,box-shadow .15s;flex-shrink:0}.mt-node--done{background:#dcfce7;border:2px solid #22c55e}.mt-node--ready{background:#fff;border:2px solid #f59e0b;box-shadow:0 0 0 3px #f59e0b1f;animation:mt-pulse 2s ease-in-out infinite}.mt-node--ready.mt-node--clickable{cursor:pointer}.mt-node--ready.mt-node--clickable:hover{transform:scale(1.06);box-shadow:0 0 0 5px #f59e0b2e;border-color:#d97706}.mt-node--blocked{background:#f8fafc;border:1.5px solid #e2e8f0;opacity:.55}@keyframes mt-pulse{0%,to{box-shadow:0 0 0 3px #f59e0b1f}50%{box-shadow:0 0 0 6px #f59e0b00}}.mt-node-icon{flex-shrink:0}.mt-node--blocked .mt-node-icon{opacity:.5}.mt-node-check{position:absolute;top:-2px;right:-2px;width:14px;height:14px;background:#22c55e;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid white}.mt-node-clear{position:absolute;top:-4px;left:-4px;width:14px;height:14px;background:#fef2f2;color:#ef4444;border:1px solid #fecaca;border-radius:50%;font-size:10px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;z-index:5}.mt-node-wrap:hover .mt-node-clear{opacity:1}.mt-node-label{font-size:9px;font-weight:600;color:#64748b;text-align:center;line-height:1.2;white-space:nowrap}.mt-node-label--done{color:#334155}.mt-node-label--blocked{color:#94a3b8}.mt-tooltip{position:absolute;top:-28px;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;padding:3px 7px;border-radius:4px;font-size:10px;white-space:nowrap;z-index:50;display:flex;gap:5px;align-items:center;pointer-events:none}.mt-tooltip:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #1e293b}.mt-tooltip-time{font-weight:600;font-family:SF Mono,Menlo,monospace;color:#86efac}.mt-tooltip-setter{color:#94a3b8;font-size:9px}.mt-pair-info{position:absolute;bottom:-4px;right:-4px;font-size:8px;font-weight:600;white-space:nowrap;font-family:SF Mono,Menlo,monospace;z-index:3;line-height:1}.mt-pair-info--active{color:#f59e0b}.mt-pair-info--done{color:#3b82f6;background:#eff6ff;padding:1px 3px;border-radius:2px}.mt-est-boarding{position:relative;display:flex;justify-content:center}.mt-est-btn{font-size:8px;font-weight:600;color:#3b82f6;background:#eff6ff;border:1px solid #dbeafe;border-radius:3px;padding:1px 5px;cursor:pointer}.mt-est-btn:hover{background:#dbeafe}.mt-est-badge{font-size:8px;font-weight:600;color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:3px;padding:1px 5px;cursor:pointer}.mt-est-badge:hover{background:#dbeafe}.mt-est-footer{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-top:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.mt-est-footer-icon{color:#3b82f6;flex-shrink:0}.mt-est-footer-label{font-size:11px;font-weight:600;color:#475569}.mt-est-footer-time{font-size:13px;font-weight:700;color:#2563eb;font-family:SF Mono,Menlo,monospace}.mt-est-footer-btn{font-size:10px;font-weight:600;color:#3b82f6;background:#eff6ff;border:1px solid #dbeafe;border-radius:4px;padding:3px 10px;cursor:pointer;transition:background .15s;margin-left:auto}.mt-est-footer-btn:hover{background:#dbeafe}.mt-est-footer-btn--blink{color:#fff;background:#dc2626;border-color:#b91c1c;animation:est-btn-blink 1s ease-in-out infinite}.mt-est-footer-btn--blink:hover{background:#b91c1c}@keyframes est-btn-blink{0%,to{opacity:1}50%{opacity:.4}}.mt-est-footer-form{display:flex;align-items:center;gap:4px;margin-left:auto}.milestone-svg-icon{flex-shrink:0;opacity:.85}.load-sheet-tab{display:flex;flex-direction:column;gap:8px}.load-sheet-sub-tabs{display:flex;gap:4px;padding:3px;background-color:#f0f0f0;border-radius:6px}.load-sheet-sub-tab{flex:1;padding:6px 12px;font-size:12px;font-weight:500;border:none;background-color:transparent;color:#666;cursor:pointer;border-radius:4px;transition:all .15s}.load-sheet-sub-tab:hover{background-color:#e0e0e0;color:#333}.load-sheet-sub-tab--active{background-color:#fff;color:#1a1a2e;box-shadow:0 1px 2px #0000001a}.load-sheet-content{padding:8px;background-color:#f8f9fa;border-radius:6px}.load-sheet-status{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:#fff;border-radius:8px;margin-bottom:20px}.load-sheet-status-text{font-size:14px;font-weight:500}.load-sheet-status--open{border-left:4px solid #28a745}.load-sheet-status--open .load-sheet-status-text{color:#28a745}.load-sheet-status--closed{border-left:4px solid #dc3545}.load-sheet-status--closed .load-sheet-status-text{color:#dc3545}.load-sheet-status-time{font-size:12px;color:#666}.load-sheet-form{display:flex;flex-direction:column;gap:16px}.load-sheet-form-title{font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.load-sheet-passenger-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.load-sheet-passenger-field{display:flex;flex-direction:column;gap:4px}.load-sheet-passenger-label{font-size:11px;font-weight:600;text-transform:uppercase;color:#666}.load-sheet-passenger-input{padding:10px 12px;font-size:16px;font-weight:500;text-align:center;border:1px solid #ddd;border-radius:6px;background-color:#fff}.load-sheet-passenger-input:focus{outline:none;border-color:#06c}.load-sheet-passenger-input:disabled{background-color:#f8f9fa;color:#666}.load-sheet-baggage{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:16px;background-color:#fff;border-radius:8px;margin-top:16px}.load-sheet-baggage-field{display:flex;flex-direction:column;gap:4px}.load-sheet-baggage-label{font-size:11px;font-weight:600;text-transform:uppercase;color:#666}.load-sheet-baggage-input{padding:10px 12px;font-size:14px;border:1px solid #ddd;border-radius:6px;background-color:#fff}.load-sheet-baggage-input:focus{outline:none;border-color:#06c}.load-sheet-baggage-input:disabled{background-color:#f8f9fa;color:#666}.load-sheet-weight{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#1a1a2e;color:#fff;border-radius:8px;margin-top:16px}.load-sheet-weight-label{font-size:13px;font-weight:500;color:#fffc}.load-sheet-weight-value{font-size:24px;font-weight:700}.load-sheet-delta{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:13px;font-weight:600;border-radius:4px}.load-sheet-comparison{margin-top:20px;padding:16px;background-color:#fff;border-radius:8px}.load-sheet-comparison-title{font-size:13px;font-weight:600;color:#333;margin-bottom:12px}.load-sheet-comparison-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.load-sheet-comparison-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;background-color:#f8f9fa;border-radius:6px}.load-sheet-comparison-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#888}.load-sheet-comparison-values{display:flex;align-items:center;gap:8px}.load-sheet-comparison-arrival{font-size:14px;color:#666}.load-sheet-comparison-arrow{font-size:12px;color:#ccc}.load-sheet-comparison-departure{font-size:14px;font-weight:600;color:#333}.load-sheet-section{background-color:#fff;border-radius:8px;padding:12px}.load-sheet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e9ecef}.load-sheet-header h3{font-size:15px;font-weight:700;color:#1a1a2e;margin:0}.load-sheet-status{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.load-sheet-status--open{background-color:#d4edda;color:#155724}.load-sheet-status--closed{background-color:#f8d7da;color:#721c24}.load-sheet-notice{padding:8px 12px;background-color:#e3f2fd;border-radius:6px;color:#1565c0;font-size:12px;margin-bottom:12px}.load-sheet-warning{padding:8px 12px;background-color:#fff3cd;border-radius:6px;color:#856404;font-size:12px;margin-bottom:12px;border-left:3px solid #ffc107}.load-sheet-group{margin-bottom:12px;padding:10px;background-color:#f8f9fa;border-radius:8px}.load-sheet-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#555;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid #dee2e6}.load-sheet-passengers{display:flex;flex-direction:column;gap:4px}.load-sheet-pax-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background-color:#fff;border-radius:6px;border:1px solid #e9ecef}.load-sheet-pax-label{display:flex;align-items:center;gap:8px;flex:1;font-size:13px;font-weight:500;color:#333}.load-sheet-pax-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#e9ecef;border-radius:4px;font-size:11px;font-weight:700;color:#555}.load-sheet-pax-weight{font-size:10px;color:#888;margin-left:auto}.load-sheet-input{width:56px;padding:4px 6px;font-size:14px;font-weight:600;text-align:center;border:1px solid #dee2e6;border-radius:4px;background-color:#fff;font-family:SF Mono,Menlo,monospace}.load-sheet-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc26}.load-sheet-input:disabled{background-color:#f8f9fa;color:#666;border-color:#e9ecef}.load-sheet-totals{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #dee2e6}.load-sheet-total{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px;background-color:#1a1a2e;border-radius:6px}.load-sheet-total-label{font-size:9px;font-weight:600;text-transform:uppercase;color:#ffffffb3}.load-sheet-total-value{font-size:18px;font-weight:700;color:#fff;font-family:SF Mono,Menlo,monospace}.load-sheet-baggage{display:flex;gap:8px}.load-sheet-bag-row{flex:1;display:flex;flex-direction:column;gap:4px;padding:8px 10px;background-color:#fff;border-radius:6px;border:1px solid #e9ecef}.load-sheet-bag-label{font-size:10px;font-weight:600;color:#555;text-transform:uppercase}.load-sheet-delta{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;font-family:SF Mono,Menlo,monospace;min-width:40px;text-align:center}.load-sheet-delta--positive{background-color:#d4edda;color:#155724}.load-sheet-delta--negative{background-color:#f8d7da;color:#721c24}.load-sheet-delta--zero{background-color:#e9ecef;color:#666}.load-sheet-actions{margin-top:12px;padding-top:12px;border-top:1px solid #e9ecef}.load-sheet-actions .btn{width:100%;padding:10px 16px;font-size:13px}.load-sheet-closed-info{margin-top:10px;padding:8px 12px;background-color:#e9ecef;border-radius:6px;font-size:11px;color:#555;text-align:center}.load-sheet-subtabs{display:flex;gap:4px;margin-bottom:12px;padding:3px;background-color:#e9ecef;border-radius:8px}.load-sheet-subtab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;border:none;background:none;color:#666;cursor:pointer;border-radius:6px;transition:all .2s ease}.load-sheet-subtab:hover{background-color:#ffffff80;color:#333}.load-sheet-subtab--active{background-color:#fff;color:#1a1a2e;box-shadow:0 1px 4px #0000001a}.load-sheet-subtab-icon{font-size:12px}.load-sheet-refresh-btn{display:flex;align-items:center;justify-content:center;padding:8px;border:none;background-color:transparent;color:#666;cursor:pointer;border-radius:6px;transition:all .2s}.load-sheet-refresh-btn:hover:not(:disabled){background-color:#ffffff80;color:#333}.load-sheet-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.load-sheet-refresh-btn .spinning{animation:spin 1s linear infinite}.load-sheet-demo-notice{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;margin-bottom:12px}.load-sheet-demo-notice svg{flex-shrink:0;margin-top:1px;width:14px;height:14px}.load-sheet-demo-content{display:flex;flex-direction:column;gap:2px}.load-sheet-demo-title{font-size:12px;font-weight:600}.load-sheet-demo-text{font-size:11px;opacity:.9}.load-sheet-sync-status{margin-bottom:12px}.load-sheet-sync-success{display:flex;align-items:center;gap:6px;color:#0f766e;background-color:#ccfbf1;padding:8px 12px;font-size:12px;border-radius:6px;border:1px solid #5eead4}.load-sheet-sync-success svg{flex-shrink:0}.load-sheet-attempt-time{opacity:.8;font-weight:400}.load-sheet-sync-error{display:flex;align-items:center;gap:6px;color:#b91c1c;background-color:#fee2e2;padding:8px 12px;font-size:12px;border-radius:6px;border:1px solid #fca5a5}.load-sheet-sync-error svg{flex-shrink:0}.load-sheet-sync-loading{display:flex;align-items:center;gap:6px;color:#1d4ed8;background-color:#dbeafe;padding:8px 12px;font-size:12px;border-radius:6px;border:1px solid #93c5fd}.load-sheet-sync-loading svg{flex-shrink:0}.load-sheet-error{color:#b91c1c;background-color:#fee2e2;padding:16px;border-radius:8px;border:1px solid #fca5a5;margin:12px}.load-sheet-sync-warning{display:flex;align-items:flex-start;gap:6px;color:#92400e;font-size:12px}.load-sheet-sync-warning svg{flex-shrink:0;margin-top:2px}.load-sheet-sync-warning-block{display:flex;align-items:center;justify-content:space-between;gap:12px;background-color:#fef3c7;padding:12px 16px;border-radius:6px;border:1px solid #fcd34d}.load-sheet-sync-warning-block .load-sheet-sync-warning{flex:1}.load-sheet-sync-hint{font-size:11px;color:#78350f;margin-top:4px;font-weight:400}.load-sheet-sync-error-block{display:flex;align-items:center;justify-content:space-between;gap:12px;background-color:#fee2e2;padding:12px 16px;border-radius:6px;border:1px solid #fca5a5}.load-sheet-sync-error-block .load-sheet-sync-error{flex:1;background:none;padding:0;border:none}.load-sheet-id-debug{display:flex;align-items:center;gap:8px;padding:6px 12px;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;margin-bottom:8px;font-size:11px;font-family:monospace}.load-sheet-id-label{color:#6b7280;font-weight:500}.load-sheet-id-value{color:#1f2937;background-color:#e5e7eb;padding:2px 6px;border-radius:3px;word-break:break-all}.load-sheet-id-missing{color:#dc2626;font-weight:600}.load-sheet-id-mismatch{color:#dc2626;font-weight:600;margin-left:8px}.load-sheet-zones{display:flex;gap:6px}.load-sheet-zone-row{flex:1;display:flex;flex-direction:column;gap:4px;padding:8px;background-color:#fff;border-radius:6px;border:1px solid #e9ecef;text-align:center}.load-sheet-zone-label{font-size:10px;font-weight:600;color:#555;text-transform:uppercase}.load-sheet-zone-total{margin-top:8px;text-align:center}.load-sheet-zone-total-value{font-size:12px;font-weight:600;color:#333;padding:4px 10px;background-color:#fff;border-radius:4px;display:inline-block}.load-sheet-zone-total--invalid{background-color:#f8d7da;color:#721c24}.load-sheet-zone-warning{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 6px;background-color:#f8d7da;color:#721c24;font-size:10px;font-weight:500;border-radius:3px;text-transform:none;letter-spacing:0}.load-sheet-validation-hint{display:block;margin-top:8px;font-size:11px;color:#856404;text-align:center}.load-sheet-persisted-badge,.load-sheet-local-badge{display:inline-block;margin-left:8px;padding:2px 6px;font-size:9px;font-weight:600;border-radius:3px;text-transform:uppercase}.load-sheet-persisted-badge{background-color:#d4edda;color:#155724}.load-sheet-local-badge{background-color:#fff3cd;color:#856404}.load-sheet-actions{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid #e9ecef}.load-sheet-acknowledge{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding:12px;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.load-sheet-acknowledge-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:500;color:#92400e}.load-sheet-acknowledge-item input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.load-sheet-acknowledge-check{width:20px;height:20px;padding:3px;border:2px solid #d97706;border-radius:4px;background-color:#fff;color:transparent;transition:all .15s ease}.load-sheet-acknowledge-item input[type=checkbox]:checked+.load-sheet-acknowledge-check{background-color:#059669;border-color:#059669;color:#fff}.load-sheet-acknowledge-item:hover .load-sheet-acknowledge-check{border-color:#b45309}.ssr-tab{padding:8px 0}.ssr-tab-loading{padding:40px;text-align:center;color:#666}.ssr-tab-demo-notice{display:flex;gap:16px;padding:20px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;color:#856404}.ssr-tab-demo-notice svg{flex-shrink:0;margin-top:2px}.ssr-tab-demo-content h4{margin:0 0 8px;font-size:15px;font-weight:600}.ssr-tab-demo-content p{margin:0 0 8px;font-size:13px;line-height:1.5}.ssr-tab-demo-hint{font-size:12px;opacity:.8}.ssr-tab-error{display:flex;align-items:center;gap:8px;padding:16px;background-color:#f8d7da;border-radius:8px;color:#721c24;font-size:14px}.ssr-tab-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;text-align:center;color:#666}.ssr-tab-empty svg{color:#ccc}.ssr-tab-empty h4{margin:0;font-size:16px;font-weight:600;color:#333}.ssr-tab-empty p{margin:0;font-size:14px}.ssr-tab-empty-hint{font-size:12px;color:#999}.ssr-tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.ssr-tab-title{font-size:16px;font-weight:600;color:#1a1a2e;margin:0}.ssr-tab-count{font-size:13px;color:#666;background-color:#f0f0f0;padding:4px 10px;border-radius:12px}.ssr-tab-list{display:flex;flex-direction:column;gap:8px}.ssr-tab-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background-color:#f8f9fa;border-radius:8px;border-left:3px solid #0066cc}.ssr-tab-item-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#e3f2fd;color:#06c;border-radius:8px;flex-shrink:0}.ssr-tab-item-content{flex:1;min-width:0}.ssr-tab-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ssr-tab-item-code{font-size:14px;font-weight:700;color:#1a1a2e;font-family:JetBrains Mono,SF Mono,monospace}.ssr-tab-item-seat{font-size:12px;color:#666;background-color:#e9ecef;padding:2px 8px;border-radius:4px}.ssr-tab-item-description{font-size:13px;color:#555}.ssr-tab-item-note{margin-top:6px;padding:8px 10px;background-color:#fff;border-radius:4px;font-size:12px;color:#666;font-style:italic}.ssr-tab-item-meta{flex-shrink:0}.ssr-tab-item-date{font-size:11px;color:#999}.milestones-unpaired-notice{padding:10px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;font-size:12px;color:#0369a1;text-align:center}.est-boarding-popover{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;display:flex;gap:4px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 8px;box-shadow:0 4px 12px #0000001a;z-index:100;white-space:nowrap}.est-boarding-input{width:70px;padding:4px 6px;font-size:12px;border:1px solid #e2e8f0;border-radius:4px}.btn--tiny{padding:3px 8px;font-size:11px;line-height:1.2}.btn--ghost{background:transparent;border:1px solid #e2e8f0;color:#64748b}.btn--ghost:hover{background:#f8fafc}.btn--danger{background:#ef4444;border:1px solid #dc2626;color:#fff}.btn--danger:hover{background:#dc2626}.fn-tab{display:flex;flex-direction:column;gap:12px}.fn-loading{padding:32px;text-align:center;color:#94a3b8;font-size:13px}.fn-info{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:12px;color:#64748b;line-height:1.4}.fn-info-icon{color:#94a3b8;flex-shrink:0}.fn-editor{display:flex;flex-direction:column}.fn-textarea{width:100%;min-height:200px;padding:12px 14px;font-size:13px;font-family:inherit;line-height:1.6;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;resize:vertical;transition:border-color .12s}.fn-textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f614}.fn-textarea::placeholder{color:#cbd5e1}.fn-footer{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.fn-status{display:flex;align-items:center}.fn-status-text{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500}.fn-status-text--saving{color:#94a3b8}.fn-status-text--unsaved{color:#f59e0b}.fn-status-text--saved{color:#94a3b8}.fn-delete-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:500;color:#94a3b8;background:transparent;border:1px solid transparent;border-radius:5px;cursor:pointer;transition:all .12s}.fn-delete-btn:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.flights-page{max-width:1400px}.flights-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.flight-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.flight-list-empty{text-align:center;padding:40px 20px;color:#666}.flight-card{position:relative;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;cursor:pointer;transition:box-shadow .15s,border-color .15s}.flight-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#ccc}.flight-card--ontime{background:linear-gradient(135deg,#f5faf7,#f9fcfa,#fff);border-color:#a7d5b4;box-shadow:0 0 0 1px #2e7d320f,0 2px 8px #2e7d3212}.flight-card--ontime:hover{border-color:#86c496;box-shadow:0 0 0 1px #2e7d321a,0 4px 14px #2e7d321a}.flight-card--delayed{background:linear-gradient(135deg,#fef2f2,#fff5f5,#fff);border-color:#fca5a5;box-shadow:0 0 0 1px #dc26261a,0 2px 8px #dc26261f}.flight-card--delayed:hover{border-color:#f87171;box-shadow:0 0 0 1px #dc262626,0 4px 14px #dc26262e}.flight-card--cancelled{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.06) 10px,rgba(220,38,38,.06) 20px),#fff}.flight-card--cancelled:hover{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.1) 10px,rgba(220,38,38,.1) 20px),#fff;box-shadow:0 2px 8px #00000014}.flight-card--manual{border-color:#fdba74;box-shadow:0 0 0 1px #ff6b351a,0 2px 6px #ff6b3514}.flight-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.flight-card-identity{display:flex;align-items:center;gap:10px}.flight-card-airline-logo{width:28px;height:28px;object-fit:contain;border-radius:4px}.flight-card-airline-code{font-size:13px;font-weight:600;color:#666;min-width:28px;text-align:center}.flight-card-number{font-size:18px;font-weight:700;color:#1a1a2e;display:flex;align-items:center;gap:8px}.flight-card-manual-tag{font-size:10px;font-weight:600;padding:2px 6px;background-color:#ff6b35;color:#fff;border-radius:4px}.flight-card-nightstop-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 6px;background-color:#8b5cf6;color:#fff;border-radius:4px}.flight-card-ferry-tag{font-size:10px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.3px;padding:2px 8px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);border-radius:3px;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.flight-card-status{font-size:12px;font-weight:600;text-transform:uppercase}.flight-status-badge{display:flex;align-items:center;gap:6px;padding:4px 10px;background-color:#0000000d;border-radius:16px;font-size:13px;font-weight:600}.flight-status-badge-label{text-transform:uppercase;font-size:11px}.flight-status-badge-time{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:14px;font-weight:700}.flight-status-badge--blinking{animation:statusBlink 1s ease-in-out infinite}.flight-status-compact{display:flex;align-items:center;gap:4px;font-weight:600}.flight-status-compact-label{text-transform:uppercase;font-size:11px}.flight-status-compact-time{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:13px;font-weight:700}.flight-status-compact--blinking{animation:statusBlink 1s ease-in-out infinite}@keyframes statusBlink{0%,to{opacity:1}50%{opacity:.4}}.flight-card-body{margin-bottom:12px}.flight-card-route{display:flex;align-items:center;gap:8px;margin-bottom:12px}.flight-card-direction{font-size:11px;font-weight:600;padding:2px 6px;background-color:#e9ecef;color:#666;border-radius:4px}.flight-card-route-text{font-size:14px;color:#333}.flight-card-details{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.flight-card-detail{display:flex;flex-direction:column}.flight-card-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#888;margin-bottom:2px}.flight-card-value{font-size:14px;font-weight:500;color:#333}.flight-card-time{display:flex;align-items:center;gap:6px}.flight-card-time--on-time{color:#2e7d32}.flight-card-time--late{color:#dc2626}.flight-card-delay{font-size:11px;font-weight:600;color:#2e7d32}.flight-card-delay--late{color:#dc3545}.flight-card-delay-tag{font-size:9px;font-weight:700;letter-spacing:.5px;padding:2px 7px;background:#dc2626;color:#fff;border-radius:3px;margin-left:8px}.flight-card-loadsheet-icon{flex-shrink:0}.flight-card-loadsheet-icon--attention{color:#dc2626;animation:loadsheetBlink 1s ease-in-out infinite}.flight-card-loadsheet-icon--static{color:#f59e0b}@keyframes loadsheetBlink{0%,to{opacity:1}50%{opacity:.3}}.flight-card-delta{font-size:11px;font-weight:600;margin-left:4px}.flight-card-delta--early{color:#2e7d32}.flight-card-delta--late{color:#dc3545}.flight-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid #eee}.flight-card-footer-left{display:flex;align-items:center;gap:8px}.flight-card-airline{font-size:13px;color:#666}.flight-card-notifications{display:flex;align-items:center;gap:8px}.flight-card-header-right{display:flex;align-items:center;gap:10px}.flight-card-registration{font-size:12px;color:#888;margin-left:8px;font-family:SF Mono,Menlo,monospace}.milestone-status-row{display:flex;gap:2px}.milestone-status-icon{display:flex;flex-direction:column;align-items:center;gap:1px;width:22px}.milestone-status-symbol{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:10px;border-radius:3px}.milestone-status-icon--done .milestone-status-symbol{background-color:#28a745;color:#fff}.milestone-status-icon--pending .milestone-status-symbol{background-color:#ffc107;color:#333}.milestone-status-icon--late .milestone-status-symbol{background-color:#dc3545;color:#fff;font-weight:700}.milestone-status-icon--future .milestone-status-symbol{background-color:#e9ecef;color:#999}.milestone-status-label{font-size:7px;font-weight:600;text-transform:uppercase;color:#888;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:22px}.ferry-unavailable-msg{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 20px;font-size:14px;font-weight:500;color:#64748b;background:#64748b0a;border:1px solid rgba(100,116,139,.12);border-radius:4px;margin:16px 0}.ferry-unavailable-msg__marker{font-size:11px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.5px;padding:3px 8px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);border-radius:3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hr-page{max-width:1400px}.hr-notice{padding:14px;background:#f1f5f9;border-radius:8px;color:#64748b;text-align:center;font-size:13px}.hr-content{display:grid;grid-template-columns:1fr 340px;gap:16px;margin-top:12px}.hr-main-panel{background:#fff;border-radius:10px;padding:14px;box-shadow:0 1px 3px #00000014}.hr-detail-panel{background:#fff;border-radius:10px;padding:14px;box-shadow:0 1px 3px #00000014;position:sticky;top:80px;max-height:calc(100vh - 100px);overflow-y:auto}.hr-filter{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.hr-filter-btn{padding:5px 10px;font-size:12px;font-weight:500;background:#f1f5f9;border:none;border-radius:5px;color:#64748b;cursor:pointer;transition:all .15s}.hr-filter-btn:hover{background:#e2e8f0;color:#334155}.hr-filter-btn--active{background:#06c;color:#fff}.hr-role-group{margin-bottom:14px}.hr-role-group:last-child{margin-bottom:0}.hr-role-title{font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.hr-role-agents{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px}.hr-agent-card{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s}.hr-agent-card:hover{background:#f0f7ff;border-color:#93c5fd}.hr-agent-card--selected{background:#dbeafe;border-color:#06c}.hr-agent-name{font-size:13px;font-weight:500;color:#1e293b}.hr-agent-badge{font-size:10px;font-weight:600;padding:2px 6px;background:#e5e7eb;color:#64748b;border-radius:8px}.hr-agent-badge--active{background:#dbeafe;color:#06c}.hr-agent-list{display:flex;flex-direction:column;gap:14px}.hr-section-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 10px}.hr-flight-list{display:flex;flex-direction:column;gap:6px}.hr-flight-card{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s}.hr-flight-card:hover{background:#f0f7ff;border-color:#93c5fd}.hr-flight-card--selected{background:#dbeafe;border-color:#06c}.hr-flight-card-main{display:flex;align-items:center;gap:8px}.hr-flight-card-number{font-size:13px;font-weight:600;color:#1e293b}.hr-flight-card-route{font-size:12px;color:#64748b}.hr-flight-card-meta{display:flex;align-items:center;gap:8px}.hr-flight-card-time{font-size:12px;font-weight:500;font-family:SF Mono,Menlo,monospace;color:#475569}.hr-flight-card-team{font-size:10px;font-weight:600;padding:2px 6px;background:#dbeafe;color:#06c;border-radius:8px}.hr-flight-card-team--empty{background:#fee2e2;color:#dc2626}.hr-detail-placeholder{display:flex;align-items:center;justify-content:center;min-height:150px;color:#64748b;font-size:13px;text-align:center}.hr-detail-title{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 4px}.hr-detail-title a{color:inherit;text-decoration:none}.hr-detail-title a:hover{color:#06c}.hr-detail-role{font-size:12px;font-weight:500;color:#64748b;margin-bottom:12px}.hr-detail-route{font-size:13px;color:#475569;margin-bottom:4px}.hr-detail-times{display:flex;gap:12px;font-size:12px;color:#64748b;margin-bottom:12px}.hr-detail-section{margin-bottom:12px}.hr-detail-section h4{font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;margin:0 0 8px}.hr-detail-empty{font-size:12px;color:#94a3b8;text-align:center;padding:12px;background:#f8fafc;border-radius:6px;margin:0}.hr-assignment-list{display:flex;flex-direction:column;gap:4px}.hr-assignment-item{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#f8fafc;border-radius:5px}.hr-assignment-flight{font-size:13px;font-weight:600;color:#06c;text-decoration:none}.hr-assignment-flight:hover{text-decoration:underline}.hr-assignment-route{font-size:11px;color:#64748b}.hr-assignment-time{font-size:11px;font-family:SF Mono,Menlo,monospace;color:#475569;margin-left:auto}.hr-unassign-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#94a3b8;font-size:16px;cursor:pointer;border-radius:4px;transition:all .15s}.hr-unassign-btn:hover{background:#fee2e2;color:#dc2626}.hr-available-flights{display:flex;flex-direction:column;gap:4px;max-height:250px;overflow-y:auto}.hr-available-flight{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;background:#f8fafc;border-radius:5px}.hr-flight-info{display:flex;align-items:center;gap:8px}.hr-flight-number{font-size:13px;font-weight:600;color:#1e293b}.hr-flight-route{font-size:11px;color:#64748b}.hr-flight-time{font-size:11px;font-family:SF Mono,Menlo,monospace;color:#475569}.hr-team-list{display:flex;flex-direction:column;gap:4px}.hr-team-member{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#f8fafc;border-radius:5px}.hr-team-name{font-size:13px;font-weight:500;color:#1e293b}.hr-team-role{font-size:11px;color:#64748b;margin-left:auto}.hr-assign-filter{margin-bottom:8px}.hr-assign-select{width:100%;padding:7px 10px;font-size:12px;border:1px solid #d1d5db;border-radius:5px;background:#fff}.hr-assign-select:focus{outline:none;border-color:#06c}.hr-assign-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.hr-assign-item{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;background:#f8fafc;border-radius:5px}.hr-assign-info{display:flex;flex-direction:column;gap:1px}.hr-assign-name{font-size:13px;font-weight:500;color:#1e293b}.hr-assign-role{font-size:10px;color:#64748b}.hr-agent-detail,.hr-flight-detail{display:flex;flex-direction:column}.hr-timeline-wrapper{margin-top:12px}@media(max-width:1024px){.hr-content{grid-template-columns:1fr}.hr-detail-panel{position:static;max-height:none}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1e293b,#0f172a);padding:20px}.login-container{width:100%;max-width:400px;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.login-header{padding:32px 32px 24px;text-align:center;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.login-logo{height:48px;width:auto;margin-bottom:12px}.login-title{font-size:24px;font-weight:700;color:#1e293b;margin:0 0 8px}.login-subtitle{font-size:14px;color:#64748b;margin:0}.login-form{padding:32px;display:flex;flex-direction:column;gap:20px}.login-field{display:flex;flex-direction:column;gap:6px}.login-label{font-size:13px;font-weight:600;color:#374151}.login-input{padding:12px 14px;font-size:15px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#1f2937;transition:border-color .15s,box-shadow .15s}.login-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc26}.login-input::placeholder{color:#9ca3af}.login-button{padding:14px 20px;font-size:15px;font-weight:600;color:#fff;background:#06c;border:none;border-radius:8px;cursor:pointer;transition:background-color .15s;margin-top:8px}.login-button:hover:not(:disabled){background:#0052a3}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-error{padding:12px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;font-weight:500}.login-footer{padding:0 32px 32px;text-align:center;font-size:13px;color:#6b7280;margin:0}.login-divider{display:flex;align-items:center;gap:12px;color:#9ca3af;font-size:12px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.login-link{color:#06c;text-decoration:none;font-weight:500}.login-link:hover{text-decoration:underline}.login-remember{display:flex;align-items:center;gap:8px}.login-remember input[type=checkbox]{width:16px;height:16px;cursor:pointer}.login-remember label{font-size:13px;color:#4b5563;cursor:pointer}.services-block{padding:16px 20px;background:#fff;border-radius:12px;border:1px solid #e5e7eb;margin-bottom:16px}.services-block-header{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#1e293b;margin-bottom:12px}.services-block-header svg{color:#10b981}.services-block-list{display:flex;flex-wrap:wrap;gap:8px}.services-block-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:20px}.services-block-chip svg{color:#10b981;flex-shrink:0}.ops-requests-page{max-width:1400px}.ops-requests-page h1{display:flex;align-items:center;gap:12px}.ops-pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;font-size:13px;font-weight:700;background:#dc3545;color:#fff;border-radius:12px}.ops-notice{padding:20px;background:#f1f5f9;border-radius:10px;color:#64748b;text-align:center;font-size:14px}.ops-flight-list{margin-top:20px}.ops-empty{padding:40px;text-align:center;color:#64748b;font-size:14px;background:#f8f9fa;border-radius:10px}.ops-table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #00000014}.ops-th{padding:12px 10px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;background:#f8fafc;border-bottom:2px solid #e2e8f0;white-space:nowrap}.ops-th--favorite{width:40px;min-width:40px}.ops-th--flight{min-width:100px}.ops-th--time{text-align:center;min-width:60px}.ops-flight-row{cursor:pointer;transition:background-color .15s}.ops-flight-row:hover{background:#f0f7ff}.ops-flight-row:not(:last-child){border-bottom:1px solid #e9ecef}.ops-flight-row--pending{background:#fffbeb}.ops-flight-row--pending:hover{background:#fef3c7}.ops-flight-row--favorite{background:#fffbeb}.ops-flight-row td{padding:12px 10px;font-size:13px;vertical-align:middle}.ops-cell--favorite{text-align:center;padding:10px 6px}.ops-flight-info{display:flex;align-items:center;gap:8px}.ops-flight-number{font-size:14px;font-weight:600;color:#1e293b;text-decoration:none}.ops-flight-number:hover{color:#06c}.ops-flight-cell{font-weight:500}.ops-request-indicators{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.ops-request-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px}.ops-request-indicator svg{flex-shrink:0}.ops-request-indicator--pending{background:#fef3c7;color:#b45309}.ops-request-indicator--ed{background:#f3e8ff;color:#7c3aed}.ops-request-done{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#10b981}.ops-request-done svg{flex-shrink:0}.ops-request-type-icon{flex-shrink:0;margin-right:6px;color:#9ca3af}.ops-flight-expanded{background:#f8fafc}.ops-flight-expanded td{padding:0}.ops-expanded-content{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.ops-request-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.ops-request-item--ed{border-left:3px solid #7c3aed}.ops-request-info{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1}.ops-request-type{display:inline-flex;align-items:center;font-weight:600;color:#1e293b}.ops-request-time{font-size:12px;color:#64748b}.ops-request-reason{font-size:12px;color:#475569;font-style:italic}.ops-request-notes{font-size:12px;color:#64748b;padding:4px 8px;background:#f1f5f9;border-radius:4px}.ops-request-actions{display:flex;gap:8px}.ops-request-action-input{display:flex;align-items:center;gap:8px}.ops-request-action-input input{padding:8px 12px;font-size:13px;border:1px solid #d1d5db;border-radius:6px;min-width:200px}.ops-request-action-input input:focus{outline:none;border-color:#06c}.service-request-list{display:flex;flex-direction:column;gap:12px}.service-request-tracker{padding:20px;background:#fff;border-radius:12px;border:1px solid #e5e7eb}.service-request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px;flex-wrap:wrap}.service-request-filters{display:flex;gap:8px;flex-wrap:wrap}.service-request-filter{padding:8px 16px;font-size:13px;font-weight:500;color:#64748b;background:#f1f5f9;border:1px solid transparent;border-radius:20px;cursor:pointer;transition:all .15s}.service-request-filter:hover{background:#e2e8f0;color:#475569}.service-request-filter--active{background:#06c;color:#fff;border-color:#06c}.service-request-filter--active:hover{background:#0052a3}.service-request-empty{text-align:center;padding:48px 20px;color:#94a3b8;font-size:14px;background:#f8fafc;border-radius:10px;border:2px dashed #e2e8f0}.service-request-tracker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.service-request-tracker-title{font-size:15px;font-weight:600;color:#1e293b}.service-request-tracker-status{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.service-request-card{padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;transition:box-shadow .15s}.service-request-card:hover{box-shadow:0 4px 12px #00000014}.service-request-card--pending{border-left:3px solid #f59e0b}.service-request-card--accepted{border-left:3px solid #10b981}.service-request-card--refused{border-left:3px solid #ef4444}.service-request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.service-request-type{font-size:15px;font-weight:600;color:#1e293b}.service-request-meta{font-size:12px;color:#64748b;margin-top:4px}.service-request-body{font-size:13px;color:#475569;line-height:1.5}.service-request-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb}.service-request-modal{max-width:500px}.service-request-modal-form{display:flex;flex-direction:column;gap:16px}.service-request-modal-field{display:flex;flex-direction:column;gap:6px}.service-request-modal-label{font-size:13px;font-weight:600;color:#374151}.service-request-modal-select,.service-request-modal-textarea{padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;background:#fff}.service-request-modal-select:focus,.service-request-modal-textarea:focus{outline:none;border-color:#06c}.service-request-timeline{display:flex;flex-direction:column;gap:0;padding-left:16px;border-left:2px solid #e5e7eb}.service-request-timeline-item{position:relative;padding-left:20px;padding-bottom:16px}.service-request-timeline-item:before{content:"";position:absolute;left:-9px;top:4px;width:16px;height:16px;background:#fff;border:2px solid #e5e7eb;border-radius:50%}.service-request-timeline-item--done:before{background:#10b981;border-color:#10b981}.service-request-timeline-item--current:before{background:#f59e0b;border-color:#f59e0b}.service-request-timeline-time{font-size:12px;font-weight:600;color:#64748b}.service-request-timeline-label{font-size:13px;color:#1e293b;margin-top:2px}.service-request-timeline-by{font-size:11px;color:#94a3b8;margin-top:2px}.ed-request-tab{padding:16px}.ed-current-etd{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid #ddd6fe}.ed-current-etd-label{font-size:11px;font-weight:700;text-transform:uppercase;color:#6b21a8;margin-bottom:6px;letter-spacing:.5px}.ed-current-etd-value{font-size:32px;font-weight:700;font-family:SF Mono,Menlo,monospace;color:#7c3aed;display:flex;align-items:center;gap:12px}.ed-current-etd-badge{font-size:11px;font-weight:600;padding:4px 10px;background:#7c3aed;color:#fff;border-radius:4px}.ed-current-etd-std{font-size:13px;color:#6b7280;margin-top:8px}.ed-new-btn{width:100%;margin-bottom:20px;padding:12px 20px;font-weight:600}.ed-form{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000d}.ed-form-title{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px}.ed-form-group{margin-bottom:16px}.ed-form-label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:8px}.ed-form-time-inputs{display:flex;align-items:center;gap:8px}.ed-form-time-input{width:80px;padding:12px;text-align:center;font-size:20px;font-weight:600;font-family:SF Mono,Menlo,monospace;border:2px solid #e2e8f0;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}.ed-form-time-input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.ed-form-time-separator{font-size:24px;font-weight:600;color:#94a3b8}.ed-form-select{width:100%;padding:12px;font-size:14px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s}.ed-form-select:focus{outline:none;border-color:#7c3aed}.ed-form-textarea{width:100%;padding:12px;font-size:14px;border:2px solid #e2e8f0;border-radius:8px;resize:vertical;min-height:80px;font-family:inherit;transition:border-color .15s}.ed-form-textarea:focus{outline:none;border-color:#7c3aed}.ed-form-actions{display:flex;gap:12px;margin-top:20px}.ed-form-fields{display:flex;gap:12px;align-items:flex-end}.ed-form-field{display:flex;flex-direction:column;gap:4px}.ed-form-field--grow{flex:1;min-width:0}.ed-form-field--notes{display:flex;flex-direction:column;gap:4px}.ed-form-field-label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b}.ed-form-optional{font-weight:400;text-transform:none;color:#94a3b8}.ed-form-time-native{padding:8px 12px;font-size:16px;font-weight:500;font-family:inherit;border:2px solid #e2e8f0;border-radius:8px;background:#fff;color:#1e293b;transition:border-color .15s}.ed-form-time-native:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.ed-form-notes-input{width:100%;padding:8px 12px;font-size:14px;font-family:inherit;border:2px solid #e2e8f0;border-radius:8px;background:#fff;color:#1e293b;transition:border-color .15s}.ed-form-notes-input:focus{outline:none;border-color:#7c3aed}.ed-form-notes-input::placeholder{color:#94a3b8}.ed-form-cancel{font-size:14px;font-weight:500;color:#dc2626;background:none;border:none;cursor:pointer}.ed-request-list{background:#fff;border-radius:12px;padding:16px;border:1px solid #e5e7eb}.ed-request-list-title{font-size:14px;font-weight:600;color:#64748b;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.ed-request-empty{text-align:center;padding:32px 20px;color:#94a3b8;font-size:14px}.ed-request-card{padding:16px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;border-left:4px solid #7c3aed;margin-bottom:12px}.ed-request-card:last-child{margin-bottom:0}.ed-request-card--pending{border-left-color:#f59e0b}.ed-request-card--validated{border-left-color:#16a34a}.ed-request-card--refused{border-left-color:#dc2626}.ed-request-card--standby{border-left-color:#64748b}.ed-request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ed-request-title{font-size:15px;font-weight:600;color:#1e293b}.ed-request-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;background:#f3e8ff;color:#7c3aed;border-radius:4px}.ed-request-times{display:flex;gap:24px;margin-bottom:12px}.ed-request-time-item{display:flex;flex-direction:column;gap:2px}.ed-request-time-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b}.ed-request-time-value{font-size:15px;font-weight:600;font-family:SF Mono,Menlo,monospace;color:#1e293b}.ed-request-time-value--ed{color:#7c3aed}.ed-request-reason{font-size:13px;color:#475569;padding:8px 12px;background:#f8fafc;border-radius:6px}.ed-request-actions{display:flex;gap:8px;margin-top:16px}.ed-request-time{font-size:20px;font-weight:700;font-family:SF Mono,Menlo,monospace;color:#7c3aed}.ed-request-status{font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;text-transform:uppercase}.ed-request-body{margin-top:12px}.ed-request-reason-label{font-weight:600;margin-right:4px}.ed-request-notes{font-size:13px;color:#64748b;margin-top:8px;padding:10px 12px;background:#f8fafc;border-radius:6px;font-style:italic}.ed-request-meta{font-size:12px;color:#94a3b8;margin-top:8px}.ed-request-refusal{font-size:13px;color:#dc2626;margin-top:8px;padding:10px 12px;background:#fef2f2;border-radius:6px}.ed-request-cancel{margin-top:12px}.ed-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.ed-modal{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:400px;box-shadow:0 10px 40px #0003}.ed-modal-title{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 16px}.ed-modal-actions{display:flex;gap:12px;margin-top:20px}.settings-page{max-width:none}.settings-page h2{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 12px}.settings-content{margin-top:12px}.settings-tab-content{background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 3px #00000014}.admin-section{margin-bottom:20px}.admin-section h2{font-size:15px;font-weight:600;color:#1e293b;margin:0 0 10px}.admin-section h3{font-size:13px;font-weight:600;color:#374151;margin:0 0 8px}.admin-tabs{display:flex;gap:3px;padding:3px;background:#f1f5f9;border-radius:8px;margin-bottom:12px}.admin-tab{padding:6px 12px;font-size:12px;font-weight:500;background:transparent;border:none;border-radius:5px;color:#64748b;cursor:pointer;transition:all .15s}.admin-tab:hover{background:#ffffff80;color:#334155}.admin-tab--active{background:#fff;color:#1e293b;box-shadow:0 1px 2px #0000001a}.admin-form{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.admin-form-row{display:flex;gap:12px;flex-wrap:wrap}.admin-form-row label{display:flex;flex-direction:column;gap:4px;flex:1;min-width:160px;font-size:12px;font-weight:500;color:#374151}.admin-form-row input,.admin-form-row select,.admin-form-row textarea{padding:7px 10px;font-size:13px;border:1px solid #d1d5db;border-radius:5px;background:#fff;color:#1f2937;transition:border-color .15s}.admin-form-row input:focus,.admin-form-row select:focus,.admin-form-row textarea:focus{outline:none;border-color:#06c}.admin-form-row input:disabled,.admin-form-row select:disabled{background:#f3f4f6;color:#6b7280}.admin-table th{text-align:left;padding:12px 10px;font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;background:#f8fafc;border-bottom:2px solid #e2e8f0}.admin-table td{padding:12px 10px;border-bottom:1px solid #e5e7eb;color:#1f2937;vertical-align:middle}.admin-table tr:hover{background:#f8fafc}.admin-row--warning{background:#fffbeb}.admin-row--warning:hover{background:#fef3c7}.admin-cell--logo{width:50px;text-align:center}.admin-cell--code{width:70px;font-weight:600}.admin-cell--status{width:140px}.admin-cell--actions{width:120px;text-align:right}.admin-cell--actions .btn{margin-left:4px}.admin-stats{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px}.admin-stat{flex:1;min-width:120px;padding:16px;background:#f8fafc;border-radius:10px;text-align:center}.admin-stat-value{display:block;font-size:28px;font-weight:700;color:#1e293b;line-height:1.2}.admin-stat-label{display:block;font-size:12px;font-weight:500;color:#64748b;margin-top:4px}.admin-badge{display:inline-flex;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;border-radius:4px;margin-right:4px}.admin-badge--success{background:#d1fae5;color:#047857}.admin-badge--warning{background:#fef3c7;color:#b45309}.admin-badge--danger{background:#fee2e2;color:#dc2626}.admin-badge--info{background:#dbeafe;color:#1d4ed8}.admin-role-badge{display:inline-block;padding:2px 6px;font-size:10px;font-weight:600;background:#e5e7eb;color:#374151;border-radius:4px;margin-right:4px}.admin-role-tag{display:inline-block;padding:4px 8px;font-size:11px;font-weight:600;border-radius:4px;background:#e5e7eb;color:#374151}.users-panel{display:flex;flex-direction:column;gap:16px;width:100%}.users-toast-container{position:fixed;bottom:24px;right:24px;z-index:900;display:flex;flex-direction:column;gap:8px;animation:users-toast-in .25s ease-out}.users-toast{padding:10px 16px;border-radius:8px;font-size:12px;font-weight:500;line-height:1.4;box-shadow:0 4px 12px #0000001f;min-width:200px}.users-toast--error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.users-toast--success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}@keyframes users-toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.users-hero-action{display:flex;justify-content:center;padding:8px 0 4px}.users-create-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;font-size:13px;font-weight:600;background:#0f172a;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .15s,box-shadow .15s;box-shadow:0 1px 3px #0000001f}.users-create-btn:hover{background:#1e293b;box-shadow:0 2px 6px #0000002e}.users-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:80px;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:users-fade-in .15s ease}@keyframes users-fade-in{0%{opacity:0}to{opacity:1}}.users-modal{width:100%;max-width:560px;background:#fff;border-radius:12px;box-shadow:0 20px 60px #00000026,0 0 0 1px #0000000d;animation:users-slide-in .2s ease;overflow:hidden}@keyframes users-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.users-modal-header{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid #e2e8f0}.users-modal-title{font-size:15px;font-weight:600;color:#1e293b}.users-modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin-left:auto;background:transparent;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;transition:all .12s}.users-modal-close:hover{background:#f1f5f9;color:#475569}.users-station-badge{font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;background:#e0f2fe;color:#0369a1;border-radius:3px}.users-form{padding:20px}.users-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.users-field{display:flex;flex-direction:column;gap:4px}.users-field-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.users-field-hint{font-weight:400;text-transform:none;letter-spacing:0;color:#94a3b8;font-size:10px}.users-field input,.users-field select{padding:7px 10px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1e293b;transition:border-color .12s}.users-field input:focus,.users-field select:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f614}.users-field input::placeholder{color:#cbd5e1}.users-form-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #f1f5f9}.users-cancel-btn{padding:8px 16px;font-size:12px;font-weight:500;color:#64748b;background:transparent;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .12s}.users-cancel-btn:hover{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.users-submit-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;font-size:12px;font-weight:600;background:#0f172a;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .12s}.users-submit-btn:hover:not(:disabled){background:#1e293b}.users-submit-btn:disabled{opacity:.5;cursor:not-allowed}.users-list-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.users-list-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.users-list-title{font-size:13px;font-weight:600;color:#1e293b}.users-list-count{font-size:11px;font-weight:600;padding:1px 7px;background:#e2e8f0;color:#475569;border-radius:10px}.users-empty{padding:32px 16px;text-align:center;font-size:13px;color:#94a3b8}.users-table-wrap{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{text-align:left;padding:6px 16px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#94a3b8;border-bottom:1px solid #e2e8f0;white-space:nowrap}.users-th-actions{text-align:right!important}.users-table td{padding:7px 16px;font-size:13px;color:#334155;border-bottom:1px solid #f1f5f9;vertical-align:middle;white-space:nowrap}.users-table tbody tr{transition:background .1s}.users-table tbody tr:hover{background:#f8fafc}.users-table tbody tr:last-child td{border-bottom:none}.users-row--inactive{opacity:.55}.users-row--inactive:hover{opacity:.75}.users-cell-user{display:flex;flex-direction:column;gap:1px}.users-cell-email{font-size:11px;color:#94a3b8}.users-cell-name{font-size:13px;font-weight:500;color:#1e293b}.users-cell-date{font-size:12px;font-family:JetBrains Mono,SF Mono,Menlo,monospace;color:#64748b;letter-spacing:-.3px}.users-role{display:inline-block;padding:3px 8px;font-size:10px;font-weight:600;border-radius:3px;letter-spacing:.2px;background:#f1f5f9;color:#475569}.users-role--platform_admin{background:#ede9fe;color:#6d28d9}.users-role--station_admin{background:#dbeafe;color:#1d4ed8}.users-role--supervisor_dispatcher_ops,.users-role--supervisor_passenger,.users-role--supervisor_ramp{background:#ecfdf5;color:#047857}.users-role--dispatcher,.users-role--operations{background:#f1f5f9;color:#475569}.users-role--ramp{background:#fef3c7;color:#92400e}.users-role--passenger{background:#e0f2fe;color:#0369a1}.users-status{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;text-transform:capitalize;color:#64748b}.users-status:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.users-status--active{color:#047857}.users-status--active:before{background:#22c55e}.users-status--denied{color:#b91c1c}.users-status--denied:before{background:#ef4444}.users-status--deleted{color:#6b7280}.users-status--deleted:before{background:#9ca3af}.users-cell-actions{text-align:right;white-space:nowrap}.users-action{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;border:1px solid transparent;border-radius:5px;background:transparent;cursor:pointer;transition:all .12s;margin-left:4px}.users-action span{line-height:1}.users-action--deny{color:#b45309}.users-action--deny:hover{background:#fffbeb;border-color:#fde68a;color:#92400e}.users-action--delete{color:#94a3b8}.users-action--delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.users-action--activate{color:#059669}.users-action--activate:hover{background:#f0fdf4;border-color:#bbf7d0;color:#047857}.users-filters{display:flex;gap:8px;margin-left:auto}.users-filter-select{padding:4px 8px;font-size:11px;font-weight:500;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:5px;cursor:pointer;transition:border-color .12s}.users-filter-select:focus{outline:none;border-color:#93c5fd}.users-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s}.users-th-sortable:hover{color:#334155}.users-sort-icon{display:inline-block;vertical-align:middle;margin-left:3px;color:#475569}.users-sort-icon--idle{color:#cbd5e1}.users-inline-edit{display:inline-flex;align-items:center;gap:3px}.users-inline-input{padding:3px 6px;font-size:12px;font-family:JetBrains Mono,SF Mono,Menlo,monospace;border:1px solid #93c5fd;border-radius:4px;background:#f0f9ff;color:#1e293b;width:120px}.users-inline-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.users-inline-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;cursor:pointer;transition:background .1s;padding:0}.users-inline-btn--ok{background:#ecfdf5;color:#059669}.users-inline-btn--ok:hover{background:#d1fae5}.users-inline-btn--cancel{background:#f1f5f9;color:#94a3b8}.users-inline-btn--cancel:hover{background:#fee2e2;color:#dc2626}.users-inline-edit--name{gap:3px}.users-inline-input--name{width:80px;padding:2px 6px;font-size:11px;border:1px solid #93c5fd;border-radius:4px;background:#f0f9ff;color:#1e293b}.users-inline-input--name:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.users-action--edit{color:#475569}.users-action--edit:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.users-cell-date-editable{display:inline-flex;align-items:center;gap:4px}.users-edit-hint-icon{color:#cbd5e1;opacity:0;transition:opacity .12s;flex-shrink:0}.users-cell-date-editable--clickable{cursor:pointer;border-radius:3px;padding:2px 4px;margin:-2px -4px;transition:background .12s}.users-cell-date-editable--clickable:hover{background:#f1f5f9}.users-cell-date-editable--clickable:hover .users-edit-hint-icon{opacity:1}@media(max-width:700px){.users-form-grid{grid-template-columns:1fr}.users-list-header{flex-wrap:wrap;gap:8px}.users-filters{width:100%}.users-filter-select{flex:1}}.admin-role-tag--platform_admin{background:#7c3aed;color:#fff}.admin-role-tag--station_admin{background:#06c;color:#fff}.admin-role-tag--supervisor_dispatcher_ops,.admin-role-tag--supervisor_passenger,.admin-role-tag--supervisor_ramp{background:#059669;color:#fff}.admin-flight-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto;margin-bottom:16px}.admin-flight-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s}.admin-flight-row:hover{border-color:#06c;background:#f0f7ff}.admin-flight-row--selected{border-color:#06c;background:#dbeafe}.admin-flight-row--manual{border-left:3px solid #8b5cf6}.admin-flight-info{display:flex;align-items:center;gap:12px}.admin-flight-number{font-size:14px;font-weight:600;color:#1e293b;min-width:80px}.admin-flight-airline{font-size:12px;color:#64748b;min-width:100px}.admin-flight-aircraft{font-size:11px;color:#94a3b8;font-family:SF Mono,monospace}.admin-flight-tag{padding:2px 6px;font-size:9px;font-weight:600;text-transform:uppercase;background:#8b5cf6;color:#fff;border-radius:3px}.admin-flight-tag--override{background:#f59e0b}.admin-flight-times{display:flex;gap:16px;font-size:11px;color:#64748b;font-family:SF Mono,monospace}.admin-flight-detail{padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-top:12px}.admin-flight-detail h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px}.admin-time-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.admin-time-field{display:flex;flex-direction:column;gap:4px}.admin-time-field label{font-size:11px;font-weight:500;color:#64748b}.admin-time-field input{padding:6px 8px;font-size:12px;border:1px solid #d1d5db;border-radius:5px}.admin-time-field input:focus{outline:none;border-color:#06c}.admin-notice{padding:16px;background:#f1f5f9;border-radius:8px;color:#475569;font-size:14px;text-align:center}.admin-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;font-weight:500;margin-bottom:16px}.admin-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;color:#047857;font-size:13px;font-weight:500;margin-bottom:16px}.admin-warning{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#b45309;font-size:13px;font-weight:500;margin-bottom:16px}.admin-info{font-size:13px;color:#64748b;margin-bottom:16px;line-height:1.5}.admin-station-info{font-size:14px;color:#475569;margin-bottom:20px;padding:12px 16px;background:#f1f5f9;border-radius:8px}.admin-result{padding:20px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0;margin-top:16px}.admin-history-section{margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.platform-admin-page{max-width:1200px}.platform-admin-page h1{font-size:20px;font-weight:700;color:#1e293b;margin:0 0 14px}.station-admin-page{max-width:1000px}.airline-config-page{max-width:1100px}.airline-config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.airline-config-card{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:box-shadow .15s}.airline-config-card:hover{box-shadow:0 4px 12px #00000014}.airline-config-card--unknown{border-color:#fcd34d;background:#fffbeb}.airline-config-info{flex:1;min-width:0}.airline-config-code{font-size:16px;font-weight:700;color:#1e293b}.airline-config-name{font-size:13px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airline-config-status{display:flex;align-items:center;gap:6px}.airline-config-toggle{display:flex;align-items:center;gap:8px}.airline-config-switch{position:relative;width:44px;height:24px;background:#d1d5db;border-radius:12px;cursor:pointer;transition:background-color .2s}.airline-config-switch--active{background:#10b981}.airline-config-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.airline-config-switch--active:after{transform:translate(20px)}.airline-config-notice{padding:12px;background:#f1f5f9;border-radius:8px;color:#64748b;text-align:center;font-size:13px}.airline-config-warning{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fefce8;border-left:3px solid #f59e0b;border-radius:0 6px 6px 0;margin-bottom:10px}.airline-config-warning-badge{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:#f59e0b;color:#fff;border-radius:50%;font-weight:700;font-size:9px;flex-shrink:0}.airline-config-warning-text{font-size:11px;color:#92400e;line-height:1.3}.airline-config-warning-hint{color:#b45309;font-size:10px}.airline-config-selector{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:6px 12px;background:#f8fafc;border-radius:6px}.airline-config-selector label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.airline-config-select{padding:5px 10px;height:32px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;min-width:180px;transition:border-color .15s}.airline-config-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.airline-config-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 12px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:12px}.airline-config-actions--pending{background:#fffbeb;border-color:#fcd34d}.airline-config-actions-hint{font-size:12px;color:#64748b;margin-right:auto}.airline-config-actions-hint--saved{color:#16a34a;font-weight:500}.airline-config-unknown-notice{padding:10px 12px;background:#dbeafe;border:1px solid #93c5fd;border-radius:8px;margin-bottom:12px;color:#1e40af;font-size:13px}.airline-config-unknown-notice p{margin:4px 0 0;font-size:12px;color:#3b82f6}.airline-config-subtabs{display:flex;gap:0;padding:0;background:transparent;border-bottom:1px solid #e2e8f0;margin-bottom:12px}.airline-config-subtab{padding:6px 14px;font-size:13px;font-weight:500;background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:#64748b;cursor:pointer;transition:all .15s;white-space:nowrap;margin-bottom:-1px}.airline-config-subtab:hover{background:transparent;color:#334155}.airline-config-subtab--active{background:transparent;color:#3b82f6;font-weight:600;border-bottom-color:#3b82f6;box-shadow:none}.airline-config-tab-content{background:#fff;border-radius:8px;padding:14px;box-shadow:0 1px 3px #0000000f;border:1px solid #e2e8f0}.airline-config-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.airline-config-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.airline-config-section h3{font-size:13px;font-weight:600;color:#334155;margin:0 0 8px}.airline-config-description{font-size:11px;color:#94a3b8;margin:0 0 8px;line-height:1.4}.airline-config-identity{display:flex;align-items:flex-start;gap:16px}.airline-config-field{display:flex;flex-direction:column;gap:4px}.airline-config-field label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.airline-config-input{padding:5px 10px;height:32px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;width:80px;transition:border-color .15s}.airline-config-input--wide{width:220px}.airline-config-input--required{border-color:#f59e0b;background:#fffbeb}.airline-config-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.airline-config-hint{font-size:10px;color:#94a3b8}.airline-config-logo{flex-shrink:0}.airline-config-logo-preview{width:48px;height:48px;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f8fafc}.airline-config-logo-image{max-width:100%;max-height:100%;object-fit:contain}.airline-config-logo-placeholder{font-size:16px;font-weight:700;color:#94a3b8}.airline-config-weights,.airline-config-services{display:flex;flex-wrap:wrap;gap:8px}.airline-config-service{display:flex;flex-direction:column;gap:3px;min-width:110px;flex:1}.airline-config-service label{font-size:11px;font-weight:600;color:#374151}.airline-config-service .airline-config-select{min-width:auto}.airline-config-checkbox{display:flex;flex-direction:column;gap:4px}.airline-config-checkbox label{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151;cursor:pointer}.airline-config-checkbox input[type=checkbox]{width:16px;height:16px}.airline-config-ttm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.ttm-config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}@media(max-width:600px){.ttm-config-grid{grid-template-columns:1fr}}.ttm-config-card{display:flex;flex-direction:column;padding:10px 14px;background:#fafbfc;border:1px solid #e2e8f0;border-radius:8px}.ttm-config-card-header{margin-bottom:6px}.ttm-config-card-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#475569}.ttm-config-card-badge{font-size:8px;font-weight:600;text-transform:uppercase;padding:2px 5px;background:#a78bfa;color:#fff;border-radius:3px;margin-left:6px}.ttm-config-card-value{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ttm-config-computed-value{font-size:16px;font-weight:700;color:#6d28d9}.ttm-config-card-input{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ttm-config-input{width:70px;padding:5px 10px;height:32px;font-size:16px;font-weight:600;text-align:center;border:1px solid #e2e8f0;border-radius:6px;background:#fff;transition:border-color .15s}.ttm-config-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.ttm-config-input--required{border-color:#f59e0b;background:#fffbeb}.ttm-config-unit{font-size:12px;font-weight:500;color:#64748b}.ttm-config-card-hint{font-size:10px;color:#64748b;line-height:1.3;margin:0}.ttm-config-logic{padding:8px 10px;background:#f8fafc;border-radius:6px;font-size:11px;color:#94a3b8;line-height:1.4;border:1px solid #f1f5f9}.ttm-config-logic strong{color:#64748b}.ttm-config-logic em{font-style:normal;font-weight:500;color:#64748b}.ttm-config-logic-list{margin:6px 0 0;padding-left:16px;list-style:none}.ttm-config-logic-list li{position:relative;padding-left:12px;margin-bottom:3px}.ttm-config-logic-list li:before{content:"→";position:absolute;left:0;color:#94a3b8}.ttm-config-logic-list li em{font-weight:600;color:#374151}.airline-config-ttm-summary{margin-top:8px;padding-top:8px;border-top:1px solid #f1f5f9}.airline-config-ttm-summary h4{font-size:12px;font-weight:600;color:#374151;margin:0 0 8px}.airline-config-ttm-table{width:100%;border-collapse:collapse;font-size:12px}.airline-config-ttm-table th{padding:5px 10px;text-align:left;font-weight:600;color:#64748b;background:#f8fafc;border-bottom:1px solid #e5e7eb;font-size:10px;text-transform:uppercase}.airline-config-ttm-table td{padding:4px 10px;border-bottom:1px solid #f1f5f9;color:#374151;height:28px}.airline-config-ttm-table tr.selected{background:#dbeafe}.airline-config-ttm-table tr.selected td{color:#1e40af;font-weight:500}.settings-form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.settings-section{margin-bottom:24px}.settings-section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1e293b;margin:0 0 8px}.settings-section-description{font-size:13px;color:#64748b;margin:0 0 16px;line-height:1.5}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;color:#374151;margin-bottom:6px}.form-group label strong{font-weight:600}.form-hint{display:block;font-size:12px;color:#94a3b8;margin-top:4px}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px}.input-with-unit input:focus{outline:none;border-color:#06c}.input-with-unit .unit{font-size:13px;color:#64748b}.form-actions{display:flex;gap:8px;margin-top:20px}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:#64748b;font-size:14px}.loading-state .animate-spin{animation:spin 1s linear infinite}.alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:16px}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.btn-primary{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:600;background:#06c;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:#0052a3}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:600;background:#e5e7eb;color:#374151;border:none;border-radius:8px;cursor:pointer;transition:background .15s}.btn-secondary:hover:not(:disabled){background:#d1d5db}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn--icon{padding:6px;min-width:auto}.btn--icon svg{display:block}.profile-page{max-width:800px}.profile-content{display:flex;flex-direction:column;gap:24px}.profile-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.profile-card-title{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 20px}.profile-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.profile-info-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#f8fafc;border-radius:8px}.profile-info-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border-radius:8px;color:#64748b;flex-shrink:0}.profile-info-content{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-info-label{font-size:12px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.profile-info-value{font-size:15px;font-weight:500;color:#1e293b;word-break:break-word}.segment-config{display:flex;flex-direction:column;gap:8px}.segment-config-header{display:flex;align-items:center;gap:10px;padding:6px 12px;height:32px;background:linear-gradient(90deg,#f0fdf4,#f0f9ff);border:1px solid #bbf7d0;border-radius:6px;flex-wrap:nowrap;font-size:12px}.segment-config-ttm-ref{display:flex;align-items:center;gap:6px}.segment-config-ttm-label{font-size:11px;font-weight:500;color:#166534;text-transform:uppercase}.segment-config-ttm-value{font-size:13px;font-weight:700;color:#166534}.segment-config-arrow{font-size:12px;color:#94a3b8}.segment-config-critical{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#fff;border-radius:6px}.segment-config-critical--aligned{border:1px solid #bbf7d0}.segment-config-critical--misaligned{border:1px solid #fde68a;background:#fffbeb}.segment-config-critical-label{font-size:11px;color:#64748b}.segment-config-critical-value{font-size:13px;font-weight:600;color:#1e293b}.segment-config-status{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.segment-config-status--ok{background:#d1fae5;color:#059669}.segment-config-status--warning{background:#fef3c7;color:#b45309}.segment-config-align{margin-left:auto}.segment-config-actions{display:flex;align-items:center;gap:8px}.segment-config-reset{flex-shrink:0}.segment-config-legend{display:flex;gap:12px;padding:4px 12px;background:#f8fafc;border-radius:6px}.segment-config-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b}.segment-config-legend-dot{width:10px;height:10px;border-radius:2px}.segment-config-legend-dot--expected{background:#22c55e}.segment-config-legend-dot--warning{background:#f59e0b}.segment-config-legend-dot--critical{background:#ef4444}.segment-group{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.segment-group--shared{border-color:#94a3b8}.segment-group--pax{border-color:#60a5fa}.segment-group--baggage{border-color:#a78bfa}.segment-group-header{display:flex;align-items:center;gap:8px;width:100%;padding:6px 12px;background:#f8fafc;border:none;cursor:pointer;text-align:left;transition:background .15s}.segment-group-header:hover,.segment-group--shared .segment-group-header{background:#f1f5f9}.segment-group--pax .segment-group-header{background:#eff6ff}.segment-group--baggage .segment-group-header{background:#f5f3ff}.segment-group-toggle{display:flex;align-items:center;justify-content:center;color:#64748b}.segment-group-info{flex:1;display:flex;flex-direction:column;gap:1px}.segment-group-title{font-size:12px;font-weight:600;color:#1e293b;margin:0}.segment-group-desc{font-size:10px;color:#64748b}.segment-group-total{font-size:12px;font-weight:600;color:#06c;background:#dbeafe;padding:3px 8px;border-radius:5px}.segment-config-table{display:flex;flex-direction:column}.segment-config-row{display:grid;grid-template-columns:1fr 90px 90px 90px;gap:6px;padding:4px 12px;align-items:center;border-top:1px solid #f1f5f9;height:36px}.segment-config-row--header{background:#f8fafc;font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b;letter-spacing:.5px;padding:4px 12px;height:28px}.segment-config-row:hover:not(.segment-config-row--header){background:#fafafa}.segment-config-cell{display:flex;align-items:center;gap:4px}.segment-config-cell--name{display:flex;flex-direction:row;align-items:baseline;gap:6px}.segment-name{font-size:12px;font-weight:500;color:#374151}.segment-milestones{font-size:10px;color:#cbd5e1;font-family:SF Mono,Monaco,Consolas,monospace}.segment-config-cell--input{justify-content:center}.segment-config-input{width:50px;height:28px;padding:2px 4px;font-size:12px;font-weight:500;text-align:center;border:1px solid #e2e8f0;border-radius:4px;background:#fff}.segment-config-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.segment-config-input:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.segment-config-input--warning{border-color:#fbbf24}.segment-config-input--warning:focus{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b26}.segment-config-input--critical{border-color:#f87171}.segment-config-input--critical:focus{border-color:#ef4444;box-shadow:0 0 0 2px #ef444426}.segment-config-unit{font-size:11px;color:#94a3b8}.segment-config-plus{font-size:11px;font-weight:500;color:#94a3b8}.segment-validation{margin-top:8px;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.segment-validation-title{font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:10px;letter-spacing:.3px}.segment-validation-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}@media(max-width:700px){.segment-validation-grid{grid-template-columns:repeat(2,1fr)}}.segment-validation-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.segment-validation-item--highlight{background:#dbeafe;border-color:#93c5fd}.segment-validation-item--reference{background:#f0fdf4;border-color:#bbf7d0}.segment-validation-label{font-size:10px;font-weight:500;color:#64748b;text-transform:uppercase}.segment-validation-item--highlight .segment-validation-label{color:#1d4ed8}.segment-validation-item--reference .segment-validation-label{color:#166534}.segment-validation-value{font-size:14px;font-weight:700;color:#1e293b}.segment-validation-item--highlight .segment-validation-value{color:#1e40af}.segment-validation-item--reference .segment-validation-value{color:#166534}.segment-validation-detail{font-size:9px;color:#94a3b8;font-family:SF Mono,Monaco,Consolas,monospace}.segment-validation-note{font-size:10px;color:#64748b;line-height:1.4;padding:8px 10px;background:#fef3c7;border-radius:4px}.segment-validation-note strong{color:#92400e}@media(max-width:700px){.segment-config-row{grid-template-columns:1fr;gap:8px}.segment-config-row--header{display:none}.segment-config-cell--name{font-weight:600;padding-bottom:4px;border-bottom:1px solid #e5e7eb}.segment-config-cell--input{justify-content:flex-start}.segment-config-cell--input:before{content:attr(data-label);font-size:11px;color:#64748b;margin-right:8px}.segment-config-legend{flex-wrap:wrap;gap:12px}}.config-status-panel{display:flex;align-items:center;gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 14px;margin-bottom:12px}.config-status-header{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.config-status-title{display:flex;align-items:center;gap:8px}.config-status-airline{font-size:14px;font-weight:600;color:#1e293b}.config-status-badge{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:500}.config-status-badge--saved{color:#16a34a}.config-status-badge--saved svg{color:#22c55e}.config-status-badge--new{color:#d97706}.config-status-badge--new svg{color:#f59e0b}.config-status-actions{display:flex;align-items:center;gap:6px}.config-checklist{display:flex;align-items:center;gap:6px;border-left:1px solid #e2e8f0;padding-left:12px;margin-left:4px}.config-checklist-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#94a3b8}.config-checklist-item svg{width:12px;height:12px}.config-checklist-item--done{color:#64748b}.config-checklist-item--done svg{color:#22c55e}.config-checklist-item--info{color:#64748b}.config-checklist-item--info svg{color:#3b82f6}.config-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;background:#d1d5db;cursor:default}.config-dot--done{background:#22c55e}.config-dot--info{background:#3b82f6}.config-checklist-separator{width:1px;height:12px;background:#e2e8f0;margin:0 2px}.config-checklist-required{font-size:9px;font-weight:600;color:#dc2626;text-transform:uppercase;margin-left:2px}.config-checklist-count{font-size:11px;color:#94a3b8}.config-checklist-count--complete{color:#16a34a}.btn--ghost{background:transparent;border:1px solid #e2e8f0;color:#64748b;padding:6px;border-radius:6px}.btn--ghost:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.airline-config-page .btn--primary,.airline-config-page .config-status-actions .btn--primary{background:#1e293b;border-radius:6px;padding:6px 14px;font-size:12px}.airline-config-page .btn--primary:hover:not(:disabled){background:#334155}.airline-config-general-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.airline-config-general-grid .airline-config-section{margin-bottom:12px;padding-bottom:12px}.airline-config-general-left .airline-config-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.airline-config-general-right .airline-config-section{margin-bottom:10px;padding-bottom:10px}.airline-config-general-right .airline-config-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.airline-config-passenger-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.airline-config-passenger-left .airline-config-field{margin-bottom:10px}.airline-config-passenger-left .airline-config-field:last-child{margin-bottom:0}@media(max-width:700px){.airline-config-general-grid,.airline-config-passenger-grid{grid-template-columns:1fr}}.airline-config-weights-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.airline-config-aircraft-selector{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:6px 12px;background:#f8fafc;border-radius:6px}.airline-config-aircraft-selector label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.delay-codes-editor h3{font-size:13px;font-weight:600;margin:0 0 10px;color:#334155}.delay-codes-msg{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;margin-bottom:12px}.delay-codes-msg--error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.delay-codes-msg--success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.delay-codes-section{margin-bottom:8px}.delay-codes-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#334155;margin:0 0 8px}.delay-codes-section-hint{font-size:11px;font-weight:400;color:#94a3b8}.delay-codes-add-form{display:flex;align-items:center;gap:6px;margin-bottom:8px}.delay-codes-add-form .btn{height:32px;padding:4px 12px;font-size:12px}.delay-codes-input{font-size:12px;height:32px;padding:4px 8px;border:1px solid #e2e8f0;border-radius:5px;background:#fff}.delay-codes-input:focus{border-color:#7c3aed;outline:none}.delay-codes-input--code{width:64px}.delay-codes-input--label{flex:1;min-width:0}.delay-codes-input--category{width:140px}.delay-codes-bulk{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px;margin-top:6px;margin-bottom:10px}.delay-codes-textarea{width:100%;font-size:11px;font-family:monospace;padding:8px;border:1px solid #e2e8f0;border-radius:4px;margin-bottom:6px;resize:vertical}.delay-codes-table{width:100%;border-collapse:collapse;font-size:12px}.delay-codes-table th{text-align:left;font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-bottom:1px solid #e2e8f0}.delay-codes-table td{padding:4px 8px;border-bottom:1px solid #f1f5f9;height:32px}.delay-codes-cell--code{font-weight:700;font-family:monospace;color:#6d28d9}.delay-codes-cell--category{color:#64748b;font-size:11px}.delay-codes-cell--actions{display:flex;gap:2px}.delay-codes-row--archived{opacity:.45}.delay-codes-iata-group{margin-bottom:2px;border:1px solid #f1f5f9;border-radius:6px;overflow:hidden}.delay-codes-iata-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:6px 12px;font-size:12px;font-weight:600;color:#475569;background:#f8fafc;border:none;cursor:pointer;text-align:left}.delay-codes-iata-group-header:hover{background:#f1f5f9}.delay-codes-iata-group-name{flex:1}.delay-codes-iata-group-count{font-size:10px;font-weight:400;color:#94a3b8}.delay-codes-table--iata td{padding:4px 8px;font-size:12px;height:32px}.delay-codes-table--iata .delay-codes-cell--code{color:#475569}.ffr-settings{display:grid;grid-template-columns:2fr 3fr;gap:20px;min-height:600px}@media(max-width:900px){.ffr-settings{grid-template-columns:1fr}}.ffr-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 4px}.ffr-desc{font-size:12px;color:#64748b;margin:0 0 14px;line-height:1.5}.ffr-section-list{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.ffr-section-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:box-shadow .15s,border-color .15s}.ffr-section-item:hover{border-color:#cbd5e1;box-shadow:0 1px 4px #0000000f}.ffr-section-item--disabled{opacity:.55}.ffr-drag-handle{display:flex;align-items:center;justify-content:center;padding:2px;color:#94a3b8;cursor:grab;background:none;border:none;border-radius:4px;flex-shrink:0;touch-action:none}.ffr-drag-handle:hover{color:#64748b;background:#f1f5f9}.ffr-drag-handle:active{cursor:grabbing}.ffr-section-label{flex:1;font-size:13px;font-weight:500;color:#1e293b}.ffr-toggle{position:relative;width:36px;height:20px;background:#cbd5e1;border-radius:10px;cursor:pointer;transition:background .2s;flex-shrink:0}.ffr-toggle--on{background:#22c55e}.ffr-toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0000002e}.ffr-toggle--on .ffr-toggle-knob{transform:translate(16px)}.ffr-save-bar{display:flex;gap:8px}.ffr-preview{display:flex;flex-direction:column}.ffr-preview-frame{flex:1;min-height:500px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#f1f5f9}.ffr-preview-frame iframe{border:none}.ffr-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:3rem;color:#64748b;font-size:13px}.ffr-configurator{display:flex;flex-direction:column}.data-manager-page{padding:24px}.data-manager-info{color:#666;margin-bottom:16px;font-size:13px}.data-manager-info code{background-color:#f4f4f4;padding:2px 6px;border-radius:4px;font-family:SF Mono,Menlo,monospace;font-size:12px}.dm-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;margin-bottom:8px;flex-wrap:wrap}.dm-toolbar-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1;min-width:0}.dm-toolbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.dm-search{position:relative;display:flex;align-items:center;min-width:220px;max-width:280px}.dm-search-icon{position:absolute;left:8px;color:#94a3b8;pointer-events:none}.dm-search-input{width:100%;padding:6px 28px;font-size:12px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#1e293b;transition:border-color .15s,background-color .15s}.dm-search-input:focus{outline:none;border-color:#cbd5e1;background:#fff;box-shadow:0 0 0 2px #1e293b14}.dm-search-input::placeholder{color:#94a3b8}.dm-search-clear{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;background:#e2e8f0;border-radius:50%;color:#64748b;cursor:pointer;transition:background-color .15s}.dm-search-clear:hover{background:#cbd5e1;color:#334155}.dm-filter-select{padding:5px 24px 5px 8px;font-size:12px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#475569;cursor:pointer;appearance:auto}.dm-filter-select:focus{outline:none;border-color:#cbd5e1}.dm-filter-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;cursor:pointer;transition:all .15s;white-space:nowrap}.dm-filter-chip:hover{background:#e2e8f0;color:#334155}.dm-filter-chip--active{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.dm-filter-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;background:#ef4444;color:#fff;border-radius:8px}.dm-filter-chip--active .dm-filter-chip-count{background:#1e293b}.dm-filter-clear{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;font-size:11px;color:#94a3b8;background:none;border:none;cursor:pointer;border-radius:4px;transition:color .15s}.dm-filter-clear:hover{color:#475569}.dm-count{font-size:11px;color:#94a3b8;white-space:nowrap}.dm-action-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;font-size:12px;font-weight:500;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s;white-space:nowrap}.dm-action-btn:hover{background:#f8fafc;border-color:#cbd5e1}.dm-action-btn:disabled{opacity:.5;cursor:not-allowed}.dm-action-btn--primary{background:#1e293b;border-color:#1e293b;color:#fff}.dm-action-btn--primary:hover{background:#0f172a;border-color:#0f172a}@keyframes dm-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dm-spin{animation:dm-spin 1s linear infinite}.dm-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.dm-table{width:100%;border-collapse:collapse;font-size:12px}.dm-th{padding:7px 12px;text-align:left;font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.4px;background:#f8fafc;border-bottom:1px solid #e2e8f0;white-space:nowrap;-webkit-user-select:none;user-select:none}.dm-th--sortable{cursor:pointer;transition:color .15s}.dm-th--sortable:hover{color:#1e293b}.dm-th--type,.dm-th--actions{width:40px;text-align:center}.dm-sort-icon{vertical-align:middle;margin-left:2px;color:#1e293b}.dm-sort-icon--inactive{color:#cbd5e1}.dm-row{transition:background-color .1s;cursor:pointer}.dm-row:hover{background:#f8fafc}.dm-row--selected{background:#f8fafc!important}.dm-row--unpaired{background:#fffbeb}.dm-row--unpaired:hover{background:#fef3c7}.dm-td{padding:6px 12px;border-bottom:1px solid #f1f5f9;color:#334155;white-space:nowrap}.dm-td--type{text-align:center;width:40px}.dm-td--station{font-weight:600;font-size:11px;color:#64748b}.dm-td--airline{max-width:140px;overflow:hidden;text-overflow:ellipsis}.dm-td--flight{font-weight:600;color:#1e293b;font-family:SF Mono,Menlo,monospace;font-size:11px}.dm-td--time{font-family:SF Mono,Menlo,monospace;font-size:11px;color:#475569}.dm-td--actions{text-align:center;width:40px}.dm-muted{color:#d1d5db}.dm-type-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:#64748b}.dm-type-icon--complete{color:#1e293b}.dm-type-icon--arrival_only{color:#22c55e}.dm-type-icon--departure_only{color:#f59e0b}.dm-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;letter-spacing:.2px}.dm-status--scheduled{background:#f8fafc;color:#0f172a}.dm-status--on-ground{background:#f0fdf4;color:#16a34a}.dm-status--departed{background:#faf5ff;color:#7c3aed}.dm-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;background:transparent;color:#cbd5e1;border-radius:4px;cursor:pointer;transition:all .15s}.dm-delete-btn:hover{background:#fef2f2;color:#ef4444}.dm-empty{text-align:center;color:#94a3b8;padding:32px 16px!important;font-size:13px}.dm-detail-panel{margin-top:12px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.dm-detail-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.dm-detail-header h4{margin:0;font-size:12px;font-weight:600;color:#475569}.dm-detail-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:#94a3b8;border-radius:4px;cursor:pointer}.dm-detail-close:hover{background:#e2e8f0;color:#475569}.dm-detail-json{margin:0;padding:12px;font-size:11px;font-family:SF Mono,Menlo,monospace;line-height:1.5;max-height:200px;overflow:auto;background:#fafbfc;color:#334155}.data-manager-error{background-color:#fef2f2;color:#dc2626;padding:10px 14px;border:1px solid #fecaca;border-radius:6px;margin-bottom:12px;font-size:12px}.data-manager-error code{background-color:#0000000f;padding:1px 5px;border-radius:3px;font-size:11px}.data-manager-loading{text-align:center;padding:32px;color:#94a3b8;font-size:13px}.data-manager-content{display:flex;flex-direction:column}.data-manager-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.data-manager-modal{background:#fff;padding:24px;border-radius:12px;width:600px;max-width:90vw;max-height:90vh;overflow-y:auto}.data-manager-modal h2{margin:0 0 20px;font-size:20px}.data-manager-modal h4{margin:20px 0 12px;font-size:14px;color:#666;border-top:1px solid #eee;padding-top:16px}.data-manager-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.data-manager-form-field{display:flex;flex-direction:column;gap:4px}.data-manager-form-field label{font-size:12px;font-weight:500;color:#666}.data-manager-form-field input,.data-manager-form-field select{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px}.data-manager-form-field input:focus,.data-manager-form-field select:focus{outline:none;border-color:#1e293b}.data-manager-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #eee}.platform-admin-page,.station-admin-page{max-width:1200px}.platform-admin-page .unified-tabs--secondary{margin-bottom:16px}.admin-notice{padding:10px 14px;background-color:#fffbeb;border:1px solid #fde68a;border-radius:6px;color:#92400e;font-size:13px}.admin-station-info{color:#64748b;font-size:13px;margin-bottom:14px}.admin-error{padding:8px 12px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px;margin-bottom:10px}.admin-success{padding:8px 12px;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#16a34a;font-size:13px;margin-bottom:10px}.admin-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px #00000014}.admin-section h2{font-size:15px;font-weight:700;color:#1e293b;margin:0 0 8px;letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.admin-section h3{font-size:13px;font-weight:600;color:#374151;margin:16px 0 8px}.admin-form{display:flex;flex-direction:column;gap:8px}.admin-form-row{display:flex;gap:8px;flex-wrap:wrap}.admin-form-row>label{flex:1;min-width:160px;display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:500;color:#374151}.admin-form-row input,.admin-form-row select{padding:9px 12px;font-size:13px;border:1px solid #d1d5db;border-radius:8px;height:40px;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.admin-form-row input:focus,.admin-form-row select:focus{outline:none;border-color:#cbd5e1;box-shadow:0 0 0 2px #1e293b0f}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb}.admin-table th{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;background:#f8fafc;border-bottom:2px solid #e2e8f0}.admin-table td{font-size:13px;color:#1f2937}.admin-table tbody tr{transition:background-color .1s}.admin-table tbody tr:hover{background:#f8fafc}.admin-stats{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.admin-stat{flex:1;min-width:100px;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;text-align:center}.admin-stat-value{display:block;font-size:22px;font-weight:700;color:#1e293b;line-height:1.2}.admin-stat-label{font-size:11px;color:#64748b;margin-top:2px;font-weight:500}.admin-role-badge{display:inline-block;padding:2px 6px;margin:1px 3px 1px 0;font-size:10px;font-weight:600;background:#e5e7eb;border-radius:3px}.admin-role-tag{display:inline-block;padding:3px 8px;font-size:11px;font-weight:600;border-radius:4px;background:#e5e7eb}.admin-role-tag--platform_admin{background:#6f42c1;color:#fff}.admin-role-tag--station_admin{background:#1e293b;color:#fff}.admin-role-tag--supervisor_dispatcher_ops,.admin-role-tag--supervisor_passenger,.admin-role-tag--supervisor_ramp{background:#198754;color:#fff}.admin-role-tag--dispatcher,.admin-role-tag--operations,.admin-role-tag--ramp,.admin-role-tag--passenger{background:#6c757d;color:#fff}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.admin-section-header h2{margin:0}.admin-info{color:#64748b;font-size:13px;margin-bottom:8px;line-height:1.4}.admin-warning{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;color:#b45309;font-size:12px;margin-bottom:10px}.admin-warning svg{flex-shrink:0}.admin-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px #00000014}.admin-panel h2{font-size:15px;font-weight:700;color:#1e293b;margin:0 0 8px;letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.admin-panel h3{font-size:13px;font-weight:600;color:#374151;margin:16px 0 8px}.admin-filter-bar{display:flex;gap:8px;margin-bottom:10px;align-items:center}.admin-filter-select{padding:8px 12px;border-radius:8px;border:1px solid #e2e8f0;height:36px;font-size:13px;box-sizing:border-box;background:#fff;color:#1e293b;transition:border-color .15s}.admin-filter-select:focus{outline:none;border-color:#cbd5e1;box-shadow:0 0 0 2px #1e293b0f}.admin-highlight-box{margin-bottom:12px;padding:12px 16px;background:#f59e0b1a;border-radius:10px}.admin-badge{display:inline-flex;align-items:center;padding:2px 6px;margin-right:4px;font-size:10px;font-weight:600;border-radius:3px;text-transform:uppercase}.admin-badge--success{background:#d4edda;color:#155724}.admin-badge--warning{background:#fff3cd;color:#856404}.admin-badge--info{background:#d1ecf1;color:#0c5460}.admin-form>.btn,.admin-form>button{align-self:flex-start}.milestone-icons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:16px}.milestone-icon-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;transition:border-color .15s,box-shadow .15s}.milestone-icon-card:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0000000f}.milestone-icon-preview{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:6px;overflow:hidden;flex-shrink:0}.milestone-icon-preview--has-icon{background:#fff;border:1px solid #e5e7eb}.milestone-icon-preview--empty{background:#f1f5f9;border:1px dashed #cbd5e1}.milestone-icon-preview-img{width:100%;height:100%;object-fit:contain;padding:4px}.milestone-icon-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#94a3b8}.milestone-icon-preview-empty span{font-size:8px;font-weight:500}.milestone-icon-preview-empty svg{width:18px;height:18px}.milestone-icon-info{text-align:center;min-width:0;width:100%}.milestone-icon-label{display:block;font-size:11px;font-weight:600;color:#1e293b;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.milestone-icon-key{display:block;font-size:9px;color:#94a3b8;font-family:SF Mono,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.milestone-icon-paired{display:block;font-size:9px;color:#64748b;margin-top:1px}.milestone-icon-actions{display:flex;gap:4px;align-items:center}.milestone-icon-actions .btn{padding:3px 8px;font-size:11px}.milestone-icon-actions .btn svg{width:12px;height:12px}.admin-row--warning{background:#fffbf0}.admin-row--warning:hover{background:#fff8e6!important}.admin-cell--logo{width:44px;min-width:44px;text-align:center;vertical-align:middle}.admin-cell--code{width:56px;min-width:56px;font-weight:600}.admin-cell--name{min-width:150px}.admin-cell--status{width:120px;min-width:120px}.admin-cell--actions{width:auto;min-width:80px;text-align:right;white-space:nowrap}.admin-cell--actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:0;margin-left:6px}.admin-cell--actions .btn:first-of-type{margin-left:0}.admin-cell--actions .btn--icon{width:30px;height:30px;padding:0;border-radius:4px}.admin-cell--actions .btn--icon svg{margin:0}.admin-table--fixed{table-layout:fixed}.admin-table--fixed th,.admin-table--fixed td{overflow:hidden;text-overflow:ellipsis}.admin-table--fixed .admin-cell--actions{overflow:visible}.sidebar-link-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;background:#dc3545;color:#fff;border-radius:9px;margin-left:auto}.sidebar--collapsed .sidebar-link-badge{position:absolute;top:4px;right:4px;min-width:14px;height:14px;font-size:9px;padding:0 3px}.unpaired-flights-page{padding:24px;max-width:1600px}.unpaired-flights-page .page-header{margin-bottom:24px}.unpaired-flights-page .page-header h1{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:24px;font-weight:600}.unpaired-flights-page .page-subtitle{margin:0;color:#666;font-size:14px}.unpaired-controls{display:flex;align-items:flex-end;gap:16px;margin-bottom:20px;padding:16px;background:#f8f9fa;border-radius:8px}.unpaired-control{display:flex;flex-direction:column;gap:4px}.unpaired-control span{font-size:12px;font-weight:500;color:#666}.unpaired-control select,.unpaired-control input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:160px}.unpaired-summary{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:14px}.unpaired-count{font-weight:600;color:#333}.unpaired-breakdown{color:#666}.unpaired-loading{padding:40px;text-align:center;color:#666}.unpaired-layout{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:20px;min-height:500px}.unpaired-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;display:flex;flex-direction:column}.unpaired-panel h2{display:flex;align-items:center;gap:8px;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb;font-size:15px;font-weight:600;color:#333}.unpaired-panel--candidates{background:#f8fafc;border-color:#1e293b}.unpaired-panel--candidates h2{color:#1e293b;border-bottom-color:#1e293b33}.unpaired-panel--departures{background:#fafafa}.unpaired-empty{padding:24px;text-align:center;color:#888;font-size:14px}.unpaired-window-info{margin:0 0 12px;padding:8px 12px;background:#f1f5f9;border-radius:6px;font-size:12px;color:#1e293b}.unpaired-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.unpaired-card{display:flex;flex-direction:column;gap:6px;padding:12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.unpaired-card:hover{border-color:#1e293b;background:#f8fafc}.unpaired-card--selected{border-color:#1e293b;background:#f1f5f9;box-shadow:0 0 0 2px #1e293b26}.unpaired-card--candidate{cursor:default;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}.unpaired-card--dep{cursor:default;opacity:.8}.unpaired-card-main{display:flex;align-items:center;gap:10px}.unpaired-time{font-family:SF Mono,Menlo,monospace;font-size:14px;font-weight:600;color:#333;min-width:50px}.unpaired-flight{font-weight:600;font-size:14px;color:#1e293b}.unpaired-route{font-size:13px;color:#666}.unpaired-card-details{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.unpaired-reg{font-family:SF Mono,Menlo,monospace;font-size:11px;padding:2px 6px;background:#e5e7eb;border-radius:4px;color:#555}.unpaired-reg--match{background:#d1fae5;color:#065f46;font-weight:600}.unpaired-carrier{font-size:11px;color:#888}.unpaired-ground{font-family:SF Mono,Menlo,monospace;font-size:11px;padding:2px 6px;background:#fef3c7;border-radius:4px;color:#92400e}.unpaired-badge{font-size:10px;font-weight:500;padding:2px 6px;border-radius:4px;text-transform:uppercase}.unpaired-badge--carrier{background:#f1f5f9;color:#1e293b}.unpaired-badge--aircraft{background:#d1fae5;color:#065f46}.unpaired-card-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#ccc}.unpaired-card--selected .unpaired-card-arrow{color:#1e293b}.unpaired-pair-btn{margin-left:auto;flex-shrink:0}@media(max-width:1200px){.unpaired-layout{grid-template-columns:1fr 1fr}.unpaired-panel--departures{grid-column:span 2}}@media(max-width:768px){.unpaired-layout{grid-template-columns:1fr}.unpaired-panel--departures{grid-column:span 1}.unpaired-controls{flex-wrap:wrap}}.unpaired-content{margin-top:12px}.unpaired-tab-content{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px;min-height:300px}.unpaired-tab-content--timeline{padding:0;display:flex;flex-direction:column;min-height:500px}.unpaired-tab-content--timeline .unpaired-tab-header{padding:14px;margin-bottom:0;border-bottom:none}.unpaired-tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #e9ecef}.unpaired-tab-header h3{margin:0;font-size:15px;font-weight:600;color:#1a1a2e}.unpaired-filters{display:flex;align-items:center;gap:10px}.unpaired-filters label{display:flex;align-items:center;gap:6px;font-size:12px;color:#666}.unpaired-filters input[type=datetime-local]{padding:4px 8px;border:1px solid #ddd;border-radius:5px;font-size:12px}.unpaired-airline-filter{padding:4px 8px;border:1px solid #ddd;border-radius:5px;font-size:12px;min-width:100px}.unpaired-date-display{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1e293b}.unpaired-date-display strong{font-weight:600;color:#0f172a}.unpaired-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fee2e2;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px}.unpaired-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#d1fae5;border-radius:8px;color:#065f46;font-size:14px;margin-bottom:16px}.unpaired-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#666}.unpaired-empty h4{margin:10px 0 6px;font-size:14px;font-weight:600;color:#333}.unpaired-empty p{margin:0;font-size:13px}.unpaired-empty-small{padding:16px;text-align:center;color:#888;font-size:12px}.suggestions-list{display:flex;flex-direction:column;gap:8px}.suggestion-card{padding:10px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px}.suggestion-flights{display:flex;align-items:center;gap:8px;margin-bottom:8px}.suggestion-leg{flex:1;display:flex;gap:8px;padding:8px 10px;background:#fff;border-radius:6px;border-left:3px solid #6b7280}.suggestion-leg--arr{border-left-color:#22c55e}.suggestion-leg--dep{border-left-color:#1e293b}.suggestion-leg-icon{display:flex;align-items:center;color:#6b7280}.suggestion-leg--arr .suggestion-leg-icon{color:#22c55e}.suggestion-leg--dep .suggestion-leg-icon{color:#1e293b}.suggestion-leg-info{display:flex;flex-direction:column;gap:1px}.suggestion-flight-header{display:flex;align-items:center;gap:4px}.suggestion-flight-number{font-size:13px;font-weight:700;color:#1a1a2e}.suggestion-route{font-size:12px;color:#666}.suggestion-time{font-size:11px;color:#888;font-family:SF Mono,Menlo,monospace}.suggestion-reg{display:inline-block;margin-top:2px;font-size:10px;font-family:SF Mono,Menlo,monospace;padding:1px 5px;background:#e5e7eb;border-radius:3px;color:#555}.suggestion-connection{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 4px;color:#9ca3af}.suggestion-ground-time{font-size:11px;font-weight:600;color:#6b7280;background:#f3f4f6;padding:2px 6px;border-radius:4px}.suggestion-reasons-section{margin-bottom:8px}.match-reasons{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.match-reason{font-size:11px;font-weight:500;color:#059669;background:#d1fae5;padding:2px 8px;border-radius:4px}.match-reason--score{color:#1e293b;background:#f1f5f9;font-weight:600}.match-reason--warning{color:#d97706;background:#fef3c7}.auto-match-info-section{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0}.score-raw{font-size:11px;color:#9ca3af;font-style:italic}.score-forced{color:#f59e0b;font-size:14px;cursor:help}.suggestion-actions{display:flex;justify-content:flex-end;gap:6px;padding-top:8px;border-top:1px solid #e5e7eb}.suggestion-reject-form{display:flex;align-items:center;gap:6px;width:100%}.suggestion-reject-input{flex:1;padding:6px 10px;border:1px solid #ddd;border-radius:5px;font-size:12px}.manual-match-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:300px}.manual-match-panel{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:10px;display:flex;flex-direction:column}.manual-match-panel h4{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;font-weight:600;color:#333}.manual-match-panel--candidates{background:#f0fdf4;border-color:#22c55e}.manual-match-panel--candidates h4{color:#22c55e}.manual-match-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1;max-height:350px}.manual-match-card{display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s}.manual-match-card:hover{border-color:#1e293b;background:#f8fafc}.manual-match-card--selected{border-color:#1e293b;background:#f8fafc;box-shadow:0 0 0 2px #1e293b26}.manual-match-card--candidate{cursor:default;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.manual-match-card-main{display:flex;align-items:center;gap:8px}.manual-match-time{font-family:SF Mono,Menlo,monospace;font-size:12px;font-weight:600;color:#333}.manual-match-flight{font-weight:600;font-size:13px;color:#1e293b}.manual-match-route{font-size:12px;color:#666}.manual-match-card-details{display:flex;align-items:center;gap:6px}.manual-match-reg{font-family:SF Mono,Menlo,monospace;font-size:10px;padding:1px 5px;background:#e5e7eb;border-radius:3px;color:#555}.manual-match-reg--match{background:#d1fae5;color:#065f46;font-weight:600}.manual-match-carrier{font-size:11px;color:#888}.manual-match-ground{font-family:SF Mono,Menlo,monospace;font-size:10px;padding:1px 5px;background:#fef3c7;border-radius:3px;color:#92400e}.manual-match-carrier{font-size:10px;color:#888}.manual-match-score{font-size:10px;font-weight:600;color:#1e293b}.auto-matches-list{display:flex;flex-direction:column;gap:6px}.auto-match-card{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px}.auto-match-flights{display:flex;align-items:center;gap:10px}.auto-match-leg{flex:1;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#fff;border-radius:6px}.auto-match-leg svg{color:#6b7280;flex-shrink:0}.auto-match-flight{font-size:13px;font-weight:700;color:#1a1a2e}.auto-match-route{font-size:11px;color:#666}.auto-match-time{font-size:10px;color:#888;font-family:SF Mono,Menlo,monospace;margin-left:auto}.auto-match-ground{display:flex;align-items:center;justify-content:center;min-width:50px;padding:4px 8px;background:#fef3c7;border-radius:4px;font-size:11px;font-weight:600;color:#92400e}.auto-match-reg{font-family:SF Mono,Menlo,monospace;font-size:11px;color:#666}.auto-match-actions{display:flex;justify-content:flex-end;gap:6px;padding-top:8px;border-top:1px solid #e5e7eb}@media(max-width:900px){.manual-match-layout{grid-template-columns:1fr}.suggestion-flights{flex-direction:column}.suggestion-connection{flex-direction:row;padding:8px 0}.auto-match-flights{flex-direction:column;gap:8px}.auto-match-ground{align-self:center}}.unpaired-embedded{margin:0}.unpaired-embedded .unpaired-content{margin-top:0}.unpaired-embedded .unpaired-tab-content{border:none;border-radius:0;background:transparent;padding:0 12px}.unpaired-embedded .unpaired-tab-header{padding-bottom:8px;margin-bottom:8px}.unpaired-embedded .unpaired-tab-header h3{font-size:14px}.unpaired-embedded .suggestions-list{gap:6px}.unpaired-embedded .suggestion-card{padding:8px 10px}.unpaired-embedded .manual-match-layout{gap:10px;min-height:250px}.unpaired-embedded .manual-match-panel{padding:8px}.unpaired-embedded .auto-matches-list{gap:4px}.unpaired-embedded .auto-match-card{padding:8px 10px}.delete-legs-list{display:flex;flex-direction:column;gap:6px}.delete-legs-info{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;font-size:12px;color:#92400e;margin-bottom:8px}.delete-leg-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s}.delete-leg-card:hover{border-color:#fca5a5}.delete-leg-info{display:flex;align-items:center;gap:12px;flex:1}.delete-leg-direction{flex-shrink:0}.direction-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.direction-badge--arr{background:#d1fae5;color:#065f46}.direction-badge--dep{background:#f1f5f9;color:#1e293b}.delete-leg-details{display:flex;flex-direction:column;gap:2px}.delete-leg-header{display:flex;align-items:center;gap:6px}.delete-leg-flight{font-size:14px;font-weight:700;color:#1a1a2e}.delete-leg-reg{font-family:SF Mono,Menlo,monospace;font-size:10px;padding:1px 5px;background:#e5e7eb;border-radius:3px;color:#555}.delete-leg-type{font-size:10px;padding:1px 5px;background:#f1f5f9;border-radius:3px;color:#1e293b}.delete-leg-route{display:flex;align-items:center;gap:12px;font-size:12px;color:#666}.delete-leg-time{font-family:SF Mono,Menlo,monospace;font-size:11px;color:#888}.delete-leg-actions{flex-shrink:0}.delete-leg-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:#dc2626;cursor:pointer;border-radius:6px;transition:background .15s}.delete-leg-btn:hover{background:#fee2e2}.delete-leg-confirm{display:flex;align-items:center;gap:6px}.delete-leg-confirm-text{font-size:12px;font-weight:500;color:#dc2626;white-space:nowrap}.suggestion-card--delete{border-color:#fca5a5;background:#fef2f2}.suggestion-delete-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}.suggestion-delete-icon{color:#dc2626}.suggestion-delete-title{font-size:12px;font-weight:600;color:#dc2626;text-transform:uppercase;letter-spacing:.5px}.suggestion-delete-body{margin-bottom:8px}.suggestion-delete-body .suggestion-leg{border-left-color:#dc2626}.suggestion-delete-reason{margin-top:8px;padding:6px 10px;background:#fff;border-radius:4px;font-size:12px;color:#991b1b;border-left:3px solid #dc2626}.suggestion-counter-badge{margin-top:6px;padding:3px 8px;border-radius:10px;font-size:11px;font-weight:600;display:inline-block}.suggestion-counter-badge--pair{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.suggestion-counter-badge--auto-active{background:#15803d;color:#fff;border-color:#15803d}.suggestion-counter-badge--delete{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.suggestion-counter-badge--add{background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0}.patterns-table{width:100%;border-collapse:collapse;font-size:13px}.patterns-table th{text-align:left;padding:8px 12px;background:#f8fafc;border-bottom:2px solid #e2e8f0;font-weight:600;color:#475569;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.patterns-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;color:#334155}.patterns-table tr:hover td{background:#f8fafc}.pattern-auto-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.pattern-auto-badge--active{background:#15803d;color:#fff}.pattern-auto-badge--pending{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.pattern-auto-badge--inactive{background:#f1f5f9;color:#64748b}.auto-deleted-list{display:flex;flex-direction:column;gap:6px}.auto-deleted-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px}.auto-deleted-info{display:flex;align-items:center;gap:12px}.auto-deleted-flight{font-weight:700;font-size:14px;color:#1a1a2e}.auto-deleted-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#666}.auto-deleted-count{font-weight:600;padding:2px 8px;background:#dc2626;color:#fff;border-radius:10px;font-size:11px}.auto-deleted-station{padding:2px 6px;background:#e5e7eb;border-radius:4px;font-size:11px;color:#555}.al-tab-wrapper{position:relative}.al-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f;z-index:100;padding:4px;animation:al-menu-in .12s ease-out}@keyframes al-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.al-dropdown__item{display:block;width:100%;text-align:left;padding:8px 12px;font-size:13px;font-weight:500;color:#334155;background:none;border:none;border-radius:5px;cursor:pointer;transition:background .1s}.al-dropdown__item:hover{background:#f1f5f9}.al-dropdown__item--active{color:#0f172a;font-weight:600;background:#f8fafc}.al-wrap{max-width:700px;margin:0 auto}.al-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.al-card__section{padding:18px 20px}.al-card__section+.al-card__section{border-top:1px solid #e2e8f0}.al-card__section-header{display:flex;align-items:center;gap:8px;margin-bottom:14px}.al-card__section-title{font-size:13px;font-weight:600;color:#1e293b}.al-card__section-meta{font-size:12px;color:#64748b;margin-left:auto}.al-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#64748b;cursor:pointer;transition:border-color .15s,color .15s}.al-icon-btn:hover{border-color:#94a3b8;color:#0f172a}.al-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;cursor:pointer}.al-toggle input[type=checkbox]{display:none}.al-toggle__label{font-size:12px;font-weight:500;color:#64748b;-webkit-user-select:none;user-select:none}.al-toggle__track{position:relative;width:36px;height:20px;background:#d1d5db;border-radius:10px;transition:background-color .2s;flex-shrink:0}.al-toggle__track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.al-toggle--on .al-toggle__track{background:#10b981}.al-toggle--on .al-toggle__track:after{transform:translate(16px)}.al-toggle--on .al-toggle__label{color:#1e293b}.al-recurrence-body{overflow:hidden;animation:al-recurrence-in .2s ease-out}@keyframes al-recurrence-in{0%{opacity:0;max-height:0}to{opacity:1;max-height:300px}}.al-toast{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:12px}.al-toast--error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.al-toast--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.al-empty{text-align:center;padding:28px 16px;color:#94a3b8;font-size:13px}.al-grid{display:grid;gap:12px 16px}.al-grid--2{grid-template-columns:1fr 1fr}.al-grid--3{grid-template-columns:1fr 1fr 1fr}.al-grid--4{grid-template-columns:1fr 1fr 1fr 1fr}@media(max-width:640px){.al-grid--3,.al-grid--4{grid-template-columns:1fr 1fr}}.al-field{display:flex;flex-direction:column;gap:4px}.al-field__label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.al-field__input{padding:7px 10px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1e293b;transition:border-color .12s}.al-field__input:focus{outline:none;border-color:#cbd5e1;box-shadow:0 0 0 2px #1e293b0f}.al-field__input::placeholder{color:#cbd5e1}.al-list{display:flex;flex-direction:column}.al-row{display:flex;align-items:center;gap:8px;padding:8px 6px;border-radius:6px;cursor:pointer;transition:background .12s}.al-row:hover{background:#f8fafc}.al-row:not(:last-child){border-bottom:1px solid #f1f5f9}.al-row--active{background:#f8fafc}.al-row__dir{display:inline-flex;color:#64748b}.al-row__dir--arr{color:#1e293b}.al-row__dir--dep{color:#7c3aed}.al-row__flight{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#0f172a}.al-row__route{font-size:12px;color:#94a3b8}.al-row__time{font-size:12px;font-weight:500;color:#64748b;margin-left:auto}.al-row__reg{font-size:10px;padding:2px 6px;background:#f1f5f9;border-radius:3px;color:#475569;font-weight:500}.al-row__check{color:#1e293b;flex-shrink:0}.al-inherited{display:flex;gap:20px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.al-inherited__item{display:flex;flex-direction:column;gap:2px}.al-inherited__label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:#94a3b8;font-weight:500}.al-inherited__value{font-size:13px;font-weight:500;color:#334155;display:flex;align-items:center;gap:4px}.al-subsection{margin-bottom:14px}.al-subsection:last-child{margin-bottom:0}.al-subsection__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#94a3b8;margin-bottom:8px;display:flex;align-items:center;gap:5px}.al-type-row{display:flex;gap:6px;margin-top:4px}.al-type-option{display:flex;align-items:center;padding:4px 10px;border:1px solid #e2e8f0;border-radius:5px;font-size:11px;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s}.al-type-option input[type=radio]{display:none}.al-type-option:hover{border-color:#94a3b8;color:#334155}.al-type-option--active{border-color:#1e293b;background:#1e293b;color:#fff}.al-check{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151;cursor:pointer;margin-top:10px}.al-days{display:flex;gap:4px;margin-top:10px}.al-day{display:flex;align-items:center;justify-content:center;width:40px;height:32px;border:1px solid #e2e8f0;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;color:#94a3b8}.al-day input[type=checkbox]{display:none}.al-day:hover{border-color:#94a3b8;color:#334155}.al-day--active{background:#0f172a;border-color:#0f172a;color:#fff}.al-hint{display:block;font-size:12px;color:#64748b;font-style:italic;margin-top:8px}.al-footer{padding:16px 20px;border-top:1px solid #f1f5f9}.al-footer--center{display:flex;justify-content:center}.al-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;font-size:13px;font-weight:600;background:#1e293b;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .15s,box-shadow .15s;box-shadow:0 1px 3px #0000001f}.al-btn-primary:hover:not(:disabled){background:#0f172a;box-shadow:0 2px 6px #0000002e}.al-btn-primary:disabled{opacity:.5;cursor:not-allowed}.suggestion-card--add{border-color:#e2e8f0}.suggestion-card--add .suggestion-delete-header{background:#f8fafc;border-bottom-color:#e2e8f0}.suggestion-card--add .suggestion-delete-icon{color:#0f172a}.docs-layout{display:flex;height:100vh;overflow:hidden;background:#f5f7fa}.docs-sidebar{width:240px;background:#161c28;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.docs-sidebar-header{display:flex;align-items:center;gap:12px;padding:16px 16px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.docs-home-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:none;background:#ffffff14;color:#94a3b8;cursor:pointer;transition:all .15s;flex-shrink:0}.docs-home-btn:hover{background:#3b82f633;color:#60a5fa}.docs-sidebar-title{font-size:16px;font-weight:600;color:#e2e8f0;white-space:nowrap}.docs-sidebar-nav{display:flex;flex-direction:column;padding:12px 8px;gap:2px}.docs-sidebar-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;border:none;background:transparent;color:#94a3b8;font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:all .15s;width:100%}.docs-sidebar-link:hover{background:#ffffff14;color:#e2e8f0}.docs-sidebar-link--active{background:#3b82f626;color:#60a5fa}.docs-sidebar-link--active:hover{background:#3b82f633}.docs-sidebar-link-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;flex-shrink:0;color:inherit}.docs-sidebar-link--active .docs-sidebar-link-icon{background:#3b82f633;color:#60a5fa}.docs-sidebar-link-text{white-space:nowrap}.docs-main{flex:1;overflow-y:auto;height:100%}.docs-page{max-width:1200px;padding:28px 32px}.docs-page-header{margin-bottom:20px}.docs-page-header h1{font-size:20px;font-weight:700;color:#1e293b;margin:0 0 6px}.docs-page-subtitle{font-size:13px;color:#64748b;line-height:1.5;margin:0}.documents-search{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px}.documents-search svg{color:#94a3b8;flex-shrink:0}.documents-search input{flex:1;border:none;background:transparent;font-size:13px;color:#1e293b;outline:none}.documents-search input::placeholder{color:#94a3b8}.documents-search-count{font-size:11px;color:#94a3b8;white-space:nowrap}.documents-groups{display:flex;flex-direction:column;gap:4px}.documents-group{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.documents-group-header{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:#f8fafc;border:none;cursor:pointer;text-align:left;transition:background .15s}.documents-group-header:hover{background:#f1f5f9}.documents-group-toggle{display:flex;align-items:center;color:#64748b}.documents-group-range{font-size:12px;font-weight:700;color:#06c;font-family:SF Mono,Monaco,Consolas,monospace;min-width:42px}.documents-group-name{flex:1;font-size:13px;font-weight:600;color:#1e293b}.documents-group-count{font-size:11px;color:#94a3b8;background:#e5e7eb;padding:1px 7px;border-radius:10px}.documents-group-body{border-top:1px solid #e5e7eb}.documents-codes-table{width:100%;border-collapse:collapse;font-size:12px}.documents-codes-table th{text-align:left;padding:8px 10px;font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b;background:#fafbfc;border-bottom:1px solid #e5e7eb;letter-spacing:.3px}.documents-codes-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;vertical-align:top;color:#374151;line-height:1.45}.documents-codes-table tr:last-child td{border-bottom:none}.documents-codes-table tr:hover{background:#fafbfc}.documents-col-code{width:56px}.documents-col-alpha{width:44px}.documents-col-desc{width:38%}.documents-cell-code{font-weight:700;font-family:SF Mono,Monaco,Consolas,monospace;color:#06c;white-space:nowrap}.documents-cell-alpha{font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace;color:#6d28d9}.documents-cell-desc{font-weight:500;color:#1e293b}.documents-cell-usage{color:#64748b;font-size:12px}.documents-ref-table{width:100%;border-collapse:collapse;font-size:12px}.documents-ref-table th{text-align:left;padding:8px 10px;font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b;background:#fafbfc;border-bottom:1px solid #e5e7eb;letter-spacing:.3px}.documents-ref-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;vertical-align:top;color:#374151;line-height:1.45}.documents-ref-table tr:last-child td{border-bottom:none}.documents-ref-table tr:hover{background:#fafbfc}.documents-col-ref-code{width:80px}.documents-col-ref-meaning{width:30%}.documents-cell-ref-code{font-weight:700;font-family:SF Mono,Monaco,Consolas,monospace;color:#06c;white-space:nowrap}.documents-cell-ref-meaning{font-weight:600;color:#1e293b}.documents-cell-ref-desc{color:#64748b}.documents-empty{padding:32px 16px;text-align:center;color:#94a3b8;font-size:13px}.documents-source{margin-top:16px;padding:10px 14px;background:#f8fafc;border-radius:8px;font-size:11px;color:#94a3b8;text-align:center}@media(max-width:768px){.docs-sidebar{width:56px}.docs-sidebar-title,.docs-sidebar-link-text{display:none}.docs-sidebar-header{justify-content:center;padding:16px 8px 12px}.docs-sidebar-nav{padding:12px 4px;align-items:center}.docs-sidebar-link{justify-content:center;padding:10px;gap:0}.docs-page{padding:20px 16px}.documents-codes-table th:nth-child(4),.documents-codes-table td:nth-child(4){display:none}.documents-col-desc{width:auto}.documents-ref-table th:nth-child(3),.documents-ref-table td:nth-child(3){display:none}.documents-col-ref-meaning{width:auto}}.operational-board-page{max-width:1400px}.operational-board-page h1{display:flex;align-items:center;gap:12px}.opboard-table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #00000014;margin-top:20px}.opboard-th{padding:12px 10px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;background:#f8fafc;border-bottom:2px solid #e2e8f0;white-space:nowrap}.opboard-th--favorite{width:40px;min-width:40px}.opboard-th--flight{min-width:100px}.opboard-th--time{text-align:center;min-width:55px}.opboard-th--badges{text-align:center;min-width:70px}.opboard-row{cursor:pointer;transition:background-color .15s}.opboard-row:hover{background:#f0f7ff}.opboard-row:not(:last-child){border-bottom:1px solid #e9ecef}.opboard-row--selected{background:#eff6ff}.opboard-row--selected:hover{background:#dbeafe}.opboard-row--favorite{background:#fffbeb}.opboard-row td{padding:11px 10px;font-size:13px;vertical-align:middle}.opboard-cell--favorite{text-align:center;padding:10px 6px}.opboard-flight-info{display:flex;align-items:center;gap:8px}.opboard-flight-number{font-size:14px;font-weight:600;color:#1e293b;text-decoration:none}.opboard-flight-number:hover{color:#06c}.opboard-badges{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}.opboard-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;font-size:10px;font-weight:700;border-radius:4px;white-space:nowrap}.opboard-badge--messages{background:#dbeafe;color:#1e40af}.opboard-badge--slot{background:#fef3c7;color:#92400e}.opboard-badge--ed{background:#f3e8ff;color:#7c3aed}.opboard-request-indicators{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.opboard-request-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px}.opboard-request-indicator svg{flex-shrink:0}.opboard-request-indicator--pending{background:#fef3c7;color:#b45309}.opboard-request-indicator--ed{background:#f3e8ff;color:#7c3aed}.opboard-request-done{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#10b981}.opboard-request-done svg{flex-shrink:0}.opboard-empty{padding:40px;text-align:center;color:#64748b;font-size:14px;background:#f8f9fa;border-radius:10px;margin-top:20px}.opboard-map-btn{display:flex;align-items:center;gap:6px}.ramp-board-page{max-width:1400px}.rampboard-table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #00000014;margin-top:20px}.rampboard-th{padding:12px 10px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;background:#f8fafc;border-bottom:2px solid #e2e8f0;white-space:nowrap}.rampboard-th--flight{min-width:100px}.rampboard-th--time{text-align:center;min-width:55px}.rampboard-th--badges{text-align:center;min-width:70px}.rampboard-row{cursor:pointer;transition:background-color .15s}.rampboard-row:hover{background:#f0f7ff}.rampboard-row:not(:last-child){border-bottom:1px solid #e9ecef}.rampboard-row--selected{background:#eff6ff}.rampboard-row--selected:hover{background:#dbeafe}.rampboard-row td{padding:11px 10px;font-size:13px;vertical-align:middle}.rampboard-flight-info{display:flex;align-items:center;gap:8px}.rampboard-flight-number{font-size:14px;font-weight:600;color:#1e293b}.rampboard-status{display:inline-flex;align-items:center;padding:3px 8px;font-size:10px;font-weight:700;text-transform:uppercase;border-radius:4px;letter-spacing:.5px;white-space:nowrap}.rampboard-status--scheduled{background:#f1f5f9;color:#475569}.rampboard-status--inbound{background:#dbeafe;color:#1e40af}.rampboard-status--on-ground{background:#d1fae5;color:#065f46}.rampboard-status--departed{background:#f1f5f9;color:#94a3b8}.rampboard-status--cancelled{background:#fef2f2;color:#dc2626;font-weight:700}.rampboard-row--cancelled{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.06) 10px,rgba(220,38,38,.06) 20px)!important}.rampboard-row--cancelled:hover{background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(220,38,38,.1) 10px,rgba(220,38,38,.1) 20px)!important}.rampboard-loading-badge{display:flex;align-items:center;justify-content:center}.rampboard-lir-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;font-size:10px;font-weight:700;border-radius:4px;white-space:nowrap;background:#d1fae5;color:#065f46}.rampboard-ferry-badge{display:inline-block;font-size:9px;font-weight:700;font-family:SF Mono,Menlo,monospace;letter-spacing:.3px;padding:1px 5px;border-radius:3px;background:#64748b14;color:#64748b;border:1px solid rgba(100,116,139,.2);text-transform:uppercase;margin-left:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rampboard-empty{padding:40px;text-align:center;color:#64748b;font-size:14px;background:#f8f9fa;border-radius:10px;margin-top:20px}.ramp-drawer-info{display:flex;align-items:center;gap:16px;padding:14px 20px;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0}.ramp-drawer-info-block{display:flex;flex-direction:column;gap:2px}.ramp-drawer-info-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#94a3b8;letter-spacing:.5px}.ramp-drawer-info-value{font-size:13px;font-weight:600;color:#1e293b}.ramp-drawer-info-sub{font-size:11px;color:#94a3b8}.ramp-drawer-separator{width:1px;height:32px;background:#e2e8f0;flex-shrink:0}.mapview-overlay{position:fixed;inset:0;z-index:1000;background:#0d1117;display:flex;flex-direction:column;animation:mapview-fadein .15s ease-out}@keyframes mapview-fadein{0%{opacity:0}to{opacity:1}}.mapview-clock{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s}.mapview-clock:hover{opacity:.8}.mapview-clock-ref{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#0d1117;background:#58a6ff;padding:6px 9px;border-radius:6px 0 0 6px;line-height:1}.mapview-clock-time{font-size:20px;font-weight:600;color:#e5e7eb;font-family:SF Mono,Fira Code,monospace;letter-spacing:1.2px;background:#161b22e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px 14px;border:1px solid #30363d;border-left:none;border-radius:0 8px 8px 0;line-height:1}.mapview-close{position:absolute;top:12px;right:12px;z-index:30;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:#161b22b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#8b949e;cursor:pointer;transition:all .15s ease}.mapview-close:hover{background:#30363de6;color:#fff;border-color:#ffffff26}.mapview-body{display:flex;flex:1;min-height:0;overflow:hidden}.ct-rail{width:260px;min-width:220px;border-right:1px solid #21262d;display:flex;flex-direction:column;overflow:hidden;background:#0d1117;flex-shrink:0}.ct-rail-header{padding:10px 10px 0;flex-shrink:0}.ct-rail-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ct-rail-title{font-size:12px;font-weight:600;color:#8b949e;display:flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.4px}.ct-rail-favorites-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid #21262d;border-radius:5px;background:transparent;color:#484f58;cursor:pointer;transition:all .15s ease}.ct-rail-favorites-btn:hover{background:#161b22;color:#d4a017}.ct-rail-favorites-btn--active{background:#1c2333;border-color:#d4a017;color:#d4a017}.ct-rail-segmented{display:flex;background:#161b22;border-radius:6px;padding:2px;gap:2px;margin-bottom:6px}.ct-rail-seg-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 0;border:none;border-radius:4px;background:transparent;color:#6e7681;font-size:11px;font-weight:500;cursor:pointer;transition:all .12s ease}.ct-rail-seg-btn:hover{color:#8b949e}.ct-rail-seg-btn--active{background:#21262d;color:#e5e7eb}.ct-rail-seg-count{font-size:10px;font-weight:600;color:#58a6ff;min-width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#58a6ff1f}.ct-rail-list{flex:1;overflow-y:auto;padding:4px 6px}.ct-rail-list::-webkit-scrollbar{width:3px}.ct-rail-list::-webkit-scrollbar-track{background:transparent}.ct-rail-list::-webkit-scrollbar-thumb{background:#21262d;border-radius:2px}.ct-rail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;color:#484f58;font-size:11px;text-align:center;gap:6px}.ct-mini-card{display:flex;flex-direction:column;gap:2px;padding:7px 8px;border-radius:5px;border-left:3px solid transparent;cursor:pointer;transition:all .1s ease}.ct-mini-card:hover{background:#161b22}.ct-mini-card--selected{background:#161b22!important;border-left-color:#58a6ff!important}.ct-mini-card--arrivals{border-left-color:#3b82f6}.ct-mini-card--onGround{border-left-color:#22c55e}.ct-mini-card--completed{border-left-color:#484f58}.ct-mini-card-row1{display:flex;align-items:center;gap:5px;font-size:12px}.ct-mini-card-flight{font-weight:600;color:#e5e7eb;white-space:nowrap}.ct-mini-card-stand{font-size:10px;font-weight:500;color:#8b949e;background:#21262d;padding:0 4px;border-radius:3px;font-family:SF Mono,Fira Code,monospace;line-height:16px}.ct-mini-card-time{margin-left:auto;font-size:11px;font-weight:500;color:#6e7681;font-family:SF Mono,Fira Code,monospace}.ct-mini-card-row2{display:flex;align-items:center;gap:5px;font-size:10px;color:#484f58}.ct-mini-card-route{white-space:nowrap}.ct-mini-card-fav{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer;color:#484f58;transition:color .12s ease;font-size:11px;line-height:1}.ct-mini-card-fav:hover,.ct-mini-card-fav--active{color:#d4a017}.ct-mini-card-badges{display:flex;align-items:center;gap:3px;margin-left:auto}.ct-mini-card-badge{display:inline-flex;align-items:center;gap:2px;font-size:9px;font-weight:500;padding:0 3px;border-radius:3px;line-height:14px}.ct-mini-card-badge--requests{background:#f59e0b26;color:#f59e0b}.ct-mini-card-badge--messages{background:#58a6ff26;color:#58a6ff}.ct-map{flex:1;position:relative;overflow:hidden;min-width:0}.mapview-panel-toggle{position:absolute;top:10px;z-index:20;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #21262d;border-radius:6px;background:#0d1117d9;color:#8b949e;cursor:pointer;transition:all .15s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mapview-panel-toggle:hover{background:#161b22;color:#e5e7eb;border-color:#30363d}.mapview-panel-toggle--left{left:10px}.mapview-panel-toggle--right{right:10px}.ct-inbox{width:320px;min-width:260px;border-left:1px solid #21262d;display:flex;flex-direction:column;overflow:hidden;background:#0d1117;flex-shrink:0}.ct-inbox-header{padding:10px 10px 0;flex-shrink:0}.ct-inbox-title{font-size:12px;font-weight:600;color:#8b949e;margin-bottom:8px;display:flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.4px}.ct-inbox .tabs{background:transparent;border-bottom:1px solid #21262d}.ct-inbox .tab-btn{color:#6e7681;background:transparent}.ct-inbox .tab-btn:hover{color:#e5e7eb;background:#161b22}.ct-inbox .tab-btn--active{color:#58a6ff!important;background:transparent!important;border-bottom-color:#58a6ff!important}.ct-inbox-body{flex:1;overflow-y:auto;padding:6px}.ct-inbox-body::-webkit-scrollbar{width:3px}.ct-inbox-body::-webkit-scrollbar-track{background:transparent}.ct-inbox-body::-webkit-scrollbar-thumb{background:#21262d;border-radius:2px}.ct-inbox-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;color:#484f58;font-size:11px;text-align:center;gap:6px}.ct-inbox-group{margin-bottom:10px}.ct-inbox-group-header{display:flex;align-items:center;gap:5px;padding:4px 6px;font-size:11px;font-weight:600;color:#8b949e;cursor:pointer;border-radius:4px;transition:background .12s ease}.ct-inbox-group-header:hover{background:#161b22;color:#e5e7eb}.ct-inbox-group-stand{font-size:10px;font-weight:500;color:#6e7681;background:#21262d;padding:0 4px;border-radius:3px;font-family:SF Mono,Fira Code,monospace;line-height:16px}.ct-inbox-request{display:flex;align-items:center;gap:6px;padding:5px 6px 5px 18px;border-radius:4px;transition:background .12s ease}.ct-inbox-request:hover{background:#161b22}.ct-inbox-request-type{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:#e5e7eb;min-width:70px}.ct-inbox-request-type svg{color:#6e7681}.ct-inbox-request-time{font-size:10px;color:#484f58;font-family:SF Mono,Fira Code,monospace}.ct-inbox-request-actions{display:flex;gap:3px;margin-left:auto}.ct-inbox-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid #21262d;border-radius:4px;background:transparent;cursor:pointer;transition:all .12s ease}.ct-inbox-action-btn--accept{color:#22c55e}.ct-inbox-action-btn--accept:hover{background:#22c55e26;border-color:#22c55e}.ct-inbox-action-btn--refuse{color:#ef4444}.ct-inbox-action-btn--refuse:hover{background:#ef444426;border-color:#ef4444}.ct-inbox-message{display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:5px;cursor:pointer;transition:background .12s ease;border-left:2px solid transparent}.ct-inbox-message:hover{background:#161b22}.ct-inbox-message-header{display:flex;align-items:center;gap:5px;font-size:11px}.ct-inbox-message-flight{font-weight:600;color:#e5e7eb}.ct-inbox-message-type{font-size:9px;font-weight:500;padding:0 4px;border-radius:3px;background:#21262d;color:#6e7681;line-height:15px}.ct-inbox-message-type--MVT{background:#58a6ff1f;color:#58a6ff}.ct-inbox-message-type--SLOT_SAM,.ct-inbox-message-type--SLOT_SRM,.ct-inbox-message-type--SLOT_SLC{background:#f59e0b1f;color:#f59e0b}.ct-inbox-message-type--ED{background:#a855f71f;color:#a855f7}.ct-inbox-message-time{margin-left:auto;font-size:10px;color:#484f58;font-family:SF Mono,Fira Code,monospace}.ct-inbox-message-preview{font-size:10px;color:#484f58;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ct-flight-panel{position:absolute;top:12px;left:12px;width:380px;max-height:70%;background:#161b22;border:1px solid #21262d;border-radius:10px;display:flex;flex-direction:column;z-index:20;box-shadow:0 8px 32px #00000080;animation:ct-panel-slide-in .2s ease-out}.ct-flight-panel--ground{width:420px}@keyframes ct-panel-slide-in{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.ct-flight-panel-header{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #21262d;flex-shrink:0}.ct-flight-panel-flight-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.ct-flight-panel-fn{font-size:14px;font-weight:700;color:#e5e7eb;white-space:nowrap}.ct-flight-panel-route{font-size:11px;color:#6e7681;white-space:nowrap}.ct-flight-panel-close{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;background:#21262d;color:#6e7681;cursor:pointer;transition:all .15s ease;flex-shrink:0}.ct-flight-panel-close:hover{background:#30363d;color:#e5e7eb}.ct-flight-panel-meta{display:flex;flex-wrap:wrap;gap:4px 14px;padding:8px 14px;border-bottom:1px solid #21262d;flex-shrink:0}.ct-flight-panel-meta-item{display:flex;align-items:center;gap:6px}.ct-flight-panel-meta-label{font-size:10px;font-weight:600;color:#6e7681;text-transform:uppercase;letter-spacing:.4px}.ct-flight-panel-meta-value{font-size:12px;font-weight:600;color:#e5e7eb}.ct-flight-panel-meta-value--mono{font-family:SF Mono,Fira Code,monospace;font-size:11px;letter-spacing:.3px}.ct-flight-panel-countdown{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#0003;border-bottom:1px solid #21262d;flex-shrink:0}.ct-flight-panel-countdown-label{font-size:11px;font-weight:500;color:#8b949e;flex:1}.ct-flight-panel-countdown-value{font-size:18px;font-weight:700;font-family:SF Mono,Fira Code,monospace;letter-spacing:.5px}.ct-flight-panel-countdown--overdue{animation:ct-countdown-pulse 1.5s ease-in-out infinite}@keyframes ct-countdown-pulse{0%,to{background:#ef444414}50%{background:#ef44442e}}.ct-flight-panel-progress{padding:8px 10px;border-bottom:1px solid #21262d;flex-shrink:0;background:#0000001a}.ct-flight-panel-progress .segment-indicator{gap:4px}.ct-flight-panel-progress .segment-rail-label{color:#6e7681}.ct-flight-panel-times-split{display:flex;padding:8px 14px;gap:0;border-bottom:1px solid #21262d;flex-shrink:0}.ct-flight-panel-times-col{flex:1;display:flex;flex-direction:column;gap:3px}.ct-flight-panel-times-heading{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:#6e7681;text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}.ct-flight-panel-times-divider{width:1px;background:#21262d;margin:0 12px;align-self:stretch}.ct-flight-panel-time-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ct-flight-panel-time-label{font-size:10px;font-weight:600;color:#484f58;text-transform:uppercase;letter-spacing:.5px;min-width:28px}.ct-flight-panel-time-value{font-size:12px;font-weight:500;color:#e5e7eb;font-family:SF Mono,Fira Code,monospace}.ct-flight-panel-time-value--empty{color:#30363d}.ct-flight-panel-time-value--ctot{color:#7c3aed;font-weight:700}.ct-flight-panel-time-label--ctot{color:#7c3aed}.ct-flight-panel-tabs{flex-shrink:0}.ct-flight-panel-tabs .tabs{background:transparent;border-bottom:1px solid #21262d}.ct-flight-panel-tabs .tab-btn{color:#6e7681;background:transparent}.ct-flight-panel-tabs .tab-btn:hover{color:#e5e7eb;background:#1c2333}.ct-flight-panel-tabs .tab-btn--active{color:#58a6ff!important;background:transparent!important;border-bottom-color:#58a6ff!important}.ct-flight-panel-body{flex:1;overflow-y:auto;min-height:0}.ct-flight-panel-body::-webkit-scrollbar{width:3px}.ct-flight-panel-body::-webkit-scrollbar-track{background:transparent}.ct-flight-panel-body::-webkit-scrollbar-thumb{background:#21262d;border-radius:2px}.ct-flight-panel-body .incoming-history-empty,.ct-flight-panel-body .requests-tab-empty{color:#484f58}.opboard-unified{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0}.opboard-unified-content{flex:1;overflow:auto;display:flex;flex-direction:column}.opboard-unified-denied{padding:40px;text-align:center;color:#64748b;font-size:14px}.dashboard-content-wrapper{flex:1;display:flex;flex-direction:column;padding:14px 20px 16px;gap:0}.parking-management{flex:1;display:flex;flex-direction:column;padding:16px 20px;gap:16px;overflow:auto}.parking-loading{padding:40px;text-align:center;color:#64748b}.parking-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.parking-toolbar-left{display:flex;align-items:baseline;gap:12px}.parking-toolbar-right{display:flex;align-items:center;gap:10px}.parking-title{font-size:16px;font-weight:600;color:#1a1a2e;margin:0}.parking-stats{font-size:12px;color:#64748b}.parking-view-toggle{display:flex;background:#f0f0f3;border:1px solid #e2e8f0;border-radius:10px;padding:3px}.parking-view-btn{padding:8px 18px;font-size:13px;font-weight:500;border:none;border-radius:8px;background:transparent;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px}.parking-view-btn:hover{color:#374151}.parking-view-btn--active{background:#3b82f6;color:#fff;box-shadow:0 1px 4px #3b82f64d}.parking-view-btn--active:hover{color:#fff}.parking-scale-toggle{display:flex;background:#f0f0f3;border:1px solid #e2e8f0;border-radius:8px;padding:2px}.parking-scale-btn{padding:5px 10px;font-size:11px;font-weight:600;border:none;border-radius:6px;background:transparent;color:#94a3b8;cursor:pointer;transition:all .15s}.parking-scale-btn:hover{color:#64748b}.parking-scale-btn--active{background:#fff;color:#1a1a2e;box-shadow:0 1px 2px #0000000f}.parking-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.parking-filter-zones{display:flex;gap:4px;flex-wrap:wrap}.parking-filter-chip{padding:5px 12px;font-size:12px;font-weight:500;border:1px solid #e2e8f0;border-radius:16px;background:#fff;color:#64748b;cursor:pointer;transition:all .15s}.parking-filter-chip:hover{border-color:#cbd5e1;color:#374151}.parking-filter-chip--active{background:#1e293b;color:#fff;border-color:#1e293b}.parking-filter-chip--active:hover{background:#334155;border-color:#334155;color:#fff}.parking-filter-search-wrap{position:relative;display:flex;align-items:center}.parking-filter-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.parking-filter-search{padding:6px 12px 6px 30px;font-size:12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1a1a2e;width:160px;outline:none;transition:border-color .15s}.parking-filter-search:focus{border-color:#3b82f6}.parking-filter-search::placeholder{color:#94a3b8}.parking-grid-container{display:flex;flex-direction:column;gap:20px}.parking-zone{display:flex;flex-direction:column;gap:8px}.parking-zone-header{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.parking-zone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.parking-spot{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;transition:all .15s}.parking-spot--occupied{border-color:#bbf7d0;background:#f0fdf4}.parking-spot--empty{border-style:dashed;border-color:#cbd5e1}.parking-spot--drop-target{border-color:#3b82f6;border-style:solid;background:#eff6ff;box-shadow:0 0 0 2px #3b82f64d}.parking-spot-code{font-size:13px;font-weight:700;color:#1a1a2e;font-family:SF Mono,Fira Code,monospace}.parking-spot-flight{display:flex;align-items:center;gap:6px;font-size:11px;color:#374151}.parking-spot-flight[draggable]{cursor:grab}.parking-spot-flight[draggable]:active{cursor:grabbing;opacity:.6}.parking-spot-flight--arriving{color:#3b82f6}.parking-spot-flight-number{font-weight:600}.parking-spot-flight-window{font-size:10px;color:#64748b;margin-left:auto;white-space:nowrap}.parking-spot-flight--suggested{border:1px dashed #8b5cf6;background:#f5f3ff;border-radius:4px;padding:2px 4px;position:relative}.parking-spot-dep-time,.parking-spot-arr-time{display:flex;align-items:center;gap:2px;font-size:10px;color:#64748b;margin-left:auto}.parking-spot-empty{font-size:11px;color:#94a3b8;font-style:italic}.parking-unassigned{display:flex;flex-direction:column;gap:8px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px;transition:all .15s}.parking-unassigned--drop-target{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 2px #3b82f64d}.parking-unassigned--timeline{border-radius:0 0 8px 8px;border-top:1px dashed #fde68a}.parking-unassigned-list{display:flex;flex-direction:column;gap:6px}.parking-unassigned-item{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.parking-unassigned-item[draggable]{cursor:grab}.parking-unassigned-item[draggable]:active{cursor:grabbing;opacity:.6}.parking-unassigned-flight{font-size:12px;font-weight:600;color:#1a1a2e}.parking-unassigned-route{font-size:11px;color:#64748b}.parking-unassigned-time{font-size:11px;color:#64748b;margin-left:auto;margin-right:8px}.parking-unassigned-empty{font-size:12px;color:#94a3b8;font-style:italic;padding:4px 0}.parking-unassigned-chips{display:flex;flex-wrap:wrap;gap:6px}.parking-unassigned-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:11px;font-weight:600;color:#374151;cursor:grab;transition:all .15s}.parking-unassigned-chip:active{cursor:grabbing;opacity:.6}.parking-unassigned-chip:hover{border-color:#cbd5e1;box-shadow:0 1px 2px #0000000d}.parking-unassigned-chip-time{font-size:10px;font-weight:400;color:#94a3b8;margin-left:2px}.parking-timeline-wrapper{display:flex;flex-direction:column;cursor:grab;-webkit-user-select:none;user-select:none}.parking-timeline-wrapper--grabbing{cursor:grabbing!important}.parking-timeline-wrapper--grabbing .parking-timeline-block{pointer-events:none}.parking-timeline-container{display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:auto}.parking-timeline-header{display:flex;border-bottom:1px solid #e2e8f0;background:#f8fafc;position:sticky;top:0;z-index:2}.parking-timeline-label{width:64px;flex-shrink:0;padding:8px 10px;font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;border-right:1px solid #e2e8f0}.parking-timeline-axis{flex:1;min-width:900px;position:relative;height:28px}.parking-timeline-hour{position:absolute;top:0;padding:8px 0;font-size:10px;color:#94a3b8;text-align:center;transform:translate(-50%);-webkit-user-select:none;user-select:none}.parking-timeline-row{display:flex;border-bottom:1px solid #f0f0f3;min-height:40px}.parking-timeline-spot-label{width:64px;flex-shrink:0;padding:6px 10px;font-size:11px;font-weight:600;color:#374151;font-family:SF Mono,Fira Code,monospace;border-right:1px solid #e2e8f0;display:flex;align-items:center}.parking-timeline-track{flex:1;position:relative;min-width:900px;transition:background .15s}.parking-timeline-track--drop-target{background:#3b82f60f}.parking-timeline-gridline{position:absolute;top:0;bottom:0;width:1px;background:#f0f0f3}.parking-timeline-now{position:absolute;top:0;bottom:0;width:2px;background:#ef4444;z-index:1}.parking-timeline-now:before{content:"";position:absolute;top:-2px;left:-3px;width:8px;height:8px;border-radius:50%;background:#ef4444}.parking-timeline-block{position:absolute;top:2px;bottom:2px;border-radius:4px;padding:0 6px;display:flex;align-items:center;gap:4px;overflow:hidden;font-size:9px;font-weight:500;min-width:20px;z-index:3;transition:left .1s ease,width .1s ease,opacity .15s}.parking-timeline-block[draggable]{cursor:grab;-webkit-user-drag:element;-webkit-user-select:auto;user-select:auto}.parking-timeline-block[draggable] img{-webkit-user-drag:none;pointer-events:none}.parking-timeline-block[draggable]:active{cursor:grabbing;opacity:.6}.parking-timeline-block--conflict{border-color:#ef4444!important;box-shadow:0 0 0 1px #ef444466}.parking-block--on-ground{background:#dcfce7;border:1px solid #86efac;color:#166534}.parking-block--arriving{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.parking-block--completed{background:#f1f5f9;border:1px solid #cbd5e1;color:#64748b}.parking-block-label{flex-shrink:0;white-space:nowrap;font-size:11px;font-weight:700}.parking-block-times{flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:400;color:inherit;opacity:.8}.parking-block-route{flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:400;color:inherit;opacity:.65}.parking-timeline-block--suggested{border-style:dashed!important;opacity:.85;background-image:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(139,92,246,.08) 4px,rgba(139,92,246,.08) 8px)}.parking-timeline-block--frozen{opacity:.7;cursor:default!important}.parking-timeline-block--frozen[draggable=false]{cursor:default}.parking-block-lock{flex-shrink:0;opacity:.6}.parking-now-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;cursor:pointer;transition:background .15s,color .15s}.parking-now-btn:hover{background:#e0f2fe;color:#0369a1}.parking-suggest-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;border:1px solid #8b5cf6;border-radius:8px;background:#f5f3ff;color:#7c3aed;cursor:pointer;transition:all .15s}.parking-suggest-btn:hover{background:#ede9fe;border-color:#7c3aed}.parking-suggest-actions{display:flex;align-items:center;gap:10px}.parking-suggest-label{font-size:12px;font-weight:500;color:#7c3aed;padding:4px 10px;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:6px}.parking-suggest-warning{display:flex;flex-direction:column;gap:0;padding:10px 14px;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;font-size:12px;font-weight:500;color:#92400e}.parking-suggest-warning-header{display:flex;align-items:center;gap:8px}.parking-suggest-warning-dismiss{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#92400e;cursor:pointer;margin-left:auto;padding:2px;border-radius:4px;flex-shrink:0}.parking-suggest-warning-dismiss:hover{background:#92400e1a}.parking-suggest-warning-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.parking-suggest-warning-flight{display:flex;align-items:center;gap:5px;padding:3px 8px;background:#fff;border:1px solid #fde68a;border-radius:4px;font-size:11px}.parking-suggest-warning-flight-num{font-weight:600;color:#92400e}.parking-suggest-warning-flight-time{color:#b45309;font-size:10px}.parking-flight-unassign{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:50%;background:transparent;color:#94a3b8;cursor:pointer;flex-shrink:0;margin-left:auto;opacity:0;transition:all .15s}.parking-spot-flight:hover .parking-flight-unassign,.parking-timeline-block:hover .parking-flight-unassign{opacity:1}.parking-flight-unassign:hover{background:#ef44441a;color:#ef4444}.parking-flight-unassign--block{width:16px;height:16px;margin-left:2px}.parking-timeline-gap{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:auto;cursor:default}.parking-timeline-gap--orange{background:#fbbf2426}.parking-timeline-gap--orange svg{color:#f59e0b}.parking-timeline-gap--red{background:#ef444426}.parking-timeline-gap--red svg{color:#ef4444}.parking-spot-gap-warning{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.parking-spot-gap-warning--orange{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.parking-spot-gap-warning--red{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.parking-unassigned-item--unallocable,.parking-unassigned-chip--unallocable{border-color:#f97316;background:#fff7ed}.parking-suggest-modal{max-width:560px;width:90%}.parking-suggest-section{margin-bottom:20px}.parking-suggest-section:last-child{margin-bottom:0}.parking-suggest-section-title{font-size:12px;font-weight:600;color:#1a1a2e;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.parking-suggest-radio{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:#374151;cursor:pointer}.parking-suggest-radio input[type=radio]{accent-color:#7c3aed}.parking-suggest-flight-list{max-height:200px;overflow-y:auto;margin-top:6px;padding-left:24px;display:flex;flex-direction:column;gap:2px}.parking-suggest-checkbox{display:flex;align-items:center;gap:8px;padding:4px 8px;font-size:12px;color:#374151;cursor:pointer;border-radius:4px;transition:background .1s}.parking-suggest-checkbox:hover{background:#f8fafc}.parking-suggest-checkbox input[type=checkbox]{accent-color:#7c3aed}.parking-suggest-checkbox--inline{display:inline-flex;margin-right:4px}.parking-suggest-flight-num{font-weight:600;min-width:64px}.parking-suggest-flight-route{color:#64748b;min-width:80px}.parking-suggest-flight-time{color:#94a3b8;margin-left:auto}.parking-suggest-zone-list,.parking-suggest-spot-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;padding-left:24px}.parking-suggest-spot-list{max-height:140px;overflow-y:auto}.pairing-content{flex:1;overflow:auto;padding:0}.pairing-restricted{padding:40px;text-align:center;color:#64748b;font-size:14px}.parking-pending-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 4px 16px #0000001f;z-index:100;animation:parking-pending-in .2s ease-out}@keyframes parking-pending-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.parking-pending-label{font-size:13px;color:#334155;white-space:nowrap}.timeline-pairing-view{display:flex;flex-direction:column;height:100%;min-height:400px}.timeline-pairing-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.timeline-pairing-stats{display:flex;gap:16px}.timeline-pairing-stat{display:flex;align-items:center;gap:6px;font-size:13px;color:#666}.timeline-pairing-stat svg{color:#888}.timeline-pairing-filters{display:flex;gap:10px}.timeline-airline-filter{padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;background:#fff;min-width:140px}.timeline-airline-filter:focus{outline:none;border-color:#06c}.timeline-blocked-toast{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fee2e2;border-bottom:1px solid #fecaca;color:#dc2626;font-size:13px;font-weight:500}.timeline-blocked-toast svg{flex-shrink:0}.timeline-info-toast{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#dbeafe;border-bottom:1px solid #bfdbfe;color:#1e40af;font-size:13px;font-weight:500}.timeline-info-toast svg{flex-shrink:0}.timeline-selection-hint{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#dbeafe;border-bottom:1px solid #bfdbfe;color:#1e40af;font-size:12px}.timeline-selection-hint strong{font-weight:600}.timeline-nightstop-hint{display:flex;align-items:center;gap:4px;margin-left:12px;padding:2px 8px;background:#fef3c7;color:#92400e;border-radius:4px;font-size:11px;font-weight:500}.timeline-nightstop-hint svg{flex-shrink:0}.timeline-container{flex:1;overflow-y:auto;padding:16px;background:#fafafa}.timeline-loading,.timeline-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#666;text-align:center}.timeline-empty h4{margin:12px 0 4px;font-size:15px;font-weight:600;color:#333}.timeline-empty p{margin:0;font-size:13px}.timeline-lanes{display:grid;grid-template-columns:1fr 40px 1fr;gap:0;min-height:300px}.timeline-lane{display:flex;flex-direction:column}.timeline-lane-header{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;border-bottom:2px solid #e5e7eb;position:sticky;top:0;background:#fafafa;z-index:1}.timeline-lane--arrivals .timeline-lane-header{border-color:#22c55e;color:#16a34a}.timeline-lane--departures .timeline-lane-header{border-color:#3b82f6;color:#2563eb}.timeline-lane-content{display:flex;flex-direction:column;gap:6px;padding:12px 8px}.timeline-lane-empty{padding:24px 12px;text-align:center;color:#999;font-size:12px;font-style:italic}.timeline-axis{display:flex;justify-content:center;padding-top:40px}.timeline-axis-line{width:2px;background:linear-gradient(to bottom,#e5e7eb,#d1d5db);border-radius:1px}.timeline-leg-card{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.timeline-leg-card:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.timeline-leg-card--arrival{border-left:3px solid #22c55e}.timeline-leg-card--arrival .timeline-leg-card-icon{color:#22c55e}.timeline-leg-card--departure{border-left:3px solid #3b82f6}.timeline-leg-card--departure .timeline-leg-card-icon{color:#3b82f6}.timeline-leg-card--selected{border-color:#06c;background:#eff6ff;box-shadow:0 0 0 2px #06c3}.timeline-leg-card--highlighted{border-color:#22c55e;background:#f0fdf4}.timeline-leg-card--highlighted:hover{background:#dcfce7}.timeline-leg-card--dimmed{opacity:.4;cursor:not-allowed}.timeline-leg-card--dimmed:hover{box-shadow:none;border-color:#e5e7eb}.timeline-leg-card--paired{background:#f0fdf4;border-color:#86efac;opacity:.6;cursor:default}.timeline-leg-card--operated{background:#f9fafb}.timeline-leg-card--operated:after{content:"";position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 16px 16px 0;border-color:transparent #22c55e transparent transparent;border-radius:0 8px 0 0}.timeline-leg-card--nightstop{border-left-color:#f59e0b}.timeline-leg-card--ghost-target{position:relative}.timeline-leg-card--ghost-target:before{content:"";position:absolute;left:-3px;top:50%;transform:translateY(-50%);width:6px;height:6px;background:#f59e0b;border-radius:50%}.timeline-leg-card-icon{flex-shrink:0;display:flex;align-items:center;padding-top:2px}.timeline-leg-card-content{flex:1;min-width:0}.timeline-leg-card-header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.timeline-leg-card-flight{font-size:13px;font-weight:700;color:#1a1a2e}.timeline-leg-card-time{font-size:12px;font-weight:600;font-family:SF Mono,Menlo,monospace;color:#06c;margin-left:auto}.timeline-leg-card-details{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px;color:#666}.timeline-leg-card-route{color:#555}.timeline-leg-card-type{padding:1px 5px;background:#f3f4f6;border-radius:3px;font-family:SF Mono,Menlo,monospace;font-size:10px;font-weight:500;color:#374151;display:inline-flex;align-items:center;gap:4px}.timeline-leg-card-type--unknown{background:#fef3c7;color:#d97706;border:1px dashed #fbbf24}.timeline-leg-card-type--editable{cursor:pointer;transition:all .15s}.timeline-leg-card-type--editable:hover{background:#e5e7eb;color:#1f2937}.timeline-leg-card-type--editable.timeline-leg-card-type--unknown:hover{background:#fde68a;color:#b45309}.timeline-leg-card-type-edit-icon{opacity:0;transition:opacity .15s}.timeline-leg-card-type--editable:hover .timeline-leg-card-type-edit-icon{opacity:1}.timeline-leg-card-reg{padding:1px 5px;background:#dbeafe;border-radius:3px;font-family:SF Mono,Menlo,monospace;font-size:10px;color:#1e40af;display:inline-flex;align-items:center;gap:4px}.timeline-leg-card-reg--editable{cursor:pointer;transition:all .15s}.timeline-leg-card-reg--editable:hover{background:#bfdbfe;color:#1e3a8a}.timeline-leg-card-reg-edit-icon{opacity:0;transition:opacity .15s}.timeline-leg-card-reg--editable:hover .timeline-leg-card-reg-edit-icon{opacity:1}.timeline-leg-card-ghost-hint{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:9px;color:#f59e0b;background:#fef3c7;padding:2px 6px;border-radius:3px;font-weight:500}.timeline-leg-card-paired-badge{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#22c55e;color:#fff;border-radius:50%}.timeline-leg-card-badges{display:flex;flex-direction:column;gap:4px;margin-left:auto;padding-left:8px}.timeline-leg-card-badge{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;border:none;cursor:pointer;transition:all .15s}.timeline-leg-card-badge--operated{background:#d1fae5;color:#059669;cursor:default}.timeline-leg-card-badge--nightstop{background:#fef3c7;color:#d97706}.timeline-leg-card-badge--nightstop:hover{background:#fde68a}.timeline-leg-card-badge--nightstop.timeline-leg-card-badge--manual{background:#f59e0b;color:#fff}.timeline-leg-card-badge--nightstop.timeline-leg-card-badge--manual:hover{background:#d97706}.timeline-leg-card-badge--nightstop-hint{background:transparent;color:#fbbf24;border:1px dashed #fbbf24}.timeline-leg-card-badge--nightstop-hint:hover{background:#fef3c7;color:#d97706;border-style:solid}.timeline-leg-card-badge--nightstop-off{background:transparent;color:#d1d5db}.timeline-leg-card-badge--nightstop-off:hover{background:#f3f4f6;color:#9ca3af}.pending-pairings-panel{background:#fff;border-top:2px solid #0066cc;box-shadow:0 -4px 12px #00000014}.pending-pairings-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.pending-pairings-header h4{margin:0;font-size:14px;font-weight:600;color:#333}.pending-pairings-list{max-height:200px;overflow-y:auto}.pending-pairing-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #f3f4f6}.pending-pairing-row:last-child{border-bottom:none}.pending-pairing-row:hover{background:#fafafa}.pending-pairing-leg{display:flex;align-items:center;gap:6px;flex:1}.pending-pairing-leg--arr{justify-content:flex-end;text-align:right}.pending-pairing-leg--dep{justify-content:flex-start}.pending-pairing-flight{font-size:13px;font-weight:600;color:#1a1a2e}.pending-pairing-route{font-size:12px;color:#666}.pending-pairing-time{font-size:11px;font-family:SF Mono,Menlo,monospace;color:#888}.pending-pairing-connector{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 8px;min-width:60px}.pending-pairing-ground{font-size:11px;font-weight:600;color:#06c;background:#dbeafe;padding:2px 8px;border-radius:4px}.pending-pairing-warning{color:#f59e0b;display:flex;align-items:center}.pending-pairing-aircraft{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:600;font-family:SF Mono,Menlo,monospace;padding:2px 6px;border-radius:3px}.pending-pairing-aircraft--match{background:#d1fae5;color:#059669}.pending-pairing-aircraft--unknown{background:#f3f4f6;color:#9ca3af}.pending-pairing-aircraft--warning{background:#fef3c7;color:#d97706}.pending-pairing-aircraft--warning svg{flex-shrink:0}.pending-pairing-row--warning{background:#fffbeb;border-left:3px solid #f59e0b}.pending-pairing-row--warning:hover{background:#fef3c7}.pending-pairing-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;color:#888;cursor:pointer;transition:all .15s}.pending-pairing-remove:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}.registration-edit-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.registration-edit-modal{background:#fff;border-radius:8px;padding:20px;min-width:280px;box-shadow:0 4px 20px #00000026}.registration-edit-modal h4{margin:0 0 16px;font-size:16px;font-weight:600;color:#111827}.registration-edit-input{width:100%;padding:10px 12px;font-size:14px;font-family:JetBrains Mono,SF Mono,Menlo,monospace;text-transform:uppercase;border:1px solid #d1d5db;border-radius:6px;margin-bottom:16px}.registration-edit-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.registration-edit-input:disabled{background:#f3f4f6;color:#9ca3af}.registration-edit-actions{display:flex;gap:8px}.registration-edit-hint{margin:12px 0 0;font-size:12px;color:#6b7280}@media(max-width:900px){.timeline-lanes{grid-template-columns:1fr;gap:16px}.timeline-axis{display:none}.pending-pairing-row{flex-wrap:wrap}.pending-pairing-leg{flex-basis:100%;justify-content:flex-start!important}.pending-pairing-connector{flex-basis:100%;flex-direction:row;justify-content:center;padding:8px 0}}.drawer-overlay{position:fixed;inset:0;background:#0000004d;z-index:899;opacity:0;transition:opacity .25s ease;pointer-events:none}.drawer-overlay--open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:50%;max-width:720px;min-width:400px;background:#f8fafc;z-index:900;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-4px 0 24px #0000001f}.drawer--open{transform:translate(0)}.drawer-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0}.drawer-header-flight{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.drawer-header-flight-number{font-size:18px;font-weight:700;color:#1e293b;white-space:nowrap}.drawer-header-route{font-size:13px;color:#64748b;white-space:nowrap}.drawer-header-reg{font-size:12px;color:#94a3b8;font-family:SF Mono,Menlo,monospace;white-space:nowrap}.drawer-header-aircraft{font-size:12px;color:#94a3b8;white-space:nowrap}.drawer-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;color:#64748b;flex-shrink:0;transition:background .15s,color .15s}.drawer-close-btn:hover{background:#e2e8f0;color:#1e293b}.drawer-tabs{padding:0 20px;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0}.drawer-body{flex:1;overflow-y:auto;padding:20px}.mvt-section{margin-bottom:16px}.mvt-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px 8px 0 0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.mvt-section-header:hover{background:#f8fafc}.mvt-section-header--collapsed{border-radius:8px}.mvt-section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#1e293b}.mvt-section-chevron{color:#94a3b8;transition:transform .2s}.mvt-section-chevron--open{transform:rotate(180deg)}.mvt-section-body{border:1px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;overflow:hidden}.mvt-message-block{position:relative;background:#1e293b;padding:16px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.6;color:#e2e8f0;white-space:pre-wrap;word-break:break-all}.mvt-message-unavailable{padding:20px 16px;text-align:center;color:#94a3b8;font-size:13px;background:#f8fafc}.mvt-copy-btn{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#cbd5e1;border-radius:6px;cursor:pointer;transition:background .15s,color .15s}.mvt-copy-btn:hover{background:#fff3;color:#fff}.mvt-copy-btn--copied{background:#10b98133;border-color:#10b98166;color:#34d399}.incoming-input-section{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:16px}.incoming-textarea{width:100%;min-height:100px;padding:12px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;color:#1e293b;border:1px solid #e2e8f0;border-radius:8px;resize:vertical;background:#f8fafc;transition:border-color .15s}.incoming-textarea::placeholder{color:#94a3b8}.incoming-textarea:focus{outline:none;border-color:#06c;background:#fff}.incoming-controls{display:flex;align-items:center;gap:10px;margin-top:10px}.incoming-type-select{padding:8px 12px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1e293b;cursor:pointer;min-width:140px}.incoming-type-select:focus{outline:none;border-color:#06c}.incoming-save-btn{margin-left:auto}.incoming-impact-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-top:10px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:13px;color:#92400e}.incoming-impact-banner-icon{flex-shrink:0;color:#f59e0b}.incoming-impact-text{flex:1}.incoming-impact-actions{display:flex;gap:8px;flex-shrink:0}.incoming-history-title{font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:10px;letter-spacing:.5px}.incoming-history-empty{text-align:center;padding:32px 20px;color:#94a3b8;font-size:13px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.incoming-message-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;margin-bottom:10px;transition:box-shadow .15s}.incoming-message-card:hover{box-shadow:0 2px 8px #0000000f}.incoming-message-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.incoming-message-type-badge{display:inline-flex;align-items:center;padding:3px 8px;font-size:10px;font-weight:700;text-transform:uppercase;border-radius:4px;letter-spacing:.5px}.incoming-message-type-badge--MVT{background:#dbeafe;color:#1e40af}.incoming-message-type-badge--SLOT_SAM,.incoming-message-type-badge--SLOT_SRM,.incoming-message-type-badge--SLOT_SLC{background:#fef3c7;color:#92400e}.incoming-message-type-badge--ED{background:#f3e8ff;color:#7c3aed}.incoming-message-type-badge--LDM{background:#d1fae5;color:#065f46}.incoming-message-type-badge--OTHER{background:#f1f5f9;color:#475569}.incoming-message-impact-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:10px;font-weight:600;background:#d1fae5;color:#065f46;border-radius:4px}.incoming-message-time{font-size:11px;color:#94a3b8;margin-left:auto}.incoming-message-author{font-size:11px;color:#94a3b8}.incoming-message-content{font-family:SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;color:#475569;background:#f8fafc;padding:10px 12px;border-radius:6px;white-space:pre-wrap;word-break:break-all;max-height:120px;overflow-y:auto}@media(max-width:768px){.drawer{width:100%;min-width:unset;max-width:unset}}.ld-container{display:flex;flex-direction:column;gap:10px}.ld-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--border-primary, #e5e5e5)}.ld-tabs{display:flex;gap:2px;background:var(--bg-tertiary, #f0f0f0);padding:2px;border-radius:6px}.ld-tab{display:flex;align-items:center;gap:4px;padding:5px 12px;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;border:none;background:transparent;color:var(--text-secondary, #666);cursor:pointer;border-radius:4px;transition:all .15s ease}.ld-tab:hover{color:var(--text-primary, #333)}.ld-tab--active{background:#fff;color:var(--text-primary, #111);box-shadow:0 1px 2px #0000000f}.ld-refresh{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:none;color:var(--text-tertiary, #999);cursor:pointer;border-radius:4px;transition:all .15s ease}.ld-refresh:hover{background:var(--bg-secondary, #f5f5f5);color:var(--text-secondary, #666)}.ld-refresh:disabled{opacity:.4;cursor:not-allowed}.ld-refresh .spinning{animation:ld-spin 1s linear infinite}@keyframes ld-spin{to{transform:rotate(360deg)}}.ld-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(max-width:600px){.ld-grid{grid-template-columns:1fr}}.ld-ssr-section{grid-column:1 / -1;margin-top:4px}.ld-card{background:#fff;border:1px solid var(--border-primary, #e0e0e0);border-radius:8px;overflow:hidden}.ld-card--complete{border-color:#22c55e;border-width:2px}.ld-card--disabled{background:var(--bg-secondary, #f9f9f9);border-style:dashed}.ld-card-header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:var(--bg-secondary, #fafafa);border-bottom:1px solid var(--border-primary, #e5e5e5)}.ld-card--complete .ld-card-header{background:#f0fdf4;border-bottom-color:#bbf7d0}.ld-card--disabled .ld-card-header{background:var(--bg-tertiary, #f0f0f0)}.ld-card-title{display:flex;align-items:center;gap:6px}.ld-card-label{font-size:12px;font-weight:700;color:var(--text-primary, #111);letter-spacing:.3px}.ld-card-subtitle{font-size:10px;color:var(--text-secondary, #666)}.ld-card-check{color:#22c55e}.ld-card-lock{color:var(--text-tertiary, #aaa)}.ld-card-time{font-size:10px;font-weight:500;color:var(--text-tertiary, #888);font-family:SF Mono,Menlo,monospace}.ld-card-locked{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px;color:var(--text-tertiary, #aaa);font-size:11px}.ld-card-body{padding:10px;display:flex;flex-direction:column;gap:10px}.ld-card-actions{display:flex;justify-content:flex-end;gap:6px;padding:8px 10px;border-top:1px solid var(--border-primary, #f0f0f0);background:var(--bg-secondary, #fafafa)}.ld-card-actions:empty{display:none}.ld-tob-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:6px;border:1px solid var(--border-primary, #e2e8f0)}.ld-tob{display:flex;align-items:baseline;gap:1px}.ld-tob-seated{font-size:24px;font-weight:700;color:var(--text-primary, #0f172a);font-family:SF Mono,Menlo,monospace;line-height:1}.ld-tob-plus{font-size:14px;font-weight:400;color:var(--text-tertiary, #94a3b8);margin:0 1px}.ld-tob-infants{font-size:14px;font-weight:600;color:var(--text-secondary, #64748b);font-family:SF Mono,Menlo,monospace}.ld-tob-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary, #94a3b8)}.ld-tob-seated--empty{color:var(--text-tertiary, #94a3b8)}.ld-pax-row{display:flex;gap:6px}.ld-pax-field{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;background:var(--bg-secondary, #f8f9fa);border-radius:4px;border:1px solid var(--border-primary, #e9ecef)}.ld-pax-label{font-size:10px;font-weight:700;color:var(--text-primary, #333)}.ld-pax-value{font-size:16px;font-weight:700;color:var(--text-primary, #111);font-family:SF Mono,Menlo,monospace}.ld-pax-value--empty{color:var(--text-tertiary, #94a3b8);font-weight:400}.ld-pax-input{width:40px;height:24px;border:1px solid var(--border-primary, #d1d5db);border-radius:4px;text-align:center;font-size:14px;font-weight:600;font-family:SF Mono,Menlo,monospace;background:#fff}.ld-pax-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.ld-info-row{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;background:var(--bg-tertiary, #f1f5f9);border-radius:4px}.ld-info-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-tertiary, #64748b)}.ld-info-value{font-size:12px;font-weight:700;color:var(--text-primary, #1e293b);font-family:SF Mono,Menlo,monospace}.ld-info-value--empty{color:var(--text-tertiary, #94a3b8);font-weight:400}.ld-zones-row{display:flex;align-items:center;gap:6px}.ld-zones-pills{display:flex;gap:4px;flex:1}.ld-zone-pill{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-primary, #e2e8f0);border-radius:12px}.ld-zone-label{font-size:9px;font-weight:600;color:var(--text-secondary, #64748b)}.ld-zone-value{font-size:12px;font-weight:700;color:var(--text-primary, #1e293b);font-family:SF Mono,Menlo,monospace;min-width:16px;text-align:center}.ld-zone-value--empty{color:var(--text-tertiary, #94a3b8);font-weight:400}.ld-zone-input{width:32px;height:18px;border:1px solid var(--border-primary, #d1d5db);border-radius:3px;text-align:center;font-size:11px;font-weight:600;font-family:SF Mono,Menlo,monospace;background:#fff}.ld-zone-input:focus{outline:none;border-color:#3b82f6}.ld-zones-sum{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-tertiary, #e2e8f0);border-radius:12px}.ld-zones-sum-eq{font-size:10px;color:var(--text-tertiary, #64748b)}.ld-zones-sum-value{font-size:12px;font-weight:700;color:var(--text-primary, #1e293b);font-family:SF Mono,Menlo,monospace}.ld-zones-sum-value--empty{color:var(--text-tertiary, #94a3b8);font-weight:400}.ld-zones-sum--error{background:#fee2e2}.ld-zones-sum--error .ld-zones-sum-value{color:#dc2626}.ld-bag-tab-content{display:flex;flex-direction:column;gap:16px;grid-column:1 / -1}.ld-bag-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:600px){.ld-bag-cards{grid-template-columns:1fr}}.ld-bag-row{display:flex;gap:10px}.ld-bag-field{flex:1;display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:var(--bg-secondary, #f8f9fa);border-radius:6px;border:1px solid var(--border-primary, #e9ecef)}.ld-bag-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-tertiary, #64748b)}.ld-bag-value-row{display:flex;align-items:center;gap:6px}.ld-bag-value{font-size:20px;font-weight:700;color:var(--text-primary, #1e293b);font-family:SF Mono,Menlo,monospace}.ld-bag-value--empty{color:var(--text-tertiary, #94a3b8);font-weight:400}.ld-bag-suffix{font-size:11px;font-weight:500;color:var(--text-secondary, #64748b);margin-left:2px}.ld-bag-input{width:70px;height:28px;border:1px solid var(--border-primary, #d1d5db);border-radius:4px;text-align:center;font-size:16px;font-weight:600;font-family:SF Mono,Menlo,monospace;background:#fff}.ld-bag-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.ld-bag-summary{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px}.ld-bag-summary--editing{padding:8px}.ld-bag-main{display:flex;align-items:baseline;gap:6px;font-family:SF Mono,Menlo,Monaco,monospace}.ld-bag-pcs,.ld-bag-kg{font-size:28px;font-weight:700;color:#1e293b;line-height:1}.ld-bag-pcs--empty,.ld-bag-kg--empty{font-size:24px;font-weight:400;color:#94a3b8}.ld-bag-unit{font-size:11px;font-weight:500;color:#64748b;margin-left:2px;text-transform:lowercase}.ld-bag-separator{font-size:20px;color:#cbd5e1;margin:0 4px}.ld-bag-delta{display:flex;gap:4px;margin-left:8px}.ld-bag-avg{display:flex;align-items:baseline;gap:4px;padding:4px 10px;background:#f1f5f9;border-radius:12px}.ld-bag-avg-value{font-size:14px;font-weight:700;color:#334155;font-family:SF Mono,Menlo,Monaco,monospace}.ld-bag-avg-label{font-size:10px;font-weight:500;color:#64748b;text-transform:lowercase}.ld-bag-input-group{display:flex;gap:12px;width:100%}.ld-bag-input-field{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.ld-bag-input-label{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.ld-delta{display:inline-flex;align-items:center;padding:1px 4px;border-radius:3px;font-size:10px;font-weight:600;font-family:SF Mono,Menlo,monospace}.ld-delta--small{font-size:9px;padding:1px 3px}.ld-delta--plus{color:#16a34a;background:#dcfce7}.ld-delta--minus{color:#dc2626;background:#fee2e2}.ld-btn{padding:5px 10px;font-size:11px;font-weight:500;border-radius:4px;cursor:pointer;border:1px solid var(--border-primary, #d1d5db);background:#fff;color:var(--text-primary, #374151);transition:all .15s ease}.ld-btn:hover{background:var(--bg-secondary, #f3f4f6);border-color:#9ca3af}.ld-btn--ghost{background:transparent;border-color:transparent}.ld-btn--ghost:hover{background:var(--bg-secondary, #f3f4f6);border-color:transparent}.ld-btn--primary{background:#3b82f6;border-color:#3b82f6;color:#fff}.ld-btn--primary:hover{background:#2563eb;border-color:#2563eb}.ld-btn--primary:disabled{background:#9ca3af;border-color:#9ca3af;cursor:not-allowed}.ld-header-actions{display:flex;align-items:center;gap:10px}.ld-btn--pdf-available{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;border-radius:6px;cursor:pointer;border:1px solid #dc2626;background:#fef2f2;color:#dc2626;transition:all .15s ease;animation:ld-pulse 2s ease-in-out infinite}.ld-btn--pdf-available:hover:not(:disabled){background:#fee2e2;border-color:#b91c1c;color:#b91c1c;animation:none}.ld-btn--pdf-available:disabled{opacity:.7;cursor:wait;animation:none}.ld-btn--pdf-available svg{flex-shrink:0}@keyframes ld-pulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 4px #dc262600}}.ld-btn--pdf-final{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;border-radius:6px;cursor:pointer;border:1px solid #16a34a;background:#f0fdf4;color:#16a34a;transition:all .15s ease}.ld-btn--pdf-final:hover:not(:disabled){background:#dcfce7;border-color:#15803d;color:#15803d}.ld-btn--pdf-final:disabled{opacity:.7;cursor:wait}.ld-btn--pdf-final svg{flex-shrink:0}.ld-btn--lir{display:flex;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;border-radius:8px;cursor:pointer;border:1px solid #3b82f6;background:#eff6ff;color:#3b82f6;transition:all .15s ease;animation:ld-pulse-blue 2.5s ease-in-out infinite}.ld-btn--lir:hover:not(:disabled){background:#dbeafe;border-color:#2563eb;color:#2563eb;animation:none}.ld-btn--lir:disabled{opacity:.7;cursor:wait;animation:none}.ld-btn--lir svg{flex-shrink:0}.ld-btn--lir-v3{display:flex;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;border-radius:8px;cursor:pointer;border:1px solid #2563eb;background:#eff6ff;color:#2563eb;transition:all .15s ease}.ld-btn--lir-v3:hover:not(:disabled){background:#dbeafe;border-color:#1d4ed8;color:#1d4ed8}.ld-btn--lir-v3:disabled{opacity:.7;cursor:wait}.ld-btn--lir-v3 svg{flex-shrink:0}@keyframes ld-pulse-blue{0%,to{box-shadow:0 0 #3b82f64d}50%{box-shadow:0 0 0 4px #3b82f600}}@media(prefers-reduced-motion:reduce){.ld-btn--lir{animation:none}}.loading-section{margin-top:8px;padding-top:12px;border-top:1px solid #e2e8f0;width:100%}.loading-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.loading-section-header h3{margin:0;font-size:13px;font-weight:700;color:#475569;display:flex;align-items:center;text-transform:uppercase;letter-spacing:.3px}.loading-estimation{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;margin-bottom:12px;box-shadow:0 1px 3px #0000000a}.loading-estimation h4{margin:0 0 14px;font-size:13px;font-weight:700;color:#334155;display:flex;align-items:center;gap:6px}.loading-estimation-hint{font-size:11px;font-weight:400;color:#94a3b8;font-style:italic;margin-left:10px;padding-left:10px;border-left:1px solid #e2e8f0}.loading-estimation-hint strong{font-weight:700;font-style:normal;color:#64748b}.loading-estimation-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:14px;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.loading-estimation-field{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 12px;background:#f8fafc}.loading-estimation-field+.loading-estimation-field{border-left:1px solid #e2e8f0}.loading-estimation-field label{font-size:10.5px;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.3px;text-align:center}.loading-estimation-field label strong{font-weight:700;color:#1e293b}.loading-estimation-field input{width:100%;max-width:120px;border-radius:5px;border:1px solid #cbd5e1;padding:7px 10px;font-size:13px;background:#fff;text-align:center;transition:border-color .15s;box-sizing:border-box}.loading-estimation-field input:focus{border-color:#94a3b8;outline:none}.loading-estimation>.btn{display:flex;align-items:center;gap:6px;margin:0 auto;background:#eff6ff;color:#3b82f6;border:1px solid #bfdbfe;font-weight:600;font-size:12px}.loading-estimation>.btn:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd}.loading-estimation>.btn:disabled{opacity:.45;cursor:not-allowed}.loading-clc-notice{margin-top:12px;padding:8px 12px;background:#fef3c7;border-radius:6px;font-size:12px;color:#92400e;display:flex;align-items:center;gap:6px}.loading-recommendation{background:#eff6ff;border:1px solid #bfdbfe;border-left:4px solid #3b82f6;border-radius:8px;padding:16px;margin-bottom:16px}.loading-recommendation-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.loading-recommendation-header h4{margin:0;font-size:14px}.loading-recommendation-ttb,.loading-recommendation-rule{font-size:12px;color:var(--text-secondary, #666)}.loading-range-changed-alert{font-size:12px;color:#dc2626;font-weight:600;display:flex;align-items:center;gap:4px}.loading-editable-distribution{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.loading-hold-edit{display:flex;align-items:center;gap:6px;background:#fff;padding:6px 10px;border-radius:6px;border:1px solid #cbd5e1;box-shadow:0 1px 2px #0000000a}.loading-hold-edit--reste{background:#eff6ff;border-color:#3b82f6}.loading-hold-reste{font-size:13px}.loading-hold-manual-input{display:flex;align-items:center;gap:4px}.loading-hold-reste-btn{width:28px;height:28px;border-radius:6px;border:1px solid #cbd5e1;background:#f8fafc;color:#94a3b8;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:all .15s ease}.loading-hold-reste-btn:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.loading-hold-reste-btn--active{background:#3b82f6;border-color:#3b82f6;color:#fff;font-size:14px;width:36px;height:32px}.loading-hold-reste-btn--active:hover{background:#2563eb;border-color:#2563eb;color:#fff}.loading-edit-notice{font-size:12px;color:#b45309;display:flex;align-items:center;gap:4px;margin-bottom:8px}.loading-recommendation-actions{display:flex;gap:10px;margin-top:10px}.loading-distribution{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9}.loading-hold-pill{display:flex;flex-direction:column;align-items:center;gap:2px;background:#fff;padding:8px 14px;border-radius:10px;font-size:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f;min-width:64px}.loading-hold-id{font-weight:700;color:#64748b;font-size:9px;text-transform:uppercase;letter-spacing:.5px}.loading-hold-pcs{font-size:20px;font-weight:800;color:#1e293b;font-family:SF Mono,Menlo,monospace;line-height:1.1}.loading-hold-pcs strong{font-weight:800}.loading-hold-pcs em{font-style:normal;font-size:9px;color:#94a3b8;font-weight:500;margin-left:1px}.loading-hold-weight{font-size:10px;color:#94a3b8;font-family:SF Mono,Menlo,monospace}.loading-versions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px;width:100%}@media(max-width:900px){.loading-versions{grid-template-columns:1fr;gap:8px}}.loading-version-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;box-shadow:0 1px 4px #0000000d;display:flex;flex-direction:column}.loading-version-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #00000012}.loading-version-card--empty{background:#f8fafc;border-style:dashed;border-color:#d1d5db;box-shadow:none}.loading-version-card--empty .loading-version-card-body{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:80px;color:#b0b8c4;font-size:12px;font-style:italic}.loading-version-card--attention{border-color:#f59e0b;border-width:2px;background:linear-gradient(180deg,#fffbeb,#fff 20px)}.loading-range-alert{background:#fef2f2;color:#dc2626;padding:8px 10px;font-size:11px;display:flex;align-items:center;gap:6px;border-bottom:1px solid #fecaca}.loading-range-alert strong{font-weight:700}.loading-validation-notice{background:#fef3c7;color:#92400e;padding:8px 10px;font-size:11px;display:flex;align-items:center;gap:6px;border-bottom:1px solid #fde68a}.loading-version-card-header{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-wrap:wrap}.loading-version-card-label{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#475569}.loading-version-card--muted{opacity:.5;box-shadow:none}.loading-version-card--muted:hover{opacity:.65;box-shadow:none}.loading-clc-badge{padding:2px 5px;border-radius:3px;font-size:9px;font-weight:800;background:#fef3c7;color:#92400e;text-transform:uppercase;letter-spacing:.3px}.loading-version-card-body{font-size:12px;padding:14px;display:flex;flex-direction:column;align-items:center;flex:1}.loading-version-stats{display:flex;justify-content:center;gap:16px;width:100%}.loading-version-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.loading-version-stat-label{color:#94a3b8;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.loading-version-stat-value{font-weight:700;font-size:15px;color:#1e293b;font-family:SF Mono,Menlo,monospace}.loading-version-stat-value--changed{color:#dc2626;background:#fef2f2;padding:1px 6px;border-radius:4px}.loading-version-card-actions{padding:10px 14px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.loading-warnings{margin-top:8px}.loading-warning{font-size:12px;color:#b45309;display:flex;align-items:center;gap:4px;padding:2px 0}.loading-v2-warnings{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:8px;padding:12px 14px;margin-top:14px;box-shadow:0 2px 8px #f59e0b33}.loading-v2-warnings-header{display:flex;align-items:center;gap:8px;color:#92400e;margin-bottom:8px}.loading-v2-warnings-header svg{color:#d97706;flex-shrink:0}.loading-v2-warnings-header strong{font-size:13px}.loading-v2-warnings-list{list-style:none;margin:0;padding:0 0 0 24px}.loading-v2-warning{font-size:12px;padding:3px 0;position:relative}.loading-v2-warning:before{content:"•";position:absolute;left:-12px;color:#d97706}.loading-v2-warning--rule_override{color:#c2410c;font-weight:500}.loading-v2-warning--error{color:#dc2626;font-weight:600}.loading-v2-warning--warning{color:#92400e}.loading-v2-warnings-footer{margin-top:10px;padding-top:8px;border-top:1px dashed #d97706;font-size:11px;color:#78350f;font-style:italic}.loading-error{background:#fef2f2;color:#dc2626;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:12px;display:flex;align-items:center;gap:6px}.loading-ramp-actual{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-primary, #e5e5e5);font-size:12px}.loading-events{margin-top:16px}.loading-events summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary, #666)}.loading-events-list{margin-top:8px}.loading-event{display:flex;gap:8px;padding:4px 0;font-size:12px;border-bottom:1px solid var(--border-primary, #e5e5e5)}.loading-event-type{font-weight:600;min-width:100px}.loading-event-time{color:var(--text-secondary, #666)}.loading-event-meta{color:var(--text-tertiary, #999);font-size:11px}.load-rules-editor{padding:0}.load-rules-placeholder{padding:24px;text-align:center;color:var(--text-secondary, #666);background:var(--bg-secondary, #f9f9f9);border-radius:8px}.load-rules-badge{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;margin-left:8px}.load-rules-badge--saved{background:#dcfce7;color:#16a34a}.load-rules-badge--new{background:#dbeafe;color:#2563eb}.load-rules-range{background:var(--bg-secondary, #f9f9f9);border:1px solid var(--border-primary, #e5e5e5);border-radius:8px;padding:12px;margin-bottom:10px}.load-rules-range-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.load-rules-range-label{font-weight:700;font-size:13px;min-width:70px}.load-rules-range-bounds{display:flex;align-items:center;gap:4px;font-size:13px}.load-rules-range-key{font-size:11px;color:var(--text-secondary, #666);font-family:monospace}.load-rules-holds,.load-rules-max-holds{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.load-rules-hold{display:flex;align-items:center;gap:4px;background:#fff;padding:4px 8px;border-radius:6px;border:1px solid #d1d5db}.load-rules-hold-label{font-size:11px;color:var(--text-secondary, #666)}.load-rules-error{background:#fef2f2;color:#dc2626;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:12px;display:flex;align-items:center;gap:6px}.load-rules-dirty-hint{font-size:12px;color:#b45309;font-style:italic}.ramp-loading-page .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.ramp-loading-page .page-header-left{display:flex;align-items:baseline;gap:12px}.ramp-loading-page .page-subtitle{font-size:13px;color:var(--text-secondary, #666)}.ramp-flight-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.spin{animation:spin 1s linear infinite}.flight-card-loading-badge{flex-shrink:0}.flight-card-loading-badge--instruction{color:#2563eb}.flight-card-loading-badge--range-change{color:#b45309}.flight-card-loading-badge--report-pending{color:#16a34a}.flight-card-loading-badge--mismatch{color:#dc2626}.flight-card-loading-text-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;white-space:nowrap}.flight-card-loading-text-badge--blue{background:#2563eb15;color:#2563eb;border:1px solid #2563eb30}.flight-card-loading-text-badge--green{background:#16a34a15;color:#16a34a;border:1px solid #16a34a30}.flight-card-loading-text-badge--red{background:#dc262615;color:#dc2626;border:1px solid #dc262630}.flight-card-loading-text-badge--gray{background:#52525b15;color:#52525b;border:1px solid #52525b30}.flight-card-loading-text-badge--orange{background:#f59e0b15;color:#d97706;border:1px solid #f59e0b30}.flight-card-loading-text-badge--attention{animation:loading-badge-pulse 2s ease-in-out infinite}@keyframes loading-badge-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 transparent}50%{opacity:.7;box-shadow:0 0 8px 2px currentColor}}@media(prefers-reduced-motion:reduce){.flight-card-loading-text-badge--attention{animation:none}}.loading-ramp-actions{display:flex;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-secondary, #f0f0f0)}.loading-ramp-actions .btn--warning{background:transparent;color:#d97706;border-color:#f59e0b}.loading-ramp-actions .btn--warning:hover{background:#f59e0b15}.loading-ramp-change-requested{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;background:#fef3c7;border:1px solid #f59e0b40;border-radius:6px;color:#92400e;font-size:12px;font-weight:500}.loading-ramp-change-requested svg{color:#d97706;flex-shrink:0}.loading-comparison{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:6px;margin-top:12px}.loading-comparison--confirmed{background:#16a34a15;border:1px solid #16a34a30}.loading-comparison--confirmed .loading-comparison-icon{color:#16a34a;flex-shrink:0}.loading-comparison--change{background:#ea580c15;border:1px solid #ea580c30}.loading-comparison--change .loading-comparison-icon{color:#ea580c;flex-shrink:0}.loading-comparison-content{display:flex;flex-direction:column;gap:4px}.loading-comparison-content strong{font-size:13px}.loading-comparison-content>span{font-size:12px;color:var(--text-secondary, #666)}.loading-comparison-distribution{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-primary, #e5e5e5);font-size:12px}.loading-comparison-distribution>span{font-weight:600;color:var(--text-secondary, #666);display:block;margin-bottom:4px}.loading-comparison-sent{margin-top:8px}.loading-comparison-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;list-style:none}.loading-comparison-badge::-webkit-details-marker{display:none}.loading-comparison-badge--confirmed{background:#16a34a20;color:#16a34a}.loading-comparison-badge--change{background:#ea580c20;color:#ea580c}.loading-comparison-badge svg{flex-shrink:0}.loading-comparison-details{margin-top:8px;padding:8px 10px;background:var(--bg-secondary, #f9fafb);border-radius:4px;font-size:12px;color:var(--text-secondary, #666)}.loading-comparison-details span{display:block;margin-bottom:6px}.btn--warning{background:#ea580c;color:#fff;border:none}.btn--warning:hover{background:#c2410c}.btn--warning:disabled{background:#fdba74;cursor:not-allowed}.loading-v2-editor{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px;margin-top:8px}.loading-v2-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.loading-v2-editor-ttb{font-size:11px;color:#64748b}.loading-v2-editor-ttb strong{color:#1e293b;font-size:14px;font-family:SF Mono,Menlo,monospace}.loading-v2-holds{display:flex;flex-wrap:wrap;gap:8px}.loading-v2-hold{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 8px;min-width:80px}.loading-v2-hold--reste{background:#ecfdf5;border-color:#10b981}.loading-v2-hold-header{display:flex;align-items:center;gap:4px;margin-bottom:4px}.loading-v2-hold-id{font-weight:700;font-size:11px;color:#1e293b;flex:1}.loading-v2-reste-toggle{display:flex;align-items:center;gap:3px;cursor:pointer;font-size:11px;color:var(--text-tertiary, #999)}.loading-v2-reste-toggle input{width:14px;height:14px;margin:0;cursor:pointer}.loading-v2-reste-toggle input:checked+span{color:#10b981;font-weight:600}.loading-v2-hold-delete{background:none;border:none;padding:2px;cursor:pointer;color:var(--text-tertiary, #999);display:flex;align-items:center;justify-content:center;border-radius:4px}.loading-v2-hold-delete:hover{color:#dc2626;background:#fef2f2}.loading-v2-hold-value{display:flex;align-items:center;gap:4px}.loading-v2-hold-input{width:60px;padding:4px 6px;border:1px solid var(--border-primary, #e5e5e5);border-radius:4px;font-size:14px;font-weight:600;text-align:center}.loading-v2-hold-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc20}.loading-v2-hold-reste-value{display:flex;flex-direction:column;align-items:center}.loading-v2-hold-reste-value strong{font-size:16px;color:#10b981}.loading-v2-hold-reste-value em{font-size:10px;color:#10b981;font-style:normal}.loading-v2-hold-unit{font-size:11px;color:var(--text-tertiary, #999)}.loading-v2-add-hold{display:flex;align-items:center}.loading-v2-add-hold-select{padding:6px 10px;border:1px dashed var(--border-primary, #ccc);border-radius:6px;background:transparent;color:var(--text-secondary, #666);font-size:12px;cursor:pointer}.loading-v2-add-hold-select:hover{border-color:#06c;color:#06c}.loading-v2-add-hold-select:focus{outline:none;border-color:#06c}.ramp-detail-page{display:flex;flex-direction:column;height:calc(100vh - 60px);padding:12px;gap:12px;overflow:hidden}.ramp-header-bar{display:flex;align-items:center;gap:12px;background:var(--bg-primary, #fff);border:1px solid var(--border-primary, #e5e5e5);border-radius:8px;padding:10px 16px;flex-shrink:0;flex-wrap:wrap}.ramp-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--bg-tertiary, #f0f0f0);border:none;border-radius:6px;color:var(--text-secondary, #666);cursor:pointer;flex-shrink:0}.ramp-back-btn:hover{background:var(--bg-secondary, #e5e5e5);color:var(--text-primary, #333)}.ramp-separator{width:1px;height:28px;background:var(--border-primary, #e0e0e0);flex-shrink:0}.ramp-flight-id{display:flex;align-items:center;gap:10px}.ramp-logo{width:32px;height:32px;object-fit:contain;border-radius:4px}.ramp-code{font-size:14px;font-weight:700;color:var(--text-secondary, #666)}.ramp-flt-num{font-size:20px;font-weight:800;color:var(--text-primary, #111);letter-spacing:-.5px}.ramp-route{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-secondary, #666)}.ramp-station{font-weight:700;color:var(--text-primary, #333);font-size:15px}.ramp-arrow{color:var(--text-tertiary, #aaa)}.ramp-info-block{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:50px}.ramp-label{font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-tertiary, #999);letter-spacing:.5px}.ramp-value{font-size:15px;font-weight:700;color:var(--text-primary, #333)}.ramp-time{font-family:SF Mono,Monaco,Consolas,monospace;font-size:16px}.ramp-sub{font-size:10px;color:var(--text-tertiary, #999)}.ramp-status{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:.5px;margin-left:auto}.ramp-status--scheduled{background:#94a3b825;color:#64748b}.ramp-status--inbound{background:#3b82f625;color:#2563eb}.ramp-status--on-ground{background:#22c55e25;color:#16a34a}.ramp-status--departed{background:#64748b25;color:#475569}.ramp-main-content{flex:1;background:var(--bg-primary, #fff);border:1px solid var(--border-primary, #e5e5e5);border-radius:8px;padding:16px;overflow-y:auto;min-height:0}.ramp-no-data{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary, #999);font-size:14px}.ramp-main-content .loading-section{margin-top:0;padding-top:0;border-top:none}.ramp-main-content .loading-section-header h3{font-size:14px}.ramp-main-content .loading-versions{display:flex;gap:16px;flex-wrap:wrap}.ramp-main-content .loading-version-card{flex:1;min-width:280px;max-width:400px}@media(max-width:768px){.ramp-header-bar{padding:8px 12px;gap:8px}.ramp-flt-num{font-size:18px}.ramp-separator{display:none}.ramp-info-block{flex-direction:row;gap:4px}.ramp-main-content .loading-versions{flex-direction:column}.ramp-main-content .loading-version-card{max-width:none}}.loading-v3-safety-risk{background:linear-gradient(135deg,#fef2f2,#fecaca);color:#dc2626;padding:12px 14px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:10px;border-bottom:2px solid #dc2626;animation:safety-risk-pulse 1.5s ease-in-out infinite}@keyframes safety-risk-pulse{0%,to{background:linear-gradient(135deg,#fef2f2,#fecaca)}50%{background:linear-gradient(135deg,#fecaca,#fca5a5)}}.loading-v3-safety-risk svg{flex-shrink:0}.loading-v3-checks{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid #f1f5f9}.loading-v3-check{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600}.loading-v3-check-icon{font-size:11px;font-weight:700}.loading-v3-check--ok{background:#dcfce7;color:#16a34a}.loading-v3-check--fail{background:#fef2f2;color:#dc2626}.loading-v3-check--pending{background:#fef3c7;color:#d97706}.loading-v3-final-count{font-size:12px;color:var(--text-secondary, #666);margin-left:auto}.loading-v3-final-count strong{color:var(--text-primary, #111);font-size:13px}.loading-v3-issues{margin-top:10px;padding:10px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px}.loading-v3-issue{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:#dc2626;padding:2px 0}.loading-v3-issue svg{flex-shrink:0;margin-top:2px}.loading-v3-issue-detail{color:#b91c1c;font-size:11px;margin-left:4px}.loading-v3-confirmations{display:flex;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid #f1f5f9}.loading-v3-confirm-item{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:#94a3b8}.loading-v3-confirm-item svg{opacity:.5}.loading-v3-confirm-item--done{color:#16a34a;font-weight:600}.loading-v3-confirm-item--done svg{opacity:1}.loading-v3-editor{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px;margin-top:8px}.loading-v3-editor-header{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.loading-v3-editor-info{font-size:11px;color:#64748b;font-style:italic}.loading-v3-holds{display:flex;flex-wrap:wrap;gap:8px}.loading-v3-hold{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 10px}.loading-v3-hold-id{font-weight:700;font-size:11px;color:#1e293b;min-width:32px}.loading-v3-hold-input{width:60px;padding:4px 6px;border:1px solid #e2e8f0;border-radius:4px;font-size:14px;font-weight:600;text-align:center;font-family:SF Mono,Menlo,monospace}.loading-v3-hold-input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc20}.loading-v3-hold-unit{font-size:11px;color:var(--text-tertiary, #999)}.loading-v3-waiting{font-size:12px;color:var(--text-secondary, #666);font-style:italic;display:flex;align-items:center;gap:4px}.loading-v3-confirmed{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px 10px;background:#dcfce7;border:1px solid #86efac;border-radius:6px;color:#16a34a;font-size:11px;font-weight:600}.loading-v3-confirmed svg{flex-shrink:0}.requests-tab{font-size:12px;background:#fff;border-radius:8px;border:1px solid var(--border-color, #e5e7eb);overflow:hidden}.requests-tab-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-color, #e5e7eb)}.requests-tab-title{display:flex;align-items:center;gap:6px}.requests-tab-title h3{margin:0;font-size:12px;font-weight:600;color:var(--text-primary, #374151)}.requests-tab-title svg{color:var(--text-tertiary, #9ca3af)}.requests-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;color:#fff;background:var(--text-tertiary, #9ca3af);border-radius:9px}.requests-tab-header .btn{padding:5px 10px;font-size:11px;font-weight:500}.requests-tab-header .btn svg{width:11px;height:11px}.requests-tab-filters{display:flex;gap:2px;padding:8px 14px;border-bottom:1px solid var(--border-color, #e5e7eb)}.requests-filter-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:500;color:var(--text-secondary, #6b7280);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.requests-filter-btn:hover{color:var(--text-primary, #374151);background:var(--bg-secondary, #f3f4f6)}.requests-filter-btn--active{color:var(--text-primary, #374151);background:var(--bg-secondary, #f3f4f6);font-weight:600}.requests-filter-dot{width:6px;height:6px;border-radius:50%}.requests-filter-dot--pending{background:#f59e0b}.requests-filter-dot--accepted{background:#10b981}.requests-filter-dot--refused{background:#ef4444}.requests-filter-count{font-size:10px;font-weight:600;color:var(--text-tertiary, #9ca3af)}.requests-tab-list{display:flex;flex-direction:column}.requests-tab-empty{display:flex;flex-direction:column;align-items:center;padding:40px 20px;color:var(--text-tertiary, #9ca3af)}.requests-tab-empty svg{opacity:.4;margin-bottom:8px}.requests-tab-empty-title{margin:0;font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280)}.requests-tab-empty-desc{margin:4px 0 0;font-size:11px}.request-row{display:grid;grid-template-columns:120px 90px 1fr 130px auto;align-items:center;gap:12px;padding:8px 14px;border-bottom:1px solid var(--border-color, #f3f4f6);transition:background .1s ease}.request-row:last-child{border-bottom:none}.request-row:hover{background:var(--bg-secondary, #f9fafb)}.request-row--pending{background:linear-gradient(90deg,rgba(245,158,11,.06) 0%,transparent 30%)}.request-row--pending:hover{background:linear-gradient(90deg,rgba(245,158,11,.08) 0%,var(--bg-secondary, #f9fafb) 30%)}.request-row-type{display:flex;align-items:center;gap:6px;min-width:0}.request-row-type-icon{flex-shrink:0;color:var(--text-tertiary, #9ca3af)}.request-row-type-label{font-size:12px;font-weight:600;color:var(--text-primary, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.request-row-priority{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:10px;font-weight:700;color:#dc2626;background:#fef2f2;border-radius:3px}.request-row-status{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;border-radius:4px;width:fit-content}.request-row-status svg{flex-shrink:0}.request-row-status--pending{color:#b45309;background:#fef3c7}.request-row-status--pending svg{animation:spin 2s linear infinite}.request-row-status--accepted{color:#047857;background:#d1fae5}.request-row-status--refused{color:#b91c1c;background:#fee2e2}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.request-row-notes{font-size:11px;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.request-row-notes-empty{color:var(--text-tertiary, #d1d5db)}.request-row-response{margin-left:6px;font-style:italic;color:var(--text-tertiary, #9ca3af)}.request-row-meta{display:flex;align-items:center;gap:10px;font-size:10px;color:var(--text-tertiary, #9ca3af)}.request-row-time,.request-row-author{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.request-row-time svg,.request-row-author svg{opacity:.6}.request-row-actions{display:flex;align-items:center;gap:4px;justify-content:flex-end;min-width:60px}.request-action{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.request-action--accept{color:#047857;background:#d1fae5}.request-action--accept:hover{background:#a7f3d0}.request-action--refuse{color:#b91c1c;background:#fee2e2}.request-action--refuse:hover{background:#fecaca}.request-action--cancel{color:var(--text-tertiary, #9ca3af);background:var(--bg-secondary, #f3f4f6)}.request-action--cancel:hover{background:var(--bg-tertiary, #e5e7eb)}.request-row-comment{display:flex;align-items:center;gap:4px}.request-row-comment-input{width:100px;padding:5px 8px;font-size:11px;color:var(--text-primary, #374151);background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:4px;outline:none}.request-row-comment-input:focus{border-color:var(--primary, #3b82f6);box-shadow:0 0 0 2px #3b82f61a}@media(max-width:768px){.request-row{grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:6px 12px;padding:10px 14px}.request-row-type{grid-column:1;grid-row:1}.request-row-status{grid-column:2;grid-row:1;justify-self:end}.request-row-notes{grid-column:1 / -1;grid-row:2;white-space:normal}.request-row-meta{display:none}.request-row-actions{grid-column:1 / -1;grid-row:3;justify-content:flex-start;margin-top:4px}.request-row-comment-input{flex:1}}@media(prefers-color-scheme:dark){.requests-tab{background:var(--bg-primary, #111827);border-color:var(--border-color, #374151)}.requests-tab-header{background:var(--bg-secondary, #1f2937);border-color:var(--border-color, #374151)}.requests-tab-filters{border-color:var(--border-color, #374151)}.request-row{border-color:var(--border-color, #1f2937)}.request-row:hover{background:var(--bg-secondary, #1f2937)}.request-row--pending{background:linear-gradient(90deg,rgba(245,158,11,.1) 0%,transparent 30%)}.request-row-comment-input{background:var(--bg-secondary, #1f2937);border-color:var(--border-color, #374151);color:var(--text-primary, #f9fafb)}}.airport-map-overlay{position:fixed;inset:0;z-index:1000;background:#0d1117;display:flex;flex-direction:column;animation:airport-map-fadein .15s ease-out}@keyframes airport-map-fadein{0%{opacity:0}to{opacity:1}}.airport-map-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#161b22;border-bottom:1px solid #21262d;flex-shrink:0}.airport-map-title{font-size:14px;font-weight:600;color:#d1d5db;display:flex;align-items:center;gap:8px}.airport-map-title-icao{font-size:11px;font-weight:500;color:#8b949e;background:#21262d;padding:2px 7px;border-radius:3px;font-family:SF Mono,Fira Code,monospace;letter-spacing:.5px}.airport-map-close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:6px;background:#21262d;color:#8b949e;cursor:pointer;transition:all .15s ease}.airport-map-close-btn:hover{background:#30363d;color:#e5e7eb}.airport-map-viewport{flex:1;position:relative;overflow:hidden;cursor:grab;user-select:none;-webkit-user-select:none;background:#0d1117}.airport-map-viewport.is-panning{cursor:grabbing!important}.airport-map-viewport.is-selecting{cursor:crosshair!important}.airport-map-canvas{width:100%;height:100%;will-change:transform}.airport-map-canvas.is-transitioning{transition:transform .3s ease-out}.airport-map-canvas svg{width:100%;height:100%;background:transparent;pointer-events:none}.airport-map-selection{position:absolute;border:2px dashed #58a6ff;background:#58a6ff14;pointer-events:none;z-index:5;border-radius:2px}.airport-map-zoom-controls{position:absolute;bottom:16px;right:16px;display:flex;flex-direction:column;align-items:center;gap:2px;background:#161b22;border:1px solid #21262d;border-radius:8px;padding:4px;box-shadow:0 4px 12px #0006;z-index:10}.airport-map-zoom-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:5px;background:transparent;color:#8b949e;cursor:pointer;transition:all .12s ease}.airport-map-zoom-btn:hover{background:#21262d;color:#e5e7eb}.airport-map-zoom-btn:active{background:#30363d}.airport-map-zoom-btn--active{background:#1f3a5f;color:#58a6ff}.airport-map-zoom-btn--active:hover{background:#264a73;color:#79c0ff}.airport-map-zoom-level{font-size:10px;font-weight:500;color:#6e7681;padding:2px 0;font-family:SF Mono,Fira Code,monospace;letter-spacing:.3px;-webkit-user-select:none;user-select:none}.airport-map-zoom-divider{width:18px;height:1px;background:#21262d;margin:2px 0}.airport-map-canvas [id^=stand-],.airport-map-canvas [id^=taxi-out-],.airport-map-canvas [id^=taxi-in-]{cursor:pointer;pointer-events:all}.airport-map-canvas [id^=stand-]{fill:#8ba3bd;opacity:.7;stroke:transparent!important;stroke-width:16!important;stroke-dasharray:none!important;transition:transform .15s ease,fill .15s ease,filter .15s ease;transform-box:fill-box;transform-origin:center}.airport-map-canvas [id^=taxi-out-],.airport-map-canvas [id^=taxi-in-]{fill:#0d1117!important;opacity:0!important;stroke:none!important;pointer-events:none!important}.airport-map-canvas [id^=stand-]:hover{transform:scale(2.5);filter:drop-shadow(0 0 6px rgba(200,220,255,.5))!important}.airport-map-canvas [id^=taxi-out-]:hover,.airport-map-canvas [id^=taxi-in-]:hover{transform:scale(1.5);filter:drop-shadow(0 0 6px rgba(200,220,255,.5))!important}.airport-map-canvas [id^=stand-].stand--pinned{transform:scale(3)!important;filter:drop-shadow(0 0 10px rgba(88,166,255,.8))!important}.airport-map-canvas [id^=taxi-out-].stand--pinned,.airport-map-canvas [id^=taxi-in-].stand--pinned{transform:scale(1.8)!important;filter:drop-shadow(0 0 10px rgba(88,166,255,.8))!important}.airport-map-canvas .stand--empty{fill:#8ba3bd!important;opacity:.7}.airport-map-canvas [id^=stand-].stand--empty:hover,.airport-map-canvas [id^=stand-].stand--empty.stand--pinned{fill:#a0bcd8!important;opacity:1!important}.airport-map-canvas .stand--occupied{fill:#22c55e!important;opacity:1!important;filter:drop-shadow(0 0 5px rgba(34,197,94,.55))}.airport-map-canvas [id^=stand-].stand--occupied:hover,.airport-map-canvas [id^=stand-].stand--occupied.stand--pinned{fill:#4ade80!important;filter:drop-shadow(0 0 10px rgba(34,197,94,.8))!important}.airport-map-canvas .stand--arriving{fill:#3b82f6!important;opacity:.85!important;filter:drop-shadow(0 0 4px rgba(59,130,246,.5))}.airport-map-canvas [id^=stand-].stand--arriving:hover,.airport-map-canvas [id^=stand-].stand--arriving.stand--pinned{fill:#60a5fa!important;opacity:1!important;filter:drop-shadow(0 0 10px rgba(59,130,246,.8))!important}.airport-map-canvas .stand--taxi-out{fill:#f59e0b!important;opacity:1!important;filter:drop-shadow(0 0 4px rgba(245,158,11,.5))}.airport-map-canvas [id^=taxi-out-].stand--taxi-out:hover,.airport-map-canvas [id^=taxi-out-].stand--taxi-out.stand--pinned{fill:#fbbf24!important;filter:drop-shadow(0 0 10px rgba(245,158,11,.8))!important}.airport-map-canvas .stand--taxi-in{fill:#06b6d4!important;opacity:1!important;filter:drop-shadow(0 0 4px rgba(6,182,212,.5))}.airport-map-canvas [id^=taxi-in-].stand--taxi-in:hover,.airport-map-canvas [id^=taxi-in-].stand--taxi-in.stand--pinned{fill:#22d3ee!important;filter:drop-shadow(0 0 10px rgba(6,182,212,.8))!important}.airport-map-legend{display:flex;align-items:center;gap:18px;padding:8px 20px;background:#161b22;border-top:1px solid #21262d;flex-shrink:0}.airport-map-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#8b949e}.airport-map-legend-dot{width:8px;height:8px;border-radius:50%}.airport-map-legend-dot--occupied{background:#22c55e;box-shadow:0 0 4px #22c55e80}.airport-map-legend-dot--arriving{background:#3b82f6;box-shadow:0 0 4px #3b82f680}.airport-map-legend-dot--taxi-out{background:#f59e0b;box-shadow:0 0 4px #f59e0b80}.airport-map-legend-dot--taxi-in{background:#06b6d4;box-shadow:0 0 4px #06b6d480}.airport-map-legend-dot--empty{background:transparent;border:1.5px solid #484f58}.airport-map-tooltip{position:fixed;z-index:1010;background:#161b22;border:1px solid #30363d;border-radius:8px;padding:8px 12px;pointer-events:none;box-shadow:0 8px 24px #0000008c;animation:airport-map-tip-in .12s ease-out;white-space:nowrap;transform:translate(-50%,-100%)}.airport-map-tooltip--pinned{pointer-events:auto;border-color:#58a6ff;box-shadow:0 8px 24px #0000008c,0 0 0 1px #58a6ff26}@keyframes airport-map-tip-in{0%{opacity:0;transform:translate(-50%,-100%) translateY(4px)}to{opacity:1;transform:translate(-50%,-100%) translateY(0)}}.airport-map-tooltip-label{font-size:10px;color:#8b949e;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.airport-map-tooltip-flight{font-size:13px;font-weight:600;color:#e5e7eb;margin-top:2px}.airport-map-tooltip-route{font-size:11px;color:#6e7681;margin-top:1px}.airport-map-tooltip-empty{font-size:11px;color:#484f58;font-style:italic;margin-top:2px}.airport-map-tooltip-action{display:block;width:100%;margin-top:6px;padding:4px 10px;font-size:11px;font-weight:500;color:#58a6ff;background:#0d1117;border:1px solid #21262d;border-radius:5px;cursor:pointer;transition:all .12s ease;text-align:center}.airport-map-tooltip-action:hover{background:#161b22;border-color:#58a6ff;color:#79c0ff}.airport-map-embedded{width:100%;height:100%;position:relative;overflow:hidden;background:#0d1117;display:flex;flex-direction:column}.airport-map-embedded .airport-map-viewport{flex:1}.airport-map-no-map{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;min-height:200px;color:#484f58;font-size:13px;background:#0d1117}.airport-map-canvas [id^=stand-].stand--highlighted{transform:scale(2.5)!important;filter:drop-shadow(0 0 8px rgba(255,200,50,.7))!important}.airport-map-canvas [id^=taxi-out-].stand--highlighted,.airport-map-canvas [id^=taxi-in-].stand--highlighted{transform:scale(1.8)!important;filter:drop-shadow(0 0 8px rgba(255,200,50,.7))!important}.airport-map-canvas [id^=stand-].stand--flash{animation:stand-flash .6s ease-out}@keyframes stand-flash{0%{fill:#22c55e;transform:scale(3);filter:drop-shadow(0 0 12px rgba(34,197,94,.8))}to{transform:scale(1.6);filter:none}}.airport-map-aircraft-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:transparent}.aircraft-marker{pointer-events:none;opacity:.95;filter:drop-shadow(0 0 3px rgba(0,0,0,.6));transition:opacity .15s ease}.aircraft-label{font-size:16px;font-family:SF Mono,Fira Code,monospace;font-weight:600;fill:#e1e6f0d9;pointer-events:none;letter-spacing:.5px}.aircraft-timer-group{pointer-events:all;cursor:default;transform-origin:center;transform-box:fill-box;transition:transform .15s ease}.aircraft-timer-group:hover{transform:scale(1.6)}.aircraft-timer-text{font-size:16px;font-family:SF Mono,Fira Code,monospace;font-weight:500;letter-spacing:.5px}.aircraft-timer-group{animation:aircraft-timer-blink 3s ease-in-out infinite}@keyframes aircraft-timer-blink{0%,to{opacity:1}50%{opacity:.4}}.aircraft-timer-group--overdue{animation:aircraft-timer-pulse 2s ease-in-out infinite}@keyframes aircraft-timer-pulse{0%,to{opacity:1}50%{opacity:.3}}.airport-map-spinner{animation:airport-map-spin 1s linear infinite}@keyframes airport-map-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.flight-chat{display:flex;flex-direction:column;height:100%;min-height:400px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:4px}.chat-empty,.chat-no-access{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:14px;padding:48px 24px;text-align:center}.chat-message{align-self:flex-start;background:#f1f5f9;border-radius:12px 12px 12px 4px;padding:10px 14px;max-width:75%;margin-bottom:2px}.chat-message--own{align-self:flex-end;background:#e0ecff;margin-left:auto;border-radius:12px 12px 4px}.chat-message-header{display:flex;gap:6px;align-items:baseline;font-size:11px;margin-bottom:3px}.chat-message-sender{font-weight:600;color:#0f172a}.chat-message-role{color:#64748b;font-size:10px}.chat-message-target{color:#06c;font-size:10px}.chat-message-time{color:#94a3b8;margin-left:auto;font-family:monospace}.chat-message-content{font-size:14px;line-height:1.4;color:#1e293b;word-break:break-word}.chat-input-container{border-top:1px solid #e2e8f0;padding:12px 16px;background:#fff;border-radius:0 0 8px 8px}.chat-input-row{display:flex;gap:8px;align-items:center}.chat-input{flex:1;border-radius:20px;padding:8px 16px;border:1px solid #e2e8f0;font-size:14px;background:#fff;transition:border-color .15s,box-shadow .15s}.chat-input:focus{border-color:#06c;outline:none;box-shadow:0 0 0 3px #0066cc1a}.chat-target-btn{font-size:11px;padding:5px 10px;border-radius:12px;background:#f1f5f9;border:1px solid #e2e8f0;white-space:nowrap;cursor:pointer;color:#475569;transition:background .15s}.chat-target-btn:hover{background:#e2e8f0}.chat-target-selector{position:relative}.chat-target-picker{position:absolute;bottom:100%;left:0;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:100;min-width:180px;margin-bottom:4px;overflow:hidden}.chat-target-option{display:block;width:100%;padding:8px 12px;cursor:pointer;font-size:13px;background:none;border:none;text-align:left;color:#1e293b;transition:background .1s}.chat-target-option:hover{background:#f1f5f9}.chat-target-option--active{background:#e0ecff;color:#06c;font-weight:500}.chat-target-section-title{font-size:10px;text-transform:uppercase;color:#94a3b8;padding:8px 12px 4px;font-weight:600;letter-spacing:.5px}.chat-send-btn{border-radius:20px;padding:8px 16px;font-size:13px}.header-messages{position:relative;display:flex;align-items:center;margin-right:8px}.header-messages-btn{position:relative;padding:8px;border-radius:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.header-messages-btn:hover{background:#ffffff1f}.header-messages-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;background:#dc3545;color:#fff;font-size:10px;font-weight:700;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px;line-height:1}@keyframes dropdown-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.global-inbox{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:520px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000029;z-index:1000;display:flex;flex-direction:column;animation:dropdown-fade-in .15s ease}.global-inbox-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.global-inbox-title{font-size:15px;font-weight:600;color:#0f172a}.global-inbox-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.global-inbox-close:hover{color:#475569;background:#f1f5f9}.global-inbox-list{flex:1;overflow-y:auto;padding:8px}.global-inbox-item{background:#f8f9fa;border-radius:8px;padding:12px;margin-bottom:6px;transition:background .1s}.global-inbox-item:hover{background:#f1f5f9}.global-inbox-item:last-child{margin-bottom:0}.global-inbox-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.global-inbox-item-flight{font-weight:600;color:#0f172a;font-size:13px}.global-inbox-item-open{font-size:11px;color:#06c;background:none;border:none;cursor:pointer;padding:2px 6px;border-radius:4px;transition:background .15s}.global-inbox-item-open:hover{background:#e0ecff}.global-inbox-item-message{font-size:13px;color:#475569;line-height:1.4}.global-inbox-item-preview{display:flex;align-items:baseline;gap:4px;overflow:hidden}.global-inbox-item-sender{font-weight:600;color:#334155;font-size:12px;white-space:nowrap;flex-shrink:0}.global-inbox-item-time{color:#94a3b8;font-size:11px;white-space:nowrap;flex-shrink:0;margin-left:auto}.global-inbox-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569;font-size:13px;flex:1;min-width:0}.global-inbox-item-more{font-size:11px;color:#94a3b8;margin-top:2px}.global-inbox-reply{display:flex;gap:6px;margin-top:8px;align-items:center}.global-inbox-reply-input{flex:1;border-radius:16px;padding:6px 12px;font-size:13px;border:1px solid #e2e8f0;background:#fff;transition:border-color .15s,box-shadow .15s}.global-inbox-reply-input:focus{border-color:#06c;outline:none;box-shadow:0 0 0 2px #0066cc1a}.global-inbox-reply-target{font-size:10px;padding:4px 8px;border-radius:10px;background:#f1f5f9;border:1px solid #e2e8f0;cursor:pointer;white-space:nowrap;color:#475569;font-weight:500;transition:background .15s}.global-inbox-reply-target:hover{background:#e2e8f0}.global-inbox-reply-target--dm{background:#e0ecff;border-color:#b3d4ff;color:#06c}.global-inbox-reply-send{background:#06c;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.global-inbox-reply-send:hover{background:#0052a3}.global-inbox-reply-send:disabled{background:#cbd5e1;cursor:not-allowed}.global-inbox-empty{padding:48px 24px;text-align:center;color:#94a3b8;font-size:14px}.global-inbox-empty-icon{color:#cbd5e1;margin-bottom:12px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:14px;line-height:1.5;color:#1a1a2e;background-color:#f5f5f7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:#06c;text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer}select{font-family:inherit;font-size:inherit}
