.incoming-call-modal .modal-content{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 20px 60px rgba(0,0,0,.5)}.incoming-call-body{padding:2rem 1rem}.call-card{background:rgba(255,255,255,.95);border:none;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.2)}.call-card .card-body{padding:2rem}.caller-avatar-container{position:relative;display:inline-block;margin:0 auto}.caller-avatar{object-fit:cover}.caller-avatar,.caller-avatar-placeholder{width:120px;height:120px;border-radius:50%;border:4px solid white;box-shadow:0 8px 24px rgba(0,0,0,.15);position:relative;z-index:2}.caller-avatar-placeholder{background:var(--bs-primary);display:flex;align-items:center;justify-content:center;color:white}.pulse-ring{top:50%;left:50%;transform:translate(-50%,-50%);width:120px;height:120px;border:4px solid var(--bs-success);animation:pulse-ring-animation 1.5s ease-out infinite;z-index:1}@keyframes pulse-ring-animation{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}.caller-name{font-size:1.75rem;font-weight:600;color:var(--bs-dark);margin:0}.call-type{display:flex;align-items:center;justify-content:center;color:var(--bs-gray-700);font-size:1rem}.time-remaining{color:var(--bs-gray-600)}.call-actions{align-items:center}.accept-button,.reject-button{border-radius:50px;padding:.75rem 2rem;font-weight:600;display:flex;align-items:center;justify-content:center;border:none;box-shadow:0 4px 12px rgba(0,0,0,.15);transition:all .3s ease;min-width:140px}.accept-button{background:var(--bs-success)}.accept-button:hover{background:#28a745;transform:translateY(-2px);box-shadow:0 6px 20px rgba(40,167,69,.4)}.accept-button:focus{outline:3px solid rgba(40,167,69,.5);outline-offset:2px}.reject-button{background:var(--bs-danger)}.reject-button:hover{background:#c82333;transform:translateY(-2px);box-shadow:0 6px 20px rgba(220,53,69,.4)}.reject-button:focus{outline:3px solid rgba(220,53,69,.5);outline-offset:2px}.reject-icon{transform:rotate(135deg)}@media (max-width:576px){.incoming-call-body{padding:1rem .5rem}.call-card .card-body{padding:1.5rem 1rem}.caller-avatar,.caller-avatar-placeholder,.pulse-ring{width:100px;height:100px}.caller-name{font-size:1.5rem}.call-type{font-size:.9rem}.call-actions{flex-direction:column-reverse;width:100%}.accept-button,.reject-button{width:100%;max-width:100%}}@media (prefers-color-scheme:dark){.call-card{background:rgba(30,30,30,.95)}.caller-name{color:white}.call-type{color:var(--bs-gray-400)}.time-remaining{color:var(--bs-gray-500)}}@media (prefers-reduced-motion:reduce){.pulse-ring{animation:none;opacity:.5}.accept-button:hover,.reject-button:hover{transform:none}.progress-bar{transition:none}}@media (prefers-contrast:high){.accept-button,.call-card,.reject-button{border:2px solid white}}.outgoing-call-modal .modal-content{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 20px 60px rgba(0,0,0,.3);border-radius:20px}.outgoing-call-content{background:transparent}.outgoing-call-body{padding:2rem}.outgoing-call-modal .call-card{background:rgba(255,255,255,.95);border:none;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.1)}.outgoing-call-modal .call-card .card-body{padding:2rem}.calling-animation-container{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.calling-avatar-container{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.calling-avatar-placeholder{position:relative;z-index:2;color:#667eea;animation:callPulse 2s ease-in-out infinite}.pulse-ring{position:absolute;border:3px solid #667eea;border-radius:50%;animation:pulsate 2s ease-out infinite;opacity:0}.pulse-ring-1{width:100%;height:100%;animation-delay:0s}.pulse-ring-2{width:100%;height:100%;animation-delay:.7s}.pulse-ring-3{width:100%;height:100%;animation-delay:1.4s}@keyframes pulsate{0%{transform:scale(.5);opacity:0}50%{opacity:.6}to{transform:scale(1.5);opacity:0}}@keyframes callPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.recipient-name{font-size:1.75rem;font-weight:600;color:#1a202c;margin-bottom:.5rem}.call-status{font-size:1rem;color:#4a5568}.calling-text{font-weight:500;color:#667eea;animation:fadeInOut 1.5s ease-in-out infinite}@keyframes fadeInOut{0%,to{opacity:1}50%{opacity:.5}}.call-duration{font-size:.875rem;color:#718096}.recipient-status{padding:.75rem 1rem;background:rgba(102,126,234,.1);border-radius:8px}.call-actions{display:flex;justify-content:center;gap:1rem}.cancel-button{min-width:140px;padding:.75rem 2rem;border-radius:50px;font-weight:600;font-size:1rem;transition:all .3s ease;border:none;background:linear-gradient(135deg,#f56565,#c53030);box-shadow:0 4px 15px rgba(245,101,101,.4)}.cancel-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(245,101,101,.5);background:linear-gradient(135deg,#fc8181,#e53e3e)}.cancel-button:active{transform:translateY(0)}@media (max-width:576px){.outgoing-call-body,.outgoing-call-modal .call-card .card-body{padding:1.5rem}.recipient-name{font-size:1.5rem}.calling-avatar-container{width:100px;height:100px}.calling-avatar-placeholder svg{width:64px;height:64px}.cancel-button{min-width:120px;padding:.65rem 1.5rem;font-size:.9rem}}