:root{--bg: #06091a;--bg-2: #0b1030;--surface: rgba(255, 255, 255, .045);--surface-2: rgba(255, 255, 255, .075);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--text: #e9edfb;--muted: #8e99bd;--faint: #5f6a8d;--accent: #38bdf8;--accent-2: #818cf8;--accent-3: #e879f9;--ok: #34d399;--warn: #fbbf24;--danger: #fb7185;--radius: 18px;--radius-sm: 12px;--shadow: 0 24px 60px -24px rgba(0, 0, 0, .85);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}body:before,body:after{content:"";position:fixed;border-radius:50%;filter:blur(130px);opacity:.5;pointer-events:none;z-index:0}body:before{width:62vw;height:62vw;top:-26vw;left:-14vw;background:radial-gradient(circle,#1d4ed8,#1d4ed800 70%);animation:drift 26s ease-in-out infinite alternate}body:after{width:54vw;height:54vw;bottom:-24vw;right:-12vw;background:radial-gradient(circle,#7c3aed,#7c3aed00 70%);animation:drift 32s ease-in-out infinite alternate-reverse}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(6vw,5vh,0) scale(1.15)}}@media (prefers-reduced-motion: reduce){*,body:before,body:after{animation:none!important;transition:none!important}}.app{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:28px 20px 96px}.topbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:26px}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;letter-spacing:-.02em}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;font-size:20px;background:linear-gradient(135deg,var(--accent),var(--accent-2) 55%,var(--accent-3));box-shadow:0 10px 30px -8px #818cf8b3}.brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.nav{display:flex;gap:4px;padding:5px;margin-left:auto;border-radius:999px;background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:600;padding:9px 18px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:color .18s,background .18s}.nav button:hover{color:var(--text)}.nav button.active{color:#08122c;background:linear-gradient(135deg,#7dd3fc,#a5b4fc);box-shadow:0 8px 22px -10px #7dd3fce6}.nav .badge{margin-left:7px;font-size:11px;opacity:.75}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.card-pad{padding:22px}.section-title{display:flex;align-items:center;gap:10px;margin:30px 0 14px;font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--text)}.section-title .hint{font-weight:500;font-size:13px;color:var(--faint)}.muted{color:var(--muted)}.faint{color:var(--faint)}.search-card{padding:20px}.trip-switch{display:inline-flex;gap:3px;padding:4px;border-radius:999px;background:#00000040;border:1px solid var(--border);margin-bottom:16px}.trip-switch button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;padding:7px 15px;border-radius:999px;cursor:pointer}.trip-switch button.active{background:var(--surface-2);color:var(--text)}.search-grid{display:grid;grid-template-columns:1.15fr 1.15fr .95fr .95fr 1fr auto;gap:10px;align-items:end}@media (max-width: 1080px){.search-grid{grid-template-columns:1fr 1fr}.search-grid .go{grid-column:1 / -1}}@media (max-width: 560px){.search-grid{grid-template-columns:1fr}}.field{position:relative;display:flex;flex-direction:column;gap:6px}.field>label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);padding-left:2px}.input,.select{width:100%;padding:12px 14px;font:inherit;font-size:15px;color:var(--text);background:#0306148c;border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color .16s,box-shadow .16s,background .16s;min-height:46px}.input::placeholder{color:var(--faint)}.input:focus,.select:focus{border-color:#38bdf8a6;box-shadow:0 0 0 4px #38bdf824;background:#030614cc}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}.select option{background:#0b1030;color:var(--text)}input[type=date]{color-scheme:dark}.swap{position:absolute;right:-18px;bottom:11px;z-index:3;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border-strong);background:#131a3c;color:var(--muted);cursor:pointer;transition:transform .2s,color .2s}.swap:hover{color:var(--text);transform:rotate(180deg)}@media (max-width: 1080px){.swap{right:8px}}.suggest{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:320px;overflow-y:auto;padding:6px;border-radius:var(--radius-sm);background:#0c1130;border:1px solid var(--border-strong);box-shadow:0 30px 60px -20px #000000e6}.suggest button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.suggest button:hover,.suggest button.hl{background:var(--surface-2)}.suggest .code{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--accent);min-width:34px}.suggest .sub{font-size:12px;color:var(--faint)}.pax-trigger{text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pax-popover{position:absolute;z-index:30;top:calc(100% + 6px);right:0;width:320px;padding:16px;border-radius:var(--radius-sm);background:#0c1130;border:1px solid var(--border-strong);box-shadow:0 30px 60px -20px #000000e6}.pax-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--border)}.pax-row:last-of-type{border-bottom:0}.pax-row .sub{font-size:12px;color:var(--faint)}.stepper{display:flex;align-items:center;gap:10px}.stepper button{width:30px;height:30px;border-radius:9px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-size:17px;line-height:1;cursor:pointer}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper span{min-width:18px;text-align:center;font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;min-height:46px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:transform .14s,background .16s,border-color .16s,opacity .16s;white-space:nowrap}.btn:hover:not(:disabled){background:#ffffff1f;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{border:0;color:#061024;background:linear-gradient(135deg,#67e8f9,#818cf8 60%,#c084fc);box-shadow:0 14px 32px -14px #818cf8f2}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#7ceefb,#8f99f9 60%,#cb96fc)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--muted)}.btn-ghost:hover:not(:disabled){color:var(--text)}.btn-danger{border-color:#fb718566;color:var(--danger);background:#fb718514}.btn-sm{padding:7px 13px;min-height:36px;font-size:13px}.btn-icon{padding:8px;min-height:36px;width:36px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;font-size:13px;font-weight:500;border-radius:999px;border:1px solid var(--border);background:#ffffff08;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .16s}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip.on{border-color:#38bdf88c;background:#38bdf81f;color:#bae6fd}.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:600;background:#ffffff12;color:var(--muted)}.tag.ok{background:#34d39924;color:#6ee7b7}.tag.warn{background:#fbbf2424;color:#fcd34d}.tag.danger{background:#fb718524;color:#fda4af}.tag.accent{background:#818cf829;color:#c7d2fe}.results-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:26px 0 12px}.results-head h2{margin:0;font-size:19px;letter-spacing:-.01em}.offer-list{display:flex;flex-direction:column;gap:10px}.offer{display:grid;grid-template-columns:92px 1fr auto;gap:18px;align-items:center;padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .18s,transform .18s,background .18s}.offer:hover{border-color:var(--border-strong);background:var(--surface-2);transform:translateY(-2px)}.offer.best{border-color:#34d39973;background:linear-gradient(120deg,#34d39917,#ffffff0a 45%)}.offer-airline{display:flex;flex-direction:column;gap:3px}.airline-badge{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;font-size:14px;font-weight:800;letter-spacing:.03em;color:#dbeafe;background:linear-gradient(140deg,#38bdf840,#818cf840);border:1px solid var(--border)}.offer-airline .name{font-size:11.5px;color:var(--faint);max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offer-route{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.leg{display:flex;flex-direction:column}.leg .time{font-size:19px;font-weight:700;letter-spacing:-.01em}.leg .place{font-size:12px;color:var(--faint)}.leg-line{flex:1;min-width:90px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--faint);font-size:11.5px}.leg-line .bar{width:100%;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--border-strong) 15%,var(--border-strong) 85%,transparent);position:relative}.leg-line .bar:after{content:"✈";position:absolute;right:-2px;top:-8px;font-size:11px;color:var(--muted)}.offer-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.offer-price{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:150px}.price-value{font-size:23px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#a5f3fc,#c4b5fd);-webkit-background-clip:text;background-clip:text;color:transparent}.price-sub{font-size:11.5px;color:var(--faint)}@media (max-width: 720px){.offer{grid-template-columns:56px 1fr;gap:12px}.offer-price{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;min-width:0}.airline-badge{width:40px;height:40px;font-size:13px}.offer-airline .name{display:none}}.calendar{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin}.cal-day{flex:0 0 auto;min-width:84px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffff08;cursor:pointer;text-align:left;color:var(--text);font:inherit;transition:all .16s}.cal-day:hover{border-color:var(--border-strong)}.cal-day.cheap{border-color:#34d39966;background:#34d39917}.cal-day.active{border-color:#38bdf8b3;box-shadow:0 0 0 3px #38bdf824}.cal-day .d{font-size:11.5px;color:var(--faint)}.cal-day .p{font-size:14px;font-weight:700;margin-top:3px}.list{display:flex;flex-direction:column;gap:10px}.row-card{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.row-card.off{opacity:.55}.row-main{flex:1;min-width:200px}.row-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;letter-spacing:-.01em}.row-sub{margin-top:5px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 14px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.channel-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;font-size:18px;border:1px solid var(--border)}.channel-telegram{background:#38bdf829}.channel-whatsapp{background:#34d39929}.channel-sms{background:#fbbf2429}.channel-email{background:#e879f929}.spark{width:100%;height:54px;display:block}.spark path.line{fill:none;stroke:url(#sparkGrad);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.spark path.area{fill:url(#sparkFill);stroke:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:20px;background:#030614b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade .16s ease}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:620px;max-height:88vh;overflow-y:auto;padding:24px;border-radius:22px;background:#0a0f2b;border:1px solid var(--border-strong);box-shadow:0 40px 90px -30px #000000f2}.modal h3{margin:0 0 18px;font-size:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1 / -1}@media (max-width: 560px){.form-grid{grid-template-columns:1fr}}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.empty{padding:46px 24px;text-align:center;color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius)}.empty .icon{font-size:34px;margin-bottom:10px}.toast-stack{position:fixed;z-index:80;bottom:22px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;width:min(420px,calc(100vw - 32px))}.toast{padding:13px 16px;border-radius:14px;font-size:14px;border:1px solid var(--border-strong);background:#101637;box-shadow:0 20px 40px -18px #000000e6;animation:rise .2s ease}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.toast.error{border-color:#fb718580;color:#fecdd3}.toast.ok{border-color:#34d39980;color:#a7f3d0}.loader{display:inline-block;width:15px;height:15px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{height:84px;border-radius:var(--radius);background:linear-gradient(90deg,#ffffff0a,#ffffff17,#ffffff0a);background-size:220% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-220% 0}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.stat{padding:16px 18px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface)}.stat .v{font-size:24px;font-weight:800;letter-spacing:-.02em}.stat .k{font-size:12px;color:var(--faint);margin-top:2px}.banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius-sm);font-size:13.5px;line-height:1.5;border:1px solid rgba(251,191,36,.32);background:#fbbf2414;color:#fde68a;margin-bottom:16px}.banner.info{border-color:#818cf859;background:#818cf817;color:#c7d2fe}.banner code{background:#00000059;padding:1px 6px;border-radius:5px;font-size:12.5px}.switch{position:relative;width:42px;height:24px;border-radius:999px;border:1px solid var(--border-strong);background:#00000059;cursor:pointer;transition:background .18s;flex:0 0 auto}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:transform .18s,background .18s}.switch.on{background:linear-gradient(135deg,#38bdf880,#818cf880);border-color:#38bdf899}.switch.on:after{transform:translate(18px);background:#fff}a{color:#93c5fd}table.log{width:100%;border-collapse:collapse;font-size:13px}table.log th{text-align:left;padding:9px 10px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--border)}table.log td{padding:11px 10px;border-bottom:1px solid var(--border);vertical-align:top}.scroll-x{overflow-x:auto}
