:root{--bg: #0a0a0c;--panel: #131317;--panel2: #18181d;--text: #f2f2f5;--muted: #9a9aa6;--dim: #6b6b76;--line: rgba(255,255,255,.08);--line2: rgba(255,255,255,.14);--accent: #ff2d7e;--accent2: #7a2bff;--ok: #3ddc97;--warn: #ffb547;--bad: #ff5d5d;--x: #e7e7ea;--tiktok: #25f4ee;--instagram: #ff7a45;--radius: 14px;--ease: cubic-bezier(.2,.8,.2,1);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a,[role=button],select,summary{cursor:pointer}button{font:inherit;color:inherit}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100%}.side{border-right:1px solid var(--line);padding:20px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:4px}.brand{font-weight:800;font-size:19px;letter-spacing:-.02em;padding:4px 10px 18px}.brand span{background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}.brand small{display:block;font-size:11px;font-weight:600;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;color:var(--muted);transition:background .18s var(--ease),color .18s var(--ease)}.nav a:hover{background:#ffffff0a;color:var(--text)}.nav a.active{background:#ff2d7e1a;color:var(--text)}.nav a.active .dot{background:var(--accent)}.nav .dot{width:6px;height:6px;border-radius:50%;background:var(--line2);transition:background .18s}.side .spacer{flex:1}.side .who{font-size:12px;color:var(--dim);padding:8px 10px;border-top:1px solid var(--line)}.side .who button{background:none;border:0;padding:0;color:var(--muted);margin-top:4px;transition:color .15s}.side .who button:hover{color:var(--text)}.main{min-width:0;padding:28px 32px 64px}.page{animation:pageIn .35s var(--ease) both}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}}.head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.head h1{margin:0;font-size:22px;letter-spacing:-.01em}.head p{margin:2px 0 0;color:var(--muted)}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.card h2{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em}.grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.cols2{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.kpi .label{color:var(--muted);font-size:12px}.kpi .value{font-size:26px;font-weight:700;letter-spacing:-.02em;margin-top:2px;font-variant-numeric:tabular-nums}.kpi .sub{color:var(--dim);font-size:12px;margin-top:2px}.kpi .sub b{color:var(--ok);font-weight:600}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:999px;border:1px solid var(--line2);color:var(--muted);white-space:nowrap}.pill.new{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--accent),var(--accent2))}.pill.ok{color:var(--ok);border-color:#3ddc9759}.pill.warn{color:var(--warn);border-color:#ffb54759}.pill.bad{color:var(--bad);border-color:#ff5d5d59}.pf{width:8px;height:8px;border-radius:50%;display:inline-block}.pf.x{background:var(--x)}.pf.tiktok{background:var(--tiktok)}.pf.instagram{background:var(--instagram)}.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line2);background:var(--panel2);padding:7px 13px;border-radius:10px;transition:border-color .18s var(--ease),background .18s var(--ease),transform .12s}.btn:hover{border-color:#ffffff47;background:#1d1d23}.btn:active{transform:translateY(1px)}.btn.primary{border-color:transparent;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:600}.btn.primary:hover{filter:brightness(1.08)}.btn[disabled]{opacity:.5;cursor:default}.seg{display:inline-flex;border:1px solid var(--line2);border-radius:10px;padding:2px;background:var(--panel)}.seg button{border:0;background:none;padding:5px 11px;border-radius:8px;color:var(--muted);transition:background .18s,color .18s}.seg button:hover{color:var(--text)}.seg button.on{background:#ffffff14;color:var(--text)}.muted{color:var(--muted)}.dim{color:var(--dim)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-weight:600;color:var(--muted);font-size:12px;padding:8px 10px;border-bottom:1px solid var(--line)}.table td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background .15s}.table tbody tr:hover{background:#ffffff06}.empty{text-align:center;padding:40px 16px;color:var(--muted)}.empty b{display:block;color:var(--text);font-size:15px;margin-bottom:4px}.skeleton{background:linear-gradient(90deg,var(--panel) 0%,var(--panel2) 50%,var(--panel) 100%);background-size:200% 100%;animation:sk 1.2s ease-in-out infinite;border-radius:var(--radius)}@keyframes sk{to{background-position:-200% 0}}.bar{height:6px;background:#ffffff0f;border-radius:99px;overflow:hidden}.bar>i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .6s var(--ease)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--dim)}.live-dot.on{background:var(--ok);box-shadow:0 0 #3ddc9799;animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px #3ddc9700}to{box-shadow:0 0 #3ddc9700}}.feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.adcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s var(--ease),transform .2s var(--ease)}.adcard:hover{border-color:var(--line2);transform:translateY(-2px)}.adcard.enter{animation:cardIn .45s var(--ease) both}@keyframes cardIn{0%{opacity:0;transform:scale(.97)}}.thumb{aspect-ratio:1 / 1;background:#0e0e12;position:relative;overflow:hidden;display:grid;place-items:center}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover;display:block}.thumb .noimg{color:var(--dim);font-size:12px;padding:16px;text-align:center}.thumb .tag{position:absolute;top:8px;left:8px;display:flex;gap:6px}.thumb .tag .pill{background:#0a0a0cb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.thumb .tag .pill.new{background:linear-gradient(135deg,var(--accent),var(--accent2))}.thumb .play{position:absolute;right:8px;bottom:8px}.adcard .body{padding:11px 12px 12px;display:flex;flex-direction:column;gap:6px}.adcard .adv{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adcard .txt{color:var(--muted);font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}.adcard .meta{display:flex;justify-content:space-between;color:var(--dim);font-size:11.5px}.detail{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:18px;align-items:start}.detail .mediabox{border-radius:var(--radius);overflow:hidden;background:#0e0e12;border:1px solid var(--line)}.detail .mediabox img,.detail .mediabox video{width:100%;display:block;max-height:70vh;object-fit:contain}.kv{display:grid;grid-template-columns:140px minmax(0,1fr);gap:6px 14px}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}pre.json{background:#0e0e12;border:1px solid var(--line);border-radius:10px;padding:14px;overflow:auto;max-height:460px;margin:0;color:#cfd0d8}.dups{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.dups a{border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:border-color .18s;background:#0e0e12}.dups a:hover{border-color:var(--line2)}.dups img,.dups video{width:100%;aspect-ratio:1;object-fit:cover;display:block}.dups span{display:block;font-size:11px;color:var(--muted);padding:4px 6px}.chart{width:100%;height:170px;display:block}.chart .grid-line{stroke:#ffffff0f}.chart text{fill:var(--dim);font-size:10px}.legend{display:flex;gap:14px;font-size:12px;color:var(--muted);margin-top:6px}.legend i{display:inline-block;width:10px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}.login{min-height:100%;display:grid;place-items:center;padding:24px}.login form{width:100%;max-width:360px;animation:pageIn .45s var(--ease) both}.login h1{font-size:26px;margin:0 0 4px;letter-spacing:-.02em}.field{display:flex;flex-direction:column;gap:6px;margin-top:14px}.field label{color:var(--muted);font-size:12px}.field input{background:var(--panel);border:1px solid var(--line2);border-radius:10px;padding:10px 12px;color:var(--text);font:inherit;outline:none;transition:border-color .18s,box-shadow .18s}.field input:focus{border-color:#ff2d7e8c;box-shadow:0 0 0 3px #ff2d7e1f}.err{color:var(--bad);font-size:13px;margin-top:12px;min-height:1.2em}@media(max-width:900px){.shell{grid-template-columns:1fr}.side{position:static;height:auto;flex-direction:row;align-items:center;overflow-x:auto;padding:10px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0 10px 0 0}.brand small{display:none}.nav{display:flex;gap:2px}.side .spacer,.side .who{display:none}.main{padding:20px 16px 48px}.cols2,.detail{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.detail>*{min-width:0}.kv.compact{grid-template-columns:70px minmax(0,1fr)}.nav a{white-space:nowrap}.pill.wrap{white-space:normal;border-radius:10px;margin-top:6px}.qa-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.qa-side .mediabox{border-radius:var(--radius);overflow:hidden;background:#0e0e12;border:1px solid var(--line);aspect-ratio:1;display:grid;place-items:center}.qa-side .mediabox img,.qa-side .mediabox video{width:100%;height:100%;object-fit:contain}@media(max-width:700px){.qa-pair{grid-template-columns:1fr}}.adcard .cat{font-size:11.5px;color:#c9a8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:-2px}select.sel{background:var(--panel);color:var(--text);border:1px solid var(--line2);border-radius:10px;padding:6px 10px;font:inherit;transition:border-color .18s}select.sel:hover{border-color:#ffffff47}.tags{display:flex;flex-wrap:wrap;gap:6px}.catbars{display:grid;gap:8px}.catbars .row{flex-wrap:nowrap}.catbars .lbl{width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:12.5px}.search-top{margin-bottom:18px}.searchbox input{width:100%;background:var(--panel);border:1px solid var(--line2);border-radius:14px;padding:14px 16px;color:var(--text);font:inherit;font-size:15px;outline:none;transition:border-color .18s,box-shadow .18s}.searchbox input:focus{border-color:#ff2d7e8c;box-shadow:0 0 0 3px #ff2d7e1f}.presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:1px solid var(--line2);background:var(--panel);color:var(--muted);border-radius:999px;padding:4px 11px;font-size:12.5px;transition:border-color .18s,color .18s,background .18s}.chip:hover{color:var(--text);border-color:#ffffff47}.chip.on{color:var(--text);border-color:#ff2d7e8c;background:#ff2d7e1a}.search-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:22px;align-items:start}.filters{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px;display:grid;gap:16px}.fgroup{display:grid;gap:8px}.ftitle{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.02em;display:flex;justify-content:space-between}.btnlike{background:none;border:0;padding:0;text-align:left;width:100%}.catlist{display:grid;gap:2px;max-height:260px;overflow-y:auto}.check{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:4px 6px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--muted);transition:background .15s,color .15s}.check:hover{background:#ffffff0a;color:var(--text)}.check.on{color:var(--text)}.check input{accent-color:var(--accent);cursor:pointer}.mins{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.numin{display:grid;gap:3px;font-size:11px;color:var(--dim)}.numin input{width:100%;background:var(--panel);border:1px solid var(--line2);border-radius:8px;padding:6px 8px;color:var(--text);font:inherit;font-size:13px;outline:none}.numin input:focus{border-color:#ff2d7e8c}.results-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.dimmed{opacity:.55;transition:opacity .2s}.sc{cursor:pointer}.sc .metrics{display:flex;gap:10px;flex-wrap:wrap;font-size:11.5px;color:var(--muted)}.sc .metrics b{color:var(--text);font-weight:600}.sc .adv:hover,.sc .dom:hover{color:#fff;text-decoration:underline}.sc .dom{color:var(--muted);max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thumb .pill.score{position:absolute;top:8px;right:8px;background:#0a0a0cb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff}.groups{display:grid;gap:10px}.grouprow{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:10px;transition:border-color .2s var(--ease),transform .2s var(--ease)}.grouprow:hover{border-color:var(--line2);transform:translateY(-1px)}.previews{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.previews .pv{aspect-ratio:1;border-radius:8px;overflow:hidden;background:#0e0e12}.previews img,.previews video{width:100%;height:100%;object-fit:cover;display:block}.previews .noimg{font-size:0;padding:0;width:100%;height:100%;background:repeating-linear-gradient(45deg,#121217 0 6px,#16161c 6px 12px)}.gtitle{font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gstats{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-top:6px}.gstats b{color:var(--text)}.mobile-only{display:none}@media(max-width:900px){.search-layout{grid-template-columns:1fr}.filters{display:none;position:static;max-height:none}.filters.open{display:grid}.mobile-only{display:inline-flex}.grouprow{grid-template-columns:1fr}}
