@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Nunito:wght@400;600;700;800;900&family=Inter:wght@400;500;600&display=swap";:root{--bg-page: #111110;--bg-card: #1a1917;--bg-card-hover: #201e1b;--bg-input: #221f1c;--border: #2a2825;--border-bright: #3a3733;--accent: #e07b39;--accent-dark: #c45c20;--accent-warm: #e8944a;--accent-light: rgba(224, 123, 57, .12);--accent-glow: rgba(224, 123, 57, .22);--coral: #ff7a5c;--coral-light: rgba(255, 122, 92, .12);--coral-glow: rgba(255, 122, 92, .25);--success: #34d472;--success-light: rgba(52, 212, 114, .12);--success-glow: rgba(52, 212, 114, .25);--amber: #fbbf24;--amber-light: rgba(251, 191, 36, .12);--danger: #f87171;--danger-light: rgba(248, 113, 113, .12);--warm-purple: #a78bfa;--warm-purple-light: rgba(167, 139, 250, .12);--text-primary: #ede9e3;--text-secondary: #9a9189;--text-muted: #6e6460;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(180, 120, 60, .08), 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 40px rgba(180, 120, 60, .12), 0 4px 16px rgba(0, 0, 0, .35);--shadow-warm: 0 8px 32px rgba(224, 123, 57, .18)}[data-theme=light]{--bg-page: #faf6ee;--bg-card: #fff9f2;--bg-card-hover: #fff5eb;--bg-input: #f5ede0;--border: #e8ddd0;--border-bright: #d4c4b0;--accent: #e07b39;--accent-dark: #c45c20;--accent-warm: #e8944a;--accent-light: rgba(224, 123, 57, .1);--accent-glow: rgba(224, 123, 57, .2);--coral: #d4603a;--coral-light: rgba(212, 96, 58, .12);--coral-glow: rgba(212, 96, 58, .25);--success: #22c55e;--success-light: rgba(34, 197, 94, .12);--success-glow: rgba(34, 197, 94, .25);--amber: #f59e0b;--amber-light: rgba(245, 158, 11, .12);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .1);--warm-purple: #8b5cf6;--warm-purple-light: rgba(139, 92, 246, .1);--text-primary: #2d1f0e;--text-secondary: #7a5c3e;--text-muted: #b09880;--shadow-sm: 0 2px 8px rgba(80, 50, 20, .06);--shadow-md: 0 4px 20px rgba(80, 50, 20, .1);--shadow-lg: 0 8px 40px rgba(80, 50, 20, .14);--shadow-warm: 0 8px 32px rgba(224, 123, 57, .18)}[data-theme=light] body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}button,a,[role=button]{min-height:44px;touch-action:manipulation;cursor:pointer}html,body{height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{transition:background-color .3s ease,color .3s ease;font-family:Plus Jakarta Sans,Inter,system-ui,-apple-system,sans-serif;font-size:clamp(14px,2.2vw,16px);font-weight:400;background:var(--bg-page);color:var(--text-primary);line-height:1.55;overscroll-behavior:none;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);-webkit-touch-callout:none}#root{min-height:100vh;position:relative;z-index:1}input,button,select,textarea{font-family:Plus Jakarta Sans,Inter,system-ui,-apple-system,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Nunito,sans-serif;font-size:clamp(1rem,4vw,2rem);line-height:1.2}h1{font-size:clamp(1.8rem,6vw,2.8rem)}h2{font-size:clamp(1.5rem,5vw,2.2rem)}h3{font-size:clamp(1.1rem,3.5vw,1.5rem)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes planeBob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes springIn{0%{opacity:0;transform:scale(.88)}60%{opacity:1;transform:scale(1.03)}80%{transform:scale(.98)}to{transform:scale(1)}}.loading-screen{min-height:100vh;background:var(--bg-page);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-plane{font-size:42px;animation:float 2s ease-in-out infinite}.loading-text{font-family:Nunito,sans-serif;font-weight:900;font-size:30px;letter-spacing:2px;color:var(--text-primary);animation:fadeIn .6s ease-out}.glass-card{background:var(--bg-card);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-md);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);animation:slideUp .35s ease-out;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,border-color .2s ease,background .2s ease}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-bright);box-shadow:var(--shadow-lg),0 0 0 1px #e07b3912;transform:translateY(-2px)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px 24px;background:linear-gradient(135deg,#e07b39 0%,#d06828 50%,#c45c20 100%);background-size:200% 200%;color:#fff;border:none;border-radius:16px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(15px,2.5vw,17px);font-weight:700;cursor:pointer;box-shadow:0 6px 24px #e07b3952,0 2px 8px #00000026;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,opacity .2s ease,background-position .4s ease;letter-spacing:.2px;text-decoration:none;-webkit-font-smoothing:antialiased}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 32px #e07b396b,0 4px 12px #0003;background-position:right center}.btn-primary:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 4px 16px #e07b3940}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary:focus-visible{outline:2px solid var(--accent-warm);outline-offset:3px}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px 24px;background:transparent;color:var(--text-secondary);border:1.5px solid var(--border-bright);border-radius:16px;font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(15px,2.5vw,17px);font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .18s cubic-bezier(.34,1.56,.64,1),color .2s ease,box-shadow .2s ease;letter-spacing:.2px}.btn-outline:hover{background:rgba(224,123,57,.07);border-color:var(--accent-warm);color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 14px #e07b391f}.btn-outline:active{transform:scale(.97)}.btn-outline:focus-visible{outline:2px solid var(--accent-warm);outline-offset:3px}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 20px;background:var(--danger-light);color:var(--danger);border:1.5px solid rgba(239,68,68,.2);border-radius:14px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s,transform .15s}.btn-danger:hover{background:rgba(239,68,68,.18);border-color:#ef444473;transform:translateY(-1px)}.btn-danger:active{transform:scale(.97)}.btn-danger:focus-visible{outline:2px solid var(--accent-warm);outline-offset:3px}.badge{display:inline-block;padding:5px 14px;border-radius:20px;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:700;text-transform:capitalize;letter-spacing:.3px;white-space:nowrap}.badge-success{background:rgba(34,197,94,.12);color:#22c55e;border:1px solid rgba(34,197,94,.28)}[data-theme=light] .badge-success{color:#16a34a;background:rgba(34,197,94,.1)}.badge-warning{background:rgba(59,130,246,.12);color:#60a5fa;border:1px solid rgba(59,130,246,.28)}[data-theme=light] .badge-warning{color:#2563eb;background:rgba(59,130,246,.1)}.badge-danger{background:var(--danger-light);color:var(--danger);border:1px solid rgba(239,68,68,.2)}.badge-air{background:rgba(224,123,57,.12);color:var(--accent-warm);border:1px solid rgba(224,123,57,.3);animation:breathe 2.8s ease-in-out infinite}[data-theme=light] .badge-air{color:#c45c20}.badge-default{background:rgba(154,145,137,.1);color:var(--text-secondary);border:1px solid rgba(154,145,137,.2)}.float{animation:float 3s ease-in-out infinite}.pulse{animation:pulse 2s ease-in-out infinite}.dark-input{transition:border-color .2s ease,box-shadow .2s ease}.dark-input:focus{outline:none;border-color:var(--accent-warm)!important;box-shadow:0 0 0 3px #e07b3926,0 2px 8px #e07b3914!important}:focus-visible{outline:2px solid var(--accent-warm);outline-offset:3px;border-radius:4px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:999px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:var(--accent-warm)}*{scrollbar-width:thin;scrollbar-color:var(--border-bright) transparent}details summary{list-style:none}details summary::-webkit-details-marker{display:none}input[type=date]{text-align:left;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=date]::-webkit-date-and-time-value{text-align:left}*,*:before,*:after{transition-property:background-color,border-color,color,box-shadow;transition-duration:.3s;transition-timing-function:ease}button,.glass-card,.btn-primary,.btn-outline,.btn-danger,.badge-air,.float,.pulse,input{transition-property:background-color,border-color,color,box-shadow,transform,opacity;transition-duration:.2s}.docks-bar{display:inline-flex;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.06);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:0 4px 16px #00000026;transition:border-color .3s ease}[data-theme=light] .docks-bar{background:rgba(255,255,255,.6);border-color:#0000001a;box-shadow:0 4px 16px #00000014}.docks-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;min-height:44px;white-space:nowrap;-webkit-user-select:none;user-select:none}.docks-btn:last-child,.docks-btn-right{border-right:none}.docks-btn:hover{background:rgba(255,255,255,.08);color:var(--text-primary)}[data-theme=light] .docks-btn:hover{background:rgba(0,0,0,.06)}.docks-btn:hover svg{transform:scale(1.1)}.docks-btn svg{width:18px;height:18px;transition:transform .2s ease;flex-shrink:0}.docks-btn-active{background:var(--accent)!important;color:#fff!important}.docks-btn-active:hover{background:var(--accent-dark)!important}.docks-btn:active{transform:scale(.97)}.docks-btn:focus-visible{outline:2px solid var(--accent-warm);outline-offset:-2px}.badge-air,.float,.pulse,.loading-plane{transition:none}.leg-duration{font-size:11px;color:var(--text-dim, #888);margin-top:2px;text-align:center;letter-spacing:.3px}.progress-labels__center{display:flex;flex-direction:column;align-items:center;gap:2px}.progress-labels__duration{font-size:11px;color:var(--accent-warm, #e8944a);font-weight:600;letter-spacing:.3px}.leg-airport__tz{font-size:.7em;opacity:.6;font-weight:400;letter-spacing:.02em}
