.board{position:relative;width:100%;height:100%;overflow:hidden;background-color:#f4f5f7;background-image:radial-gradient(circle,#c9ced8 1px,transparent 1.2px);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;color:#1f2937}.board:active{cursor:grabbing}.board-world{position:absolute;left:0;top:0;width:0;height:0;transform-origin:0 0}.board-region{position:absolute;margin:0;border:1px solid #d5dae3;border-radius:14px;background:#ffffffb8}.board-region-title{margin:0;padding:10px 14px;font-size:15px;font-weight:600;color:#374151}.board-group{position:absolute;border:1.5px dashed #9aa3b5;border-radius:12px}.board-group-name{position:absolute;left:10px;top:-11px;padding:0 6px;font-size:13px;font-weight:600;background:#f4f5f7;color:#4b5563}.board-lane{position:absolute;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:600;background:#e5e7eb;color:#374151;white-space:nowrap}.board-ink{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.board-text{position:absolute;font-size:16px;white-space:pre-wrap;pointer-events:none}.board-card{position:absolute;padding:12px 14px 10px;border-radius:4px;box-shadow:0 1px 2px #0f172a1f,0 4px 10px #0f172a14;display:flex;flex-direction:column;gap:8px;color:#1f2937}.board-card-text{margin:0;font-size:14px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.board-card-author{display:flex;align-items:center;gap:6px;font-size:11px;color:#4b5563}.board-card-author i{width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 1px #00000040}.board-controls{position:absolute;right:16px;bottom:16px;display:flex;gap:6px;padding:6px;background:#fff;border:1px solid #dfe3ea;border-radius:12px;box-shadow:0 2px 8px #0f172a1a;cursor:default}.board-controls button{min-width:36px;padding:8px 10px;font-size:14px;border-radius:8px;background:transparent;color:#1f2937}.board-controls button:hover{background:#eef1f6}.live-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column}.live-bar{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--card);font-size:.95rem}.live-dot{width:8px;height:8px;border-radius:50%;background:#e03131}.live-stage{position:relative;flex:1;min-height:0}.cursor-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.cursor{position:absolute;left:0;top:0;will-change:transform}.cursor-arrow{position:absolute;overflow:visible;filter:drop-shadow(0 2px 2px rgba(15,23,42,.28)) drop-shadow(0 1px 1px rgba(15,23,42,.18))}.cursor-label{position:absolute;left:14px;top:18px;padding:3px 8px;border-radius:6px 10px 10px;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 3px #0f172a33}:root{--bg:#f6f7f9;--card:#fff;--ink:#1c2230;--muted:#6a7385;--accent:#3b5bdb;--line:#dfe3ea;--danger:#c92a2a}@media (prefers-color-scheme: dark){:root{--bg:#12151c;--card:#1b2029;--ink:#eef1f6;--muted:#9aa3b5;--line:#2c3340}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}.screen{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:32px 28px;display:flex;flex-direction:column;gap:18px}h1{margin:0;font-size:1.6rem;font-weight:600}p{margin:0}.muted{color:var(--muted)}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted)}input{font:inherit;font-size:1rem;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink)}input:focus{outline:2px solid var(--accent);outline-offset:1px}button{font:inherit;font-weight:600;padding:13px;border:0;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer}button:disabled{opacity:.6;cursor:default}.error{color:var(--danger);font-size:.9rem}.wait{text-align:center;align-items:center}.wait-stage{width:100%;min-height:120px}.countdown{font-size:2.8rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em}.presence{display:flex;align-items:center;gap:6px;margin:0 0 0 auto;padding:0;list-style:none;min-width:0;overflow:hidden}.presence li{display:flex;align-items:center;gap:6px;min-width:0}.presence-avatar{display:inline-grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;font-size:12px;font-weight:700;box-shadow:0 0 0 2px var(--card),0 0 0 3px #0f172a26}.presence-name{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}@media (max-width: 640px){.presence-name{display:none}}
