:root{--bg:#0a0d14;--bg-elev:#121723;--bg-elev-2:#1a2030;--border:#2a3144;--border-strong:#3a4259;--text:#eaeef7;--text-muted:#9aa3b8;--text-subtle:#6b7388;--accent:#7aa2ff;--accent-soft:#2b3a66;--danger:#ff8585;--radius:12px;--radius-sm:8px;--shadow:0 8px 32px rgba(0,0,0,0.35)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Apple SD Gothic Neo,Pretendard,Noto Sans KR,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.page{width:100%;max-width:920px;margin:0 auto;padding:48px 24px 96px;display:flex;flex-direction:column;gap:40px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{font-size:20px;font-weight:600;letter-spacing:-.01em}.topbar-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:12px;flex-wrap:wrap}.auth-panel{min-width:min(420px,100%);max-width:520px;display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(18,23,35,.82);font-size:12px}.auth-panel[data-state=signed-in]{grid-template-columns:minmax(0,1fr) auto;align-items:center}.auth-panel[data-state=disabled]{max-width:280px}.auth-panel strong{color:var(--text)}.auth-panel p{margin:0;color:var(--text-muted);overflow-wrap:anywhere}.auth-actions,.auth-fields{display:flex;gap:8px;flex-wrap:wrap}.auth-fields input{min-width:150px;flex:1 1 150px;padding:8px 10px;font-size:12px}.auth-panel .mini-button{justify-self:start}.auth-message{grid-column:1/-1}.locale-switch{display:inline-flex;background:var(--bg-elev);border:1px solid var(--border);border-radius:999px;padding:2px}.locale-switch button{background:transparent;color:var(--text-muted);border:0;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:500}.locale-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--text)}.hero{display:flex;flex-direction:column;gap:14px}.hero h1{font-size:40px;line-height:1.15;letter-spacing:-.02em;margin:0;font-weight:700}.hero .tagline-en,.hero .tagline-ko{font-size:16px;color:var(--text-muted);margin:0}.hero .lead{font-size:18px;margin:12px 0 0;color:var(--text)}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:28px;gap:24px}.card,.field{display:flex;flex-direction:column}.field{gap:8px}.field-label{font-size:14px;color:var(--text-muted);font-weight:500}.field-hint{font-size:12px;color:var(--text-subtle)}.field-error{font-size:12px;color:var(--danger)}input[type=email],input[type=password],input[type=text],textarea{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:12px 14px;font:inherit;resize:vertical}input:focus,textarea:focus{outline:none;border-color:var(--accent)}.segmented{display:inline-flex;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px;align-self:flex-start}.segmented button{background:transparent;color:var(--text-muted);border:0;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500}.segmented button[aria-pressed=true]{background:var(--accent-soft);color:var(--text)}.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:10px;gap:10px}.role-chip{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;display:flex;flex-direction:column;gap:4px;text-align:left;color:var(--text);transition:border-color .12s ease,background .12s ease}.role-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.role-chip[disabled]{opacity:.4}.role-chip .role-name{font-weight:600;font-size:14px}.role-chip .role-desc,.role-chip .role-persona{font-size:12px;color:var(--text-muted)}.role-chip .role-persona{color:var(--text-subtle);line-height:1.45}.start-button{align-self:flex-start;background:var(--accent);color:#0a0d14;border:0;border-radius:var(--radius-sm);padding:12px 24px;font-size:15px;font-weight:600}.secondary-button{align-self:flex-start;background:transparent;color:var(--accent);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:10px 16px;font-size:13px;font-weight:700}.preview{display:flex;flex-direction:column;gap:20px}.preview h2{font-size:20px;margin:0}.preview-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;padding:16px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.preview-meta dt{color:var(--text-subtle);margin:0 0 2px;font-size:12px}.preview-meta dd{margin:0;color:var(--text)}.preview-intro{font-size:13px;color:var(--text-muted)}.meeting-stage{display:flex;flex-direction:column;gap:12px}.meeting-line{display:grid;grid-template-columns:28px 1fr;grid-gap:12px;gap:12px;align-items:start;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px}.avatar-dot{width:24px;height:24px;border-radius:999px;background:radial-gradient(circle at 35% 35%,#ffffff,var(--accent) 35%,var(--accent-soft) 70%);box-shadow:0 0 18px rgba(122,162,255,.4)}.meeting-role{font-size:12px;color:var(--accent);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.meeting-line p{margin:4px 0 0}.meeting-line[data-status=blocked],.meeting-line[data-status=failed]{border-color:rgba(255,133,133,.5)}.meeting-line[data-status=done]{border-color:rgba(122,162,255,.42)}.meeting-line[data-status=speaking],.meeting-line[data-status=thinking]{border-color:rgba(122,162,255,.72);background:linear-gradient(135deg,rgba(122,162,255,.16),rgba(18,23,35,.82))}.meeting-line[data-status=speaking] .avatar-dot,.meeting-line[data-status=thinking] .avatar-dot{animation:speaking-pulse 1.25s ease-in-out infinite}.progress-note{margin:-4px 0 0;color:var(--accent);font-weight:700}.meeting-line[data-status=blocked] .meeting-role,.meeting-line[data-status=failed] .meeting-role{color:var(--danger)}.note-box{background:var(--bg-elev-2);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:14px 16px}.dev-plan,.note-box{font-size:13px;color:var(--text-muted)}.dev-plan{background:rgba(122,162,255,.08);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:14px}.dev-plan p{margin:0}.dev-plan-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.dev-plan-header strong{color:var(--text)}.dev-plan-header span{border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--accent);font-size:11px;font-weight:700}.dev-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px}.dev-plan dt{color:var(--text-subtle);font-size:11px;margin:0 0 2px}.dev-plan dd{margin:0;color:var(--text);overflow-wrap:anywhere}.turn-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.turn-list li{display:grid;grid-template-columns:28px minmax(96px,1fr) minmax(0,1.4fr) auto;align-items:center;grid-gap:10px;gap:10px}.turn-list span{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--accent-soft);font-size:12px;font-weight:700}.turn-list span,.turn-list strong{color:var(--text)}.turn-list code{color:var(--accent);overflow-wrap:anywhere;font-size:12px}.mini-button{justify-self:end;background:rgba(122,162,255,.12);color:var(--accent);border:1px solid var(--border-strong);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700;white-space:nowrap}.danger-button{background:rgba(255,133,133,.12);color:var(--danger);border:1px solid rgba(255,133,133,.45);border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}.control-message{margin:-4px 0 0;color:var(--text-muted);border-left:3px solid var(--accent);padding-left:10px}.export-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.export-actions .mini-button{justify-self:start}.share-payload-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;background:rgba(20,24,36,.58)}.share-payload-card[data-status=ready]{border-color:rgba(118,255,190,.42)}.share-payload-card p{margin:6px 0 10px;color:var(--text-muted)}.share-payload-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0}.share-payload-card dt{color:var(--text-muted);font-size:11px}.share-payload-card dd{margin:2px 0 0;color:var(--text);overflow-wrap:anywhere}.structured-notes{display:flex;flex-direction:column;gap:12px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;background:rgba(122,162,255,.08)}.structured-notes p{margin:6px 0 0;color:var(--text-muted);white-space:pre-wrap}.structured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.structured-grid>div{border:1px solid var(--border);border-radius:12px;padding:10px;background:rgba(10,13,20,.25)}.structured-grid ul{margin:8px 0 0;padding-left:18px;color:var(--text-muted)}.turn-response{color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap}.full-results{display:flex;flex-direction:column;gap:8px;margin-top:12px}.full-result-line{display:grid;grid-template-columns:minmax(88px,.8fr) 72px minmax(0,2fr) auto;grid-gap:8px;gap:8px;align-items:start;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;background:rgba(10,13,20,.28)}.full-result-line[data-status=failed]{border-color:rgba(255,133,133,.55)}.full-result-line span{color:var(--text);font-weight:700}.full-result-line code{color:var(--accent);font-size:11px}.full-result-line[data-status=blocked] code,.full-result-line[data-status=failed] code{color:var(--danger)}.full-result-line p{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.bridge-result{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;background:var(--bg-elev-2)}.bridge-result[data-mode=blocked]{border-color:rgba(255,133,133,.5)}.bridge-result strong{color:var(--text)}.bridge-result p{margin:6px 0 0}.bridge-result dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:8px;gap:8px;margin:12px 0 0}.bridge-result dt{color:var(--text-subtle);font-size:11px}.bridge-result dd{margin:0;color:var(--text)}.missing-profiles{color:var(--danger);overflow-wrap:anywhere}.note-box strong{color:var(--text)}.note-box p{margin:6px 0 0}.footer{margin-top:auto;font-size:12px;color:var(--text-subtle);padding:32px 24px;text-align:center}.room-card{display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,rgba(122,162,255,.12),rgba(18,23,35,.72));border:1px solid var(--border-strong);border-radius:var(--radius);padding:18px}.room-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.room-header h3{margin:0;font-size:18px}.room-header p{margin:4px 0 0;color:var(--text-muted);font-size:13px}.room-shell{position:relative;min-height:360px;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(circle at center,#202947 0,#111827 48%,#090c14 100%);perspective:900px}.room-floor{inset:12% 8% 6%;background:repeating-radial-gradient(ellipse at center,rgba(122,162,255,.16) 0 2px,transparent 2px 18px);transform:rotateX(62deg);transform-origin:center;opacity:.9}.room-floor,.room-table{position:absolute;border-radius:50%}.room-table{left:50%;top:50%;width:210px;height:96px;transform:translate(-50%,-50%) rotateX(58deg);display:grid;place-items:center;font-size:12px;font-weight:700;letter-spacing:.04em;background:linear-gradient(135deg,rgba(122,162,255,.42),rgba(43,58,102,.72));border:1px solid rgba(234,238,247,.28);box-shadow:0 22px 48px rgba(0,0,0,.45)}.room-seat,.room-table{color:var(--text-muted)}.room-seat{position:absolute;width:112px;min-height:92px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.seat-avatar{width:42px;height:54px;border-radius:22px 22px 14px 14px;background:linear-gradient(180deg,#dce6ff,var(--accent) 42%,var(--accent-soft));border:1px solid rgba(255,255,255,.42);box-shadow:0 14px 24px rgba(0,0,0,.32)}.room-seat.is-speaking .seat-avatar{box-shadow:0 0 0 5px rgba(122,162,255,.18),0 0 34px rgba(122,162,255,.86);animation:speaking-pulse 1.25s ease-in-out infinite}.room-seat.is-done .seat-avatar{box-shadow:0 0 0 4px rgba(122,162,255,.14),0 0 22px rgba(122,162,255,.46)}.room-seat.is-thinking .seat-avatar{box-shadow:0 0 0 5px rgba(122,162,255,.14),0 0 28px rgba(122,162,255,.62);animation:thinking-breathe 1.45s ease-in-out infinite}.room-seat.is-blocked .seat-avatar,.room-seat.is-failed .seat-avatar{background:linear-gradient(180deg,#ffdede,var(--danger) 44%,#4a1f2a);box-shadow:0 0 0 4px rgba(255,133,133,.16),0 0 24px rgba(255,133,133,.46)}.seat-label{color:var(--text);font-size:13px;font-weight:700}.seat-state{font-size:11px;color:var(--text-subtle)}.room-seat.is-speaking .seat-state{color:var(--accent);font-weight:700}.room-seat.is-blocked .seat-state,.room-seat.is-failed .seat-state{color:var(--danger);font-weight:700}.room-seat.is-done .seat-state,.room-seat.is-thinking .seat-state{color:var(--accent);font-weight:700}.text-room{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px}.text-room h4{margin:0;font-size:16px}.text-room p{margin:6px 0 14px;color:var(--text-muted);font-size:13px}.text-room ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.text-room li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-muted)}.text-room li.is-speaking{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.text-room li.is-thinking{border-color:rgba(122,162,255,.58);color:var(--text);background:rgba(122,162,255,.08)}.text-room li.is-blocked,.text-room li.is-failed{border-color:rgba(255,133,133,.55);color:var(--text);background:rgba(255,133,133,.08)}@keyframes speaking-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes thinking-breathe{0%,to{transform:scale(1);opacity:.86}50%{transform:scale(1.05);opacity:1}}@media (max-width:640px){.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;justify-content:flex-start}.auth-panel{width:100%;min-width:0}.auth-panel[data-state=signed-in]{grid-template-columns:1fr}.hero h1{font-size:32px}.card{padding:20px}.page{padding:32px 16px 64px}}