*{box-sizing:border-box}html,body,#root{margin:0;height:100%;overflow:hidden;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app{display:flex;flex-direction:column;height:100dvh;background:#101828;color:#1f2937}.topbar{flex:none;height:52px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;background:#fff;border-bottom:1px solid #e5e7eb;z-index:20}.brand{display:flex;align-items:baseline;gap:8px;min-width:0}.brand strong{font-size:15px;white-space:nowrap}.brand small{color:#6b7280;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-controls{display:flex;align-items:center;gap:8px;flex:none}.floor-select{padding:8px 10px;border-radius:999px;border:1px solid #d1d5db;background:#fff;font-size:13px;max-width:200px;cursor:pointer}.theater-btn{border:0;border-radius:999px;padding:8px 12px;background:#111827;color:#fff;font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap}.owner-btn{border:1px solid #e5e7eb;border-radius:999px;padding:8px 10px;background:#fff;font-size:15px;cursor:pointer}.scene-wrap{position:relative;flex:1;min-height:0;width:100%;background:#1e2a4a}.scene-wrap>div{height:100%;background:#1e2a4a}.scene-wrap canvas{display:block;background:#1e2a4a}.owner-panel{position:fixed;top:52px;right:0;bottom:0;width:min(340px,92vw);background:#fff;padding:14px;overflow-y:auto;box-shadow:-8px 0 24px #00000040;z-index:30;display:flex;flex-direction:column;gap:8px}.owner-head{display:flex;align-items:center;justify-content:space-between}.owner-head strong{font-size:15px}.owner-close{border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;background:#fff;cursor:pointer;font-size:12px}.owner-status{padding:10px;border-radius:10px;background:#fff7ed;border:1px solid #f59e0b;font-size:12px}.mock-btn{margin-top:8px;border:0;border-radius:999px;padding:11px 12px;background:#7c3aed;color:#fff;font-weight:700;cursor:pointer}.mock-btn:disabled{opacity:.6}.task-select{width:100%;padding:8px;border-radius:8px;border:1px solid #d1d5db}.task-panel{margin-top:10px;padding:10px;border-radius:10px;background:#f3f4f6;font-size:12px}details.task-panel summary{cursor:pointer;font-weight:600}details.task-panel .history-text{margin-top:8px}.mock-details{margin-top:8px;padding:10px;border-radius:10px;background:#f3f4f6;font-size:12px}.mock-details summary{cursor:pointer;font-weight:600}.mock-details .task-select{margin-top:8px}.theater-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ad9;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px}.theater-modal-box{width:min(960px,100%);background:#111827;color:#fff;border-radius:12px;padding:12px}.theater-modal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;font-size:14px}.theater-close{flex:none;border:1px solid #475569;border-radius:999px;padding:6px 10px;background:transparent;color:#fff;cursor:pointer;font-size:12px}.theater-player{position:relative;aspect-ratio:16 / 9;width:100%;background:#000}.theater-player iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.theater-link{display:inline-block;margin-top:10px;color:#93c5fd;font-size:13px}@media (max-width: 760px){.brand small{display:none}.floor-select{max-width:128px;font-size:12px}.theater-btn{padding:8px 10px;font-size:12px}.owner-panel{top:auto;left:0;right:0;bottom:0;width:auto;max-height:75dvh;border-radius:16px 16px 0 0}.theater-modal{padding:8px}}
