/* Profile account dialog (hosted). */
.profile-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--ink);box-shadow:0 28px 90px #0005;overflow:hidden}
.profile-dialog[open]{display:flex;flex-direction:column}
.profile-dialog::backdrop{background:#100a10b3;backdrop-filter:blur(8px)}
.profile-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 14px}
.profile-dialog-heading h2{margin:0;font-size:22px;font-weight:650;letter-spacing:-.5px}
.profile-dialog-close{font-size:24px;line-height:1;width:36px;height:36px;padding:0;border-radius:50%;flex-shrink:0;color:var(--muted);border:0;background:transparent;cursor:pointer}
.profile-dialog-body{min-height:0;overflow:auto;padding:0 24px 24px}
.profile-dialog-status{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:var(--product-soft);font-size:12px}
.profile-dialog-status.error{color:var(--risk);background:transparent;border:1px solid var(--risk)}
.profile-dialog-pending{margin:0 0 12px;font-size:12px;color:var(--info);line-height:1.5}
.profile-form label,.profile-delete-form label{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;font-size:11px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.profile-form input,.profile-delete-form input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--ink);font:inherit;font-size:14px;text-transform:none;letter-spacing:0}
.profile-form .product-primary{width:100%;margin-top:4px}
.profile-sports{margin:12px 0 20px}
.profile-sports h3{font-size:16px;margin:0 0 8px}
.profile-sports>p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 14px}
.profile-sports details{border-top:1px solid var(--line);padding:12px 0 0;margin-top:10px}
.profile-sports summary{font-size:13px;font-weight:650;cursor:pointer;margin-bottom:14px}
.profile-sports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.profile-sports-grid label{min-width:0;text-transform:none;letter-spacing:0;line-height:1.5}
.profile-sports-grid input{min-width:0}
.profile-form label[hidden],.profile-danger[hidden]{display:none}
.profile-danger{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.profile-danger h3{margin:0 0 8px;font-size:14px;color:var(--risk)}
.profile-danger>p{margin:0 0 14px;font-size:12px;line-height:1.6;color:var(--muted);text-transform:none;letter-spacing:0}
.profile-delete-button{width:100%;padding:11px 16px;border-radius:999px;border:1px solid var(--risk);background:transparent;color:var(--risk);font:inherit;font-weight:650;cursor:pointer}
.profile-delete-button:hover{background:color-mix(in srgb, var(--risk) 12%, transparent)}
.product-account-button,.product-logout-button,.product-login-button{border-color:var(--line);color:var(--ink);padding:8px 12px;font-size:12px;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center}
.product-account-button[hidden],.product-logout-button[hidden],.product-login-button[hidden],.product-logout[hidden]{display:none}
@media(max-width:700px){
  .profile-dialog{width:calc(100vw - 24px);border-radius:15px}
  .profile-dialog-heading{padding:18px 18px 12px}.profile-dialog-body{padding:0 18px 20px}
}
