.dialer{top:calc(var(--header-h) + 12px);z-index:calc(var(--z-modal) - 10);width:min(360px,100vw - 32px);max-height:calc(100dvh - var(--header-h) - 32px);background:var(--bg-overlay);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);animation:dialer-in var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:fixed;right:20px;overflow:auto}@keyframes dialer-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.dialer-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:8px;padding:12px 12px 10px 16px;display:flex}.dialer-heading{min-width:0}.dialer-title{font-size:var(--font-size-md);line-height:var(--line-height-md);font-weight:var(--font-weight-semibold);overflow-wrap:anywhere;margin:0}.dialer-title:focus-visible{border-radius:var(--radius-xs)}.dialer-sub{font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--text-secondary);flex-wrap:wrap;gap:4px 10px;margin:2px 0 0;display:flex}.dialer-body{flex-direction:column;gap:12px;padding:12px 16px 16px;display:flex}.dialer-body .notice{margin:0}.dialer-body .kv{background:var(--bg-sunken);border-radius:var(--radius-sm);padding:10px 12px}.dialer-field{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);flex-direction:column;gap:4px;display:flex}.dialer-field.grow{flex:140px}.dialer-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.dialer-actions{justify-content:flex-end;gap:8px;display:flex}.dialer-foot{font-size:var(--font-size-xs);margin:0;padding:0 16px 12px}.dialer-devices summary{cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.dialer-devices summary:hover{color:var(--text-primary)}.dialer-device-fields{gap:8px;margin-top:8px;display:grid}.dialer-device-fields label{font-size:var(--font-size-xs);color:var(--text-secondary);flex-direction:column;gap:4px;display:flex}.check-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.check-item{font-size:var(--font-size-sm);line-height:var(--line-height-sm);color:var(--text-primary);align-items:flex-start;gap:8px;display:flex}.check-item>svg{flex-shrink:0;margin-top:3px}.check-item.ok>svg{color:var(--success-fg)}.check-item.warn{color:var(--warning-fg)}.check-item.block{color:var(--danger-fg);font-weight:var(--font-weight-medium)}.call-status{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);align-items:center;gap:8px;margin:0;display:flex}.call-dot{border-radius:var(--radius-full);background:var(--text-tertiary);flex-shrink:0;width:8px;height:8px}.phase-ringing .call-dot,.phase-connecting .call-dot{background:var(--accent);animation:dialer-pulse var(--dur-pulse) var(--ease-standard) infinite}.phase-connected .call-dot{background:var(--success-solid)}.phase-reconnecting .call-dot{background:var(--warning-solid);animation:dialer-pulse var(--dur-pulse-fast) var(--ease-standard) infinite}@keyframes dialer-pulse{0%,to{opacity:1}50%{opacity:.35}}.call-timer{font-size:var(--font-size-xl);line-height:var(--line-height-xl);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--text-primary);margin-left:auto}.call-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.call-control{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-button);min-height:56px;color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px;display:flex}.call-control:hover:not(:disabled){background:var(--bg-button-hover);border-color:var(--border-strong)}.call-control[aria-pressed=true],.call-control[aria-expanded=true]{background:var(--accent-subtle);border-color:var(--accent-subtle-border);color:var(--accent-subtle-fg)}.call-control:disabled{background:var(--bg-disabled);border-color:var(--border-disabled);color:var(--text-disabled)}.call-control.hangup{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-fg)}.call-control.hangup:hover{background:var(--danger-bg);border-color:var(--danger-solid)}.dialer-keypad{gap:8px;display:grid}.keypad-digits{text-align:center;min-height:24px;font-size:var(--font-size-lg);letter-spacing:.12em;background:var(--bg-sunken);border-radius:var(--radius-sm);text-overflow:ellipsis;padding:2px 8px;display:block;overflow:hidden}.keypad-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.keypad-key{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-button);min-height:44px;color:var(--text-primary);font-size:var(--font-size-lg);flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:flex}.keypad-key small{letter-spacing:.08em;color:var(--text-tertiary);font-size:9px}.keypad-key:hover{background:var(--bg-button-hover)}.keypad-key:active{background:var(--bg-active)}.call-summary{font-size:var(--font-size-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:center;gap:6px;padding:10px 16px 0;display:flex}.disposition fieldset+fieldset,.disposition fieldset+label,.disposition label+fieldset{margin-top:0}.disposition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.disposition-option{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-height:30px;font-size:var(--font-size-xs);cursor:pointer;align-items:center;gap:6px;padding:4px 8px;display:flex}.disposition-option:hover{background:var(--bg-hover)}.disposition-option:has(input:checked){background:var(--accent-subtle);border-color:var(--accent-subtle-border);color:var(--accent-subtle-fg)}.disposition-option input{margin:0}.preset-row{flex-wrap:wrap;width:100%;display:flex}.preset-row button{flex:1 0 auto}.incoming{flex-direction:column;gap:10px;padding:4px 20px 16px;display:flex}.incoming-name{font-size:var(--font-size-2xl);line-height:var(--line-height-2xl);font-weight:var(--font-weight-semibold);margin:0}.incoming-number{color:var(--text-secondary);margin:0}.incoming .notice{margin:0}.incoming-actions{background:0 0;border:0;padding:8px 0 0;position:static}.take-calls{min-height:var(--control-h-sm);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-button);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.take-calls:hover{color:var(--text-primary);border-color:var(--border-strong)}.take-calls[aria-pressed=true]{color:var(--accent-subtle-fg);background:var(--accent-subtle);border-color:var(--accent-subtle-border)}.take-calls.status-retrying,.take-calls.status-registering{color:var(--warning-fg);background:var(--warning-bg);border-color:var(--warning-border)}.take-calls.status-offline{color:var(--danger-fg);background:var(--danger-bg);border-color:var(--danger-border)}@media (width<=600px){.dialer{width:auto;max-height:calc(100dvh - 16px);inset:auto 8px 8px}.take-calls span{display:none}}@media (forced-colors:active){.call-dot{background:canvastext}.call-control[aria-pressed=true],.take-calls[aria-pressed=true]{outline:2px solid highlight}}.call-recording{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.call-recording p{flex:100%;margin:0}.call-recording-dot{background:var(--danger-solid);border-radius:50%;width:10px;height:10px}
