:root{--bg:#f8fafc;--fg:#0f172a;--muted:#64748b;--accent:#2563eb;--accent-fg:#fff;--border:#cbd5e1;--error:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f172a;--fg:#e2e8f0;--muted:#94a3b8;--accent:#3b82f6;--border:#334155;--error:#f87171}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%;margin:0}.center{min-height:100dvh;padding:1rem max(1rem, env(safe-area-inset-left));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}h1{margin:0;font-size:2rem}.muted{color:var(--muted);margin:0 0 1rem}.login{text-align:start;flex-direction:column;gap:.5rem;width:min(100%,20rem);display:flex}input{border:1px solid var(--border);color:inherit;background:0 0;border-radius:.5rem;padding:.75rem;font-size:1rem}button{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:0;border-radius:.5rem;padding:.75rem 1rem;font-size:1rem}button:disabled{opacity:.5;cursor:default}button.secondary{color:var(--fg);border:1px solid var(--border);background:0 0}.error{color:var(--error);margin:0}select{border:1px solid var(--border);background:var(--bg);color:inherit;border-radius:.5rem;padding:.75rem;font-size:1rem}.hint{color:var(--muted);margin:0;font-size:.875rem}:root{--surface:#fff;--live:#16a34a;--speaking:#f59e0b}@media (prefers-color-scheme:dark){:root{--surface:#1e293b;--live:#22c55e}}.room{height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex}.room-header{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.spacer{flex:1}.badge{background:var(--speaking);color:#000;border-radius:999px;padding:.125rem .5rem;font-size:.75rem}button.icon,button.small{padding:.375rem .625rem;font-size:.875rem}button.icon{color:var(--fg);border:1px solid var(--border);background:0 0}.participants{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.375rem;margin:0;padding:.5rem 1rem;list-style:none;display:flex}.participants li{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.875rem;display:flex}.participants li.self{font-weight:600}.participants li.speaking{border-color:var(--speaking)}.participants li.away{opacity:.5}.participants small,.speaker small{color:var(--muted)}.dot{background:var(--speaking);border-radius:50%;width:.5rem;height:.5rem;animation:1s infinite pulse}.feed{font-size:var(--feed-size,18px);-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:.75rem;padding:.75rem 1rem;display:flex;overflow-y:auto}.feed-empty{text-align:center;margin:auto}.utterance .speaker{margin-bottom:.125rem;font-size:.75em;font-weight:600}.utterance p{text-align:start;margin:0}.utterance .original{color:var(--muted);margin-top:.125rem;font-size:.75em}.partial{color:var(--muted)}.stopped{color:var(--error);font-size:.75em}.room-footer{padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:.5rem;display:flex}.notice{color:var(--muted);text-align:center;margin:0;font-size:.875rem}.talk-note{color:var(--muted);text-align:center;margin:0}.talk{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:999px;width:min(100%,22rem);min-height:4.5rem;font-size:1.125rem;font-weight:600;transition:background-color .15s}button.talk-requesting,button.talk-granted{background:var(--muted)}button.talk-live{background:var(--live);animation:1.2s infinite pulse}.talk-open{border:2px dashed var(--border);color:var(--muted);background:0 0;justify-content:center;align-items:center;display:flex}.talk-open.talk-live{border:2px solid var(--live);background:var(--live);color:var(--accent-fg)}button.link{color:inherit;font-size:inherit;background:0 0;padding:0;text-decoration:underline}.field-label{font-size:inherit}.voice-row{gap:.5rem;display:flex}.voice-select{flex:1;min-width:0;position:relative}.voice-select-button{border:1px solid var(--border);background:var(--bg);width:100%;color:inherit;text-align:start;border-radius:.5rem;align-items:center;gap:.5rem;padding:.75rem;font-size:1rem;display:flex}.voice-select-button span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.voice-select .chevron{fill:none;stroke:var(--muted);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}.voice-select ul{z-index:10;border:1px solid var(--border);background:var(--bg);border-radius:.5rem;outline:none;max-height:16rem;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000002e}.voice-select.up ul{top:auto;bottom:calc(100% + .25rem)}.voice-select li{cursor:pointer;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem .625rem;display:flex}.voice-select li.active{background:color-mix(in srgb, var(--accent) 12%, transparent)}.voice-select li[aria-selected=true]{color:var(--accent);font-weight:600}.gender-icon{fill:var(--muted);flex:none}.voice-select li[aria-selected=true] .gender-icon{fill:var(--accent)}.room-voice{width:min(100%,18rem);color:var(--muted);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.room-voice .voice-select-button{color:var(--fg);padding:.375rem .625rem;font-size:.875rem}.toggles{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:.25rem 1rem;font-size:.875rem;display:flex}.toggles label{align-items:center;gap:.375rem;display:inline-flex}.lock-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;margin-inline-start:.25rem}.language-select{max-width:9rem;padding:.25rem .5rem;font-size:.875rem}.volume{color:var(--muted);align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.volume input{width:8rem;accent-color:var(--accent)}.volume-value{text-align:end;font-variant-numeric:tabular-nums;min-width:2.75rem}.segmented{border:1px solid var(--border);border-radius:999px;display:inline-flex;overflow:hidden}.segmented button{color:var(--muted);background:0 0;border-radius:0;padding:.375rem .875rem;font-size:.875rem}.segmented button[aria-pressed=true]{background:var(--accent);color:var(--accent-fg)}.overlay{background:color-mix(in srgb, var(--bg) 92%, transparent);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1rem;display:flex;position:fixed;inset:0}@keyframes pulse{50%{opacity:.7}}.tagline{text-align:center;max-width:24rem}.app-banner{border:1px solid var(--border);max-width:22rem;color:var(--muted);text-align:center;border-radius:.75rem;margin-top:1.5rem;padding:.75rem 1rem;font-size:.875rem}.ui-language{color:var(--muted);align-items:center;gap:.5rem;margin-top:1rem;font-size:.875rem;display:inline-flex}.ui-language select{padding:.25rem .5rem;font-size:.875rem}.route-icon{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px;opacity:.7;margin-inline-start:.3rem}
