@import "/css/emersen-tokens.css";*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--surface);color:var(--text);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-body);font-feature-settings:"ss01","ss02";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.025;pointer-events:none;z-index:9999}.display,h1,h2,h3{font-family:var(--font-display);font-weight:var(--w-regular);line-height:var(--lh-heading);letter-spacing:var(--ls-display);color:var(--text);text-wrap:balance;margin:0}.display em,h1 em,h2 em,h3 em{font-family:var(--font-accent);font-style:italic;font-weight:var(--w-medium);color:var(--emphasis)}p{margin:0;line-height:var(--lh-body);color:var(--text-secondary);font-weight:var(--w-light)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-size:var(--t-eyebrow);font-style:italic;font-weight:var(--w-regular);letter-spacing:.02em;color:var(--muted)}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor;opacity:.6;display:block}.meta-label{font-family:var(--font-body);font-size:var(--t-eyebrow);font-weight:var(--w-medium);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--muted)}.wordmark{font-family:var(--font-display);font-weight:var(--w-regular);font-style:normal;text-transform:lowercase;letter-spacing:var(--ls-display);line-height:1;color:var(--ink)}.lede{font-size:var(--t-body-lg);line-height:var(--lh-prose);color:var(--text-secondary);font-weight:var(--w-light);max-width:56ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--t-body-sm);font-weight:var(--w-medium);padding:12px 24px;border-radius:var(--radius-xs);border:none;cursor:pointer;text-decoration:none;letter-spacing:var(--ls-button);transition:all var(--t-base) var(--ease)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--ink);color:var(--cream)}.btn-primary:hover:not(:disabled){background:var(--clay)}.btn-outline{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}.btn-outline:hover:not(:disabled){background:var(--ink);color:var(--cream)}.btn-ghost{background:transparent;border:1px solid var(--rule);color:var(--text-secondary);padding:8px 16px;font-size:var(--t-caption)}.btn-ghost:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.participant-page{min-height:100vh;display:flex;flex-direction:column}.page-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-7) var(--space-8);border-bottom:1px solid var(--rule)}@media (max-width:720px){.page-head{padding:var(--space-6) var(--space-6)}}.page-head .brand{display:flex;align-items:flex-start;gap:var(--space-3)}.page-head .brand .mark{width:28px;height:28px;color:var(--ink);flex-shrink:0;margin-top:2px}.page-head .brand-text{display:flex;flex-direction:column;gap:2px;line-height:1}.page-head .brand .wordmark{font-size:22px}.page-head .tagline{font-family:var(--font-body);font-size:11px;font-style:italic;font-weight:var(--w-light);color:var(--muted);letter-spacing:.02em;line-height:1.3}.page-body{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--space-10) var(--space-8)}@media (max-width:720px){.page-body{padding:var(--space-9) var(--space-6)}}.editorial-block{max-width:640px;display:flex;flex-direction:column;gap:var(--space-6)}.editorial-block h1{font-size:var(--t-display-md);margin-top:var(--space-1)}.editorial-block .actions{margin-top:var(--space-5)}.state-message{gap:var(--space-3);color:var(--text-muted);font-size:var(--t-body)}.starting-block,.state-message{display:flex;flex-direction:column;align-items:center}.starting-block{justify-content:center;gap:var(--space-5);min-height:50vh}.starting-orb{width:clamp(140px,22vw,200px);height:clamp(140px,22vw,200px);animation:starting-breathe 2.4s ease-in-out infinite}.preparing-pebble{width:100%;height:100%;display:block}.starting-caption{font-size:var(--t-body-lg);font-style:italic;color:var(--text-muted);letter-spacing:.005em;margin:0;text-align:center}@keyframes starting-breathe{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}.shell{max-width:720px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:var(--space-7) var(--space-6) 0}@media (max-width:720px){.shell{padding:var(--space-6) var(--space-5) 0}}.shell-head{justify-content:space-between;padding-bottom:var(--space-6);border-bottom:1px solid var(--rule);gap:var(--space-5)}.shell-head,.shell-head .brand{display:flex;align-items:center}.shell-head .brand{gap:var(--space-3);font-family:var(--font-display);font-size:18px;color:var(--ink)}.shell-head .brand .mark{width:26px;height:26px;color:var(--ink);flex-shrink:0}.mode-toggle{background:var(--paper);border:1px solid var(--rule);padding:3px;gap:2px}.mode-chip,.mode-toggle{display:inline-flex;border-radius:var(--radius-pill)}.mode-chip{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:12.5px;font-weight:var(--w-medium);padding:6px 14px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);letter-spacing:.02em}.mode-chip svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.mode-chip.active{background:var(--ink);color:var(--cream)}.mode-chip:hover:not(.active){color:var(--ink)}.audio-status{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;padding:6px 14px;border-radius:var(--radius-pill);background:var(--cream-2);border:1px solid var(--rule);font-size:var(--t-caption);color:var(--text-secondary);cursor:pointer;font-family:var(--font-body)}.audio-status svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.5}.audio-status:hover{border-color:var(--ink);color:var(--ink)}.convo{flex:1 1;padding:var(--space-8) 0 var(--space-6);gap:var(--space-5)}.convo,.turn{display:flex;flex-direction:column}.turn{max-width:88%}.turn.ai{align-self:flex-start}.turn.h{align-self:flex-end}.turn .who{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.turn.h .who{text-align:right}.turn .bubble{padding:14px 18px;font-size:15.5px;line-height:1.6;font-family:var(--font-body);white-space:pre-wrap}.turn.ai .bubble{background:#ffffff;color:var(--ink);border-radius:4px var(--radius-lg) var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-sm)}.turn.h .bubble{background:var(--ink);color:var(--cream);border-radius:var(--radius-lg) 4px var(--radius-lg) var(--radius-lg)}.typing{display:flex;gap:4px;padding:14px 16px;background:#ffffff;border-radius:4px var(--radius-lg) var(--radius-lg) var(--radius-lg);width:-moz-fit-content;width:fit-content;box-shadow:var(--shadow-sm)}.typing i{width:7px;height:7px;border-radius:50%;background:var(--rule);display:block;animation:typing-bounce 1.4s infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.composer{position:-webkit-sticky;position:sticky;bottom:0;background:linear-gradient(transparent,var(--surface) 30%);padding:var(--space-7) 0 var(--space-7)}.text-composer{display:flex;align-items:center;gap:var(--space-3);background:#ffffff;border:1px solid var(--rule);border-radius:var(--radius-lg);padding:6px 6px 6px 18px;box-shadow:var(--shadow-md)}.text-composer textarea{flex:1 1;border:0;outline:0;font-family:var(--font-body);font-size:15px;line-height:1.5;padding:10px 0;background:transparent;color:var(--ink);resize:none;max-height:160px;min-height:24px;overflow-y:auto}.text-composer textarea::placeholder{color:var(--muted)}.text-composer textarea:disabled{color:var(--muted);cursor:not-allowed}.send-btn{width:36px;height:36px;border-radius:50%;background:var(--clay);border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--t-fast) var(--ease);flex-shrink:0}.send-btn:hover:not(:disabled){background:var(--ink)}.send-btn:disabled{background:var(--rule);cursor:not-allowed}.send-btn svg{width:14px;height:14px;stroke:#ffffff;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.voice-composer{display:flex;flex-direction:column}.mic-btn,.voice-composer{align-items:center;gap:var(--space-3)}.mic-btn{display:inline-flex;padding:14px 28px;border-radius:var(--radius-pill);border:0;font-family:var(--font-body);font-size:var(--t-body);font-weight:var(--w-medium);letter-spacing:var(--ls-button);cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);min-width:240px;justify-content:center}.mic-btn:disabled{cursor:not-allowed;opacity:.55}.mic-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.mic-idle{background:var(--ink);color:var(--cream)}.mic-idle:hover:not(:disabled){background:var(--clay)}.mic-recording{background:var(--rust);color:var(--cream)}.mic-recording .rec-dot{width:10px;height:10px;border-radius:50%;background:var(--cream);animation:pulse 1.2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.mic-transcribing{background:var(--stone);color:var(--cream)}.voice-status{font-size:var(--t-caption);color:var(--text-muted);min-height:1.2em;text-align:center}.voice-status.recording{color:var(--rust)}.voice-error{margin-top:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--cream-2);border:1px solid var(--rule);color:var(--rust);max-width:380px}.composer-meta,.voice-error{font-size:var(--t-caption);text-align:center}.composer-meta{color:var(--text-muted);margin-top:var(--space-3)}.composer-meta strong{color:var(--clay);font-weight:var(--w-medium)}.voice-stage{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2) 0 var(--space-2);gap:var(--space-3);--orb-amp:0;min-height:0}.voice-stage.compact{flex:none;padding:var(--space-2) 0 var(--space-1);gap:var(--space-2)}.voice-orb-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:min(60vw,48vh,480px);height:min(60vw,48vh,480px);min-width:220px;min-height:220px;transition:width var(--t-slow) var(--ease),height var(--t-slow) var(--ease)}.voice-stage.compact .voice-orb-wrap{width:min(32vw,30vh,300px);height:min(32vw,30vh,300px);min-width:180px;min-height:180px}.voice-orb-ring{position:absolute;inset:0;border-radius:50%;background:radial-gradient(closest-side,rgba(79,122,46,.18),rgba(79,122,46,0) 70%);opacity:0;transform:scale(.85);transition:opacity var(--t-base) var(--ease);pointer-events:none}.voice-stage.idle .voice-orb-ring{opacity:.35;animation:ring-breath 5s ease-in-out infinite}.voice-stage.listening .voice-orb-ring{opacity:.55;animation:ring-listen 1.6s ease-in-out infinite}.voice-stage.speaking .voice-orb-ring{opacity:.8;animation:ring-speak 2.4s ease-in-out infinite}.voice-orb-svg{position:relative;width:100%;height:100%;color:var(--clay);transform-origin:center;transform:scale(calc(.92 + var(--orb-amp) * .18));transition:transform 60ms linear,color var(--t-base) var(--ease)}.voice-stage.idle .voice-orb-pebble{fill:var(--clay);fill-opacity:.38;transition:fill-opacity var(--t-slow) var(--ease)}.voice-stage.listening .voice-orb-pebble{fill:var(--clay);fill-opacity:.7}.voice-stage.speaking .voice-orb-pebble{fill:var(--clay);fill-opacity:.88}.voice-stage.thinking .voice-orb-pebble{fill:var(--clay);fill-opacity:.55}.voice-orb-line{fill:none;stroke:var(--cream);stroke-linecap:round;stroke-linejoin:round;transition:stroke-width var(--t-base) var(--ease),stroke-opacity var(--t-base) var(--ease)}.voice-stage.idle .voice-orb-line{stroke-width:1.8;stroke-opacity:.85}.voice-stage.listening .voice-orb-line{stroke-width:2.1;stroke-opacity:.95}.voice-stage.speaking .voice-orb-line{stroke-width:2.4;stroke-opacity:1}.voice-stage.thinking .voice-orb-line{stroke-width:1.6;stroke-opacity:.7}@keyframes ring-breath{0%,to{transform:scale(.85)}50%{transform:scale(.96)}}@keyframes ring-listen{0%,to{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:.75}}@keyframes ring-speak{0%{transform:scale(.88);opacity:.8}50%{transform:scale(1.18);opacity:.5}to{transform:scale(1.32);opacity:0}}.voice-mic{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:16px 28px;border-radius:var(--radius-pill);border:0;font-family:var(--font-body);font-size:var(--t-body);font-weight:var(--w-medium);letter-spacing:var(--ls-button);cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);min-width:220px;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.voice-mic:disabled{cursor:not-allowed;opacity:.55}.voice-mic svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.voice-mic.idle{background:var(--ink);color:var(--cream)}.voice-mic.idle:hover:not(:disabled){background:var(--clay)}.voice-mic.recording{background:var(--rust);color:var(--cream)}.voice-mic.recording .rec-dot{width:10px;height:10px;border-radius:50%;background:var(--cream);animation:pulse 1.2s infinite}.voice-mic.transcribing{background:var(--stone);color:var(--cream)}.voice-helptext{font-size:var(--t-caption);color:var(--text-muted);text-align:center;min-height:1.2em}.voice-helptext.recording{color:var(--rust)}.voice-show-toggle{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:4px 8px;font-family:var(--font-body);font-size:var(--t-caption);font-style:italic;color:var(--text-muted);cursor:pointer;letter-spacing:.02em;text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);transition:color var(--t-fast) var(--ease),-webkit-text-decoration-color var(--t-fast) var(--ease);transition:color var(--t-fast) var(--ease),text-decoration-color var(--t-fast) var(--ease);transition:color var(--t-fast) var(--ease),text-decoration-color var(--t-fast) var(--ease),-webkit-text-decoration-color var(--t-fast) var(--ease)}.voice-show-toggle:hover{color:var(--ink);-webkit-text-decoration-color:var(--clay);text-decoration-color:var(--clay)}.convo-drawer{width:100%;display:flex;flex-direction:column;gap:var(--space-4);border-top:1px solid var(--rule);padding-top:var(--space-5);margin-top:var(--space-4)}.convo-drawer .convo{padding:0;flex:none;max-height:40vh;overflow-y:auto}.voice-unavailable{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--rule);background:var(--cream-2);border-radius:var(--radius-lg);max-width:380px;text-align:center}.voice-unavailable .voice-unavailable-msg{font-family:var(--font-body);font-size:var(--t-body);color:var(--ink)}.voice-unavailable .voice-unavailable-detail{font-size:var(--t-caption);color:var(--rust);margin-top:-8px}.voice-resume-hint{font-size:var(--t-caption);color:var(--text-muted);text-align:center;font-style:italic;opacity:0;transition:opacity .48s var(--ease);pointer-events:none;min-height:1.2em;margin:0 auto}.voice-resume-hint.visible{opacity:.85}.voice-stage-thinking{font-size:var(--t-body);color:var(--text-muted);text-align:center;font-style:italic;opacity:0;transition:opacity .32s var(--ease);pointer-events:none;min-height:1.4em;margin-top:var(--space-3);letter-spacing:.01em}.voice-stage-thinking.visible{opacity:.95}.keyboard-hint{font-size:var(--t-caption);color:var(--text-muted);text-align:center;font-style:italic;opacity:.7;margin-top:var(--space-2);letter-spacing:.01em}.keyboard-hint kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal;font-size:.9em;padding:1px 5px;background:var(--cream-2);border:1px solid var(--rule);border-radius:3px;color:var(--ink);margin:0 1px}.keyboard-hint.composer-hint{margin-top:var(--space-1);text-align:left;padding-left:var(--space-2)}.text-composer-wrap{width:100%}.progress-bar,.text-composer-wrap{display:flex;flex-direction:column}.progress-bar{align-items:stretch;gap:var(--space-1);padding:0 var(--space-4);margin-top:var(--space-1)}.progress-bar-track{display:flex;gap:2px;width:100%}.progress-bar-segment{flex:1 1;height:4px;background:var(--rule);border-radius:2px;transition:background-color var(--t-base) var(--ease)}.progress-bar-segment.current{background:var(--clay)}.progress-bar-label{font-size:var(--t-caption);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;text-align:center;font-style:normal}:root{--section-bg-1:#FAF6EC;--section-bg-2:#F8F2E8;--section-bg-3:#F5EFE4;--section-bg-4:#F1EBDC;--section-bg-5:#EDE5D4}body[data-section]{transition:background-color 1.2s var(--ease)}body[data-section="1"]{background-color:var(--section-bg-1)}body[data-section="2"]{background-color:var(--section-bg-2)}body[data-section="3"]{background-color:var(--section-bg-3)}body[data-section="4"]{background-color:var(--section-bg-4)}body[data-section="5"]{background-color:var(--section-bg-5)}.voice-audio-dropped{font-size:var(--t-caption);color:var(--text-muted);text-align:center;font-style:italic}.voice-audio-dropped button{background:none;border:0;color:var(--clay);padding:0;font:inherit;font-style:italic;cursor:pointer;text-decoration:underline;text-underline-offset:3px}