:root {color-scheme: light dark;--bg: #f5f5f7;--card-bg: #ffffff;--text: #1c1c1e;--muted: #6b6b70;--border: #e2e2e5;--accent: #3b7cf6;--accent-text: #ffffff;--danger: #e5484d;--success: #2fb344;font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;}@media (prefers-color-scheme: dark) {:root {--bg: #17171a;--card-bg: #232326;--text: #f2f2f3;--muted: #96969c;--border: #333338;}}* {box-sizing: border-box;}body {margin: 0;background: var(--bg);color: var(--text);min-height: 100vh;}.screen {padding: 20px;display: flex;flex-direction: column;gap: 16px;}.card {background: var(--card-bg);border: 1px solid var(--border);border-radius: 12px;padding: 18px;}h1 {font-size: 20px;margin: 0 0 4px;}.muted {color: var(--muted);font-size: 13px;}label {display: block;font-size: 12px;font-weight: 600;color: var(--muted);margin: 14px 0 6px;}label:first-of-type {margin-top: 4px;}input {width: 100%;padding: 10px 12px;border-radius: 8px;border: 1px solid var(--border);background: var(--bg);color: var(--text);font-size: 14px;}input:focus {outline: 2px solid var(--accent);outline-offset: -1px;}button {border: none;border-radius: 8px;padding: 10px 16px;font-size: 14px;font-weight: 600;cursor: pointer;background: var(--accent);color: var(--accent-text);width: 100%;margin-top: 14px;}button.secondary {background: transparent;color: var(--text);border: 1px solid var(--border);}button:active {transform: scale(0.99);}.button-row {display: flex;gap: 10px;}.button-row button {margin-top: 14px;}details summary {cursor: pointer;font-size: 12px;color: var(--muted);margin-top: 10px;}#call-form {display: flex;gap: 8px;}#call-form input {flex: 1;}#call-form button {width: auto;margin-top: 0;white-space: nowrap;}header {display: flex;align-items: center;justify-content: space-between;}.me-label {font-size: 11px;text-transform: uppercase;letter-spacing: 0.04em;color: var(--muted);}.me-username {font-size: 20px;font-weight: 700;}.icon-btn {width: 36px;height: 36px;padding: 0;border-radius: 999px;background: var(--card-bg);color: var(--text);border: 1px solid var(--border);font-size: 16px;margin-top: 0;}.list-header {display: flex;align-items: center;justify-content: space-between;font-size: 12px;font-weight: 600;color: var(--muted);text-transform: uppercase;letter-spacing: 0.03em;margin-bottom: 10px;}.status-dot {width: 8px;height: 8px;border-radius: 999px;background: var(--muted);}.status-dot.online {background: var(--success);}.status-dot.offline {background: var(--danger);}.user-list {list-style: none;margin: 0;padding: 0;display: flex;flex-direction: column;gap: 8px;}.user-list li.empty {color: var(--muted);font-size: 13px;padding: 4px 0;}.user-row {display: flex;align-items: center;justify-content: space-between;padding: 8px 10px;border-radius: 8px;background: var(--bg);}.user-row .name {font-size: 14px;font-weight: 500;}.user-row button {width: auto;margin-top: 0;padding: 6px 14px;font-size: 13px;}.status-text {text-align: center;min-height: 16px;}.overlay {position: fixed;inset: 0;background: rgba(0, 0, 0, 0.45);display: flex;align-items: center;justify-content: center;padding: 20px;}.call-card {width: 100%;max-width: 320px;text-align: center;}.ringing {font-size: 12px;text-transform: uppercase;letter-spacing: 0.06em;color: var(--muted);font-weight: 700;}.incoming-from {font-size: 24px;font-weight: 700;margin: 8px 0 4px;}#decline-call {color: var(--danger);}#accept-call {background: var(--success);}.center {text-align: center;}.user-row {gap: 10px;}.user-row .name {flex: 1;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.presence {flex: none;width: 8px;height: 8px;border-radius: 999px;background: var(--border);}.presence.online {background: var(--success);}.user-row button.remove {width: 28px;height: 28px;padding: 0;color: var(--muted);}button:disabled {opacity: 0.5;cursor: default;}button.add-contact {display: block;margin: 12px auto 0;}.error {color: var(--danger);font-size: 13px;margin: 10px 0 0;}button.link-btn {display: inline;width: auto;margin: 0;padding: 0;background: none;color: var(--accent);font: inherit;font-weight: 600;}[hidden] {display: none !important;}