:root{--bg:#fff;--fg:#09090b;--muted:#71717a;--card:#fff;--card-fg:#09090b;--border:#e4e4e7;--border-strong:#cfcfd3;--accent:#f4f4f5;--ring:#a1a1aa;--danger:#c52020;--radius:12px;--radius-sm:8px;--stage-h:56svh;--rail-w:360px;--top-h:52px;--credit-h:40px;--maxw:1500px;--font:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;color-scheme:light dark}:root:not([data-theme=light]){@media (prefers-color-scheme:dark){--bg:#09090b;--fg:#fafafa;--muted:#a1a1aa;--card:#101013;--card-fg:#fafafa;--border:#27272b;--border-strong:#3a3a40;--accent:#1f1f23;--ring:#6d6d78;--danger:#e14747}}:root[data-theme=dark]{--bg:#09090b;--fg:#fafafa;--muted:#a1a1aa;--card:#101013;--card-fg:#fafafa;--border:#27272b;--border-strong:#3a3a40;--accent:#1f1f23;--ring:#6d6d78;--danger:#e14747}*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.5}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.top{height:var(--top-h);z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:0 14px;display:flex;position:fixed;inset:0 0 auto}.brand{letter-spacing:-.01em;align-items:center;gap:8px;font-weight:650;text-decoration:none;display:inline-flex}.brand svg{width:20px;height:20px}.brand-dot{background:var(--danger);width:9px;height:9px;fill:var(--danger);border-radius:50%;display:inline-block}.top-spacer{flex:1}.pill,.rec{border:1px solid var(--border-strong);background:var(--card);height:34px;color:var(--fg);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:13px;transition:background .15s,border-color .15s;display:inline-flex}.pill:hover,.rec:hover{background:var(--accent)}.pulse{border:1px solid var(--border-strong);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:34px;padding:0 11px;font-size:13px;transition:opacity .4s;display:inline-flex}.pulse i{background:var(--danger);width:10px;height:10px;-webkit-mask:var(--heart) center / contain no-repeat;mask:var(--heart) center / contain no-repeat;--heart:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M12 21s-7.5-4.6-9.6-9.2C.9 8.4 3 4.5 6.7 4.5c2.1 0 3.6 1.2 4.3 2.6.7-1.4 2.2-2.6 4.3-2.6 3.7 0 5.8 3.9 4.3 7.3C18.5 16.4 12 21 12 21z\" fill=\"black\"/></svg>");animation:heartbeat var(--beat,1s) ease-out infinite}.pulse span{color:var(--muted);font-size:11px}.pulse[data-stale=true]{opacity:.45}.pulse[data-stale=true] i{animation:none}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.35)}30%{transform:scale(.95)}}@media (width<=520px){.pulse span{display:none}}.idtag{border:1px solid var(--border-strong);height:34px;font-family:var(--mono);letter-spacing:.04em;white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:12px;display:inline-flex}.idtag span{color:var(--muted)}.idtag[data-in=true] b{animation:.9s steps(6,end) idtag-in}@keyframes idtag-in{0%{opacity:.2;filter:blur(2px)}}@media (width<=520px){.idtag span{display:none}}.rec i{background:var(--danger);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.voice-icon{width:14px;height:14px;-webkit-mask:var(--spk) center / contain no-repeat;mask:var(--spk) center / contain no-repeat;--spk:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M11 5 6 9H3v6h3l5 4V5z\" fill=\"black\"/></svg>");opacity:.5;background:currentColor;border-radius:2px}[data-voice=on] .voice-icon{opacity:1}@media (prefers-reduced-motion:reduce){.rec i,.pulse i,.idtag[data-in=true] b{animation:none}}.app{height:100svh}.wrap{max-width:var(--maxw);height:100svh;padding:calc(var(--top-h) + 14px) 20px calc(var(--credit-h) + 14px);margin:0 auto;position:relative}.stage{z-index:5;border-radius:var(--radius);border:1px solid var(--border);background:#0b0b0d;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.rail{z-index:8;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff47 transparent;pointer-events:auto;width:min(380px,80%);min-height:0;padding:16px 14px 14px 22px;position:absolute;top:0;bottom:0;right:0;overflow:hidden auto;-webkit-mask-image:linear-gradient(#0000 0,#000 60px);mask-image:linear-gradient(#0000 0,#000 60px)}.rail::-webkit-scrollbar{width:8px}.rail::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:999px}.stage video,.stage .overlay{width:100%;height:100%;position:absolute;inset:0}.stage video{object-fit:cover;background:#0b0b0d;transform:scaleX(-1)}body:not([data-camera=live]) .stage video{opacity:0}.stage .overlay{pointer-events:none}.tags{pointer-events:none;position:absolute;inset:0}.gate{z-index:3;text-align:center;color:#fff;background:radial-gradient(120% 120% at 50% 40%,#0000 30%,#0000008c);place-content:center;justify-items:center;gap:14px;padding:20px;display:grid;position:absolute;inset:0}body[data-camera=live] .gate{display:none}body:not([data-camera=live]) .rail{pointer-events:none}body:not([data-camera=live]) .rail .msg{pointer-events:auto}.gate-line{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:600}.cta{color:#000;background:#fff;border:0;border-radius:999px;padding:11px 22px;font-size:15px;font-weight:600;transition:transform .12s,opacity .12s}.cta:hover{opacity:.9}.cta:active{transform:scale(.97)}.gate-help{color:#ffffffd1;max-width:34ch;margin:0;font-size:13px}.phase{z-index:4;letter-spacing:.02em;color:#ffffffeb;backdrop-filter:blur(4px);background:#00000073;border-radius:999px;margin:0;padding:3px 9px;font-size:11.5px;position:absolute;bottom:10px;left:12px}body[data-camera=live][data-mask=glitch] .stage{animation:.22s linear infinite shake}@keyframes shake{25%{transform:translate(-1px)}75%{transform:translate(1px)}}@media (prefers-reduced-motion:reduce){body[data-mask=glitch] .stage{animation:none}}.stage video{transition:filter .5s,transform .6s}.stage video[data-fx=soften]{filter:blur(16px)saturate(.8)brightness(1.05)}.stage video[data-fx=zoom]{transform:scaleX(-1)scale(1.35)}.censor{z-index:4;left:var(--x,0);top:var(--y,0);width:var(--w,0);height:var(--h,0);opacity:0;pointer-events:none;background:#000;border-radius:2px;transition:opacity .3s;position:absolute}.censor[data-on=true]{opacity:1}.markers{z-index:6;pointer-events:none;position:absolute;inset:0}.marker{left:var(--x,0);top:var(--y,0);font-variant-numeric:tabular-nums;color:#fff;white-space:nowrap;text-align:center;opacity:0;background:#0a0a0cb8;border:1px solid #fff3;border-radius:7px;padding:3px 9px;font-size:12px;transition:opacity .4s;position:absolute;transform:translate(-50%,-50%)}.marker[data-on=true]{opacity:1}.marker[data-burn=true]{background:#220a12cc;border-color:#ff4d8d}.marker-b{color:#ff9ab8;margin-top:1px;font-size:11px;display:block}.marker-hl{left:var(--x,0);top:var(--y,0);width:var(--w,0);height:var(--h,0);opacity:0;border:1.5px solid #ff4d8d;border-radius:9px;transition:opacity .4s;position:absolute;box-shadow:0 0 14px #ff4d8d73}.marker-hl[data-on=true]{opacity:1}@media (prefers-reduced-motion:reduce){.marker,.marker-hl{transition:none}}.stream{flex-direction:column;justify-content:flex-end;gap:10px;min-height:100%;display:flex}.msg{border-radius:var(--radius-sm);backdrop-filter:blur(10px)saturate(1.1);color:#fff;opacity:0;background:#0a0a0c99;border:1px solid #ffffff1f;padding:11px 13px;transition:opacity .35s,transform .35s;transform:translateY(6px);box-shadow:0 8px 24px #00000052}.msg[data-in=true]{opacity:1;transform:none}.msg-t{overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.45}.msg-d{flex-wrap:wrap;gap:6px;margin:7px 0 0;display:flex}.msg-chip{font-family:var(--mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;background:#ffffff17;border:1px solid #ffffff2e;border-radius:6px;padding:2px 8px;font-size:13px;line-height:1.35}.msg-s{color:#ffffffb8;overflow-wrap:anywhere;margin:5px 0 0;font-size:13px}.msg[data-msg=detection],.msg[data-msg=spoof],.msg[data-msg=lookalike],.msg[data-msg=comparison],.msg[data-msg=animal],.msg[data-msg=shape]{background:#0e0a0ca8;border-color:#ffffff3d}.msg[data-msg=detection] .msg-t,.msg[data-msg=spoof] .msg-t{font-weight:560}.msg-img{margin:10px 0 0}.msg-img img{border-radius:var(--radius-sm);border:1px solid var(--border);object-fit:cover;width:96px;height:96px;display:block}.tags[data-show=false] .tag{opacity:0}.tag{color:#fff;white-space:nowrap;background:#00000080;border:1px solid #ffffff24;border-radius:7px;padding:3px 8px;font-size:11px;transition:opacity .4s;position:absolute;transform:translate(-50%,-50%)}.tag-k{opacity:.7;margin-right:5px}.tag-v{font-weight:600}.tag-s{opacity:.65;font-size:9.5px;display:block}.hearts{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.heart{width:26px;height:26px;transform:translate(var(--x,0), var(--y,0)) scale(.2);opacity:0;color:#ff4d8d;-webkit-mask:var(--heart-svg) center / contain no-repeat;mask:var(--heart-svg) center / contain no-repeat;--heart-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M12 21s-7.5-4.6-10-9.3C.2 8 2 4.5 5.4 4.5c2 0 3.4 1.1 4.3 2.4.4.6 1.2.6 1.6 0 .9-1.3 2.3-2.4 4.3-2.4 3.4 0 5.2 3.5 3.4 7.2C19.5 16.4 12 21 12 21z\" fill=\"black\"/></svg>");background:currentColor;margin:-13px 0 0 -13px;position:absolute;top:0;left:0}.heart[data-float=true]{animation:2s ease-out forwards heart-float}@keyframes heart-float{0%{opacity:0;transform:translate(var(--x,0), var(--y,0)) scale(.2)}18%{opacity:.95;transform:translate(var(--x,0), calc(var(--y,0) - 10px)) scale(1)}to{opacity:0;transform:translate(var(--x,0), calc(var(--y,0) - 92px)) scale(.85)}}@media (prefers-reduced-motion:reduce){.heart[data-float=true]{animation:2s ease-out forwards heart-fade}@keyframes heart-fade{0%,to{opacity:0}30%,70%{opacity:.9;transform:translate(var(--x,0), var(--y,0)) scale(1)}}}.replay{z-index:40;pointer-events:none;position:fixed;inset:0}.credit{height:var(--credit-h);z-index:15;color:var(--muted);background:color-mix(in srgb, var(--bg) 92%, transparent);border-top:1px solid var(--border);justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:12px;display:flex;position:fixed;inset:auto 0 0}.credit a{color:var(--fg);opacity:.8;text-decoration:none}.credit a:hover{opacity:1;text-decoration:underline}.dead{z-index:60;text-align:center;background:var(--bg);color:var(--fg);place-content:center;gap:4px;display:grid;position:fixed;inset:0}.dead-title{margin:0;font-size:20px;font-weight:650}.dead-banner{text-align:center;background:var(--danger);color:#fff;margin:0;padding:10px 14px;font-size:13px;font-weight:600}body[data-dead] .app,body[data-dead] .top,body[data-dead] .replay{display:none}.privacy{max-width:640px;margin:0 auto;padding:40px 20px 90px}.privacy .brand{color:var(--muted);margin-bottom:26px;font-size:14px;text-decoration:none}.privacy .brand svg{width:18px;height:18px}.privacy h1{letter-spacing:-.02em;margin:0 0 6px;font-size:30px}.privacy .lede{color:var(--muted);margin:0 0 20px;font-size:16px}.privacy h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:26px 0 8px;font-size:15px}.privacy p{margin:0 0 12px}.privacy p+p{margin-top:-4px}.privacy ul{margin:0 0 12px;padding-left:20px}.privacy li{margin:4px 0}.privacy a{color:var(--fg);text-underline-offset:2px}.privacy .updated{color:var(--muted);margin-top:28px;font-size:13px}.privacy-notes{gap:10px;margin:0 0 22px;display:grid}.privacy-notes:empty{display:none}.privacy-note{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--card);opacity:0;padding:13px 15px;transition:opacity .35s,transform .35s;transform:translateY(6px)}.privacy-note[data-in=true]{opacity:1;transform:none}.privacy-note .msg-t{margin:0;font-weight:540}.banners{inset:calc(var(--top-h) - 8px) 0 auto 0;z-index:30;pointer-events:none;justify-items:center;gap:8px;padding:0 14px;display:grid;position:fixed}.banners .privacy-note{width:100%;max-width:520px;box-shadow:0 10px 30px #0000002e}.banners .privacy-note[data-in=false]{opacity:0;transform:translateY(-10px)}.delete-q{border-top:1px solid var(--border);margin-top:34px;padding-top:16px}.delete-q summary{cursor:pointer;color:var(--muted);font-size:14px;list-style:none}.delete-q summary::-webkit-details-marker{display:none}.delete-body{margin-top:14px}.delete-btn{border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius-sm);background:0 0;padding:9px 16px;font-weight:600;transition:background .15s,color .15s}.delete-btn:hover{background:var(--danger);color:#fff}.delete-btn[disabled]{opacity:.5;cursor:default}.delete-status{color:var(--muted);margin:10px 0 0;font-size:13px}canvas[data-confetti-canvas]{z-index:50;pointer-events:none;position:fixed;inset:0}.lightprobe{z-index:70;pointer-events:none;background:#fff;position:fixed;inset:0}.lightprobe[data-soft]{opacity:0;animation:.26s ease-in-out both lightprobe-soft}@keyframes lightprobe-soft{40%,60%{opacity:.6}}.toasts{display:none}@media (width<=899px){.wrap{padding:calc(var(--top-h) + 10px) 14px calc(var(--credit-h) + 10px)}}@media (width<=640px){.rail{width:auto;height:64%;padding:12px;top:auto;left:0;right:0;-webkit-mask-image:linear-gradient(#0000 0,#000 44px);mask-image:linear-gradient(#0000 0,#000 44px)}}@media (width<=520px){.wrap{padding-left:12px;padding-right:12px}.pill span:not(.voice-icon),.rec span{display:none}}
