:root{--page: #15202b;--card: #192734;--raised: #22303c;--hairline: #38444d;--text: #f7f9f9;--muted: #8b98a5;--accent: #f05820;--accent-hover: #ff6a33;--face: #ff6b6b;--person: #fab005;--object: #4dabf7;--attire: #845ef7;--text-box: #51cf66}html{color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--page);color:var(--text);font-family:ui-sans-serif,system-ui,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.shell{min-height:100%;min-width:1280px}.topbar{display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--hairline);background:var(--card)}.brand{display:flex;align-items:center;gap:.65rem;color:var(--text)}.brand:hover{color:var(--text)}.brand img{height:36px;width:auto;display:block}.brand-title{font-weight:700;letter-spacing:.01em}.tape-count{color:var(--muted);font-size:.9rem}.legend{display:flex;gap:.85rem;margin-left:auto;color:var(--muted);font-size:.8rem}.legend span{display:inline-flex;align-items:center;gap:.35rem}.swatch{width:.7rem;height:.7rem;border-radius:2px}.wall-link{margin-left:.5rem;font-weight:600}.page{padding:1.1rem 1.25rem 2rem}.wall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.card{background:var(--card);border:1px solid var(--hairline);border-radius:12px;overflow:hidden;min-width:0}.card-body{padding:.7rem .75rem .85rem;display:flex;flex-direction:column;gap:.45rem}.picture{position:relative;aspect-ratio:16 / 9;background:#000}.picture video,.picture canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.picture video{object-fit:contain;background:#000}.pending-frame{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--raised)}.title-bar{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1.6rem .7rem .55rem;background:linear-gradient(transparent,#15202beb)}.title-bar a,.title-bar .title-text{color:var(--text);font-weight:650;font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pill{position:absolute;top:.55rem;right:.55rem;z-index:2;font-size:.7rem;font-weight:650;padding:.15rem .45rem;border-radius:999px;background:var(--raised);color:var(--muted);border:1px solid var(--hairline);text-decoration:none}a.pill:hover{color:var(--text)}.pill.ready{color:var(--text);border-color:var(--accent)}.transport{display:flex;align-items:center;gap:.55rem;padding:.4rem .55rem .5rem;background:var(--raised)}.transport button{border:0;background:var(--accent);color:var(--text);min-width:3.4rem;height:1.7rem;padding:0 .5rem;border-radius:4px;cursor:pointer;font-size:.8rem}.transport button:hover{background:var(--accent-hover)}.transport .clock{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem;min-width:4.5rem}.transport input[type=range]{flex:1;accent-color:var(--accent)}.chip-row{display:flex;flex-wrap:nowrap;gap:.3rem;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding-bottom:.2rem}.chip-row::-webkit-scrollbar{height:4px}.chip-row::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:999px}.chip{flex:0 0 auto;background:var(--raised);border:2px solid var(--hairline);color:var(--text);border-radius:999px;padding:.2rem .55rem;font-size:.75rem;line-height:1.2;white-space:nowrap}.chip.accent{background:var(--accent);border-color:var(--accent)}.chip.muted{color:var(--muted)}.chip.setting{border-color:var(--hairline)}.chip.action{border-color:var(--muted)}.chip.face{border-color:var(--face)}.chip.object{border-color:var(--object)}.chip.attire{border-color:var(--attire)}.caption{margin:0;color:var(--muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coverage{margin:0;color:var(--muted);font-size:.78rem}.calm-error,.loading{color:var(--muted);margin:.75rem 0}.player{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:start}.stage-card{background:var(--card);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.rail{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:.9rem;display:flex;flex-direction:column;gap:.7rem;min-width:0}.rail h2{margin:0;font-size:1.05rem}.seed-muted{margin:0;color:var(--muted);font-size:.78rem}.rail h3{margin:.2rem 0 0;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.coverage-row{display:flex;justify-content:space-between;gap:.5rem;font-size:.85rem}.coverage-row .state{color:var(--muted)}.tape-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-top:.9rem}.tape-strip a{display:block;background:var(--card);border:1px solid var(--hairline);border-radius:8px;padding:.55rem .6rem;color:var(--text);font-size:.8rem}.tape-strip a:hover,.tape-strip a.active{border-color:var(--accent);color:var(--text)}.login-card{max-width:22rem;margin:4rem auto;padding:1.4rem 1.5rem;background:var(--card);border:1px solid var(--hairline);border-radius:12px;display:grid;gap:.75rem}.login-card h1{margin:0;font-size:1.2rem}.login-card p{margin:0;color:var(--muted)}.login-card label{display:grid;gap:.35rem;font-size:.85rem;color:var(--muted)}.login-card input{background:var(--page);border:1px solid var(--hairline);border-radius:8px;color:var(--text);padding:.55rem .7rem}.login-card button{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:.6rem .8rem;font-weight:600;cursor:pointer}
