.rg-account {
  --account-bg: #111318;
  --account-line: #353840;
  --account-text: #f4f5f7;
  --account-muted: #b6bac4;
  --account-accent: #ffd34d;
  width: 100%;
  max-width: 960px;
  min-width: 0;
  margin-inline: auto;
  color: var(--account-text);
  font: 400 15px/1.55 system-ui, -apple-system, "Segoe UI", sans-serif;
  letter-spacing: 0;
  text-align: left;
  overflow-wrap: anywhere;
}
.rg-account *, .rg-account *::before, .rg-account *::after { box-sizing: border-box; }
.rg-account [hidden] { display: none !important; }
.rg-account-tabs { display:flex; flex-wrap:wrap; gap:8px; padding-bottom:18px; }
.rg-account-tabs button { background:transparent; color:var(--account-text); border-color:var(--account-line); }
.rg-account-tabs button[aria-current="page"] { background:#ffd34d; color:#111318; }
.rg-account button[data-account-section] { background:transparent !important; color:var(--account-text) !important; }
.rg-account button[data-account-section][aria-current="page"] { background:#ffd34d !important; color:#111318 !important; }
.rg-account select,.rg-account textarea { width:100%; min-width:0; min-height:48px; padding:11px 13px; border:1px solid var(--account-line); border-radius:6px; background:var(--account-bg); color:var(--account-text); font:400 16px/1.4 system-ui,sans-serif; color-scheme:dark; }
.rg-account select option { background:#111318; color:#f4f5f7; }
.rg-account textarea { min-height:96px; resize:vertical; }
.rg-account input[type="checkbox"],.rg-account input[type="radio"] { appearance:auto; width:24px; min-height:24px; height:24px; flex:0 0 24px; accent-color:#ffd34d; }
.rg-account label:has(> input[type="checkbox"]),.rg-account label:has(> input[type="radio"]) { display:flex; align-items:center; min-height:44px; gap:12px; padding:8px 0; }
.rg-account [data-privacy-section] form { display:grid; gap:16px; }
.rg-account [data-privacy-section] form > label { display:grid; gap:7px; }
.rg-account .rg-account-consent { padding:20px 0; border-bottom:1px solid var(--account-line); }
.rg-account details > summary { display:flex; align-items:center; min-height:44px; padding:10px 0; cursor:pointer; }
.rg-account details p { padding-top:10px; }
.rg-account .healthSection { background:none; border-radius:0; }
.rg-account .healthFields { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rg-account .healthToggle label { min-width:44px; min-height:44px; }
.rg-account [data-privacy-section] a { display:inline-flex; align-items:center; min-height:44px; color:#ffd34d; }
.rg-account h1 { margin: 0 0 24px; font-size: 26px; line-height: 1.2; font-weight: 750; letter-spacing: 0; }
.rg-account h2 { margin: 0 0 12px; font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: 0; }
.rg-account p { margin: 0 0 16px; color: var(--account-muted); font-size: 14px; }
.rg-account-summary { display: grid; gap: 5px; padding-bottom: 24px; }
.rg-account-summary span { color: var(--account-muted); font-size: 13px; }
.rg-account-summary strong { font-size: 18px; font-weight: 600; }
.rg-account-section { padding: 26px 0; border-top: 1px solid var(--account-line); background: none; box-shadow: none; border-radius: 0; }
.rg-account-section > p { max-width: 620px; }
.rg-account-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rg-account-section-head h2 { margin: 0; }
.rg-account fieldset { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; min-width: 0; margin: 0; padding: 0; border: 0; }
.rg-account-field { display: grid; align-content: start; gap: 7px; min-width: 0; color: var(--account-text); font-size: 14px; font-weight: 600; }
.rg-account [data-account-action="password.change"] .rg-account-field:first-child { grid-column: 1 / -1; }
.rg-account input {
  appearance: none;
  width: 100%; min-width: 0; min-height: 48px;
  padding: 11px 13px;
  border: 1px solid var(--account-line); border-radius: 6px;
  background: var(--account-bg); color: var(--account-text);
  font: 400 16px/1.4 system-ui, sans-serif; letter-spacing: 0;
  box-shadow: none;
}
.rg-account input:autofill { color: #111318; }
.rg-account button, .rg-account-links a, .rgAccountEntry, .rgAccountForgot {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; max-width: 100%;
  padding: 11px 17px; border: 1px solid #7d692d; border-radius: 6px;
  background: #ffd34d; color: #111318;
  font: 600 14px/1.4 system-ui, sans-serif; letter-spacing: 0;
  white-space: normal; text-align: center; overflow-wrap: anywhere;
  cursor: pointer; text-decoration: none; box-shadow: none;
}
.rg-account fieldset button { grid-column: 1 / -1; justify-self: start; }
.rg-account button:disabled, .rg-account fieldset:disabled { opacity: .6; cursor: wait; }
.rg-account button:hover:not(:disabled) { background: #ffe17d; }
.rg-account button.rg-account-danger { background: #261619; color: #ffc2cb; border-color: #90515a; }
.rg-account button.rg-account-icon { flex: 0 0 44px; width: 44px; height: 44px; padding: 0; background: var(--account-bg); color: var(--account-text); border-color: var(--account-line); font-size: 23px; }
.rg-account :focus-visible, .rgAccountEntry:focus-visible, .rgAccountForgot:focus-visible { outline: 3px solid #ffd34d; outline-offset: 3px; }
.rg-account .rg-account-message { margin: 16px 0 0; padding: 12px 14px; border-left: 3px solid #6be0af; background: #11271e; color: #d1f7e6; }
.rg-account .rg-account-message[data-state="error"] { border-color: #ff8b98; background: #2c191e; color: #ffd3da; }
.rg-account-sessions { list-style: none; margin: 12px 0 22px; padding: 0; }
.rg-account-sessions li { display: grid; gap: 3px; padding: 15px 0; border-bottom: 1px solid var(--account-line); }
.rg-account-sessions strong { font-size: 14px; font-weight: 600; }
.rg-account-sessions span { color: var(--account-muted); font-size: 13px; }
.rg-account-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.rg-account-links a, .rgAccountEntry, .rgAccountForgot { background: transparent; color: #f4f5f7; border-color: #484c57; }
.rgAccountForgot { margin-top: 12px; width: 100%; }
#accountSettings { padding: 24px 18px calc(120px + env(safe-area-inset-bottom, 0px)); }
#accountSettings.active { height:calc(100dvh - 84px - env(safe-area-inset-bottom,0px)); min-height:0; overflow-y:auto; overscroll-behavior:contain; padding-bottom:24px; scroll-padding-block:16px; }
.rg-account-client-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 24px; }
.rg-account-client-head h1 { margin: 0; font: 700 24px/1.3 system-ui, sans-serif; letter-spacing: 0; }
.rg-account-public-page { margin: 0; min-height: 100vh; background: #0b0d11; color: #f4f5f7; }
.rg-account-public-shell { box-sizing: border-box; width: min(100%, 520px); margin: 0 auto; padding: 36px 24px calc(36px + env(safe-area-inset-bottom, 0px)); }
.rg-account-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 40px; font: 750 17px/1.3 system-ui, sans-serif; letter-spacing: 0; }
.rg-account-brand img { width: 56px; height: 56px; object-fit: contain; }
.rg-account-public-shell fieldset { grid-template-columns: minmax(0, 1fr); }
.rg-account-public-shell fieldset button { width: 100%; }
@media (max-width: 600px) {
  .rg-account .healthFields { grid-template-columns:minmax(0,1fr); }
  .rg-account fieldset { grid-template-columns: minmax(0, 1fr); }
  .rg-account fieldset button { width: 100%; }
  .rg-account-section { padding: 22px 0; }
  .rg-account-public-shell { padding-inline: 20px; }
}
