.dial-pad{display:flex;flex-direction:column;gap:8px;padding:16px}.dial-pad-row{display:flex;gap:8px;justify-content:center}.dial-pad-button{width:60px;height:60px;border:none;border-radius:8px;background:#fff;font-size:24px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.dial-pad-button:hover{background:#f0f0f0;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.dial-pad-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.dial-pad-button.backspace{width:100%;font-size:20px}.call-controls{display:flex;gap:12px;justify-content:center;padding:16px}.call-button{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.call-button.call{background:#4caf50;color:#fff}.call-button.call:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.call-button.answer{background:#4caf50;color:#fff}.call-button.answer:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.call-button.hangup{background:#f44336;color:#fff}.call-button.hangup:hover{background:#da190b;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.call-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.webphone{width:100%;max-width:400px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;min-height:600px}.webphone-header{padding:20px;text-align:center;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.status-indicator{width:12px;height:12px;border-radius:50%;display:inline-block;margin-right:8px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-size:14px;font-weight:600;margin-top:8px}.did-display{font-size:12px;margin-top:4px;opacity:.9}.call-info{padding:16px;text-align:center;background:#f5f5f5}.call-number{font-size:24px;font-weight:600;color:#333}.call-direction{font-size:12px;color:#666;margin-top:4px}.number-display{padding:20px}.number-input{width:100%;padding:16px;font-size:24px;text-align:center;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:border-color .2s}.number-input:focus{border-color:#667eea}.number-input:disabled{background:#f5f5f5;color:#999}.webphone-footer{padding:16px;text-align:center;border-top:1px solid #e0e0e0;margin-top:auto}.config-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;text-decoration:underline}.config-link:hover{color:#764ba2}.webphone-config{padding:40px 20px;text-align:center}.webphone-config h2{margin-bottom:24px;color:#333}.config-form{display:flex;flex-direction:column;gap:12px;max-width:300px;margin:0 auto}.config-input{padding:12px;font-size:16px;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:border-color .2s}.config-input:focus{border-color:#667eea}.config-button{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.config-button:hover{background:#764ba2}.config-hint{margin-top:16px;font-size:12px;color:#666}.config-error{color:#f44336;font-size:14px;margin-top:8px;padding:8px;background:#ffebee;border-radius:4px;text-align:center}.config-button:disabled{opacity:.6;cursor:not-allowed}.App{width:100%;height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#f5f5f5}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5}#root{width:100%;height:100vh}
