:root{--bg:#f9f8f6;--brand:#022b1b;--brand-2:#063b27;--panel:#fff;--panel-2:#f2f6f4;--panel-3:#e9efec;--stroke:#dfe5e2;--stroke-soft:#022b1b1a;--text:#022b1b;--muted:#65736d;--subtle:#85908a;--accent:#00d37f;--accent-2:#14e493;--green:#00d37f;--danger:#ff4f4f;--shadow:0 18px 42px #022b1b29;--radius:24px;--app-width:430px;color:var(--text);background:var(--brand);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 50% -20%, #00d37f2e, transparent 28%), var(--brand);margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.mini-app{width:min(100vw, var(--app-width));background:linear-gradient(180deg, #022b1b14, transparent 240px), var(--bg);border-inline:1px solid #ffffff2e;min-height:100svh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 0 1px #022b1bb3,0 28px 70px #00000047}.telegram-chrome{height:56px;padding:max(10px, env(safe-area-inset-top)) 16px 6px;background:var(--brand);grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.telegram-chrome button,.icon-button,.heart-button,.sheet-heart,.sheet-close{color:var(--text);cursor:pointer;background:0 0;border:0}.telegram-chrome .chrome-close,.telegram-chrome .chrome-menu{color:#fff;place-items:center;width:44px;height:44px;display:grid}.brand-pill{color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:15px;justify-self:start;align-items:center;gap:8px;min-width:0;height:36px;padding:5px 14px 5px 7px;font-size:15px;font-weight:700;display:inline-flex}.logo-mark{width:28px;height:28px;color:var(--brand);letter-spacing:-.03em;background:#fff;border:1px solid #ffffffb8;border-radius:50%;place-items:center;font-size:18px;font-weight:900;display:inline-grid}.app-header{background:var(--brand);border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:16px;min-height:70px;padding:13px 16px;display:flex}.app-header h1{color:#fff;letter-spacing:.34em;margin:0;font-size:15px;font-weight:900;line-height:1.1}.app-header p{color:#ffffffbd;align-items:center;gap:6px;margin:7px 0 0;font-size:15px;font-weight:600;display:flex}.app-header p i{background:var(--green);border-radius:50%;width:10px;height:10px;display:inline-block;box-shadow:0 0 15px #00d37f8c}.header-actions{align-items:center;gap:10px;display:flex}.lang-button{color:#fff;letter-spacing:.02em;background:#ffffff29;border:0;border-radius:13px;min-width:50px;height:38px;font-weight:900}.icon-button{color:#ffffffd1;place-items:center;width:34px;height:34px;padding:0;display:grid}.top-tabs{background:linear-gradient(180deg, #ffffff0d, transparent 34%), var(--brand);border-bottom:1px solid #ffffff21;grid-template-columns:repeat(4,1fr);height:74px;display:grid}.top-tabs button{color:#ffffff9e;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;padding:11px 2px 10px;font-size:13px;font-weight:800;line-height:1.1;display:flex;position:relative}.top-tabs button.active{color:var(--accent)}.top-tabs button.active:after{content:"";background:var(--accent);border-radius:999px 999px 0 0;height:3px;position:absolute;bottom:0;left:22%;right:22%;box-shadow:0 -7px 22px #00d37f6b}.content-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;height:calc(100svh - 200px);overflow:auto}.content-scroll::-webkit-scrollbar{display:none}.gallery-screen{padding:14px 12px 88px}.search-box{height:52px;color:var(--muted);background:var(--panel);border:1px solid var(--stroke);border-radius:18px;align-items:center;gap:10px;padding:0 15px;display:flex}.search-box input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:17px;font-weight:600}.search-box input::placeholder{color:#7f8b85}.category-rail{scrollbar-width:none;gap:7px;margin:13px -12px 12px 0;padding:0 12px 2px 0;display:flex;overflow-x:auto}.category-rail::-webkit-scrollbar{display:none}.category-rail button,.filter-chips button{min-height:32px;color:var(--text);background:var(--panel);border:1px solid var(--stroke);border-radius:13px;flex:none;padding:0 13px;font-size:13px;font-weight:800}.category-rail button.selected,.filter-chips button.selected{color:var(--brand);background:var(--accent);border-color:var(--accent);box-shadow:0 8px 20px #00d37f2e}.cards-stack{gap:12px;display:grid}.travel-card{text-align:left;background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadow);cursor:pointer;border-radius:22px;overflow:hidden}.card-media{background:var(--panel-3);height:166px;position:relative;overflow:hidden}.card-media img,.detail-media img,.nearby-list img{object-fit:cover;width:100%;height:100%;display:block}.card-media:after,.detail-media:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0000008c);height:42%;position:absolute;inset:auto 0 0}.item-badge{z-index:1;min-height:27px;color:var(--brand);background:var(--accent);border-radius:999px;align-items:center;gap:4px;padding:0 11px;font-size:12px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:12px;left:12px}.heart-button{z-index:1;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#022b1bbd;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute;top:10px;right:10px}.heart-button.saved,.sheet-heart.saved{color:var(--accent)}.carousel-dots{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1212129e;border-radius:999px;align-items:center;gap:6px;height:19px;padding:0 9px;display:inline-flex;position:absolute;bottom:15px;left:50%;transform:translate(-50%)}.carousel-dots i{background:#ffffff7a;border-radius:50%;width:7px;height:7px;display:inline-block}.carousel-dots i:first-child{background:var(--accent);width:22px}.price-pill{z-index:1;color:#ffffffd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#022b1bd6;border-radius:15px;align-items:center;gap:5px;min-height:38px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;bottom:15px;right:10px}.price-pill strong{color:#fff;font-size:21px;line-height:1}.card-body{padding:13px 16px 14px}.card-body h2{color:var(--text);margin:0;font-size:19px;font-weight:900;line-height:1.12}.location{color:var(--muted);align-items:center;gap:8px;margin:8px 0 11px;font-size:15px;font-weight:700;display:flex}.location svg{color:var(--accent)}.meta-row{color:var(--text);flex-wrap:wrap;gap:15px;font-size:14px;font-weight:800;display:flex}.meta-row span{align-items:center;gap:6px;display:inline-flex}.meta-row svg{color:var(--accent)}.floating-ai{right:max(13px, calc((100vw - var(--app-width)) / 2 + 13px));bottom:max(88px, env(safe-area-inset-bottom));z-index:5;min-width:160px;height:58px;color:var(--brand);background:linear-gradient(180deg, var(--accent-2), var(--accent));border:0;border-radius:22px;justify-content:center;align-items:center;gap:8px;font-size:18px;font-weight:950;display:inline-flex;position:fixed;box-shadow:0 18px 28px #022b1b38,0 0 26px #00d37f3d}.floating-ai.active{animation:.9s aiPulse}@keyframes aiPulse{0%,to{transform:scale(1)}35%{transform:scale(1.06)}}.sheet-backdrop{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008f;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.detail-sheet{width:min(100vw, var(--app-width));background:var(--panel);max-height:calc(100svh - 28px);box-shadow:var(--shadow);border:1px solid #022b1b1a;border-bottom:0;border-radius:28px 28px 0 0;position:relative;overflow:hidden}.sheet-grabber{z-index:2;background:#022b1b2e;border-radius:999px;width:58px;height:6px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.detail-media{background:var(--panel-3);border-radius:20px;height:210px;margin:16px 12px 0;position:relative;overflow:hidden}.sheet-heart,.sheet-close{z-index:2;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#022b1bb8;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute;top:12px}.sheet-heart{left:12px}.sheet-close{right:12px}.counter-badge{z-index:2;color:#fff;background:#022b1bd1;border-radius:999px;padding:6px 10px;font-size:14px;font-weight:900;position:absolute;top:70px;right:16px}.detail-content{scrollbar-width:none;max-height:calc(100svh - 358px);padding:18px 16px 104px;overflow:auto}.detail-content::-webkit-scrollbar{display:none}.detail-tag{min-height:28px;color:var(--brand);background:var(--accent);border-radius:999px;align-items:center;padding:0 12px;font-size:13px;font-weight:950;display:inline-flex}.detail-price{color:var(--accent);margin-top:12px;font-size:29px;font-weight:950;line-height:1}.detail-price small{color:var(--accent);margin-bottom:2px;font-size:15px;line-height:1;display:block}.detail-content h2{color:var(--text);margin:10px 0 0;font-size:23px;font-weight:950;line-height:1.08}.detail-id{color:var(--muted);margin:5px 0 14px;font-size:14px;font-weight:800}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.stats-grid div{text-align:center;background:var(--panel-2);border:1px solid var(--stroke);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:78px;padding:10px 7px 9px;display:flex}.stats-grid svg{color:var(--accent)}.stats-grid small{color:var(--muted);font-size:11px;font-weight:800}.stats-grid strong{color:var(--text);font-size:14px;line-height:1.12}.route-tags,.detail-map{margin-top:16px}.route-tags h3,.detail-map h3{color:var(--text);margin:0 0 9px;font-size:15px;font-weight:900}.route-tags div{scrollbar-width:none;gap:7px;display:flex;overflow-x:auto}.route-tags div::-webkit-scrollbar{display:none}.route-tags span{min-height:34px;color:var(--text);background:var(--panel-2);border:1px solid var(--stroke);border-radius:12px;flex:none;align-items:center;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.route-map{background:linear-gradient(90deg, #ffffff0d 1px, transparent 1px), linear-gradient(#ffffff0d 1px, transparent 1px), radial-gradient(circle at 26% 72%, #00d37f2e, transparent 16%), radial-gradient(circle at 76% 32%, #ffffff14, transparent 17%), var(--brand);background-size:34px 34px,34px 34px,auto,auto,auto;border:1px solid #022b1b1f;border-radius:16px;min-height:148px;position:relative;overflow:hidden}.route-map svg{width:100%;height:100%;position:absolute;inset:0}.route-map path{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round}.route-map circle{fill:var(--brand);stroke:var(--accent);stroke-width:5px}.map-stop{color:#f1f1f1;text-shadow:0 1px 6px #000000e6;font-size:12px;font-weight:850;position:absolute}.stop-1{bottom:24px;left:25px}.stop-2{bottom:35px;left:126px}.stop-3{bottom:20px;left:218px}.stop-4{top:27px;right:26px}.map-controls{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#161616ad;border-radius:12px;display:grid;position:absolute;bottom:10px;right:10px;overflow:hidden}.map-controls svg{border-bottom:1px solid #ffffff1f;width:36px;height:32px;padding:7px;position:static}.map-controls svg:last-child{border-bottom:0}.detail-map{position:relative}.detail-map button,.map-hero button{z-index:2;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#022b1bdb;border:1px solid #ffffff38;border-radius:13px;align-items:center;gap:8px;min-height:38px;padding:0 12px;font-size:14px;font-weight:900;display:inline-flex;position:absolute;top:42px;right:10px}.sheet-actions{z-index:3;padding:14px 16px max(16px, env(safe-area-inset-bottom));border-top:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;grid-template-columns:1fr 1fr;gap:12px;display:grid;position:absolute;bottom:0;left:0;right:0}.secondary-action,.primary-action{border:0;border-radius:17px;justify-content:center;align-items:center;gap:9px;min-height:56px;font-size:19px;font-weight:950;display:inline-flex}.secondary-action{color:var(--text);background:var(--panel-2);border:1px solid var(--stroke)}.primary-action{color:var(--brand);background:linear-gradient(180deg, var(--accent-2), var(--accent))}.filters-screen{padding:16px 16px 0}.filter-group{margin-bottom:19px}.filter-group h2{color:var(--muted);letter-spacing:.14em;margin:0 0 10px;font-size:14px;font-weight:950}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.filter-chips button{border-radius:12px;min-height:34px;padding:0 12px}.range-row{grid-template-columns:1fr 28px 1fr;align-items:center;gap:10px;display:grid}.range-row input{min-width:0;height:50px;color:var(--text);background:var(--panel);border:1px solid var(--stroke);border-radius:14px;outline:0;padding:0 15px;font-size:17px;font-weight:700}.range-row input::placeholder{color:#7f8b85}.range-row span{color:var(--muted);text-align:center;font-size:30px;font-weight:800;line-height:1}.filter-spacer{height:104px}.filter-actions{z-index:6;width:min(100vw, var(--app-width));padding:10px 16px max(14px, env(safe-area-inset-bottom));border-top:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f9f8f6f0;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.filter-actions strong{color:var(--brand);text-align:center;margin-bottom:10px;font-size:17px;font-weight:950;display:block}.filter-actions div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.map-screen{padding:16px 14px 94px}.map-hero{margin-top:14px;position:relative}.map-hero .route-map{min-height:362px}.map-hero button{top:14px}.nearby-list{gap:10px;margin-top:14px;display:grid}.nearby-list button{min-width:0;min-height:74px;color:var(--text);text-align:left;background:var(--panel);border:1px solid var(--stroke);border-radius:17px;grid-template-columns:78px 1fr;gap:11px;padding:8px;display:grid}.nearby-list img{border-radius:12px}.nearby-list span{flex-direction:column;justify-content:center;gap:5px;min-width:0;display:flex}.nearby-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:900;overflow:hidden}.nearby-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.empty-state{min-height:260px;color:var(--muted);text-align:center;background:var(--panel);border:1px solid var(--stroke);border-radius:22px;align-content:center;place-items:center;gap:10px;padding:28px;display:grid}.empty-state svg{color:var(--accent)}.empty-state strong{color:var(--text);font-size:19px}.empty-state span{font-size:14px;line-height:1.35}@media (width<=370px){.app-header{padding-inline:12px}.app-header h1{font-size:13px}.header-actions{gap:6px}.lang-button{min-width:44px}.top-tabs button{font-size:12px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
