:root{--fg:#1c1c1e;--muted:#5f6368;--bg:#fafafa;--line:#d4d4d8;--accent:#1d4ed8}*{box-sizing:border-box}html{font-size:18px}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}main{max-width:38rem;margin:0 auto;padding:1.25rem 1rem 3rem}h1{font-size:1.4rem;margin:.25rem 0 .75rem}.muted{color:var(--muted);font-size:.9rem;margin:0}button{font:inherit;padding:.6rem 1.1rem;border-radius:.5rem;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;min-height:44px}button.secondary{background:transparent;color:var(--accent);margin-top:1rem}button:disabled{opacity:.5;cursor:default}.countdown{font-size:1.1rem;margin:.25rem 0 1rem}.countdown strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:1.5rem}.code{font-family:ui-monospace,Menlo,monospace;font-size:2rem;letter-spacing:.15em;padding:.75rem 1rem;background:#fff;border:1px solid var(--line);border-radius:.5rem;display:inline-block;-webkit-user-select:all;-moz-user-select:all;user-select:all}.messages{list-style:none;padding:0;margin:0 0 1rem}.msg{margin:.5rem 0;padding:.6rem .8rem;border-radius:.6rem;background:#fff;border:1px solid var(--line)}.msg-you{background:#eef2ff}.who{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.said{white-space:pre-wrap;overflow-wrap:anywhere}.composer{display:flex;gap:.5rem;align-items:flex-end}.composer textarea{flex:1 1;font:inherit;padding:.5rem .6rem;border:1px solid var(--line);border-radius:.5rem;resize:vertical}.voice-status{font-size:1.1rem}.confirm{margin-top:1rem;padding:.75rem;border:1px solid var(--line);border-radius:.5rem;background:#fff}[role=alert]{color:#b42318}