:root{color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0b0f14;color:#e8eef7}*{box-sizing:border-box}body{margin:0}a{color:#7cc4ff}button{font:inherit;cursor:pointer}.appShell{min-height:100vh;display:flex;flex-direction:column}.topBar{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid #1f2a37;background:#111827cc}.pill{font-size:.85rem;padding:.25rem .65rem;border-radius:999px;border:1px solid #2b3c52;background:#16202c}.pill.bad{border-color:#7f1d1d;background:#3f1515}.pill.good{border-color:#14532d;background:#10331d}.logPanel{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:#9fb4ce;max-height:6rem;overflow:auto;padding:.75rem 1rem;border-top:1px solid #1f2a37}.roomGrid{flex:1;padding:.75rem;gap:.75rem;display:grid;grid-template-columns:1fr 1fr}@media (max-width: 900px){.roomGrid{grid-template-columns:1fr}}.videoTile{position:relative;border-radius:12px;overflow:hidden;border:1px solid #243548;background:#090d12;aspect-ratio:16 / 10}.videoTile video{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;display:block;background:#000}.videoTile canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;touch-action:none;pointer-events:none}.hitLayer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;touch-action:none}.tileLabel{position:absolute;left:8px;top:8px;pointer-events:none;z-index:3;color:#f8fafc;font-size:.82rem;text-shadow:0 1px 2px rgba(0,0,0,.85)}.toolbar{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem;align-items:center}.toolbar button.active{outline:2px solid #3b82f6}.toolbar button{border-radius:8px;border:1px solid #2b3c52;background:#111827;color:inherit;padding:.45rem .65rem}.toolbar input[type=color]{height:2rem;width:2.75rem;border:none;background:transparent}.landing{max-width:720px;margin:0 auto;padding:2rem 1rem}.landing h1{margin-top:0}.roomForm{display:flex;gap:.5rem;align-items:center}.roomForm input{flex:1;padding:.6rem .65rem;border-radius:8px;border:1px solid #2b3c52;background:#0f172a;color:inherit}
