:root{--bg:#17111f;--bg2:#1f1729;--card:#271d34;--card2:#2f2340;--ink:#f4eff5;--muted:#a99bb5;--faint:#6f6280;--amber:#f5b942;--mint:#5ce0c6;--coral:#ff6b8a;--line:rgba(255,255,255,0.08);--line2:rgba(255,255,255,0.14)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:radial-gradient(1200px 600px at 80% -10%,#2a1c3a 0,var(--bg) 55%) fixed;color:var(--ink);font-family:Inter,system-ui,sans-serif;min-height:100vh;padding:20px;-webkit-font-smoothing:antialiased}.wrap{max-width:720px;margin:0 auto}header{display:flex;align-items:center;gap:14px;margin-bottom:22px}.mark{width:40px;height:40px;border-radius:11px;flex:none;background:linear-gradient(145deg,var(--amber),var(--coral));display:grid;place-items:center;color:#2a1730;box-shadow:0 6px 20px rgba(245,107,138,.28)}.mark svg{width:22px;height:22px}h1{font-family:Bricolage Grotesque,sans-serif;font-weight:800;font-size:1.5rem;letter-spacing:-.02em;margin:0;line-height:1}.sub{font-family:Space Mono,monospace;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-top:4px}.gear{margin-left:auto;background:none;border:1px solid var(--line);color:var(--muted);width:40px;height:40px;border-radius:11px;cursor:pointer;display:grid;place-items:center;transition:.15s}.gear:hover{border-color:var(--line2);color:var(--ink)}.gear svg{width:18px;height:18px}.controls{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}input[type=text]{flex:1 1 220px;min-width:0;background:var(--bg2);border:1px solid var(--line);color:var(--ink);padding:12px 14px;border-radius:12px;font-size:.95rem;font-family:inherit;transition:.15s}input[type=text]::placeholder{color:var(--faint)}input[type=text]:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,185,66,.15)}button.act{background:var(--amber);color:#2a1730;border:none;padding:12px 20px;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;font-family:inherit;white-space:nowrap;transition:.15s}button.act:hover{filter:brightness(1.06)}button.act:disabled{opacity:.5;cursor:default;filter:none}.recent-row{display:flex;align-items:center;gap:10px;margin-bottom:20px}select{background:var(--bg2);border:1px solid var(--line);color:var(--muted);padding:9px 12px;border-radius:10px;font-family:Space Mono,monospace;font-size:.78rem;cursor:pointer;max-width:100%}select:focus{outline:none;border-color:var(--line2)}.recent-lbl{font-family:Space Mono,monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.keypanel{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:20px;display:none}.keypanel.show{display:block}.keypanel p{margin:0 0 12px;font-size:.85rem;color:var(--muted);line-height:1.5}.keypanel .krow{display:flex;gap:10px;flex-wrap:wrap}.btn-ghost{background:none;border:1px solid var(--line2);color:var(--muted);padding:11px 16px;border-radius:11px;cursor:pointer;font-family:inherit;font-size:.9rem;transition:.15s}.btn-ghost:hover{color:var(--ink);border-color:var(--ink)}.stage{position:relative;min-height:340px;display:flex;align-items:center;gap:6px}.nav{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:var(--card);color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:.15s;z-index:3}.nav:hover:not(:disabled){background:var(--card2);border-color:var(--amber)}.nav:disabled{opacity:.25;cursor:default}.nav svg{width:20px;height:20px}.cardhold{flex:1 1;position:relative;min-height:320px;display:grid;place-items:center}.cardhold:after,.cardhold:before{content:"";position:absolute;inset:14px 8px;border-radius:18px;background:var(--card);border:1px solid var(--line);z-index:0}.cardhold:after{inset:7px 4px;z-index:1}.cardhold.empty:after,.cardhold.empty:before{display:none}.card{position:relative;z-index:2;width:100%;background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line2);border-radius:18px;padding:22px;box-shadow:0 20px 50px rgba(0,0,0,.4)}.card-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}.avatar{border-radius:50%;object-fit:cover;background:var(--bg2);border:1px solid var(--line)}.avatar,.avatar-fallback{width:46px;height:46px;flex:none}.avatar-fallback{border-radius:50%;display:grid;place-items:center;font-family:Bricolage Grotesque,sans-serif;font-weight:700;font-size:1.2rem;color:#2a1730;background:linear-gradient(145deg,var(--mint),var(--amber))}.who{min-width:0}.name{font-family:Bricolage Grotesque,sans-serif;font-weight:700;font-size:1.15rem;letter-spacing:-.01em;line-height:1.15;overflow-wrap:anywhere}.when{font-size:.7rem;color:var(--faint);margin-top:2px}.likes,.when{font-family:Space Mono,monospace}.likes{margin-left:auto;flex:none;display:flex;align-items:center;gap:6px;color:var(--coral);font-weight:600;font-size:.9rem}.likes svg{width:16px;height:16px}.rank{position:absolute;top:-12px;left:20px;font-family:Space Mono,monospace;font-weight:700;font-size:.7rem;letter-spacing:.1em;background:var(--amber);color:#2a1730;padding:3px 9px;border-radius:20px}.comment{font-size:calc(1.15rem * var(--zoom, 1));line-height:1.55;color:var(--ink);overflow-wrap:anywhere;max-height:220px;overflow:auto;white-space:pre-wrap}.placeholder{text-align:center;color:var(--faint);padding:40px 20px}.placeholder .big{font-family:Bricolage Grotesque,sans-serif;font-size:1.1rem;color:var(--muted);margin-bottom:6px}.placeholder .lil{font-size:.85rem}.foot{align-items:center;gap:14px;margin-top:18px;min-height:24px;flex-wrap:wrap}.dots,.foot{display:flex}.dots{gap:7px}.dot{width:8px;height:8px;border-radius:50%;background:var(--faint);opacity:.5;cursor:pointer;transition:.15s;border:none;padding:0}.dot.on{background:var(--amber);opacity:1;transform:scale(1.25)}.counter{font-family:Space Mono,monospace;font-size:.85rem;color:var(--muted);letter-spacing:.05em}.copybtn{margin-left:auto;background:none;border:1px solid var(--line2);color:var(--mint);padding:9px 15px;border-radius:11px;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:600;transition:.15s}.copybtn:hover{background:rgba(92,224,198,.1);border-color:var(--mint)}.copybtn:disabled{opacity:.35;cursor:default}.status{font-family:Space Mono,monospace;font-size:.8rem;color:var(--faint);margin-top:14px;min-height:18px;text-align:center}.status.err{color:var(--coral)}.status.ok{color:var(--mint)}@media (prefers-reduced-motion:no-preference){.card{animation:pop .22s ease}@keyframes pop{0%{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}}@media (max-width:520px){.comment{font-size:calc(1.05rem * var(--zoom, 1))}.nav{width:38px;height:38px}h1{font-size:1.3rem}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.options{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.count-sel{color:var(--ink)}.seg{display:inline-flex;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:3px;gap:3px}.seg-btn{background:none;border:none;color:var(--muted);font-family:inherit;font-size:.82rem;font-weight:600;padding:7px 12px;border-radius:8px;cursor:pointer;transition:.15s;white-space:nowrap}.seg-btn:hover{color:var(--ink)}.seg-btn.on{background:var(--amber);color:#2a1730}.deckbar{gap:12px;margin-bottom:10px;min-height:34px}.deckbar,.vidmeta{display:flex;align-items:center}.vidmeta{min-width:0;gap:8px;font-size:.85rem;color:var(--muted)}.vidmeta-mode{flex:none;font-family:Space Mono,monospace;font-size:.68rem;letter-spacing:.02em;color:#2a1730;background:var(--amber);padding:2px 8px;border-radius:20px;white-space:nowrap}.vidmeta-title{min-width:0;color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vidmeta-count{flex:none;font-family:Space Mono,monospace;color:var(--faint);white-space:nowrap}.tools{margin-left:auto;display:flex;gap:8px;flex:none}.tools,.zoom{align-items:center}.zoom{display:inline-flex;gap:2px;border:1px solid var(--line2);border-radius:10px;padding:2px}.zoombtn{width:30px;height:30px;background:none;border:none;color:var(--ink);font-size:1.1rem;line-height:1;border-radius:8px;cursor:pointer;transition:.15s}.zoombtn:hover:not(:disabled){background:var(--card2)}.zoombtn:disabled{opacity:.3;cursor:default}.zoomval{min-width:46px;background:none;border:none;color:var(--muted);font-family:Space Mono,monospace;font-size:.75rem;cursor:pointer;padding:0 2px}.zoomval:hover{color:var(--ink)}.toolbtn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line2);color:var(--muted);font-family:inherit;font-size:.82rem;font-weight:600;padding:7px 12px;border-radius:10px;cursor:pointer;transition:.15s}.toolbtn:hover{color:var(--ink);border-color:var(--amber)}.toolbtn svg{width:16px;height:16px}.jump{display:flex;align-items:center;gap:8px}.jump-lbl{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.jump input,.jump-lbl{font-family:Space Mono,monospace}.jump input{width:64px;background:var(--bg2);border:1px solid var(--line);color:var(--ink);padding:6px 8px;border-radius:8px;font-size:.8rem}.jump input:focus{outline:none;border-color:var(--amber)}.focus-overlay{position:fixed;inset:0;z-index:50;background:radial-gradient(1200px 600px at 80% -10%,#2a1c3a 0,var(--bg) 55%);flex-direction:column;justify-content:center;gap:18px;padding:20px}.focus-bar,.focus-overlay{display:flex;align-items:center}.focus-bar{position:absolute;top:18px;left:18px;right:18px;justify-content:flex-end;gap:10px}.focus-stage{width:100%;max-width:1200px;display:flex;align-items:center;gap:12px}.focus-card{flex:1 1;min-width:0}.focus-overlay .card{padding:40px 48px}.focus-overlay .comment{font-size:calc(2.1rem * var(--zoom, 1));font-weight:700;line-height:1.35;max-height:70vh}.focus-overlay .name{font-size:1.7rem}.focus-counter{font-family:Space Mono,monospace;font-size:.95rem;color:var(--muted);letter-spacing:.08em}.focus-overlay:-webkit-full-screen{padding:28px}.focus-overlay:fullscreen{padding:28px}.focus-overlay:-webkit-full-screen .focus-stage{max-width:min(1600px,92vw)}.focus-overlay:fullscreen .focus-stage{max-width:min(1600px,92vw)}@media (max-width:640px){.focus-overlay .card{padding:24px}.focus-overlay .comment{font-size:calc(1.5rem * var(--zoom, 1))}}