:root{--bg:#0e1116;--surface:#171b22;--surface-2:#1f2530;--line:#2b3340;--text:#e8ebf0;--muted:#98a2b3;--accent:#3b82f6;--accent-ink:#fff;--danger:#e5484d;--ok:#2fb170;--warn:#e2a336;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:14px;line-height:1.45}h1,h2,h3{margin:0 0 8px;line-height:1.2}h1{font-size:28px}h2{font-size:20px}h3{font-size:15px}p{margin:0 0 10px}a{color:inherit}.muted{color:var(--muted)}.small{font-size:12px}.err{color:#ff8a8e}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.between{justify-content:space-between}input,select{background:var(--bg);color:var(--text);border:1px solid var(--line);font:inherit;border-radius:8px;width:100%;min-width:0;padding:9px 11px}select{width:auto;padding:5px 8px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}label{color:var(--muted);gap:5px;font-size:12px;display:grid}label input{font-size:14px}label.check{color:var(--text);cursor:pointer;align-items:flex-start;gap:9px;font-size:14px;display:flex}label.check input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:3px}.btn{white-space:nowrap;background:var(--surface-2);color:var(--text);border:1px solid var(--line);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:#283040;border-color:#44506280}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover:not(:disabled){background:#2f6fe0}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.sm{padding:6px 10px;font-size:13px}.btn.xs{border-radius:6px;padding:3px 8px;font-size:12px}.strip .tile-avatar{width:36px;margin-bottom:18px;font-size:16px}.tag{white-space:nowrap;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:5px;margin-left:6px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.tag.ok{color:var(--ok);border-color:#2fb17055}.tag.warn{color:var(--warn);border-color:#e2a33655}.tag.rec{color:#fff;background:var(--danger);border-color:var(--danger)}.dot{background:#fff;border-radius:50%;width:7px;height:7px;animation:1.2s infinite pulse}@keyframes pulse{50%{opacity:.3}}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-content:start;gap:12px;padding:18px;display:grid}.card.wide{width:min(560px,100%)}.center-page{place-items:center;min-height:100%;padding:24px 16px;display:grid}.home{width:min(820px,100%)}.home-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:20px;display:grid}.row.nowrap{flex-wrap:nowrap;align-items:flex-end}textarea{background:var(--bg);color:var(--text);border:1px solid var(--line);font:inherit;resize:vertical;border-radius:8px;width:100%;padding:9px 11px;font-size:14px}textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}label select{width:100%;padding:9px 8px;font-size:14px}.seg{border:1px solid var(--line);border-radius:8px;width:fit-content;max-width:100%;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:7px 12px;font-size:13px}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--accent);color:var(--accent-ink)}.mine-row{border-top:1px solid var(--line);padding:8px 0}.countdown{font-variant-numeric:tabular-nums;font-size:34px;font-weight:600}.portal{min-height:100%}.portal-bar{z-index:10;background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;display:flex;position:sticky;top:0}.brand{margin-right:12px;font-size:16px;font-weight:700;text-decoration:none}.nav-item{color:var(--muted);border-radius:8px;padding:6px 10px;font-weight:500;text-decoration:none}.nav-item:hover{color:var(--text)}.nav-item.on{color:var(--text);background:var(--surface-2)}.who{text-decoration:none}.portal-main{gap:16px;max-width:1120px;margin:0 auto;padding:24px 20px 60px;display:grid}.portal-main h1{margin:0;font-size:24px}.portal-main h1 .tag{vertical-align:middle}.filters .search{width:280px;max-width:100%}.filters select{padding:8px}.card.flush{padding:0;overflow:hidden}.pad{margin:0;padding:18px}.card.flush th,.card.flush td{padding:10px 14px}table.rows tbody tr{cursor:pointer}table.rows tbody tr:hover{background:var(--surface-2)}.stack{align-content:start;gap:12px;display:grid}.form-wide{max-width:920px}.form-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;display:grid}.lbl{color:var(--muted);font-size:12px}.poster-drop{border:1px dashed var(--line);background:var(--bg);border-radius:10px;place-items:center;min-height:160px;display:grid;overflow:hidden}.poster-drop img,img.poster{object-fit:contain;background:var(--bg);border-radius:10px;width:100%;max-height:340px;display:block}.desc{white-space:pre-wrap;overflow-wrap:anywhere}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:9px 14px;font-weight:500;text-decoration:none}.tabs a.on{color:var(--text);border-bottom-color:var(--accent)}.overview{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:16px;display:grid}.okmsg{color:var(--ok);margin:0}.notice{border-color:var(--warn)}.btn.disabled{opacity:.5;pointer-events:none}details summary{cursor:pointer;color:var(--muted)}details[open] summary{margin-bottom:8px}.home.narrow{width:min(440px,100%)}input[type=file]{padding:6px;font-size:13px}@media (width<=820px){.form-grid,.overview{grid-template-columns:1fr}.row.nowrap.wrap-sm{flex-wrap:wrap}}.feedback{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;gap:12px;padding:14px;display:grid}.stars{align-items:center;gap:2px;display:flex}.stars button{color:#566173;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:32px;line-height:1}.stars button.on,.star-on{color:#f5b301}.stars .muted{margin-left:8px}.fb-q{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.stat-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.stat{background:var(--surface-2);border-radius:8px;gap:2px;padding:10px 12px;display:grid}.stat b{font-size:22px}.stat span{color:var(--muted);font-size:12px}.stat b span{font-size:inherit;color:#f5b301}.dist{gap:4px;max-width:420px;display:grid}.dist-row{color:var(--muted);grid-template-columns:34px 1fr 28px;align-items:center;gap:8px;font-size:12px;display:grid}.dist-track{background:var(--surface-2);border-radius:4px;height:8px;overflow:hidden}.dist-fill{background:#f5b301;border-radius:4px;height:100%}td.wrap{white-space:normal;overflow-wrap:anywhere;min-width:220px}.meet{grid-template-rows:auto 1fr auto;height:100%;display:grid}.topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.title{font-size:15px}.body{min-height:0;display:flex}.stage{flex:1;min-width:0;padding:10px;display:flex;position:relative;overflow:hidden}.stage-note{color:var(--muted);margin:auto}.stage-badge{white-space:nowrap;background:#000000b0;border-radius:999px;padding:5px 12px;font-size:12px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.grid{flex:1;grid-auto-rows:1fr;gap:8px;min-height:0;display:grid}.focus{flex:1;gap:8px;min-width:0;min-height:0;display:flex}.focus-main{flex:1;min-width:0;min-height:0;display:flex}.focus-main>*{flex:1}.strip{flex-direction:column;gap:8px;width:180px;display:flex;overflow-y:auto}.strip .tile{aspect-ratio:16/9;flex:none}.tile{background:var(--surface);border:2px solid #0000;border-radius:10px;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.tile.speaking{border-color:var(--ok)}.tile video{background:#000;width:100%;height:100%;position:absolute;inset:0}.tile-avatar,.avatar{background:var(--accent);color:#fff;border-radius:50%;place-items:center;font-weight:600;display:grid}.tile-avatar{aspect-ratio:1;width:clamp(40px,22%,96px);font-size:clamp(18px,3vw,36px)}.tile-name{text-overflow:ellipsis;white-space:nowrap;background:#000000a8;border-radius:6px;max-width:calc(100% - 16px);padding:3px 8px;font-size:12px;position:absolute;bottom:8px;left:8px;overflow:hidden}.captions{background:#000000c8;border-radius:10px;gap:3px;width:min(720px,90%);padding:10px 14px;font-size:16px;display:grid;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.floaters{pointer-events:none;position:absolute;inset:0;overflow:hidden}.floater{justify-items:center;animation:3.2s ease-out forwards rise;display:grid;position:absolute;bottom:10px}.floater-emoji{font-size:34px}.floater-name{background:#000000a0;border-radius:999px;padding:1px 6px;font-size:11px}@keyframes rise{to{opacity:0;transform:translateY(-55vh)}}@media (prefers-reduced-motion:reduce){.floater{animation-duration:10ms}.dot{animation:none}}.panel{border-left:1px solid var(--line);background:var(--surface);flex-direction:column;width:340px;min-height:0;display:flex}.panel-tabs{border-bottom:1px solid var(--line);display:flex}.panel-tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:10px 4px;font-size:12px}.panel-tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.panel-tabs .x{flex:none;width:36px;font-size:18px}.panel-body{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.panel-body>.card{background:var(--surface-2);gap:8px;padding:12px}.panel-foot{border-top:1px solid var(--line);gap:8px;padding:10px 12px;display:flex}.msg-head{align-items:baseline;gap:6px;font-size:12px;display:flex}.msg-text{white-space:pre-wrap;overflow-wrap:anywhere}.msg.mine .msg-head b{color:var(--accent)}.person{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.avatar{flex:none;width:30px;height:30px;font-size:13px}.person-main{flex:1;min-width:0}.person-actions{flex-wrap:wrap;gap:4px;width:100%;padding-left:40px;display:flex}.poll-opt{text-align:left;background:var(--bg);color:var(--text);border:1px solid var(--line);font:inherit;cursor:pointer;border-radius:8px;justify-content:space-between;gap:8px;padding:8px 10px;display:flex;position:relative;overflow:hidden}.poll-opt.chosen{border-color:var(--accent)}.poll-opt:disabled{cursor:default}.poll-bar{background:#3b82f630;position:absolute;inset:0 auto 0 0}.poll-label,.poll-pct{position:relative}.poll-pct{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.controls{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px;display:flex}.ctl{min-width:68px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-items:center;gap:2px;padding:6px 8px;display:grid;position:relative}.ctl:hover:not(:disabled){background:var(--surface-2)}.ctl.on{background:var(--surface-2);border-color:var(--line)}.ctl.off .ctl-label{color:#ff8a8e}.ctl:disabled{opacity:.5;cursor:wait}.ctl-icon{font-size:18px;line-height:1.2}.ctl-label{color:var(--muted);white-space:nowrap;font-size:11px}.badge{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:16px;padding:0 4px;font-size:10px;line-height:16px;position:absolute;top:2px;right:8px}.react-wrap{position:relative}.react-pop{background:var(--surface-2);border:1px solid var(--line);z-index:5;border-radius:999px;gap:2px;padding:4px 8px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.react-pop button{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px;font-size:22px}.react-pop button:hover{background:var(--line)}.toasts{z-index:20;gap:8px;display:grid;position:fixed;top:56px;right:16px}.toast{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;max-width:320px;padding:9px 14px;box-shadow:0 6px 20px #0008}.board{flex-direction:column;gap:8px;min-width:0;min-height:0;display:flex}.board-canvas-wrap{flex:1;place-items:center;min-height:0;display:grid}.board canvas{aspect-ratio:16/9;background:#fff;border-radius:8px;max-width:100%;max-height:100%}.board-tools{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.swatch{border:2px solid var(--line);cursor:pointer;border-radius:50%;width:22px;height:22px;padding:0}.swatch.on{box-shadow:0 0 0 2px var(--accent);border-color:#fff}.dash{gap:16px;max-width:980px;margin:0 auto;padding:28px 16px 60px;display:grid}.rec-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.rec-item{gap:6px;display:grid}.rec-item video{aspect-ratio:16/9;background:#000;border-radius:8px;width:100%}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:7px 10px}th{color:var(--muted);font-size:12px;font-weight:500}.num{text-align:right;font-variant-numeric:tabular-nums}.transcript{max-height:320px;overflow-y:auto}.transcript p{margin:0 0 6px}@media (width<=820px){.body{flex-direction:column}.panel{border-left:0;border-top:1px solid var(--line);width:100%;height:45%}.strip{display:none}.ctl{min-width:52px;padding:5px 4px}.controls{justify-content:center}}
