.nebulaBg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.nebulaBase{position:absolute;inset:0;background:radial-gradient(1200px 700px at 50% 45%,#2d5a8729,#05051000 55%),radial-gradient(900px 500px at 45% 55%,#8b4a6b1f,#05051000 55%),radial-gradient(1200px 900px at 55% 35%,#4a1a5c24,#05051000 60%),radial-gradient(ellipse at center,#0a0a1a,#050510 65%,#020208)}.nebulaFog{position:absolute;inset:-25%;background:radial-gradient(700px 480px at 30% 40%,#2d5a8738,#2d5a8700 60%),radial-gradient(800px 520px at 70% 60%,#8b4a6b2e,#8b4a6b00 62%),radial-gradient(900px 600px at 55% 30%,#4a1a5c29,#4a1a5c00 60%);filter:blur(36px);transform:translateZ(0);animation:nebulaFogDrift 18s ease-in-out infinite;mix-blend-mode:screen;opacity:.22}.nebulaNoise{position:absolute;inset:0;background-repeat:repeat;background-size:160px 160px;opacity:.08;mix-blend-mode:soft-light;transform:translateZ(0);animation:nebulaNoiseDrift 22s linear infinite}.nebulaVignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 30%,rgba(5,5,16,.35) 60%,rgba(2,2,8,.88) 100%)}@keyframes nebulaFogDrift{0%{transform:translate3d(-2%,-1.5%,0) scale(1.02)}50%{transform:translate3d(2%,1.5%,0) scale(1.04)}to{transform:translate3d(-2%,-1.5%,0) scale(1.02)}}@keyframes nebulaNoiseDrift{0%{background-position:0 0}to{background-position:220px 160px}}.call-button-container{display:flex;flex-direction:column;align-items:center;gap:20px}.call-button{position:relative;width:110px;height:110px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,#4a1a5c,#2d5a87,#8b4a6b);box-shadow:0 4px 20px #4a1a5c66,0 0 40px rgba(45,90,135,calc(var(--glow-intensity, 0) * .5)),inset 0 1px #ffffff1a;transition:transform .2s ease,box-shadow .3s ease;transform:scale(var(--pulse-scale, 1));overflow:visible;-webkit-tap-highlight-color:transparent}.call-button.idle{animation:idle-pulse 3s ease-in-out infinite}.call-button:hover:not(:disabled){transform:scale(calc(var(--pulse-scale, 1) * 1.05));box-shadow:0 6px 30px #4a1a5c80,0 0 60px #2d5a874d,inset 0 1px #ffffff26}.call-button:active:not(:disabled){transform:scale(calc(var(--pulse-scale, 1) * .95))}.call-button:disabled{cursor:not-allowed;opacity:.7}.call-button.connecting{animation:pulse 1.5s ease-in-out infinite}.call-button.active{background:linear-gradient(135deg,#8b4a6b,#4a1a5c,#2d5a87);box-shadow:0 4px 20px #8b4a6b80,0 0 60px rgba(139,74,107,calc(var(--glow-intensity, 0) * .8)),inset 0 1px #ffffff1a;animation:none}.call-button-inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.call-button-inner svg{width:44px;height:44px;color:#f8f9fa;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.call-button-ring{position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(139,74,107,.6);pointer-events:none;transition:transform .1s ease,opacity .1s ease}.call-hint{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;font-weight:500;color:#f8f9fae6;text-align:center;max-width:280px;line-height:1.4;animation:hint-fade 2s ease-in-out infinite;text-shadow:0 2px 10px rgba(0,0,0,.5)}.call-hint.reconnecting{color:#ffc107e6;animation:none}@keyframes hint-fade{0%,to{opacity:.7}50%{opacity:1}}@keyframes idle-pulse{0%,to{box-shadow:0 4px 20px #4a1a5c66,0 0 30px #2d5a8726;transform:scale(1)}50%{box-shadow:0 4px 30px #4a1a5c99,0 0 50px #2d5a874d;transform:scale(1.03)}}@keyframes pulse{0%,to{box-shadow:0 4px 20px #4a1a5c66,0 0 40px #2d5a8733}50%{box-shadow:0 4px 30px #4a1a5c99,0 0 60px #2d5a8766}}@media(max-width:768px){.call-button{width:100px;height:100px}.call-button-inner svg{width:40px;height:40px}.call-hint{font-size:15px;max-width:250px}}@media(max-height:600px){.call-button{width:90px;height:90px}.call-button-inner svg{width:36px;height:36px}.call-hint{font-size:14px}}@media(hover:none){.call-button:hover:not(:disabled){transform:scale(var(--pulse-scale, 1))}}.status-indicator{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#0a0a1acc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:30px;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0000004d;min-width:180px}.status-dot{position:relative;width:12px;height:12px;border-radius:50%;background:#6c757d;transition:background .3s ease,box-shadow .3s ease}.status-text{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;font-weight:500;color:#f8f9fa;letter-spacing:.02em;white-space:nowrap}.status-disconnected .status-dot{background:#6c757d}.status-connected.listening .status-dot{background:#4caf50;box-shadow:0 0 12px #4caf5099;animation:pulse-dot 2s ease-in-out infinite}.status-connected.speaking .status-dot{background:#00bcd4;box-shadow:0 0 15px #00bcd4b3;animation:speaking-dot .5s ease-in-out infinite}.status-connecting .status-dot{background:#ffc107;box-shadow:0 0 10px #ffc10799;animation:blink 1s ease-in-out infinite}.status-error .status-dot{background:#f44336;box-shadow:0 0 10px #f4433699}.status-error .status-text{color:#ff8a80}.audio-level{width:60px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-left:8px}.audio-level-bar{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a,#cddc39);border-radius:2px;transition:width .05s ease}.speaking-indicator{display:flex;align-items:center;gap:3px;margin-left:8px;height:16px}.speaking-wave{width:3px;height:100%;background:linear-gradient(180deg,#00bcd4,#8b4a6b);border-radius:2px;animation:wave .6s ease-in-out infinite}.sound-waves{position:absolute;inset:-4px;display:flex;align-items:center;justify-content:center;gap:2px}.sound-waves span{width:2px;height:8px;background:#00bcd4cc;border-radius:1px;animation:sound-wave .4s ease-in-out infinite}.sound-waves span:nth-child(1){animation-delay:0ms;height:6px}.sound-waves span:nth-child(2){animation-delay:.1s;height:10px}.sound-waves span:nth-child(3){animation-delay:.2s;height:6px}@keyframes sound-wave{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1)}}@keyframes wave{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.9)}}@keyframes speaking-dot{0%,to{transform:scale(1);box-shadow:0 0 15px #00bcd4b3}50%{transform:scale(1.1);box-shadow:0 0 20px #00bcd4e6}}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}@media(max-width:768px){.status-indicator{padding:10px 16px;min-width:160px}.status-text{font-size:14px}.audio-level{width:50px}}.thank-you-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a0a1afa,#1a0a2efa,#0a0a1afa);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:fadeIn .5s ease-out}.thank-you-overlay.leaving{animation:fadeOut .5s ease-out forwards}.thank-you-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px;animation:scaleIn .6s ease-out}.thank-you-star{font-size:64px;color:#8b4a6b;margin-bottom:24px;animation:starPulse 2s ease-in-out infinite;text-shadow:0 0 20px rgba(139,74,107,.8),0 0 40px rgba(139,74,107,.5)}.thank-you-title{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:36px;font-weight:600;color:#f8f9fa;margin:0 0 16px;letter-spacing:-.02em;text-shadow:0 2px 20px rgba(0,0,0,.5)}.thank-you-subtitle{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:18px;font-weight:400;color:#f8f9fab3;margin:0 0 32px}.thank-you-button{background:#8b4a6b33;border:1px solid rgba(139,74,107,.4);color:#f8f9fa;padding:12px 24px;border-radius:99px;font-family:Inter,sans-serif;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.thank-you-button:hover{background:#8b4a6b66;transform:translateY(-2px);box-shadow:0 4px 12px #8b4a6b4d}.thank-you-button:active{transform:translateY(0)}.thank-you-brand{margin-top:10px}.thank-you-brand-name{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:#8b4a6bcc}.floating-stars{position:absolute;inset:0;pointer-events:none;overflow:hidden}.floating-stars span{position:absolute;font-size:24px;color:#8b4a6b66;left:var(--x);top:var(--y);animation:floatStar 3s ease-in-out infinite;animation-delay:var(--delay)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes starPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes floatStar{0%,to{transform:translateY(0) rotate(0);opacity:.4}50%{transform:translateY(-20px) rotate(180deg);opacity:.7}}@media(max-width:768px){.thank-you-star{font-size:48px}.thank-you-title{font-size:28px}.thank-you-subtitle{font-size:16px}}.idle-warning-overlay{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;background:#0a0a1af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .3s ease-out;cursor:pointer}.idle-warning-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px;max-width:400px;animation:slideUp .4s ease-out}.idle-warning-icon{width:64px;height:64px;margin-bottom:24px;color:#ffc107;animation:pulse 1.5s ease-in-out infinite}.idle-warning-icon svg{width:100%;height:100%}.idle-warning-title{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:28px;font-weight:600;color:#f8f9fa;margin:0 0 12px}.idle-warning-text{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;font-weight:400;color:#f8f9fab3;margin:0 0 32px;line-height:1.5}.idle-warning-countdown{margin-bottom:32px}.countdown-circle{position:relative;width:100px;height:100px}.countdown-circle svg{width:100%;height:100%;transform:rotate(-90deg)}.countdown-bg{fill:none;stroke:#ffffff1a;stroke-width:6}.countdown-progress{fill:none;stroke:#ffc107;stroke-width:6;stroke-linecap:round;transition:stroke-dasharray .3s ease}.countdown-number{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:32px;font-weight:600;color:#f8f9fa}.idle-warning-button{padding:14px 40px;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;font-weight:500;color:#0a0a1a;background:linear-gradient(135deg,#8b4a6b,#4a1a5c);border:none;border-radius:30px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 20px #8b4a6b66}.idle-warning-button:hover{transform:scale(1.05);box-shadow:0 6px 30px #8b4a6b80}.idle-warning-button:active{transform:scale(.98)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@media(max-width:768px){.idle-warning-content{padding:30px}.idle-warning-icon{width:56px;height:56px}.idle-warning-title{font-size:24px}.idle-warning-text{font-size:15px}.countdown-circle{width:80px;height:80px}.countdown-number{font-size:28px}}html,body,#root{width:100%;height:100%;overflow:hidden;background:#0a0a1a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{position:relative;width:100%;height:100%;overflow:hidden}.ui-overlay{position:fixed;inset:0;display:flex;flex-direction:column;pointer-events:none;z-index:10;padding:env(safe-area-inset-top,20px) env(safe-area-inset-right,20px) env(safe-area-inset-bottom,20px) env(safe-area-inset-left,20px)}.ui-overlay>*{pointer-events:auto}.app-header{display:flex;justify-content:center;padding-top:20px}.branding{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;pointer-events:none;padding-top:8vh}.branding+.app-footer{margin-top:auto}.brand-logo{max-width:240px;width:70%;height:auto;filter:drop-shadow(0 0 30px rgba(139,74,107,.4)) drop-shadow(0 0 60px rgba(45,90,135,.2))}.app-footer{display:flex;justify-content:center;padding-bottom:40px;margin-top:auto}.subtitles-container{margin-top:auto;margin-bottom:2vh;padding:0 24px;display:flex;justify-content:center;align-items:center;width:100%;min-height:60px;pointer-events:none;transition:opacity .3s ease;z-index:20}.subtitle-text{background:#0a0a1abf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fffffff2;padding:16px 24px;border-radius:24px;font-size:20px;font-weight:500;line-height:1.4;text-align:center;max-width:700px;box-shadow:0 8px 32px #0006;border:1px solid rgba(255,255,255,.1);text-shadow:0 1px 2px rgba(0,0,0,.5)}@media(max-width:768px){.brand-logo{max-width:220px}.app-footer{padding-bottom:30px}.app-header{padding-top:16px}}@media(max-height:600px){.brand-logo{max-width:180px}.app-footer{padding-bottom:20px}}@media(max-height:500px)and (orientation:landscape){.branding{display:none}.ui-overlay{flex-direction:row;align-items:center;justify-content:space-between}.app-header,.app-footer{padding:0}}:root{--color-bg: #0a0a1a;--color-violet: #4a1a5c;--color-cyan: #2d5a87;--color-pink: #8b4a6b;--color-white: #f8f9fa;color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--color-bg);color:var(--color-white);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}#root{width:100%;height:100%}body{overscroll-behavior:none}@supports (padding: max(0px)){body{padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom));padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}
