.sphereone-ring{--ring-bg:rgba(31,31,31,0.9);--ring-fg:#ffffff;--ring-ink:#e3e3e3;--ring-mute:#c6c6c6;--ring-faint:#8f8f8f;--ring-line:rgba(255,255,255,0.1);--ring-rim:rgba(255,255,255,0.16);--ring-tile:#343434;--ring-accent:#c9bcff;--ring-accent-ink:#1a1040;--ring-pulse:rgba(201,188,255,0.22);--ring-pulse-line:rgba(201,188,255,0.3);--ring-hangup:#dc362e;--ring-hangup-hover:#c42b24;--ring-answer:#1fa855;--ring-answer-hover:#178c46;--ring-scrim:rgba(0,0,0,0.56);--ring-photo:120px;--ring-btn:64px;position:fixed;inset:0;z-index:var(--ring-z,50);display:grid;place-items:center;padding:24px;background:var(--ring-scrim);backdrop-filter:blur(10px);font-family:var(--font-sans),ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ring-ink);-webkit-font-smoothing:antialiased;animation:sphereone-ring-fade .16s ease-out}.sphereone-ring.is-sheet{--ring-photo:132px;--ring-btn:72px;place-items:end stretch;padding:0}.ring-card{position:relative;box-sizing:border-box;width:min(360px,100%);padding:28px 24px 26px;border-radius:28px;background:var(--ring-bg);backdrop-filter:blur(28px) saturate(140%);border:1px solid var(--ring-line);box-shadow:inset 0 1px 0 var(--ring-rim),0 32px 80px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.35);text-align:center;outline:none;animation:sphereone-ring-card-in .22s cubic-bezier(.2,.8,.2,1)}.ring-card:focus-visible{outline:none}.is-sheet .ring-card{width:100%;border-radius:28px 28px 0 0;border-bottom:0;padding:14px 20px calc(28px + env(safe-area-inset-bottom, 0px));animation:sphereone-ring-sheet-in .26s cubic-bezier(.2,.8,.2,1)}.ring-grip{display:block;width:36px;height:5px;margin:0 auto 18px;border-radius:999px;background:rgba(255,255,255,.22)}.ring-eyebrow{font-size:12px;line-height:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ring-mute)}.ring-photo-wrap{position:relative;width:var(--ring-photo);height:var(--ring-photo);margin:22px auto 18px}.ring-pulse{position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--ring-pulse-line);background:var(--ring-pulse);animation:sphereone-ring-ripple 2.4s ease-out infinite}.ring-pulse+.ring-pulse{animation-delay:1.2s}.ring-photo{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--ring-tile);color:var(--ring-fg);font-size:calc(var(--ring-photo) * .34);font-weight:600;letter-spacing:-.02em;text-transform:uppercase;box-shadow:0 0 0 1px var(--ring-rim),0 12px 32px rgba(0,0,0,.45);animation:sphereone-ring-breathe 2.4s ease-in-out infinite}.ring-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ring-name{font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.01em;color:var(--ring-fg);overflow-wrap:anywhere}.ring-kind{margin-top:4px;font-size:14px;line-height:20px;font-weight:500;color:var(--ring-mute)}.ring-sub{margin-top:2px;font-size:13px;line-height:18px;color:var(--ring-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ring-actions{display:flex;justify-content:space-evenly;align-items:flex-start;margin-top:28px}.ring-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;display:grid;justify-items:center;gap:10px;color:var(--ring-mute);font:inherit;font-size:13px;line-height:16px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none}.ring-disc{width:var(--ring-btn);height:var(--ring-btn);border-radius:50%;display:grid;place-items:center;color:#ffffff;box-shadow:0 10px 28px rgba(0,0,0,.4);transition:background .12s ease,transform .12s ease}.ring-disc svg{width:26px;height:26px}.ring-action[data-tone=decline] .ring-disc{background:var(--ring-hangup)}.ring-action[data-tone=decline]:hover .ring-disc{background:var(--ring-hangup-hover)}.ring-action[data-tone=accept] .ring-disc{background:var(--ring-answer)}.ring-action[data-tone=accept]:hover .ring-disc{background:var(--ring-answer-hover)}.ring-action:active .ring-disc{transform:scale(.95)}.ring-action:focus-visible .ring-disc{outline:2px solid var(--ring-accent);outline-offset:3px}.ring-banner{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 12px;border-radius:999px;background:var(--ring-bg);backdrop-filter:blur(24px) saturate(140%);border:1px solid var(--ring-line);box-shadow:inset 0 1px 0 var(--ring-rim),0 18px 48px rgba(0,0,0,.5);font-family:var(--font-sans),ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ring-ink);-webkit-font-smoothing:antialiased}.ring-banner-face{width:40px;height:40px;flex:none;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--ring-tile);color:var(--ring-fg);font-size:14px;font-weight:600;text-transform:uppercase;box-shadow:0 0 0 1px var(--ring-rim)}.ring-banner-face img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ring-banner-title{font-size:14px;line-height:18px;font-weight:600;color:var(--ring-fg)}.ring-banner-sub,.ring-banner-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ring-banner-sub{font-size:12px;line-height:16px;color:var(--ring-mute)}.ring-banner-join{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;height:38px;padding:0 16px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;background:var(--ring-accent);color:var(--ring-accent-ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.ring-banner-join:hover{background:#d8cfff}.ring-banner-dismiss:focus-visible,.ring-banner-join:focus-visible{outline:2px solid var(--ring-accent);outline-offset:2px}.ring-banner-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--ring-mute);cursor:pointer;-webkit-tap-highlight-color:transparent}.ring-banner-dismiss:hover{background:rgba(255,255,255,.1);color:var(--ring-fg)}@keyframes sphereone-ring-fade{0%{opacity:0}}@keyframes sphereone-ring-card-in{0%{opacity:0;transform:translateY(10px) scale(.97)}}@keyframes sphereone-ring-sheet-in{0%{opacity:0;transform:translateY(24px)}}@keyframes sphereone-ring-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes sphereone-ring-ripple{0%{transform:scale(1);opacity:.9}to{transform:scale(1.42);opacity:0}}@media (prefers-reduced-motion:reduce){.ring-card,.ring-photo,.ring-pulse,.sphereone-ring{animation:none}.ring-pulse{opacity:.35;transform:scale(1.12)}.ring-pulse+.ring-pulse{display:none}.ring-disc{transition:none}}