:root{--bg: #1b2430;--panel: #232e3d;--panel-raised: #2a3646;--text: #edeff2;--muted: #8b97a6;--accent: #4fd1c5;--accent-dim: rgba(79, 209, 197, .18);--warm: #e2725b;--warm-dim: rgba(226, 114, 91, .2)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif}.app{max-width:640px;margin:0 auto;padding:48px 24px 32px;display:flex;flex-direction:column;min-height:100vh}.app__header{text-align:center;margin-bottom:32px}.eyebrow{display:inline-block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600}h1{font-family:"Source Serif 4",serif;font-weight:600;font-size:32px;margin:8px 0 0}.stage{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 0 32px}.orb{position:relative;width:160px;height:160px;border-radius:50%;border:none;background:var(--panel-raised);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:Inter,sans-serif;font-size:14px;font-weight:600;transition:background .2s ease,transform .15s ease;-webkit-user-select:none;user-select:none}.orb:disabled{cursor:not-allowed;opacity:.5}.orb__core{z-index:2;text-align:center;padding:0 20px}.orb__ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid var(--accent-dim);opacity:0}.orb--listening{background:radial-gradient(circle at 50% 40%,var(--accent-dim),var(--panel-raised) 70%)}.orb--listening .orb__ring--1{opacity:1;animation:pulse 2s ease-out infinite}.orb--listening .orb__ring--2{opacity:1;animation:pulse 2s ease-out infinite 1s}.orb--thinking{background:var(--panel-raised);animation:spin-glow 1.4s linear infinite}.orb--speaking{background:radial-gradient(circle at 50% 40%,var(--warm-dim),var(--panel-raised) 70%)}.orb--speaking .orb__ring--1{opacity:1;border-color:var(--warm-dim);animation:pulse 1s ease-out infinite}.orb:active:not(:disabled){transform:scale(.96);background:radial-gradient(circle at 50% 40%,var(--warm-dim),var(--panel-raised) 70%)}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.45);opacity:0}}@keyframes spin-glow{0%,to{box-shadow:0 0 0 0 var(--accent-dim)}50%{box-shadow:0 0 0 8px var(--accent-dim)}}.status-label{color:var(--muted);font-size:14px;margin:0}.controls{display:flex;justify-content:center;margin-bottom:24px}.btn{border:none;border-radius:8px;padding:12px 28px;font-size:15px;font-weight:600;cursor:pointer;font-family:Inter,sans-serif}.btn--primary{background:var(--accent);color:#0c1720}.btn--ghost{background:transparent;color:var(--muted);border:1px solid var(--panel-raised)}.error{background:var(--warm-dim);color:var(--warm);border-radius:8px;padding:10px 16px;font-size:14px;text-align:center;margin-bottom:16px}.transcript{flex:1;background:var(--panel);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.transcript__empty{color:var(--muted);font-size:14px;text-align:center;margin-top:20px}.bubble{max-width:85%;padding:10px 16px;border-radius:12px}.bubble--interviewer{align-self:flex-start;background:var(--panel-raised);border-top-left-radius:2px}.bubble--you{align-self:flex-end;background:var(--accent-dim);border-top-right-radius:2px}.bubble__speaker{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px}.bubble p{margin:0;font-family:"Source Serif 4",serif;font-size:16px;line-height:1.5}
