:root{--bg: #f3f4f6;--surface: #ffffff;--ink: #15181d;--muted: #5b6472;--line: #d9dde3;--line-soft: #e5e7eb;--accent: #2b5fc7;--accent-soft: #dde8fb;--accent-ink: #1e3f85;--amber: #e0a018;--amber-ink: #8a4b06;--amber-soft: #fdecd2;--green: #1f9d5a;--green-ink: #155e3a;--green-soft: #dcf3e5;--grey: #9aa1ab;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sans: Inter, "Noto Sans SC", "Noto Sans JP", "PingFang SC", "Hiragino Sans", "Microsoft YaHei", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}pre{margin:0}.app{display:flex;flex-direction:column;min-height:100%}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.topbar .brand{display:flex;flex-direction:column;gap:2px;flex:1 1 320px;min-width:0}.topbar .eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--accent)}.topbar h1{margin:0;font-size:18px;line-height:24px}.topbar .sub{font-size:12px;color:var(--muted)}.player{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.btn{height:40px;padding:0 14px;border-radius:8px;border:1px solid #c9ced6;background:var(--surface);font-weight:500;font-size:14px;display:inline-flex;align-items:center;gap:6px}.btn:hover{background:#f8f9fb}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;min-width:96px;justify-content:center}.btn.primary:hover{background:#2554b3}.btn.small{height:32px;padding:0 10px;font-size:13px}.btn[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.seg{display:flex;gap:0}.seg .btn{border-radius:0;margin-left:-1px}.seg .btn:first-child{border-radius:8px 0 0 8px;margin-left:0}.seg .btn:last-child{border-radius:0 8px 8px 0}.clock{font-family:var(--mono);font-size:13px;color:var(--muted);min-width:120px}.clock b{color:var(--ink);font-weight:600}.scrub{width:220px;accent-color:var(--accent)}.body{display:flex;gap:14px;padding:14px 20px 20px;align-items:flex-start}.col-left{flex:0 0 300px;display:flex;flex-direction:column;gap:12px;position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto;padding-right:2px}.col-left[hidden]{display:none}.col-center{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:14px}.drawer-toggle{flex:0 0 auto}.drawer-backdrop{display:none}.brand-row{display:flex;align-items:center;gap:10px}.lang-switch{display:inline-flex;border:1px solid #c9ced6;border-radius:6px;overflow:hidden}.lang-switch button{height:22px;min-width:44px;padding:0 8px;border:0;background:var(--surface);font-size:11px;font-weight:600;color:var(--muted)}.lang-switch button+button{border-left:1px solid #c9ced6}.lang-switch button[aria-pressed=true]{background:var(--ink);color:#fff}.topbar .sub{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.drawer-toggle[aria-expanded=true]{background:var(--accent-soft);border-color:#b9cdf3;color:var(--accent-ink)}.col-center{container-type:inline-size}.stage-row{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,30%,420px);gap:14px;align-items:stretch}.stage-card{min-width:0}.side-slot{position:relative;min-height:360px}.side-card{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0}.side-card .transcript,.side-card .calllog{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px}.side-card .calllog{flex:1 1 0;min-height:0}.log-sec-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}.log-summary{border:1px dashed var(--line);border-radius:10px;padding:10px 12px;background:#fafbfc}.log-summary.ready{border-style:solid;border-color:#b9cdf3;background:#f3f7ff}.log-summary dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 10px;margin:0;font-size:13px;line-height:18px}.log-summary dt{color:var(--muted);font-size:12px}.log-summary dd{margin:0;overflow-wrap:anywhere}.log-full ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:18px}.log-full li{display:grid;grid-template-columns:44px max-content 1fr;gap:6px;align-items:baseline}.log-full li .time{font-family:var(--mono);font-size:11px;color:var(--muted)}.log-full li b{font-size:12px}@container (max-width: 760px){.calllog{max-height:460px}}.evlog{flex:1 1 0;min-height:0;max-height:none}.mode-switch .btn{height:40px}.mode-switch .btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}@container (max-width: 760px){.stage-row{grid-template-columns:minmax(0,1fr)}.side-slot{position:static;min-height:0}.side-card{position:static}.side-card .transcript,.side-card .evlog{flex:none;max-height:460px}}@media (max-width: 1100px){.col-left{position:fixed;z-index:40;left:0;top:0;bottom:0;max-height:none;width:min(320px,88vw);background:var(--bg);padding:14px;box-shadow:4px 0 24px #0000002e}.drawer-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#15181d59}}@media (max-width: 900px){.body{padding:12px 16px 16px}}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.card-head h2{margin:0;font-size:14px;font-weight:600}.card-head .hint{font-size:12px;color:var(--muted)}.scenarios{display:flex;flex-direction:column;gap:6px}.scenario{text-align:left;padding:8px 10px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface);display:flex;flex-direction:column;gap:2px}.scenario:hover{border-color:#c9ced6}.scenario[aria-pressed=true]{border-color:var(--accent);background:#f3f7ff}.scenario b{font-size:13px}.scenario span{font-size:12px;color:var(--muted)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:8px}.switch-row .lbl{display:flex;flex-direction:column;min-width:0}.switch-row .lbl b{font-size:13px;font-weight:500}.switch-row .lbl code{font-family:var(--mono);font-size:11px;color:var(--muted)}.toggle{height:36px;min-width:60px;padding:0 12px;border-radius:18px;border:1px solid #c9ced6;background:#fff;font-size:13px;font-weight:600}.toggle[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.enum-row{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:8px}.enum-row .lbl{font-size:13px;font-weight:500}.enum-row .lbl code{font-family:var(--mono);font-size:11px;color:var(--muted);font-weight:400;margin-left:6px}.enum-row .opts{display:flex;gap:6px}.enum-row .opts .btn{flex:1 1 0;height:36px;padding:0 6px;font-size:13px;justify-content:center}.staff-lbl{display:flex;align-items:center;justify-content:space-between;gap:8px}.staff-remove{width:28px;height:28px;border-radius:14px;border:1px solid #c9ced6;background:#fff;color:var(--muted);font-size:16px;line-height:1}.staff-remove:hover:not(:disabled){border-color:#d64545;color:#d64545}.staff-remove:disabled{opacity:.35;cursor:not-allowed}.add-staff{justify-content:center;border-style:dashed;color:var(--accent-ink)}.add-staff:not(:disabled):hover{background:var(--accent-soft)}.overlay-json{padding:10px 12px;border-radius:8px;background:var(--ink);color:#e6e9ee;font-family:var(--mono);font-size:11px;line-height:16px;white-space:pre-wrap;overflow-wrap:anywhere}.stage-wrap{overflow:hidden;position:relative}.stage{position:relative;transform-origin:0 0;background:#f8f9fb;border:1px solid var(--line-soft);border-radius:10px}.stage svg.links{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.stage .link{stroke:var(--accent);stroke-width:2;fill:none;stroke-dasharray:6 6;animation:dash 1s linear infinite}@keyframes dash{to{stroke-dashoffset:-12}}.actor{position:absolute;width:120px;height:90px;border:2px solid #c9ced6;border-radius:12px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--ink)}.actor .name{font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px}.actor .role{font-size:11px;color:var(--muted)}.actor .st{font-size:11px;font-weight:500}.actor .dot{width:10px;height:10px;border-radius:5px;display:inline-block}.actor.is-linked{border-color:var(--accent)}.actor.is-ring{animation:ring .6s infinite;border-color:var(--accent)}.actor.is-ai-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);animation:glow 1.2s infinite}.actor.is-system{border-style:dashed}.actor.is-system.is-linked{border-style:solid;background:#f3f7ff}.actor.is-dim{background:var(--bg);border-color:var(--line-soft);color:var(--muted)}@keyframes ring{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@keyframes glow{0%,to{box-shadow:0 0 #2b5fc766}50%{box-shadow:0 0 0 12px #2b5fc700}}.popup{position:absolute;padding:2px 10px;border-radius:10px;background:var(--accent);color:#fff;font-size:11px;font-weight:600;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.bubble{position:absolute;padding:7px 10px;border-radius:10px;background:#fff;border:1px solid #c9ced6;font-size:12px;line-height:16px;width:200px}.bubble.ai{background:var(--accent-soft);border-color:#b9cdf3;color:var(--accent-ink)}.bubble:before{content:"";position:absolute;width:10px;height:10px;background:inherit;border-left:1px solid;border-top:1px solid;border-color:inherit;transform:rotate(45deg)}.bubble.below:before{top:-6px;left:16px}.bubble.right:before{left:-6px;top:14px;transform:rotate(-45deg)}.bubble.left:before{right:-6px;top:14px;transform:rotate(135deg)}.bubble.above:before{bottom:-6px;left:16px;transform:rotate(225deg)}.note{position:absolute;padding:6px 10px;border-radius:8px;background:var(--ink);color:#fff;font-size:12px;line-height:16px;text-align:center}.prop{position:absolute;border:2px solid #c9ced6;border-radius:12px;background:#fff;padding:8px 10px;display:flex;flex-direction:column;gap:4px;overflow:hidden}.prop.is-linked{border-color:var(--accent)}.prop.is-wait{border-style:dashed;border-color:var(--accent)}.prop .title{font-size:11px;font-weight:600;color:var(--muted)}.prop .row{display:flex;flex-direction:column;gap:1px;padding:4px 6px;border-radius:6px;background:var(--bg);font-size:12px}.prop .row .meta{display:flex;justify-content:space-between;gap:6px}.prop .row .meta code{font-family:var(--mono);font-weight:500}.prop .row .meta span{color:var(--accent-ink);font-weight:500}.prop .row .txt{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prop .empty{font-size:12px;color:var(--muted)}.stage .legend{position:absolute;left:10px;bottom:8px;font-size:11px;color:var(--muted);font-family:var(--mono)}.flow-wrap{overflow-x:auto}.flow-node{font-size:12px;font-weight:500}.flow-node rect{fill:#fff;stroke:var(--line);stroke-width:1.5;rx:8}.flow-node.visited rect{fill:var(--accent-soft);stroke:#b9cdf3}.flow-node.visited text{fill:var(--accent-ink)}.flow-node.current rect{fill:var(--accent);stroke:var(--accent)}.flow-node.current text{fill:#fff}.flow-node.disabled rect{fill:var(--bg);stroke:var(--line-soft);stroke-dasharray:4 3}.flow-node.disabled text{fill:var(--muted);text-decoration:line-through}.flow-edge{stroke:#b4bac4;stroke-width:1.5;fill:none}.flow-edge.taken{stroke:var(--accent);stroke-width:2.5}.flow-edge-label{font-size:10px;fill:var(--muted);font-family:var(--mono)}.flow-edge-label.taken{fill:var(--accent-ink);font-weight:600}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line-soft);padding-bottom:8px}.tab{height:32px;padding:0 12px;border-radius:6px;border:1px solid transparent;background:transparent;font-weight:500;font-size:13px;color:var(--muted)}.tab[aria-selected=true]{background:var(--accent-soft);color:var(--accent-ink)}.transcript{display:flex;flex-direction:column;gap:6px;max-height:720px;overflow-y:auto;padding-right:4px}.t-row{display:grid;grid-template-columns:52px 1fr;gap:8px;align-items:start}.t-row .time{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:6px;text-align:right}.t-msg{display:flex;flex-direction:column;gap:3px}.t-msg .who{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.t-msg .who .avatar{width:20px;height:20px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}.t-msg .text{padding:8px 10px;border-radius:2px 10px 10px;background:var(--bg);font-size:13px;line-height:18px;width:fit-content;max-width:100%;border:1px solid transparent}.t-msg.ai .text{background:var(--accent-soft);color:var(--accent-ink)}.t-msg.agent .text{background:var(--amber-soft);color:#4a2e05}.t-msg.customer .text{background:#fff;border-color:#c9ced6}.t-row.current .text{border-color:var(--accent);box-shadow:0 0 0 2px #2b5fc726}.t-sys{grid-column:2;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);padding:2px 0}.t-sys .chip{flex:none;white-space:nowrap;padding:0 6px;border-radius:4px;font-family:var(--mono);font-size:10px;font-weight:600;line-height:16px}.t-sys .reason{color:#8a8f99}.t-empty{font-size:13px;color:var(--muted);padding:12px 0}.t-filter{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.t-filter input{accent-color:var(--accent)}.evlog{display:flex;flex-direction:column;gap:4px;max-height:720px;overflow-y:auto;padding-right:4px}.ev{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:6px 8px;border:1px solid var(--line-soft);border-radius:8px;background:#fff;text-align:left}.ev.future{background:#fafbfc;color:var(--muted);border-color:#eef0f3}.ev.current{border-color:var(--accent);background:#f3f7ff}.ev .t{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:2px}.ev .l1{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.ev .l2{font-family:var(--mono);font-size:12px;line-height:16px;overflow-wrap:anywhere;color:inherit}.chip{padding:0 6px;border-radius:4px;font-family:var(--mono);font-size:10px;font-weight:600;line-height:16px}.k-speak{background:var(--accent-soft);color:var(--accent-ink)}.k-state{background:var(--amber-soft);color:var(--amber-ink)}.k-link{background:#d5f0ee;color:#0f5c56}.k-signal{background:#ebe3fb;color:#4c2a8f}.k-record{background:var(--green-soft);color:var(--green-ink)}.k-decide{background:#e9ebee;color:#3d4553}@media (prefers-reduced-motion: reduce){.actor.is-ring,.actor.is-ai-on,.stage .link{animation:none}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15181d73;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{width:min(640px,100%);max-height:90vh;background:var(--surface);border-radius:14px;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--line-soft)}.modal-head .eyebrow{font-size:11px;color:var(--muted)}.modal-head .eyebrow code{font-family:var(--mono)}.modal-head h2{margin:2px 0 0;font-size:18px}.modal-body{padding:12px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-sec{display:flex;flex-direction:column;gap:8px}.sec-title{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.04em}.modal .hint,.switch-row .lbl .hint{font-size:12px;color:var(--muted)}.field{display:flex;flex-direction:column;gap:4px}.field-lbl{display:flex;align-items:center;gap:8px;font-size:12px}.field-lbl code{font-family:var(--mono);font-weight:600}.field-lbl em{font-style:normal;font-size:10px;padding:0 6px;border-radius:4px;background:var(--amber-soft);color:var(--amber-ink);font-weight:600}.field input,.field textarea,.field select{font:inherit;font-size:13px;padding:8px 10px;border:1px solid #c9ced6;border-radius:8px;background:#fff;color:var(--ink);width:100%}.field textarea{font-family:var(--mono);font-size:12px;line-height:16px;resize:vertical}.outlets{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.outlets li{display:flex;gap:10px;font-size:13px}.outlets code{font-family:var(--mono);min-width:110px;color:var(--accent-ink)}.error{padding:8px 10px;border-radius:8px;background:#fde8e8;color:#8a1c1c;font-size:13px}.modal-foot{display:flex;gap:8px;padding:12px 18px 16px;border-top:1px solid var(--line-soft)}.btn:disabled{opacity:.5;cursor:not-allowed}.room-bar .sub a{color:var(--accent-ink);text-decoration:none}.room-bar .sub a:hover{text-decoration:underline}.pill{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:14px;font-size:12px;font-weight:600;background:#e9ebee;color:#3d4553;white-space:nowrap}.pill-dot{width:8px;height:8px;border-radius:4px;background:currentColor}.pill.conn-open{background:var(--green-soft);color:var(--green-ink)}.pill.conn-connecting{background:#e9ebee;color:var(--muted)}.pill.conn-reconnecting,.pill.busy{background:var(--amber-soft);color:var(--amber-ink)}.role-body{display:flex;flex-direction:column;gap:14px;padding:14px 20px 24px;width:min(760px,100%);margin:0 auto}.notice{align-items:flex-start;gap:10px;font-size:13px;color:var(--muted)}.notice .btn{text-decoration:none}.form-card{gap:14px}.form-card .field-lbl{font-size:12px;font-weight:600;color:var(--muted)}.form-card .seg .btn{flex:1 1 0;justify-content:center}.form-card .btn.primary{align-self:flex-start}.form-card input{font:inherit;font-size:14px;padding:9px 12px;border:1px solid #c9ced6;border-radius:8px;background:#fff;width:100%}.lobby-sub{font-size:13px}.role-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;align-items:start}.role-card{gap:12px}.role-card .btn.primary,.role-card>.btn{align-self:flex-start}.name-input{font:inherit;font-size:14px;padding:9px 12px;border:1px solid #c9ced6;border-radius:8px;background:#fff;width:100%}.agent-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.agent-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:8px;flex-wrap:wrap}.agent-row .agent-name{display:flex;flex-direction:column;flex:1 1 120px;min-width:0}.agent-row .btn{margin-left:auto}.who{font-size:12px;color:var(--muted)}.dot{width:10px;height:10px;border-radius:5px;display:inline-block;flex:none;background:var(--grey)}.dot.on{background:var(--green)}.dot.off{background:var(--grey)}.takeover{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 100%;padding-top:6px;border-top:1px dashed var(--line-soft)}.hero{align-items:center;text-align:center;padding:28px 18px;gap:8px}.hero-icon svg{width:44px;height:44px;color:var(--muted)}.hero-status{font-size:26px;font-weight:700;line-height:1.2}.hero-hint{font-size:13px;color:var(--muted)}.hero-actions{display:flex;gap:10px;justify-content:center;margin-top:10px;flex-wrap:wrap}.call-btn{height:48px;min-width:150px;font-size:16px;justify-content:center;border-radius:24px}.btn.danger{background:#d64545;border-color:#d64545;color:#fff;font-weight:600}.btn.danger:hover:not(:disabled){background:#b93a3a}.hero.phase-ringing .hero-icon svg{color:var(--accent);animation:ring .6s infinite}.hero.phase-ai .hero-icon svg,.hero.phase-talking .hero-icon svg{color:var(--accent-ink)}.hero.phase-talking,.hero.phase-ai{background:#f3f7ff;border-color:#b9cdf3}.hero.phase-hold{background:#fafbfc;border-style:dashed}.hero.phase-ended{background:var(--green-soft);border-color:#b9e3c9}.hero .error{width:100%;text-align:left}.compact-transcript .transcript{max-height:360px}.agent-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.agent-me{display:inline-flex;align-items:center;gap:6px}.agent-me .who{margin-left:2px}.incoming{border-color:var(--accent);box-shadow:0 0 0 4px #2b5fc71f;animation:glow 1.2s infinite;gap:12px}.incoming-head{display:flex;align-items:center;gap:8px}.incoming-title{font-size:20px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.incoming-summary{border:1px solid #b9cdf3;border-radius:10px;background:#f3f7ff;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.incoming-text{font-size:15px;line-height:1.5;overflow-wrap:anywhere}.callcard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.callcard li{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--bg);font-size:13px}.callcard .meta{display:flex;justify-content:space-between;gap:8px;font-size:12px}.callcard .meta code{font-family:var(--mono);font-weight:600}.callcard .meta span{color:var(--accent-ink);font-weight:500}.callcard .txt{overflow-wrap:anywhere}.recent-calls{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px}.recent-calls li{display:flex;align-items:baseline;gap:10px;padding:6px 8px;border:1px solid var(--line-soft);border-radius:8px}.recent-calls .time{font-family:var(--mono);font-size:11px;color:var(--muted)}.recent-calls code{font-family:var(--mono);font-size:11px;color:var(--muted);margin-left:auto}.presence{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.presence li{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line-soft);border-radius:8px}.presence li.hint{border:0;padding:0}.presence b{font-weight:600}.live-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--muted)}.live-badge .live-dot{width:8px;height:8px;border-radius:4px;background:var(--grey)}.live-badge.on{color:#b42318}.live-badge.on .live-dot{background:#d92d20;animation:livepulse 1.2s infinite}@keyframes livepulse{0%,to{box-shadow:0 0 #d92d2073}50%{box-shadow:0 0 0 6px #d92d2000}}@media (prefers-reduced-motion: reduce){.live-badge.on .live-dot,.incoming,.hero.phase-ringing .hero-icon svg{animation:none}}.audio-row{margin-top:10px;display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.audio-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#4b5563;background:#f3f4f6;border-radius:999px;padding:3px 10px}.audio-pill .dot{width:8px;height:8px;border-radius:50%;background:#9aa1ab}.audio-pill.on .dot{background:#1f9d5a}.audio-pill.mid .dot{background:#e0a018}.audio-pill.off .dot{background:#d64545}.audio-pill .mic,.audio-pill .hear{color:#6b7280}.audio-pill .mic:before{content:"·";margin-right:6px}.btn.audio-start{margin-left:6px}.cust-note{font-size:12px;text-align:center}.pill.conn-closed{background:#fde8e8;color:#8a1c1c}.closed-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 20px 0;padding:10px 14px;border-radius:10px;background:#fde8e8;color:#8a1c1c;font-size:13px}.closed-bar .btn{margin-left:auto;text-decoration:none}
