:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f7f4ee;--muted:#aaa69d;--panel:#18191ce0;--line:#ffffff1f;--accent:#7c8cff;--warning:#d7a75b;--green:#29d37d}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:radial-gradient(circle at 50% 0,#7c8cff2e,#0000 38rem),#0b0c0e;margin:0;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}.shell{place-items:center;min-height:100vh;padding:24px;display:grid}.card,.contact-actions{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:28px;width:min(100%,420px);padding:42px;box-shadow:0 30px 90px #00000073}.pin-card{width:min(100%,240px)}.pin-form{width:100%}.pin-form input{text-align:center;letter-spacing:.35em;font-size:28px}.contact-picker{justify-content:center;align-items:flex-start;gap:clamp(28px,8vw,72px);width:min(100%,560px);display:flex}.contact-choice{color:var(--ink);background:0 0;justify-items:center;gap:14px;padding:0;font-weight:750;display:grid}.contact-photo{object-fit:cover;border:3px solid #ffffff29;border-radius:50%;width:clamp(116px,30vw,160px);height:clamp(116px,30vw,160px);transition:border-color .15s,transform .15s;box-shadow:0 20px 55px #0006}.contact-choice:hover .contact-photo,.contact-choice:focus-visible .contact-photo{border-color:var(--accent);transform:translateY(-3px)}.contact-choice:focus-visible{outline:none}.contact-actions{padding-top:26px}.contact-header{grid-template-columns:42px 64px 1fr;align-items:center;gap:14px;margin-bottom:28px;display:grid}.selected-photo{object-fit:cover;border-radius:50%;width:64px;height:64px}.back-button{width:42px;height:42px;color:var(--ink);background:#ffffff12;border-radius:50%;place-items:center;font-size:24px;display:grid}.stack{gap:14px;display:grid}.lede{color:var(--muted);margin:0 0 10px;line-height:1.55}label{color:var(--muted);font-size:13px;font-weight:700}input{border:1px solid var(--line);width:100%;color:var(--ink);background:#ffffff0d;border-radius:13px;outline:none;padding:15px 16px;font-size:20px}textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:112px;color:var(--ink);background:#ffffff0d;border-radius:13px;outline:none;padding:14px 15px;line-height:1.45}input:focus,textarea:focus{border-color:#7c8cffbf;box-shadow:0 0 0 4px #7c8cff1f}button{cursor:pointer;border:0;transition:transform .15s,filter .15s}button:hover:not(:disabled){filter:brightness(1.08)}button:active:not(:disabled){transform:scale(.985)}button:disabled{cursor:not-allowed;opacity:.55}.primary,.call,.danger{color:#fff;border-radius:15px;min-height:56px;padding:14px 18px;font-weight:800}.primary{background:var(--accent)}.danger{background:var(--warning);color:#17130c}.call{background:var(--green);letter-spacing:-.03em;border-radius:64px;min-height:128px;font-size:30px}.danger{border-radius:35px;min-height:70px;font-size:20px}.call-panel{gap:22px}.control-stack{gap:24px;display:grid}.message-panel{gap:12px;display:grid}.message-heading{color:var(--ink);justify-content:space-between;gap:12px;font-size:14px;font-weight:750;display:flex}.divider{background:var(--line);height:1px}.status{min-height:24px;color:var(--muted);align-items:center;gap:10px;display:flex}.status-dot{background:currentColor;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #ffffff0a}.status-connected,.status-idle{color:var(--green)}.status-failed,.status-declined,.status-unavailable{color:var(--warning)}.status-calling .status-dot,.status-ringing .status-dot,.status-initializing .status-dot,.status-microphone .status-dot{animation:1.3s infinite pulse}.error{color:#e8c68d;margin:0;font-size:14px;line-height:1.45}.text-button{color:var(--muted);text-underline-offset:4px;background:0 0;justify-self:center;padding:4px;text-decoration:underline}@keyframes pulse{50%{opacity:.35;transform:scale(.8)}}@media (max-width:500px){.card,.contact-actions{border-radius:22px;padding:26px 22px}.contact-picker{gap:24px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
