:root{--bg:#0A0C12;--panel:#141A24;--panel2:#1C2330;--line:#272F3D;--line-soft:#1E2531;--text:#F3F6FB;--muted:#8B94A5;--accent:#EC1C24;--accentDim:#2A1114;--blue:#3B82F6;--gold:#3B82F6;--red:#EC1C24;--pin:#C9A227;--green:#2BC46A;--radius:16px;--radius-sm:12px;--radius-lg:22px;--shadow:0 6px 22px rgba(0,0,0,.35);--shadow-lg:0 18px 50px rgba(0,0,0,.5);--grad-accent:linear-gradient(135deg,#F5303A,#D5121A);--grad-blue:linear-gradient(135deg,#4C8DFF,#2E6BE0)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:#04060a;overscroll-behavior:none}body{overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,system-ui,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;letter-spacing:.1px}h1,h2,h3,p{margin:0}button{font-family:inherit;touch-action:manipulation}input,textarea,select{font-family:inherit}input::placeholder{color:var(--muted);opacity:.7}a{color:var(--blue);text-decoration:none}::selection{background:color-mix(in srgb,var(--accent) 60%,transparent);color:#fff}.app-root{height:100dvh;display:flex;justify-content:center;background:#04060a;overflow:hidden}.frame{width:100%;max-width:400px;height:var(--app-vh,100dvh);background:radial-gradient(1200px 500px at 50% -10%,#121826 0%,transparent 60%),var(--bg);display:flex;flex-direction:column;position:relative;overflow:hidden}@media (min-width:440px){.app-root{align-items:center;padding:16px}.frame{height:calc(var(--app-vh,100dvh) - 32px);border-radius:30px;border:1px solid var(--line);box-shadow:0 40px 100px #000000b3,inset 0 1px #ffffff08}}.content{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.content::-webkit-scrollbar{width:0}.header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);padding:16px 18px 14px;border-bottom:1px solid var(--line-soft)}.eyebrow{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700}.balance-num{color:var(--gold);font-size:30px;font-weight:800;font-variant-numeric:tabular-nums;font-family:ui-monospace,Menlo,monospace;line-height:1.1}.city-pill{display:inline-flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--line);border-radius:20px;padding:7px 13px;color:var(--text);font-size:13px;font-weight:700;font-family:inherit;line-height:1;transition:.15s ease}.city-pill:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.nav{position:relative;height:74px;background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:saturate(140%) blur(16px);-webkit-backdrop-filter:saturate(140%) blur(16px);border-top:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-around;padding:0 6px;padding-bottom:env(safe-area-inset-bottom)}.nav-item{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;padding:6px 0;color:var(--muted);font-size:10.5px;font-weight:600;transition:color .15s ease,transform .12s ease}.nav-item:active{transform:scale(.92)}.nav-item.active{color:var(--accent)}.nav-qr{width:58px;height:58px;margin-top:-26px;border-radius:19px;border:4px solid var(--bg);cursor:pointer;background:var(--grad-accent);color:#fff;display:grid;place-items:center;box-shadow:0 10px 26px #ec1c2473;flex:0 0 58px;transition:transform .15s ease}.nav-qr:active{transform:scale(.94)}.nav-qr.active{background:var(--grad-blue);box-shadow:0 10px 26px #3b82f673}.card{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,#fff 0%),var(--panel));border:1px solid var(--line-soft);border-radius:var(--radius);padding:14px;box-shadow:0 1px #ffffff05 inset,0 2px 10px #0000002e}button.card,[role=button].card{transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}button.card:hover,[role=button].card:hover{transform:translateY(-2px);border-color:var(--line);box-shadow:var(--shadow)}button.card:active,[role=button].card:active{transform:translateY(0)}.btn{width:100%;border:none;border-radius:14px;padding:14px 0;font-size:15px;font-weight:800;cursor:pointer;transition:transform .12s ease,filter .15s ease,box-shadow .15s ease;letter-spacing:.2px}.btn:active{transform:scale(.985)}.btn-primary{background:var(--grad-accent);color:#fff;box-shadow:0 8px 22px #ec1c2452}.btn-primary:hover{filter:brightness(1.06)}.btn-blue{background:var(--grad-blue);color:#fff;box-shadow:0 8px 22px #3b82f64d}.btn-blue:hover{filter:brightness(1.06)}.btn-ghost{background:var(--panel2);color:var(--text);border:1px solid var(--line);box-shadow:none}.btn-ghost:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.btn:disabled{opacity:.5;cursor:default;box-shadow:none;filter:none}.field{margin-bottom:14px}.field label{display:block;color:var(--muted);font-size:12px;margin-left:2px;margin-bottom:6px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel2);color:var(--text);font-size:15px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 22%,transparent)}.pill{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:20px}.row{display:flex;align-items:center}.muted{color:var(--muted)}.h2{font-size:20px;font-weight:800;margin:0;letter-spacing:-.2px}.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.chips::-webkit-scrollbar{height:0}.chip{flex-shrink:0;padding:8px 14px;border-radius:20px;border:1px solid var(--line);background:var(--panel2);color:var(--muted);font-size:12.5px;font-weight:700;cursor:pointer;transition:.14s ease}.chip:hover{color:var(--text);border-color:var(--line)}.chip.active{background:var(--grad-accent);border-color:transparent;color:#fff;box-shadow:0 6px 16px #ec1c2447}.spin{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}.center{display:grid;place-items:center;min-height:60dvh}.toast{position:fixed;left:50%;bottom:92px;transform:translate(-50%);z-index:3000;background:color-mix(in srgb,var(--panel2) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--blue) 40%,transparent);color:var(--text);padding:12px 16px;border-radius:14px;font-size:14px;max-width:340px;width:calc(100% - 40px);box-shadow:var(--shadow-lg);animation:up .25s ease}.toast.err{background:color-mix(in srgb,var(--accentDim) 92%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}@keyframes up{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}*{transition:none!important}}button.card{color:var(--text);font:inherit;text-align:left}.sidebar{display:none}@media (min-width:980px){.app-root{align-items:stretch;justify-content:center;padding:0}.sidebar{display:flex;flex-direction:column;width:248px;height:100dvh;flex-shrink:0;background:linear-gradient(180deg,#0b0f16,#090c12);border-right:1px solid var(--line);padding:20px 14px}.frame{max-width:760px;height:var(--app-vh,100dvh);border-radius:0;border:none;border-left:1px solid var(--line);border-right:1px solid var(--line);box-shadow:none}.nav{display:none}.sb-logo{font-size:21px;font-weight:900;letter-spacing:-.5px;padding:6px 10px 18px;cursor:pointer}.sb-nav{display:flex;flex-direction:column;gap:4px}.sb-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;background:none;border:1px solid transparent;color:var(--muted);font-size:14.5px;font-weight:600;cursor:pointer;font-family:inherit;text-align:left;width:100%;transition:.14s ease}.sb-item:hover{background:var(--panel);color:var(--text)}.sb-item.on{background:color-mix(in srgb,var(--accent) 14%,transparent);color:#fff;border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.sb-ic{display:flex;color:inherit}.sb-item.on .sb-ic{color:var(--accent)}.sb-spacer{flex:1}.sb-profile{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--panel);cursor:pointer;font-family:inherit;width:100%;color:var(--text);transition:.14s ease}.sb-profile:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}.sb-ava{width:38px;height:38px;border-radius:11px;background:var(--grad-accent);display:grid;place-items:center;font-weight:800;color:#fff;flex-shrink:0}}.marquee{overflow:hidden;white-space:nowrap;background:var(--panel);border-block:1px solid var(--line-soft);height:26px;display:flex;align-items:center;flex-shrink:0}.marquee-track{display:inline-flex;align-items:center;animation:marq 30s linear infinite;will-change:transform}.marquee-track.rev{animation-direction:reverse}.marquee-item{font-weight:900;font-size:13px;letter-spacing:.4px;padding:0 4px;display:inline-flex}.marquee-dot{color:var(--muted);margin:0 12px;font-weight:400}@keyframes marq{0%{transform:translate(0)}to{transform:translate(-50%)}}.leaflet-container{background:#0f1218}.leaflet-control-attribution{font-size:9px;background:#0a0c1099;color:#8a93a3}.leaflet-control-attribution a{color:#8a93a3}.fuel-pin{background:none;border:none}.gb-root{height:var(--app-vh,100dvh);display:flex;background:var(--bg);color:var(--text);position:relative}.gb-root.gb-mobile{flex-direction:column}.gb-side{width:420px;flex-shrink:0;height:100%;display:flex;flex-direction:column;background:linear-gradient(180deg,#0d1117,#0a0c12);border-right:1px solid var(--line);box-shadow:2px 0 30px #00000080;z-index:1}.gb-map{flex:1;min-width:0;position:relative}.gb-side-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 16px 12px}.gb-logo-badge{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-size:22px;flex-shrink:0;background:radial-gradient(circle at 30% 30%,#16241b,#0f1613);border:1px solid rgba(43,196,106,.55);box-shadow:0 0 18px #2bc46a66,inset 0 0 10px #2bc46a26}.gb-chip{font-size:12.5px;font-weight:800;color:var(--text);background:var(--panel2);border:1px solid var(--line);padding:8px 13px;border-radius:20px;cursor:pointer;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center}.gb-chip-accent{background:var(--accent);color:#fff;border:none;box-shadow:0 0 16px #ec1c248c}.gb-notice{margin:0 16px 12px;padding:9px 12px;border-radius:10px;background:var(--panel);border:1px solid var(--line);color:var(--muted);font-size:11.5px;line-height:1.4}.gb-actions{display:flex;gap:8px;padding:0 16px 12px}.gb-abtn{flex:1;text-align:center;font-size:12.5px;font-weight:700;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 8px;cursor:pointer;text-decoration:none;transition:.15s ease}.gb-abtn:hover{border-color:#2bc46a8c;box-shadow:0 0 14px #2bc46a38}.gb-seg{display:flex;gap:6px;margin:0 16px 12px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:5px}.gb-seg-btn{flex:1;border:none;background:none;color:var(--muted);font-weight:800;font-size:12.5px;padding:9px 4px;border-radius:10px;cursor:pointer;transition:.15s ease}.gb-seg-btn.on{background:var(--accent);color:#fff;box-shadow:0 0 16px #ec1c2473}.gb-side-body{flex:1;min-height:0;overflow-y:auto;padding:4px 16px 18px}.gb-az{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;transition:.15s ease;color:var(--text)}.gb-az:hover{border-color:#2bc46a80;box-shadow:0 0 18px #2bc46a29;transform:translateY(-1px)}.gb-az-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;padding:3px 9px;border-radius:20px;border:1px solid;background:#ffffff05}.gb-mhead{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--panel)}.gb-tabbar{display:flex;border-top:1px solid var(--line);background:var(--panel)}.gb-tab{flex:1;background:none;border:none;padding:10px 0 12px;cursor:pointer;color:var(--muted);font-weight:700;font-size:11.5px;display:flex;flex-direction:column;align-items:center;gap:3px}.gb-tab.on{color:var(--accent)}.feed-shelf-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px;gap:10px}.feed-shelf-title{font-size:19px;font-weight:900;letter-spacing:-.2px;margin:0}.feed-shelf-all{background:none;border:none;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.feed-shelf-all:hover{color:var(--text)}.feed-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:2px 16px 6px;margin:0 -16px;scrollbar-width:none;align-items:stretch}.feed-rail::-webkit-scrollbar{display:none}.feed-rail-item{flex:0 0 auto;width:250px;scroll-snap-align:start;display:flex}.feed-rail-item>*{width:100%}.feed-rail-item .card{margin-bottom:0!important;height:100%}.feed-rail-tile{width:200px}.feed-rail-more{flex:0 0 auto;width:120px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--panel);border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);cursor:pointer;font-weight:700}.feed-rail-more:hover{border-color:var(--accent);color:var(--accent)}.offer-card{display:flex;flex-direction:column;gap:12px}.offer-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}.offer-discount-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:100%;background:transparent;border:1.5px solid color-mix(in srgb,var(--green) 55%,transparent);color:var(--green);font-size:13.5px;font-weight:800;padding:10px 12px;border-radius:12px;cursor:pointer;margin-top:auto;box-shadow:0 0 #2bc46a00;transition:box-shadow .18s ease,border-color .18s ease,background .18s ease}.offer-discount-btn:hover{border-color:var(--green);background:color-mix(in srgb,var(--green) 10%,transparent);box-shadow:0 0 16px #2bc46a47}.feed-hero{position:relative;display:block;width:100%;height:210px;border-radius:20px;overflow:hidden;cursor:pointer;border:1px solid var(--line);background:#0b0e13 center/cover no-repeat;padding:0;text-align:left;animation:feedRise .5s cubic-bezier(.2,.7,.2,1) both}.feed-hero:active{transform:scale(.99)}.feed-hero-letter{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:64px;font-weight:900;color:#1c2432;background:linear-gradient(135deg,#141a24,#1c2330)}.feed-hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#080a0f0d 30%,#080a0f8c 62%,#080a0fe6)}.feed-hero-body{position:absolute;left:0;right:0;bottom:0;padding:16px;display:flex;flex-direction:column;color:#fff}.feed-hero-title{font-size:20px;font-weight:900;line-height:1.22;margin-top:8px;text-shadow:0 1px 12px rgba(0,0,0,.5);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feed-hero-sub{font-size:13px;line-height:1.45;margin-top:6px;color:#ffffffdb;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feed-hero-stat{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:#ffffffe6}.feed-hero-stat svg{width:15px;height:15px}.feed-chip-mini{align-self:flex-start;font-size:11px;font-weight:800;padding:4px 10px;border-radius:20px;background:#ffffff29;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.22)}.feed-tile{display:flex;flex-direction:column;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;padding:0;text-align:left;animation:feedRise .5s cubic-bezier(.2,.7,.2,1) both}.feed-tile-cover{position:relative;display:block;height:118px;background:#0b0e13 center/cover no-repeat;border-bottom:1px solid var(--line)}.feed-tile-letter{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:36px;font-weight:900;color:#1c2432;background:linear-gradient(135deg,#141a24,#1c2330)}.feed-chip-abs{position:absolute;left:8px;top:8px}.feed-tile-body{padding:11px 12px 13px}.feed-tile-title{font-size:13.5px;font-weight:800;line-height:1.3;color:#f3f6fb;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:35px}.feed-tile-stat{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--muted)}.feed-tile-stat svg{width:14px;height:14px}.feed-riser{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}@media (hover:hover){.feed-tile.feed-riser:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 12px 26px #00000059}}@keyframes feedRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.feed-ad{position:relative;display:block;width:100%;min-height:150px;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--panel);padding:0;text-align:left;margin-bottom:14px;animation:feedRise .5s cubic-bezier(.2,.7,.2,1) both}.feed-ad:active{transform:scale(.99)}.feed-ad-img{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0e13 center/cover no-repeat}.feed-ad-img--empty{background:linear-gradient(135deg,#1a2130,#0f1420)}.feed-ad-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#080a0f26 30%,#080a0fb3 78%,#080a0ff0)}.feed-ad-badge{position:absolute;left:12px;top:12px;font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:20px;background:#00000073;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);letter-spacing:.3px}.feed-ad-disc{position:absolute;right:12px;top:12px;font-size:14px;font-weight:900;color:#fff;background:var(--accent);padding:5px 11px;border-radius:20px;box-shadow:0 4px 14px #ec1c2480}.feed-ad-body{position:absolute;left:0;right:0;bottom:0;padding:14px 16px 16px;display:flex;flex-direction:column;color:#fff}.feed-ad-title{font-size:19px;font-weight:900;line-height:1.2;text-shadow:0 1px 10px rgba(0,0,0,.5)}.feed-ad-text{font-size:13px;line-height:1.4;margin-top:5px;color:#ffffffe6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feed-ad-addr{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;margin-top:7px;color:#fffc}.feed-rail-mini{width:126px}.feed-mini{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%;height:100%;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 12px;cursor:pointer;text-align:left;animation:feedRise .5s cubic-bezier(.2,.7,.2,1) both}.feed-mini-ic{width:44px;height:44px;border-radius:13px;display:grid;place-items:center}.feed-mini-label{font-size:13.5px;font-weight:800;color:#f3f6fb;line-height:1.2}.feed-mini-desc{font-size:11px;color:var(--muted);line-height:1.3}@media (hover:hover){.feed-mini.feed-riser:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 12px 26px #00000059}}@keyframes g5pop{0%{transform:scale(1)}50%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes g5shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}@keyframes g5flip{0%{transform:rotateX(0)}45%{transform:rotateX(90deg)}55%{transform:rotateX(90deg)}to{transform:rotateX(0)}}@keyframes g5bounce{0%{transform:translateY(0)}30%{transform:translateY(-22px)}50%{transform:translateY(0)}65%{transform:translateY(-10px)}80%{transform:translateY(0)}90%{transform:translateY(-4px)}to{transform:translateY(0)}}@keyframes g5flash{0%{opacity:0}15%{opacity:1}40%{opacity:.7}to{opacity:0}}@keyframes g5bolt{0%{opacity:0;transform:translate(-50%) scaleY(.3)}20%{opacity:1}30%{opacity:.4}45%{opacity:1;transform:translate(-50%) scaleY(1)}to{opacity:0}}@keyframes g5confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(105vh) rotate(720deg);opacity:.9}}
