:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.outgoing-call-page{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.outgoing-container{background:rgba(255,255,255,.95);padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:600px;width:100%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e1e5e9}.header h2{margin:0;font-size:28px;font-weight:700;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.close-btn{width:40px;height:40px;border:none;border-radius:50%;background:rgba(244,67,54,.1);color:#f44336;font-size:18px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:rgba(244,67,54,.2);transform:scale(1.1)}.call-form{margin-bottom:30px}.form-group input{width:100%;padding:15px 20px;border:2px solid #e1e5e9;border-radius:10px;font-size:16px;transition:all .3s ease;background:white;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.call-info{background:rgba(76,175,80,.1);padding:15px 20px;border-radius:10px;border:1px solid rgba(76,175,80,.3);margin-bottom:20px}.call-info p{margin:0;color:#2e7d32;font-size:14px}.status-display{background:rgba(33,150,243,.1);padding:15px 20px;border-radius:10px;border:1px solid rgba(33,150,243,.3);margin-bottom:20px}.status-display p{margin:0;color:#1976d2;font-size:14px;font-weight:500}.action-buttons{display:flex;gap:15px;margin-bottom:30px}.action-buttons button{flex:1;padding:15px 25px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.call-btn{background:linear-gradient(135deg,#4caf50 0%,#45a049 100%);color:#fff;box-shadow:0 4px 15px #4caf504d}.call-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4caf5066}.call-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.end-call-btn{background:linear-gradient(135deg,#f44336 0%,#d32f2f 100%);color:#fff;box-shadow:0 4px 15px #f443364d}.end-call-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f4433666}.cancel-btn{background:rgba(255,255,255,.2);color:#666;border:2px solid #e1e5e9}.cancel-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}.instructions{background:rgba(255,255,255,.1);padding:20px;border-radius:15px;border:1px solid rgba(255,255,255,.2)}@media (max-width: 768px){.outgoing-call-page{padding:10px}.outgoing-container{padding:30px 20px}.header h2{font-size:24px}.action-buttons{flex-direction:column}.action-buttons button{padding:12px 20px;font-size:14px}}.number-registration-page{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.registration-container{background:rgba(255,255,255,.95);padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:700px;width:100%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header{text-align:center;margin-bottom:30px}.header h1{margin:0 0 15px;font-size:32px;font-weight:700;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{margin:0;color:#666;font-size:16px;line-height:1.5}.connection-status{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:30px;padding:15px;background:rgba(255,255,255,.5);border-radius:15px;border:1px solid rgba(255,255,255,.3)}.status-indicator{font-size:20px}.status-text{font-size:16px;font-weight:500;color:#333}.registration-form{margin-bottom:30px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-size:16px;font-weight:600;color:#333}.phone-input{width:100%;padding:15px 20px;border:2px solid #e1e5e9;border-radius:10px;font-size:16px;transition:all .3s ease;background:white;box-sizing:border-box}.phone-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.phone-input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.status-message{padding:15px 20px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.status-message.success{background:rgba(76,175,80,.1);border:1px solid rgba(76,175,80,.3);color:#2e7d32}.status-message.error{background:rgba(244,67,54,.1);border:1px solid rgba(244,67,54,.3);color:#c62828}.status-message.info{background:rgba(33,150,243,.1);border:1px solid rgba(33,150,243,.3);color:#1976d2}.register-btn{width:100%;padding:18px 30px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.register-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.register-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.instructions{background:rgba(255,255,255,.1);padding:20px;border-radius:15px;border:1px solid rgba(255,255,255,.2);margin-bottom:30px}.instructions h3{margin:0 0 15px;font-size:18px;font-weight:600;color:#333}.instructions ul{margin:0;padding-left:20px}.instructions li{margin-bottom:8px;font-size:14px;line-height:1.5;color:#666}.features{background:rgba(255,255,255,.1);padding:20px;border-radius:15px;border:1px solid rgba(255,255,255,.2)}.features h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#333;text-align:center}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.feature-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;background:rgba(255,255,255,.1);border-radius:12px;border:1px solid rgba(255,255,255,.2)}.feature-icon{font-size:32px;margin-bottom:10px}.feature-item span:last-child{font-size:14px;font-weight:500;color:#333}@media (max-width: 768px){.number-registration-page{padding:10px}.registration-container{padding:30px 20px}.header h1{font-size:28px}.feature-grid{grid-template-columns:1fr;gap:15px}.feature-item{padding:15px}}.audio-visualizer{display:flex;flex-direction:column;width:100%;height:100%;background:#1a1a1a;border-radius:8px;overflow:hidden;position:relative}.audio-visualizer-label{padding:8px 12px;background:rgba(255,255,255,.1);color:#fff;font-size:12px;font-weight:500;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.audio-visualizer-container{flex:1;position:relative;min-height:80px;display:flex;align-items:center;justify-content:center}.audio-visualizer-canvas{width:100%;height:100%;display:block}.audio-visualizer-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#ffffff80;pointer-events:none}.audio-visualizer-icon{font-size:24px;margin-bottom:8px;opacity:.6}.audio-visualizer-text{font-size:12px;opacity:.8}@media (max-width: 768px){.audio-visualizer{min-height:60px}.audio-visualizer-label{font-size:11px;padding:6px 8px}.audio-visualizer-icon{font-size:20px}.audio-visualizer-text{font-size:11px}}.audio-visualizer-container{transition:all .3s ease}.audio-visualizer-placeholder{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.8}}.third-party-call{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:30px;color:#fff;box-shadow:0 15px 35px #0003;margin:20px 0;border:1px solid rgba(255,255,255,.2)}.third-party-call.error{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%)}.call-header{text-align:center;margin-bottom:25px}.call-header h3{margin:0 0 15px;font-size:28px;font-weight:700}.call-content{display:flex;flex-direction:column;gap:25px}.audio-controls{display:grid;grid-template-columns:1fr 1fr;gap:20px}.local-audio,.remote-audio{background:rgba(255,255,255,.1);border-radius:15px;padding:20px;text-align:center}.local-audio h4,.remote-audio h4{margin:0 0 15px;font-size:18px;font-weight:600}.local-audio audio,.remote-audio audio{width:100%;margin-bottom:15px;border-radius:8px}.local-audio button{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 20px;border-radius:8px;cursor:pointer;transition:all .3s ease}.local-audio button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}.call-actions{display:flex;justify-content:center;gap:20px}.action-btn{padding:15px 30px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.action-btn.end-call{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);color:#fff;box-shadow:0 4px 15px #ff6b6b4d}.action-btn.end-call:hover{transform:translateY(-3px);box-shadow:0 6px 20px #ff6b6b66}@media (max-width: 768px){.third-party-call{padding:20px;margin:15px 0}.call-header h3{font-size:24px}.audio-controls{grid-template-columns:1fr;gap:15px}.call-actions{flex-direction:column;align-items:center}.action-btn{width:100%;max-width:200px}}.error-actions{margin-top:15px;display:flex;gap:10px;justify-content:center}.retry-btn{background-color:#4caf50;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;transition:all .3s ease}.retry-btn:hover{background-color:#45a049;transform:translateY(-2px)}.close-btn{background-color:#f44336;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;transition:all .3s ease}.close-btn:hover{background-color:#da190b;transform:translateY(-2px)}.connection-details{margin-top:10px;padding:10px;background-color:#ffffff1a;border-radius:5px;font-size:12px;opacity:.8}.connection-details p{margin:2px 0}.audio-visualization{margin-bottom:25px}.visualizer-container{display:grid;grid-template-columns:1fr 1fr;gap:20px;height:200px}.local-visualizer,.remote-visualizer{height:100%;min-height:180px}.connecting-status{text-align:center;padding:20px;background:rgba(255,255,255,.1);border-radius:15px;margin:20px 0}.connecting-status p{margin:0;font-size:18px;font-weight:500;opacity:.9}.hangup-btn{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);color:#fff;border:none;padding:15px 30px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px;box-shadow:0 4px 15px #ff6b6b4d}.hangup-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #ff6b6b66}@media (max-width: 768px){.visualizer-container{grid-template-columns:1fr;height:auto;gap:15px}.local-visualizer,.remote-visualizer{min-height:120px}.audio-visualization{margin-bottom:20px}}.app{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);background-attachment:fixed;display:flex;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative;overflow:hidden}.app:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 1px,transparent 1px);background-size:50px 50px;animation:float 20s infinite linear;pointer-events:none}.app:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shimmer 8s infinite;pointer-events:none}@keyframes float{0%{transform:translate(0) rotate(0)}to{transform:translate(0) rotate(360deg)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.main-container{max-width:800px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;z-index:1}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;color:#fff;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2)}.user-info{display:flex;flex-direction:column;gap:8px}.phone-number{font-size:18px;font-weight:600}.connection-status{display:flex;align-items:center;gap:8px;font-size:14px}.status-dot{width:8px;height:8px;border-radius:50%;transition:all .3s ease}.status-dot.connected{background-color:#4ade80;box-shadow:0 0 8px #4ade8080}.status-dot.disconnected{background-color:#f87171;box-shadow:0 0 8px #f8717180}.logout-btn{padding:10px 20px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}h1{text-align:center;color:#fff;margin-bottom:30px;font-size:2.5rem;font-weight:700;text-shadow:0 4px 8px rgba(0,0,0,.3);position:relative;z-index:1;padding:20px;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,.2)}h1:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:100px;height:3px;background:linear-gradient(135deg,#ffffff 0%,#e2e8f0 100%);border-radius:2px;box-shadow:0 2px 8px #ffffff4d}.incoming-call-notification{background:rgba(255,107,107,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:25px;margin-bottom:30px;color:#fff;box-shadow:0 8px 32px #ff6b6b4d;animation:pulse 2s infinite;position:relative;z-index:1;border:1px solid rgba(255,255,255,.3)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.call-info h3{margin:0 0 15px;font-size:24px;font-weight:600}.call-info p{margin:8px 0;font-size:16px;opacity:.9}.call-actions{display:flex;gap:15px;margin-top:20px}.call-actions .action-btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.call-actions .accept{background:#4ade80;color:#fff}.call-actions .accept:hover{background:#22c55e;transform:translateY(-2px)}.call-actions .reject{background:#f87171;color:#fff}.call-actions .reject:hover{background:#ef4444;transform:translateY(-2px)}.action-buttons{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.action-btn{padding:20px;border:none;border-radius:15px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;text-align:center;box-shadow:0 4px 16px #0000001a;position:relative;z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.action-btn.primary{background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.3)}.action-btn.primary:hover{transform:translateY(-4px);background:rgba(255,255,255,.3);box-shadow:0 8px 32px #fff3}.action-btn.secondary{background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.3)}.action-btn.secondary:hover{transform:translateY(-4px);background:rgba(255,255,255,.25);box-shadow:0 8px 32px #fff3}.divider{text-align:center;color:#6b7280;font-weight:600;position:relative}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:30%;height:1px;background:#e5e7eb}.divider:before{left:0}.divider:after{right:0}.join-form{background:#f9fafb;border-radius:15px;padding:25px;text-align:center;border:2px dashed #d1d5db}.join-form h3{margin:0 0 15px;color:#374151;font-size:20px}.join-form p{margin:0;color:#6b7280;line-height:1.6}@media (max-width: 768px){.main-container{padding:15px;margin:10px;border-radius:15px}.header-section{flex-direction:column;gap:15px;text-align:center}h1{font-size:2rem}h1:after{width:80px;height:2px}.action-btn{padding:16px;font-size:16px}.call-actions{flex-direction:column}.app:before{background-size:30px 30px}}
