:root{--bg: #0a0f1c;--bg-2: #0f1626;--panel: #131c30;--panel-2: #18233c;--line: #243149;--map-land: #223150;--map-border: #33456a;--txt: #f0f4fa;--muted: #8a98b3;--accent: #5eead4;--gold: #fbbf24;--buy: #34d399;--drop: #60a5fa;--wait: #64748b;--glow-buy: 0 0 24px rgba(52,211,153,.35);--glow-drop: 0 0 24px rgba(96,165,250,.3);--radius: 16px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 600px at 70% -10%,rgba(94,234,212,.06),transparent 60%),radial-gradient(900px 500px at 0% 0%,rgba(96,165,250,.05),transparent 55%),var(--bg);color:var(--txt);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.app{max-width:1180px;margin:0 auto;padding:28px 24px 64px}.hero{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);padding:32px 32px 30px;background:linear-gradient(135deg,#101a2e,#0b1322 60%,#0a0f1c)}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.6}.hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.brand{display:flex;align-items:baseline;gap:12px}.brand h1{margin:0;font-size:40px;font-weight:900;letter-spacing:-1px;background:linear-gradient(120deg,#fff 20%,var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand .plane{color:var(--gold);font-size:24px}.brand .volo-word{display:inline-flex;align-items:center;gap:1px}.brand .volo-word .plane-in{-webkit-text-fill-color:var(--gold);color:var(--gold);background:none;font-size:.58em;transform:translateY(-.06em);margin:0 1px;display:inline-block;line-height:1}.tagline{margin:8px 0 0;color:var(--muted);font-size:15px}.refresh{background:var(--accent);color:#04201c;border:0;font-weight:700;font-family:var(--font);padding:10px 18px;border-radius:12px;cursor:pointer;white-space:nowrap;transition:transform .12s ease,box-shadow .12s ease}.refresh:hover{transform:translateY(-1px);box-shadow:0 6px 18px #5eead440}.refresh:disabled{opacity:.5;cursor:default}.hero-actions{display:flex;align-items:center;gap:10px}.lang-select{height:40px;border-radius:12px;border:1px solid var(--line);background:#ffffff0a;color:var(--txt);font-family:var(--font);font-weight:700;font-size:12px;padding:0 8px;cursor:pointer}.lang-select:hover{border-color:var(--accent)}.lang-select option{background:var(--panel);color:var(--txt);font-weight:700}[data-theme=light] .lang-select option{background:#fff;color:#0d1b2e}.fx-note{margin:-8px 0 18px;font-size:12px;color:var(--muted);opacity:.9}.theme-toggle{width:40px;height:40px;border-radius:12px;cursor:pointer;background:#ffffff0a;border:1px solid var(--line);color:var(--txt);font-size:17px;line-height:1;display:grid;place-items:center;transition:border-color .12s ease,transform .12s ease,background .12s ease}.theme-toggle:hover{border-color:var(--accent);transform:translateY(-1px);background:#ffffff12}.plane-btn{position:relative;width:40px;height:40px;border-radius:12px;cursor:pointer;border:1px solid var(--line);background:#ffffff0a;font-size:18px;line-height:1;display:grid;place-items:center;transition:border-color .12s ease,transform .12s ease}.plane-btn:hover{border-color:var(--accent);transform:translateY(-1px)}.plane-btn.off{color:var(--muted)}.plane-btn.on{color:var(--accent);animation:plane-glow 2.6s ease-in-out infinite}@keyframes plane-glow{0%,to{filter:drop-shadow(0 0 0 transparent);transform:translateY(0)}50%{filter:drop-shadow(0 0 7px var(--accent));transform:translateY(-2px)}}.plane-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;border:2px solid var(--bg)}.hero-stats{display:flex;gap:28px;margin-top:24px;flex-wrap:wrap}.hstat{display:flex;flex-direction:column}.hstat b{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}.hstat span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.6px}.hstat.ok b{color:var(--buy)}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin:34px 0 14px;display:flex;align-items:center;gap:14px;font-weight:700}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-head .section-title{margin:34px 0 14px;flex:1}.section-head .info-btn{flex-shrink:0}.map-box{position:relative;background:linear-gradient(180deg,var(--bg-2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);padding:8px;min-height:380px}.map-label{fill:var(--txt);font-size:9px;font-weight:700;font-family:var(--font);pointer-events:none}.map-pulse{transform-origin:center;transform-box:fill-box;animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(.5);opacity:.55}70%{transform:scale(2.4);opacity:0}to{opacity:0}}.map-tooltip{position:fixed;z-index:50;pointer-events:none;background:#101a2ef5;border:1px solid var(--line);border-radius:10px;padding:10px 12px;box-shadow:0 10px 30px #00000073;min-width:150px}.mt-city{font-weight:700}.mt-country{color:var(--muted);font-size:12px;margin-bottom:6px}.mt-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.mt-price{font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}.mt-verdict{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.mt-verdict.buy{color:var(--buy)}.mt-verdict.drop{color:var(--drop)}.mt-verdict.wait{color:var(--wait)}.mt-verdict.none{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;cursor:pointer;position:relative;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease;animation:fadeIn .35s ease both}.card:hover{transform:translateY(-3px);border-color:var(--accent)}.card.buy{box-shadow:var(--glow-buy);border-color:#34d39966}.card.drop{box-shadow:var(--glow-drop);border-color:#60a5fa66}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.card-city{display:flex;gap:10px;align-items:center}.card-flag{font-size:26px;line-height:1}.card-name{font-weight:700;font-size:16px}.card-country{color:var(--muted);font-size:12px}.badge{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:12px;letter-spacing:.5px;padding:4px 10px;border-radius:999px;border:1px solid transparent}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.badge.buy{color:var(--buy);background:#34d3991f;border-color:#34d39966}.badge.drop{color:var(--drop);background:#60a5fa1f;border-color:#60a5fa66}.badge.wait{color:var(--wait);background:#64748b24}.badge.none{color:var(--muted);background:#8a98b31a}.card-price{font-size:32px;font-weight:800;margin:14px 0 8px;font-variant-numeric:tabular-nums}.card-price-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:14px 0 8px}.card-price-row .card-price{margin:0}.stops-badge{font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:#8a98b324;color:var(--muted);letter-spacing:.3px}.stops-badge.direct{background:#34d39924;color:var(--buy)}.card-metrics{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:var(--muted)}.card-metrics b{color:var(--txt);font-variant-numeric:tabular-nums}.card-metrics .neg{color:var(--buy)}.card-metrics .pos{color:var(--gold)}.gauge{margin:14px 0 4px}.gauge-track{position:relative;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--buy),var(--gold));opacity:.35}.gauge-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,var(--buy),var(--gold));opacity:1}.gauge-dot{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--bg);transform:translate(-50%,-50%);box-shadow:0 0 8px #ffffff80}.gauge-ends{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:6px}.card-why{margin:12px 0 0;font-size:13px;color:var(--txt);line-height:1.45}.card-why.muted{color:var(--muted)}.book-btn{display:block;text-align:center;margin-top:14px;padding:11px 14px;border-radius:10px;background:var(--panel-2);color:var(--txt);border:1px solid var(--line);font-weight:700;font-size:13.5px;text-decoration:none;cursor:pointer;transition:transform .14s ease,border-color .14s ease,color .14s ease,filter .14s ease}.book-btn:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.book-btn.hot{background:var(--buy);color:#04201c;border-color:var(--buy);box-shadow:var(--glow-buy)}.book-btn.hot:hover{color:#04201c;filter:brightness(1.06);transform:translateY(-1px)}.sleep{margin-top:8px}.hotel-btn{display:block;text-align:center;padding:9px 14px;border-radius:10px;background:transparent;color:var(--txt);border:1px solid var(--line);font-weight:600;font-size:12.5px;text-decoration:none;transition:border-color .14s ease,color .14s ease}.hotel-btn:hover{border-color:var(--gold);color:var(--gold)}.airbnb-soon{text-align:center;margin-top:6px;font-size:11px;color:var(--muted);opacity:.7}.pkg-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;position:relative;animation:fadeIn .35s ease both;display:flex;flex-direction:column;gap:8px}.pkg-card.buy{box-shadow:var(--glow-buy);border-color:#34d39966}.pkg-card.drop{box-shadow:var(--glow-drop);border-color:#60a5fa66}.pkg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:2px}.pkg-line{display:flex;align-items:baseline;gap:8px;font-size:13px}.pkg-ico{font-size:15px}.pkg-lbl{color:var(--muted)}.pkg-val{margin-left:auto;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:8px;justify-content:flex-end;flex-wrap:wrap}.pkg-val small{color:var(--muted);font-weight:500}.pkg-est{color:var(--muted);font-weight:500;font-size:11px}.pkg-total{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:10px;border-top:1px solid var(--line);font-size:14px}.pkg-total b{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.pkg-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px}.pkg-actions .book-btn,.pkg-actions .hotel-btn{margin-top:0}.tabs{position:relative;display:inline-flex;gap:4px;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:4px;margin:22px 0 16px}.tab{position:relative;z-index:1;border:none;background:transparent;color:var(--muted);font-weight:700;font-size:.95rem;padding:8px 18px;border-radius:9px;cursor:pointer;transition:color .25s ease;white-space:nowrap}.tab.active{color:var(--txt)}.tab:disabled{opacity:.4;cursor:not-allowed}.tab-slider{position:absolute;top:4px;bottom:4px;background:var(--accent);border-radius:9px;z-index:0;opacity:.18;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1)}.tab-viewport{overflow:hidden}.tab-track{display:flex;width:200%;transition:transform .35s cubic-bezier(.4,0,.2,1)}.tab-track.show-prices{transform:translate(0)}.tab-track.show-packages{transform:translate(-50%)}.tab-panel{width:50%;flex-shrink:0}.tab-panel.inactive{max-height:0;overflow:hidden}.card-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.watch-btn{display:block;width:100%;margin-top:8px;padding:9px 14px;border-radius:10px;background:transparent;color:var(--muted);border:1px dashed var(--line);font-weight:600;font-size:12.5px;cursor:pointer;transition:border-color .14s ease,color .14s ease}.watch-btn:hover{border-color:var(--gold);color:var(--gold)}.watch-form{display:flex;align-items:center;gap:6px;margin-top:8px}.watch-cur{color:var(--muted);font-weight:700}.watch-input{flex:1;min-width:0;height:38px}.watch-go{height:38px;padding:0 14px;border-radius:10px;border:1px solid var(--gold);background:var(--gold);color:#1a1206;font-weight:700;font-size:12.5px;cursor:pointer;white-space:nowrap}.watch-go:hover{filter:brightness(1.06)}.watch-cancel,.watch-x{height:38px;width:38px;flex-shrink:0;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-size:14px}.watch-cancel:hover,.watch-x:hover{border-color:var(--drop);color:var(--drop)}.watch-wrap{margin-top:8px}.watch-wrap .watch-form{margin-top:0}.watch-err{margin:6px 2px 0;font-size:11.5px;color:#f87171;line-height:1.4}.watch-active{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding:8px 12px;border-radius:10px;background:#fbbf2414;border:1px solid rgba(251,191,36,.35);font-size:12.5px;font-weight:700;color:var(--gold)}.watch-active.reached{background:#fbbf2429}.watch-active .watch-x{height:28px;width:28px}@keyframes target-halo{0%,to{box-shadow:0 0 #fbbf2400}50%{box-shadow:0 0 28px 4px #fbbf248c}}.card.target-reached,.pkg-card.target-reached{animation:target-halo 1.8s ease-in-out infinite;border-color:var(--gold)}.target-badge{background:var(--gold);color:#1a1206;font-weight:800;border-radius:999px;padding:3px 10px;font-size:.78rem;white-space:nowrap;animation:target-pop .4s ease}@keyframes target-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.target-chip{display:inline-flex;align-items:center;height:40px;padding:0 12px;border-radius:12px;background:#fbbf2424;border:1px solid rgba(251,191,36,.4);color:var(--gold);font-weight:800;font-size:13px;white-space:nowrap}.modal-overlay{position:fixed;inset:0;z-index:1000;background:#080c168c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;animation:modal-fade .2s ease}.modal-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;max-width:380px;width:calc(100% - 40px);box-shadow:0 20px 60px #0006;animation:modal-pop .22s cubic-bezier(.4,0,.2,1)}.modal-title{margin:0 0 8px;font-size:1.1rem;font-weight:800;color:var(--txt)}.modal-msg{margin:0 0 18px;color:var(--muted);line-height:1.5}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--txt);padding:9px 16px;border-radius:10px;cursor:pointer;font-weight:600}.btn-ghost:hover{border-color:var(--accent)}.btn-accent{background:var(--accent);color:#04241f;border:none;padding:9px 16px;border-radius:10px;font-weight:700;cursor:pointer}.btn-danger{background:#ef4444;color:#fff;border:none;padding:9px 16px;border-radius:10px;font-weight:700;cursor:pointer}.btn-danger:hover{filter:brightness(1.06)}.btn-danger:disabled{opacity:.5;cursor:not-allowed;filter:none}.account-danger{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.danger-title{color:#ef4444;font-size:.95rem;font-weight:800;margin:0 0 6px}.danger-desc{color:var(--muted);font-size:.85rem;margin:0 0 12px;line-height:1.5}.btn-danger-outline{background:transparent;border:1px solid #ef4444;color:#ef4444;padding:9px 16px;border-radius:10px;font-weight:700;cursor:pointer;transition:background .14s ease,color .14s ease}.btn-danger-outline:hover{background:#ef4444;color:#fff}.delete-input{width:100%;margin:10px 0 4px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);color:var(--txt);font-size:1rem;font-weight:700;letter-spacing:.5px}.delete-error{color:#ef4444;font-size:.85rem;margin:6px 0 0}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.sync-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);align-self:center;animation:sync-pulse 1s ease-in-out infinite}@keyframes sync-pulse{0%,to{opacity:.3}50%{opacity:1}}.chart-read{margin-bottom:14px;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.chart-read.low{border-color:#34d39973;background:#34d39914}.chart-read.below{border-color:#60a5fa73;background:#60a5fa14}.cr-msg{margin:0 0 10px;font-weight:700;color:var(--txt);font-size:14px}.cr-nums{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12px;color:var(--muted)}.cr-nums span{display:inline-flex;gap:6px;align-items:baseline}.cr-nums b{color:var(--txt);font-variant-numeric:tabular-nums;font-size:14px}.trip-list{display:flex;flex-direction:column;gap:10px}.trip{padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.trip.booked{border-color:#34d39966;background:#34d3990f}.trip-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.trip-city{font-weight:700;color:var(--txt)}.trip-status{font-size:11.5px;font-weight:700;color:var(--muted);white-space:nowrap}.trip-status.on{color:var(--buy)}.trip-sub{display:flex;flex-wrap:wrap;gap:4px 6px;margin-top:5px;font-size:12px;color:var(--muted)}.trip-actions{display:flex;gap:8px;margin-top:10px}.trip-btn{flex:1;padding:8px 10px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--txt);font-weight:600;font-size:12.5px;cursor:pointer;transition:border-color .14s ease,color .14s ease}.trip-btn:hover{border-color:var(--accent)}.trip-btn.primary{background:var(--buy);color:#04201c;border-color:var(--buy)}.trip-btn.del{flex:0 0 auto}.trip-btn.del:hover{border-color:var(--drop);color:var(--drop)}.chart-box{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.chart-legend{display:flex;gap:20px;font-size:13px;margin-bottom:10px;flex-wrap:wrap}.chart-legend b{color:var(--accent);font-variant-numeric:tabular-nums}.hint{font-size:12px;margin:12px 0 0;color:var(--muted)}.hint b{color:var(--txt)}.route-pills{display:flex;flex-wrap:wrap;gap:8px}.pill{background:var(--panel);color:var(--muted);border:1px solid var(--line);font-family:var(--font);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;transition:all .12s ease}.pill:hover{color:var(--txt);border-color:var(--accent)}.pill.active{background:var(--accent);color:#04201c;border-color:var(--accent)}.raw{margin-top:34px}.raw summary{cursor:pointer;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.7px;font-weight:700;padding:8px 0;-webkit-user-select:none;user-select:none}.raw summary:hover{color:var(--txt)}.grid{width:100%;border-collapse:collapse;margin-top:8px}.grid th,.grid td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line)}.grid th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.grid tbody tr:hover{background:var(--bg-2)}.grid .r{text-align:right}.muted{color:var(--muted)}.price{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.dest{background:#5eead41a;color:var(--accent);padding:2px 8px;border-radius:6px;font-weight:600;font-size:12px}.error{background:#3a1416;border:1px solid #6b1d22;padding:14px 16px;border-radius:12px;margin:16px 0}.empty{background:var(--panel);border:1px dashed var(--line);padding:28px;border-radius:var(--radius);text-align:center;color:var(--muted)}.drawer-overlay{position:fixed;inset:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:90}.drawer-overlay.show{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100vh;width:430px;max-width:92vw;z-index:100;background:var(--panel);border-left:1px solid var(--line);transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;box-shadow:-24px 0 60px #0006}.drawer.open{transform:translate(0)}.drawer.left{left:0;right:auto;border-left:0;border-right:1px solid var(--line);transform:translate(-100%);box-shadow:24px 0 60px #0006}.drawer.left.open{transform:translate(0)}.notif-switch-row{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--line);font-size:13px}.notif-account{padding:14px 20px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.na-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}.na-tg{margin-top:2px}.na-tg-on{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600}.btn-tg{width:100%;background:#229ed9;color:#fff;border:0;font-family:var(--font);font-weight:700;font-size:13.5px;padding:11px;border-radius:10px;cursor:pointer}.btn-tg:hover{filter:brightness(1.06)}.na-tg-msg{font-size:12px;color:var(--accent);margin:8px 0 0;line-height:1.45}.na-hint{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.4}.notif{background:var(--bg-2);border:1px solid var(--line);border-left-width:4px;border-left-color:var(--line);border-radius:12px;padding:14px;margin-bottom:10px}.notif.unread{border-left-color:var(--accent);background:var(--panel-2)}.notif-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.notif-title{font-weight:800;font-size:14px;color:var(--txt)}.notif-body{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.notif-when{color:var(--muted);font-size:11px;white-space:nowrap}.notif-line{display:flex;justify-content:space-between;align-items:baseline;margin:10px 0 4px}.notif-city{font-weight:700;font-size:15px}.notif-price{font-weight:800;font-size:18px;font-variant-numeric:tabular-nums}.notif-sub{font-size:12px;color:var(--muted)}.notif-sub.good{color:var(--buy);font-weight:600}.notif-book{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;color:var(--accent);text-decoration:none}.notif-book:hover{text-decoration:underline}.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}.drawer-head h3{margin:0;font-size:18px;font-weight:800}.drawer-x{background:transparent;border:0;color:var(--muted);font-size:18px;cursor:pointer}.drawer-x:hover{color:var(--txt)}.drawer-body{flex:1;overflow-y:auto;padding:18px 20px}.drawer-foot{padding:16px 20px;border-top:1px solid var(--line);background:var(--bg-2)}.drawer-msg{margin:0 0 10px;font-size:12px;color:var(--muted);line-height:1.45}.set-block{margin-bottom:26px}.set-block h4{margin:0 0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted)}.set-list{display:flex;flex-direction:column;gap:8px}.set-row{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}.set-row.off{opacity:.6}.set-row-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.set-info{display:flex;align-items:center;gap:10px;min-width:0}.set-name{font-weight:600;font-size:14px}.set-sub{color:var(--muted);font-size:11px}.mini-badge{font-size:9px;font-weight:800;letter-spacing:.5px;padding:3px 6px;border-radius:6px}.mini-badge.fixed{color:var(--accent);background:#5eead41f}.mini-badge.flex{color:var(--gold);background:#fbbf2424}.set-controls{display:flex;gap:8px;flex-wrap:wrap}.seg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel)}.seg-btn{background:transparent;color:var(--muted);border:0;padding:7px 12px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:var(--font);white-space:nowrap;transition:background .12s ease,color .12s ease}.seg-btn+.seg-btn{border-left:1px solid var(--line)}.seg-btn:not(.on):hover{color:var(--txt)}.seg-btn.on{background:var(--accent);color:#04201c}.seg-btn:disabled{cursor:default}.tog{background:var(--panel);border:1px solid var(--line);color:var(--muted);font-family:var(--font);font-size:11px;font-weight:700;padding:6px 9px;border-radius:8px;cursor:pointer;white-space:nowrap}.tog:hover:not(:disabled){border-color:var(--accent);color:var(--txt)}.tog.on{background:#34d39926;color:var(--buy);border-color:#34d39980}.tog:disabled{opacity:.5;cursor:default}.del{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:8px;width:28px;height:28px;cursor:pointer}.del:hover:not(:disabled){color:#f87171;border-color:#f87171}.add-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inp{background:var(--bg-2);border:1px solid var(--line);color:var(--txt);border-radius:8px;padding:8px 10px;font-family:var(--font);font-size:13px;flex:1;min-width:90px}.inp.code{flex:0 0 120px;text-transform:uppercase}.inp:focus{outline:none;border-color:var(--accent)}.btn-add{background:var(--accent);color:#04201c;border:0;font-weight:700;font-family:var(--font);padding:8px 14px;border-radius:8px;cursor:pointer}.btn-add:disabled{opacity:.5;cursor:default}.iata-hints{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.hint-chip{background:var(--panel);border:1px solid var(--line);color:var(--txt);font-size:12px;padding:6px 10px;border-radius:999px;cursor:pointer;font-family:var(--font);transition:all .12s ease}.hint-chip:hover{background:var(--accent);color:#04201c;border-color:var(--accent);transform:translateY(-1px)}.add-card{border:1px solid var(--accent);background:#5eead40f;border-radius:12px;padding:14px}.add-intro{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.5}.add-intro b{color:var(--accent)}.add-hint-label{font-size:11px;color:var(--muted);margin:14px 0 4px;text-transform:uppercase;letter-spacing:.5px}.search-wrap{position:relative}.inp.search{width:100%;padding:11px 13px;font-size:14px}.search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;list-style:none;margin:0;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:10px;max-height:240px;overflow-y:auto;box-shadow:0 14px 34px #0006}.search-results li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;cursor:pointer}.search-results li:hover{background:var(--bg-2)}.search-results li span{font-weight:600}.search-results li small{color:var(--muted);white-space:nowrap}.add-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.add-controls .btn-add{padding:10px 18px;font-size:14px}.slider{margin-bottom:16px}.slider label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:5px}.slider label b{color:var(--accent);font-variant-numeric:tabular-nums}.slider input[type=range]{width:100%;accent-color:var(--accent)}.slider small{color:var(--muted);font-size:11px}.btn-save{margin-top:6px;background:transparent;border:1px solid var(--accent);color:var(--accent);font-weight:700;font-family:var(--font);padding:8px 14px;border-radius:8px;cursor:pointer}.btn-save:disabled{opacity:.5}.btn-apply{width:100%;background:var(--accent);color:#04201c;border:0;font-weight:800;font-family:var(--font);padding:12px;border-radius:10px;cursor:pointer;font-size:14px}.btn-apply:disabled{opacity:.6;cursor:default}.adv summary{cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:700;padding:8px 0;list-style:none}.adv summary::-webkit-details-marker{display:none}.adv summary:before{content:"▸ "}.adv[open] summary:before{content:"▾ "}.adv-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.adv-field span,.adv-row span{font-size:13px}.adv-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-splash{color:var(--accent);font-size:22px;font-weight:800;animation:plane-glow 2s ease-in-out infinite}.auth-card{width:100%;max-width:400px;padding:32px 28px;background:linear-gradient(135deg,#101a2e,#0b1322 70%,#0a0f1c);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 60px #0006}.auth-tabs{display:flex;gap:6px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:4px;margin:22px 0 18px}.auth-tabs button{flex:1;background:transparent;border:0;color:var(--muted);font-family:var(--font);font-weight:700;font-size:13px;padding:9px;border-radius:9px;cursor:pointer}.auth-tabs button.active{background:var(--accent);color:#04201c}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field span{font-size:12px;color:var(--muted)}.auth-field span i{opacity:.7}.auth-field .inp{width:100%;padding:11px 13px;font-size:14px}.auth-error{background:#3a1416;border:1px solid #6b1d22;color:#fecaca;padding:10px 12px;border-radius:9px;font-size:13px}.auth-info{background:#5eead41a;border:1px solid rgba(94,234,212,.35);color:var(--accent);padding:10px 12px;border-radius:9px;font-size:13px;line-height:1.45}.code-input{text-align:center;font-size:24px;letter-spacing:12px;font-weight:800;font-variant-numeric:tabular-nums}.auth-switch{text-align:center;color:var(--muted);font-size:13px;margin:16px 0 0}.auth-switch button{background:0;border:0;color:var(--accent);font-family:var(--font);font-weight:700;cursor:pointer;padding:0}.auth-legal{text-align:center;margin:18px 0 0;font-size:.82rem;color:var(--muted)}.auth-legal button{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.82rem;font-weight:600;padding:0;font-family:var(--font)}.auth-legal button:hover{text-decoration:underline}.page-overlay{position:fixed;inset:0;z-index:9999;overflow-y:auto;background:var(--bg);-webkit-overflow-scrolling:touch;animation:modal-fade .2s ease}.page-wrap{max-width:760px;margin:0 auto;padding:44px 20px 64px}.page-x{position:fixed;top:14px;right:14px;z-index:10000;width:40px;height:40px;border-radius:50%;background:var(--panel);border:1px solid var(--line);color:var(--txt);font-size:1.1rem;cursor:pointer}.page-x:hover{border-color:var(--accent)}.page-tagline{text-align:center;color:var(--muted);font-size:.9rem;margin:0 0 14px}.page-h1{text-align:center;font-size:1.6rem;font-weight:800;color:var(--txt);margin:0 0 6px}.page-sub{text-align:center;color:var(--muted);font-size:.95rem;margin:0 0 24px}.page-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:16px}.page-card h2{color:var(--accent);font-size:1.05rem;margin:0 0 12px}.page-card p{color:var(--txt);line-height:1.6;margin:0;font-size:.95rem}.page-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.page-tag{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:600;color:var(--txt)}.page-step{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.page-step:last-child{margin-bottom:0}.page-step .num{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--accent);color:#04241f;display:flex;align-items:center;justify-content:center;font-weight:800}.page-step b{color:var(--txt);font-size:.98rem}.page-step p{color:var(--muted);margin:3px 0 0;font-size:.9rem}.page-contact{display:flex;align-items:center;gap:14px;padding:12px 0;text-decoration:none;border-top:1px solid var(--line)}.page-card .page-contact:first-of-type{border-top:0;padding-top:0}.page-contact-emoji{font-size:1.5rem}.page-contact b{color:var(--txt);display:block;font-size:.9rem}.page-contact-val{color:var(--accent);font-size:.9rem}.page-faq{border-top:1px solid var(--line);padding:12px 0}.page-faq:first-of-type{border-top:0;padding-top:0}.page-faq summary{cursor:pointer;font-weight:700;color:var(--txt);font-size:.95rem;list-style:none}.page-faq summary::-webkit-details-marker{display:none}.page-faq summary:before{content:"＋ ";color:var(--accent);font-weight:800}.page-faq[open] summary:before{content:"－ "}.page-faq p{color:var(--muted);margin:10px 0 0;line-height:1.55;font-size:.9rem}.page-footer{text-align:center;color:var(--muted);font-size:.85rem;margin:26px 0 0}[data-theme=light] .auth-card{background:linear-gradient(135deg,#fff,#eef4fb 60%,#e4ecf7)}[data-theme=light]{--bg: #ffffff;--bg-2: #f4f7fb;--panel: #ffffff;--panel-2: #dfe8f3;--line: #e4e9f2;--txt: #0e1b2e;--muted: #5d6e88;--accent: #0d9488;--gold: #d97706;--buy: #059669;--drop: #2563eb;--wait: #64748b;--glow-buy: 0 0 0 1px rgba(5,150,105,.25), 0 10px 26px rgba(5,150,105,.14);--glow-drop: 0 0 0 1px rgba(37,99,235,.22), 0 10px 26px rgba(37,99,235,.12);--map-land: #b7cae4;--map-border: #98aece}[data-theme=light] body{background:var(--bg)}[data-theme=light] .hero{background:#fff}[data-theme=light] .brand h1{background:linear-gradient(120deg,#0e1b2e 25%,var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}[data-theme=light] .theme-toggle{background:#0d1b2e08}[data-theme=light] .theme-toggle:hover{background:#0d1b2e0f}[data-theme=light] .map-tooltip{background:#fffffff7;box-shadow:0 12px 32px #0f1b2d29}[data-theme=light] .gauge-dot{border-color:#fff;box-shadow:0 0 0 1px #0f1b2d26}[data-theme=light] .hero,[data-theme=light] .map-box,[data-theme=light] .chart-box,[data-theme=light] .card:not(.buy):not(.drop){box-shadow:0 1px 3px #0f1b2d0a}[data-theme=light] .map-box,[data-theme=light] .hh-row,[data-theme=light] .notif.unread,[data-theme=light] .trip,[data-theme=light] .pkg-card{background:#fff}@media(max-width:640px){.brand h1{font-size:30px}.hero{padding:22px}.hero-stats{gap:18px}.cards{grid-template-columns:1fr}}.home-highlights{margin-top:22px;display:flex;flex-direction:column}.hh-title{margin:0 0 12px;font-size:12.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:800}.hh-empty{color:var(--muted);font-size:13px;line-height:1.5}.hh-list{display:flex;flex-direction:column;gap:10px}.hh-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer;background:var(--panel-2);border:1px solid var(--line);border-left-width:4px;border-left-color:var(--line);border-radius:12px;padding:12px 14px;transition:border-color .14s ease,transform .14s ease}.hh-row:hover{transform:translateY(-1px)}.hh-row.buy{border-left-color:var(--buy)}.hh-row.drop{border-left-color:var(--drop)}.hh-flag{font-size:22px;line-height:1}.hh-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.hh-city{font-weight:700;font-size:14px;color:var(--txt)}.hh-verdict{font-size:11px;font-weight:700}.hh-row.buy .hh-verdict{color:var(--buy)}.hh-row.drop .hh-verdict{color:var(--drop)}.hh-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.hh-price{font-weight:800;font-size:15px;font-variant-numeric:tabular-nums;color:var(--txt)}.hh-pct{font-size:11px;font-weight:700;color:var(--buy)}.mobile-tabbar{display:none}.tabbar-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;cursor:pointer;color:var(--muted);font-size:.7rem;font-weight:600}.tabbar-btn.active{color:var(--accent)}.tabbar-icon{font-size:1.3rem;line-height:1}.tabbar-label{font-size:.66rem}.graph-overlay{position:fixed;inset:0;z-index:950;background:#080c1699;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;animation:modal-fade .2s ease}.graph-modal{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 16px;width:100%;max-width:640px;max-height:88vh;overflow-y:auto;animation:modal-pop .22s cubic-bezier(.4,0,.2,1)}.graph-close{position:absolute;top:12px;right:14px;z-index:1}.graph-modal .section-title{margin-top:0}@media(max-width:768px){.mobile-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:900;height:64px;display:flex;background:var(--panel);border-top:1px solid var(--line);box-shadow:0 -4px 20px #0000001a;padding-bottom:env(safe-area-inset-bottom,0)}.app{padding-bottom:88px}.drawer{width:100%;max-width:100%}.hero{min-height:calc(100dvh - 116px);display:flex;flex-direction:column}.home-highlights{flex:1}.globe-section{display:flex;flex-direction:column;min-height:calc(100dvh - 116px)}.globe-section .map-box{flex:1;display:flex;align-items:center;justify-content:center}.globe-section .map-box svg{width:100%;height:auto}}
