:root{color:#17212b;background:#f4f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}.app-shell{min-height:100vh;padding:32px}.workspace{width:min(1040px,100%);margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0 28px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700}.status-pill{border:1px solid #b8c7d1;border-radius:999px;padding:6px 12px;color:#48606f;background:#fff}.control-band,.room-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}.control-band{padding:20px 0 24px}.language-controls{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px}label{display:grid;gap:8px;color:#536a79;font-size:14px;font-weight:700}select{width:100%;min-height:44px;border:1px solid #c9d6dc;border-radius:8px;padding:0 12px;color:#17212b;background:#fff}button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:8px;border:1px solid transparent;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.primary-button{min-width:160px;padding:0 18px;color:#fff;background:#126a63}.tool-button{min-width:132px;padding:0 14px;color:#22313b;border-color:#c9d6dc;background:#fff}.danger-button{min-width:132px;padding:0 14px;color:#fff;background:#b43b3b}.invite-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center;margin:0 0 18px;padding:10px;border:1px solid #d7e0e5;border-radius:8px;background:#fff}.invite-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-row button{border-color:#c9d6dc;background:#fff}.error-line{margin:0 0 16px;color:#9b2f2f}.notice-line{margin:0 0 16px;color:#126a63}.room-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:stretch}.panel,.transcripts,.quality-panel,.debug-panel{padding:18px;border:1px solid #d7e0e5;border-radius:8px;background:#fff}.panel h2,.transcripts h2,.quality-panel h2,.debug-panel h2{margin:0 0 14px;font-size:18px;letter-spacing:0}.participant-list,.session-list,.transcript-list{display:grid;gap:10px}.session-list{margin-top:16px}.participant-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;color:#536a79}.participant-row strong{color:#17212b}.button-row{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:10px}.talk-status{display:grid;gap:6px;margin-bottom:12px;padding:12px;border:1px solid #d7e0e5;border-radius:8px;color:#17212b;background:#f7fafb}.talk-status strong{font-size:16px}.talk-status span{color:#607482;font-size:13px}.talk-status.ready{border-color:#7bb99e;color:#115d43;background:#edf8f2}.talk-status.speaking{border-color:#b43b3b;color:#8f2626;background:#fff1f1}.talk-status.blocked{border-color:#d1ab56;color:#735200;background:#fff8e6}.talk-status.cooldown{border-color:#6aa6c8;color:#24536b;background:#eef8fd}.ptt-button{width:100%;margin-top:10px}.audio-status{margin:12px 0 0;color:#607482;font-size:13px}.transcripts,.quality-panel{margin-top:16px}.quality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quality-grid div{display:grid;gap:4px;min-height:58px;padding:10px;border:1px solid #d7e0e5;border-radius:8px;background:#f7fafb}.quality-grid strong{color:#536a79;font-size:12px}.quality-grid span{color:#17212b;font-size:16px;font-weight:700}.debug-panel{margin-top:16px}.transcript-list{min-height:120px;max-height:280px;overflow:auto}.transcript-list p{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;margin:0;color:#536a79}.transcript-list p.final{color:#17212b}.empty-line{color:#607482}.debug-list{display:grid;gap:8px;max-height:220px;overflow:auto}.debug-list p{display:grid;grid-template-columns:86px minmax(150px,.8fr) minmax(0,1fr);gap:10px;margin:0;color:#536a79;font-size:13px}.debug-list strong{color:#17212b}.debug-list em{overflow:hidden;color:#607482;font-style:normal;text-overflow:ellipsis;white-space:nowrap}@media(max-width:640px){.app-shell{padding:18px}.topbar{align-items:flex-start;flex-direction:column}.control-band,.room-grid,.language-controls,.button-row,.quality-grid{grid-template-columns:1fr}}
