.ot-hub-cli{--violet:var(--ot-violet);--pink:var(--ot-pink);--orange:var(--ot-orange);--cyan:var(--ot-cyan);--lilac:var(--ot-lilac);--grad:var(--ot-grad-primary);--grad-text:var(--ot-grad-text);--bg:var(--ot-bg);--surface:var(--ot-surface);--surface-2:var(--ot-surface-2);--ink:var(--ot-ink);--ink-soft:var(--ot-ink-soft);--muted:var(--ot-muted);--line:var(--ot-line);--line-strong:var(--ot-line-strong);--error:var(--ot-error);--shadow:0 18px 44px -22px rgba(124,77,255,0.32),0 3px 12px -6px rgba(15,23,51,0.10);--accent:#7c3aed;--accent-tint:#f3eeff;--font:var(--ot-font);font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;transition:background .4s,color .4s;min-height:100vh}.ot-hub-cli[data-theme=dark]{--shadow:0 18px 50px -20px rgba(124,77,255,0.5),0 3px 14px -6px rgba(0,0,0,0.6);--accent-tint:rgba(124,77,255,0.16)}.ot-hub-cli *{box-sizing:border-box}.ot-hub-cli button{font-family:var(--font);cursor:pointer}.ot-hub-cli svg{display:block}.ot-hub-cli ::-moz-selection{background:rgba(124,77,255,.2)}.ot-hub-cli ::selection{background:rgba(124,77,255,.2)}.ot-hub-cli .wrap{max-width:1080px;margin:0 auto;padding:0 22px}.ot-hub-cli .city{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--ink-soft);padding:8px 12px;border-radius:11px;border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;transition:.18s;font-family:var(--font)}.ot-hub-cli .city:hover{border-color:var(--accent)}.ot-hub-cli .city>svg:first-child{width:15px;height:15px;color:var(--accent)}.ot-hub-cli .city .ccar{width:13px;height:13px;color:var(--muted)}.ot-hub-cli a{color:inherit;text-decoration:none}.ot-hub-cli .hi{padding:34px 0 8px}.ot-hub-cli .hi h1{font-size:clamp(26px,3.5vw,36px);font-weight:800;letter-spacing:-.025em}.ot-hub-cli .hi p{color:var(--muted);font-size:15.5px;margin-top:6px}.ot-hub-cli .bigsearch{position:relative;margin:18px 0 6px}.ot-hub-cli .bigsearch input{width:100%;padding:17px 18px 17px 52px;border-radius:16px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-family:var(--font);font-size:16px}.ot-hub-cli .bigsearch input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 18%,transparent)}.ot-hub-cli .bigsearch>svg{position:absolute;left:19px;top:50%;transform:translateY(-50%);width:21px;height:21px;color:var(--muted)}.ot-hub-cli .cats{display:flex;gap:10px;overflow-x:auto;padding:18px 0 10px;scrollbar-width:none}.ot-hub-cli .cats::-webkit-scrollbar{display:none}.ot-hub-cli .cat{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;width:78px;border:none;background:transparent}.ot-hub-cli .cat .cic{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:var(--surface);border:1.5px solid var(--line);color:var(--cc);transition:.2s}.ot-hub-cli .cat .cic svg{width:26px;height:26px}.ot-hub-cli .cat .cn{font-size:12px;font-weight:600;color:var(--ink-soft);text-align:center;line-height:1.2}.ot-hub-cli .cat:hover .cic{transform:translateY(-3px);box-shadow:var(--shadow)}.ot-hub-cli .cat.on .cic{background:var(--cc);border-color:var(--cc);color:#fff;box-shadow:0 10px 22px -8px var(--cc)}.ot-hub-cli .cat.on .cn{color:var(--ink);font-weight:700}.ot-hub-cli .feat{position:relative;border-radius:24px;overflow:hidden;margin:14px 0 8px;min-height:230px;display:flex;align-items:flex-end;padding:28px;color:#fff;background:linear-gradient(120deg,#3a1d6e,#7c3aed 45%,#ec4899)}.ot-hub-cli .feat .fbg{position:absolute;inset:0;opacity:.5;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.5),transparent 45%)}.ot-hub-cli .feat .fimg{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ot-hub-cli .feat .fbg.dim{background:linear-gradient(100deg,rgba(20,8,46,.88) 18%,rgba(35,12,70,.55) 55%,rgba(20,8,46,.25));opacity:1}.ot-hub-cli .feat .fc{animation:othc-featin .45s ease both}@keyframes othc-featin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ot-hub-cli .feat .fdots{position:absolute;right:24px;bottom:22px;display:flex;align-items:center;gap:9px;z-index:3;padding:8px 12px;border-radius:999px;background:rgba(10,6,24,.32);backdrop-filter:blur(8px)}.ot-hub-cli .feat .fdots button{width:9px;height:9px;border-radius:50%;border:none;padding:0;background:rgba(255,255,255,.5);cursor:pointer;transition:.25s ease}.ot-hub-cli .feat .fdots button:hover{background:rgba(255,255,255,.85)}.ot-hub-cli .feat .fdots button.on{background:#fff;width:26px;border-radius:99px}.ot-hub-cli .feat .fspark{position:absolute;right:24px;top:22px;width:48px;height:48px;opacity:.95}.ot-hub-cli .feat .fc{position:relative;max-width:560px}.ot-hub-cli .feat .fbadge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.2);padding:6px 12px;border-radius:999px;backdrop-filter:blur(6px)}.ot-hub-cli .feat h2{font-size:clamp(24px,3.4vw,34px);font-weight:800;letter-spacing:-.02em;margin:12px 0 6px}.ot-hub-cli .feat .fmeta{font-size:14px;opacity:.92;margin-bottom:18px}.ot-hub-cli .feat .fcta{display:inline-flex;align-items:center;gap:9px;background:#fff;color:#0f1733;border:none;border-radius:14px;padding:14px 22px;font-size:15px;font-weight:700}.ot-hub-cli .feat .fcta svg{width:17px;height:17px}.ot-hub-cli .sec{display:flex;align-items:baseline;justify-content:space-between;margin:30px 0 14px}.ot-hub-cli .sec h3{font-size:20px;font-weight:800;letter-spacing:-.02em}.ot-hub-cli .sec a{font-size:13.5px;font-weight:700;color:var(--accent);cursor:pointer}.ot-hub-cli .cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.ot-hub-cli .xcard{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.2s;display:flex;flex-direction:column;text-decoration:none;color:inherit;cursor:pointer}.ot-hub-cli .xcard:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.ot-hub-cli .xcover{height:148px;position:relative;display:grid;place-items:center;color:#fff}.ot-hub-cli .xcover .xic{width:46px;height:46px;opacity:.95}.ot-hub-cli .xcover .xic svg{width:46px;height:46px}.ot-hub-cli .xprice{position:absolute;right:12px;bottom:12px;background:rgba(255,255,255,.92);color:#0f1733;font-size:13px;font-weight:800;padding:6px 11px;border-radius:10px}.ot-hub-cli .xheart{position:absolute;left:12px;top:12px;width:36px;height:36px;border-radius:11px;background:rgba(255,255,255,.85);border:none;display:grid;place-items:center;color:#6b7185}.ot-hub-cli .xheart.on{color:var(--pink)}.ot-hub-cli .xheart svg{width:18px;height:18px}.ot-hub-cli .xheart.on svg{fill:var(--pink)}.ot-hub-cli .xbody{padding:15px 16px 16px;display:flex;flex-direction:column;flex:1}.ot-hub-cli .xcat{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.ot-hub-cli .xbody h4{font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.2}.ot-hub-cli .xmeta{font-size:13px;color:var(--muted);margin-top:5px;display:flex;align-items:center;gap:6px}.ot-hub-cli .xmeta svg{width:14px;height:14px;flex-shrink:0}.ot-hub-cli .xbuy{margin-top:14px;width:100%;background:var(--grad);color:#fff;border:none;border-radius:12px;padding:12px;font-size:14.5px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}.ot-hub-cli .xbuy svg{width:16px;height:16px}.ot-hub-cli .empty{grid-column:1/-1;text-align:center;padding:50px;color:var(--muted);font-size:15px}.ot-hub-cli .ot-inf-sentinel{height:1px;width:100%}.ot-hub-cli .ot-inf-foot{display:flex;justify-content:center;align-items:center;min-height:44px;margin-top:22px}.ot-hub-cli .ot-inf-spin{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.ot-hub-cli .ot-inf-spin svg{width:18px;height:18px;animation:ot-inf-rot .7s linear infinite}.ot-hub-cli .ot-inf-end{color:var(--muted);font-size:13.5px;opacity:.7;letter-spacing:.02em}@keyframes ot-inf-rot{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ot-hub-cli .ot-inf-spin svg{animation:none}}.ot-hub-cli .mine{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px 22px;margin-top:30px;cursor:pointer;width:100%;text-align:left}.ot-hub-cli .mine .mic{width:52px;height:52px;border-radius:15px;background:var(--accent-tint);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.ot-hub-cli .mine .mic svg{width:24px;height:24px}.ot-hub-cli .mine b{font-size:15.5px;display:block}.ot-hub-cli .mine span{font-size:13px;color:var(--muted)}.ot-hub-cli .mine .marrow{margin-left:auto;color:var(--muted)}.ot-hub-cli .toolbar{position:sticky;top:69px;z-index:25;background:color-mix(in oklab,var(--bg) 90%,transparent);backdrop-filter:blur(12px);margin:0 -22px;padding:12px 22px;display:flex;gap:12px;align-items:center}.ot-hub-cli .toolbar .bigsearch{flex:1;margin:0}.ot-hub-cli .maplink{flex-shrink:0;height:54px;border-radius:16px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:inline-flex;align-items:center;gap:9px;padding:0 18px;font-size:14.5px;font-weight:700}.ot-hub-cli .maplink svg{width:19px;height:19px;color:var(--accent)}.ot-hub-cli .maplink:hover{border-color:var(--accent)}.ot-hub-cli .mapmodal{position:fixed;inset:0;z-index:200;background:var(--bg);display:none;flex-direction:column}.ot-hub-cli .mapmodal.open{display:flex}.ot-hub-cli .mhead{display:flex;align-items:center;gap:11px;padding:15px 22px;border-bottom:1px solid var(--line)}.ot-hub-cli .mhead .mhic{width:34px;height:34px;border-radius:11px;background:var(--accent-tint);color:var(--accent);display:grid;place-items:center}.ot-hub-cli .mhead .mhic svg{width:18px;height:18px}.ot-hub-cli .mhead h2{font-size:17px;font-weight:800;letter-spacing:-.02em}.ot-hub-cli .mclose{margin-left:auto;width:42px;height:42px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:grid;place-items:center}.ot-hub-cli .mapbody{flex:1;display:grid;grid-template-columns:1fr 340px;min-height:0}.ot-hub-cli .mapview{position:relative;overflow:hidden;background:#eef0f8}.ot-hub-cli[data-theme=dark] .mapview{background:#11101c}.ot-hub-cli .gmap{position:absolute;inset:0}.pac-container{z-index:1300!important;border-radius:12px;box-shadow:0 12px 32px -12px rgba(15,23,51,.4);font-family:var(--ot-font,"Inter",system-ui,sans-serif)}.ot-hub-cli .gmap-status{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:13.5px;z-index:2;pointer-events:none}.ot-hub-cli .mpop .pmap{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;color:var(--accent);text-decoration:none}.ot-hub-cli .mpop .pmap:hover{text-decoration:underline}.ot-hub-cli .mpin{position:absolute;transform:translate(-50%,-100%);cursor:pointer;z-index:3;background:transparent;border:0;padding:0}.ot-hub-cli .mpin .pdot{width:24px;height:24px;border-radius:50% 50% 50% 3px;transform:rotate(45deg);display:grid;place-items:center;color:#fff;border:2px solid #fff;box-shadow:0 6px 14px -4px rgba(0,0,0,.5)}.ot-hub-cli .mpin .pdot svg{transform:rotate(-45deg);width:16px;height:16px}.ot-hub-cli .mpin .pcore{width:7px;height:7px;border-radius:50%;background:#fff;display:block}.ot-hub-cli .mpin.on .pdot{outline:3px solid #fff;outline-offset:1px}.ot-hub-cli .mpin .pulse{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);animation:othc-mpulse 2.2s ease-out infinite;pointer-events:none}@keyframes othc-mpulse{0%{width:16px;height:16px;opacity:.55}to{width:62px;height:62px;opacity:0}}.ot-hub-cli .mcluster{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:4;background:transparent;border:0;padding:0;display:grid;place-items:center;transition:transform .12s ease}.ot-hub-cli .mcluster:hover{transform:translate(-50%,-50%) scale(1.08)}.ot-hub-cli .mcluster .cring{position:absolute;inset:-6px;border-radius:50%}.ot-hub-cli .mcluster .cbody{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;color:#fff;border:2.5px solid #fff;box-shadow:0 6px 16px -4px rgba(0,0,0,.45)}.ot-hub-cli .mcluster .cbody b{font-size:14px;font-weight:800;line-height:1}.ot-hub-cli .maplist{border-left:1px solid var(--line);overflow-y:auto;padding:14px;background:var(--surface)}.ot-hub-cli .mlitem{display:flex;gap:11px;align-items:center;padding:12px;border-radius:14px;border:1px solid var(--line);margin-bottom:10px;cursor:pointer;transition:.15s;width:100%;text-align:left;background:transparent;color:inherit}.ot-hub-cli .mlitem.on,.ot-hub-cli .mlitem:hover{border-color:var(--accent);background:var(--surface-2)}.ot-hub-cli .mlitem .mdot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ot-hub-cli .mlitem b{font-size:13.5px;display:block}.ot-hub-cli .mlitem span{font-size:12px;color:var(--muted)}.ot-hub-cli .mlitem .mp{margin-left:auto;font-size:13px;font-weight:800;white-space:nowrap}.ot-hub-cli .mpop{position:absolute;z-index:6;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:15px;width:232px;display:none}.ot-hub-cli[data-theme=dark] .mpop{background:#17131f;border-color:rgba(255,255,255,.14)}.ot-hub-cli .mpop .pbody{display:block;color:inherit;text-decoration:none;cursor:pointer}.ot-hub-cli .mpop .pbody:hover h4{text-decoration:underline}.ot-hub-cli .mpop.show{display:block}.ot-hub-cli .mpop h4{font-size:15px;font-weight:700;letter-spacing:-.01em;margin-top:3px}.ot-hub-cli .mpop .pm{font-size:12.5px;color:var(--muted);margin-top:4px}.ot-hub-cli .mpop .pbuy{margin-top:11px;width:100%;display:flex;align-items:center;justify-content:center;background:var(--grad);color:#fff;border:none;border-radius:11px;padding:10px;font-weight:700;font-size:13.5px}.ot-hub-cli .cats-wrap{position:relative}.ot-hub-cli .catnav{position:absolute;top:18px;width:42px;height:64px;border:none;color:var(--ink);display:grid;place-items:center;z-index:6;cursor:pointer}.ot-hub-cli .catnav.prev{left:-10px;background:linear-gradient(90deg,var(--bg) 55%,transparent);justify-content:start;padding-left:2px}.ot-hub-cli .catnav.next{right:-10px;background:linear-gradient(270deg,var(--bg) 55%,transparent);justify-content:end;padding-right:2px}.ot-hub-cli .catnav .cnb{width:32px;height:32px;border-radius:50%;background:var(--surface);border:1px solid var(--line-strong);display:grid;place-items:center;box-shadow:0 4px 12px -4px rgba(15,23,51,.18)}.ot-hub-cli .catnav .cnb svg{width:17px;height:17px}.ot-hub-cli .catnav:hover .cnb{border-color:var(--accent);color:var(--accent)}.ot-hub-cli .catnav.hide{opacity:0;pointer-events:none}.ot-hub-cli footer{padding:40px 0 50px;text-align:center;color:var(--muted);font-size:13px}.ot-hub-cli .toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--bg);padding:14px 22px;border-radius:14px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:10px;opacity:0;pointer-events:none;transition:.3s;z-index:100;box-shadow:0 18px 40px -12px rgba(0,0,0,.4)}.ot-hub-cli .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.ot-hub-cli .toast svg{width:18px;height:18px;color:var(--cyan)}@media (prefers-reduced-motion:reduce){.ot-hub-cli *{animation:none!important}}@media (max-width:760px){.ot-hub-cli .mapbody{grid-template-columns:1fr}.ot-hub-cli .maplist{display:none}}@media (max-width:600px){.ot-hub-cli .hi h1{font-size:26px}.ot-hub-cli .city{display:none}.ot-hub-cli .feat{min-height:200px;padding:20px}}