.account-page {
  max-width: 560px;
  margin: 0 auto;
  transform: translateY(-38px);
}

.account-card {
  width: 100%;
  padding: 14px 18px;
  gap: 6px;
}

.account-page .section-head {
  margin: 0 0 6px;
}

.account-page .section-head h1,
.account-page .section-head p,
.account-card h2,
.account-card p {
  margin-top: 0;
  margin-bottom: 3px;
}

.account-page input,
.account-page select {
  padding: 8px 10px;
}

.account-page button,
.account-page .btn {
  padding: 9px 15px;
}

.new-account-prompt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 10px;
  padding: 14px;
  border: 1px solid rgba(0,209,24,.42);
  border-radius: 10px;
  background: rgba(0,209,24,.09);
}

.new-account-prompt h3 {
  margin: 0 0 5px;
}

.new-account-prompt .btn.secondary {
  flex: 0 0 auto;
  border: 1px solid #a472d7;
  background: #fff;
}

#login-form {
  position: relative;
  overflow: hidden;
  border-color: #35245c;
  background:
    radial-gradient(circle at 96% 4%, rgba(0,209,24,.2), transparent 32%),
    linear-gradient(135deg, #080714 0%, #1b0c35 60%, #34106a 100%);
  color: #fff;
  box-shadow: 0 14px 32px rgba(8,7,20,.2);
}

#login-form h2 {
  font-size: 28px;
}

#login-form .field input {
  border: 1px solid rgba(164,114,215,.7);
  background: rgba(255,255,255,.96);
  color: #080714;
}

#login-form .login-help a {
  color: #d5b5f3;
}

#login-form #login-message {
  color: #ded2ea;
}

#login-form .new-account-prompt h3 {
  color: #fff;
}

@media (max-width: 480px) {
  .new-account-prompt {
    align-items: stretch;
    flex-direction: column;
  }

  .new-account-prompt .btn.secondary {
    text-align: center;
  }
}

.login-help {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin: 1px 0 4px;
  font-size: 14px;
}

.login-help a,
.underlined-link {
  color: var(--brand);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.required-note {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.required-mark {
  color: #d92d20;
  font-weight: 900;
}

.signup-page { max-width: 620px; }
.signup-card {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 18px 22px;
  gap: 10px;
  border: 1px solid rgba(164,114,215,.58);
  border-radius: 16px;
  background:
    radial-gradient(circle at 94% 4%,rgba(0,209,24,.18),transparent 27%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='45' viewBox='0 0 52 45'%3E%3Cpath d='M13 1h26l12 21.5L39 44H13L1 22.5Z' fill='none' stroke='%23a472d7' stroke-opacity='.08'/%3E%3C/svg%3E"),
    linear-gradient(145deg,rgba(52,25,82,.98),rgba(8,7,20,.99));
  color:#fff;
  box-shadow:0 18px 40px rgba(0,0,0,.32);
}
.signup-card .field { display:grid; gap:5px; }
.signup-card .field > span { color:#f8f4fb; font-weight:800; }
.signup-card input,.signup-card select { border-color:rgba(164,114,215,.7); background:rgba(255,255,255,.97); color:#080714; }
.signup-card small { color:#cfc4d9; }
.signup-card .required-note { order:20; margin-top:2px; color:#cfc4d9; }
.signup-card .signup-login-link { order:21; color:#dcbcff; text-decoration:underline; text-underline-offset:3px; }
.newsletter-consent { display:flex!important; align-items:flex-start; gap:10px; padding:11px 13px; border:1px solid rgba(0,209,24,.32); border-radius:10px; background:rgba(0,209,24,.07); color:#f2edf7; font-weight:700; cursor:pointer; }
.newsletter-consent input { flex:0 0 auto; width:18px; height:18px; margin:2px 0 0; padding:0; accent-color:#00d118; }
.newsletter-consent span { line-height:1.4; }
.newsletter-page { display:grid; min-height:calc(100vh - 190px); place-items:center; padding:28px 0; }
.newsletter-card { position:relative; width:min(680px,100%); overflow:hidden; padding:42px; border:1px solid rgba(164,114,215,.48); border-radius:20px; background:radial-gradient(circle at 88% 10%,rgba(0,209,24,.17),transparent 28%),linear-gradient(145deg,rgba(95,25,187,.78),rgba(8,7,20,.97) 65%); color:#fff; box-shadow:0 22px 48px rgba(0,0,0,.36); text-align:center; }
.newsletter-card:before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.13; background-image:linear-gradient(30deg,#a472d7 12%,transparent 12.5%,transparent 87%,#a472d7 87.5%,#a472d7),linear-gradient(150deg,#a472d7 12%,transparent 12.5%,transparent 87%,#a472d7 87.5%,#a472d7),linear-gradient(30deg,#a472d7 12%,transparent 12.5%,transparent 87%,#a472d7 87.5%,#a472d7),linear-gradient(150deg,#a472d7 12%,transparent 12.5%,transparent 87%,#a472d7 87.5%,#a472d7); background-size:40px 70px; background-position:0 0,0 0,20px 35px,20px 35px; }
.newsletter-card > * { position:relative; }
.newsletter-icon { display:grid; width:74px; height:74px; margin:0 auto 16px; place-items:center; border:1px solid rgba(0,209,24,.6); border-radius:20px; background:rgba(8,7,20,.72); box-shadow:0 0 24px rgba(0,209,24,.2); }
.newsletter-icon img { width:56px; height:56px; object-fit:contain; }
.newsletter-card h1 { margin:4px 0 8px; font-size:40px; }
.newsletter-card > p { max-width:520px; margin:0 auto 24px; color:#ddd2e8; }
.newsletter-form { display:grid; gap:8px; text-align:left; }
.newsletter-form label { font-weight:800; }
.newsletter-form > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; }
.newsletter-form input { min-width:0; border-color:rgba(164,114,215,.7); background:rgba(255,255,255,.97); color:#080714; }
.newsletter-form button { background:#00d118; color:#080714; box-shadow:0 4px 0 #006f0c; }
#newsletter-message { min-height:24px; margin:0; color:#aaffb3; font-weight:700; }
.newsletter-card > small { display:block; margin-top:12px; color:#bdb3c9; }
@media(max-width:600px){.newsletter-card{padding:30px 20px}.newsletter-form>div{grid-template-columns:1fr}.newsletter-form button{width:100%}}
.account-settings-page { display:grid; gap:15px; max-width:850px; margin:0 auto; color:#fff; }
.settings-heading { padding:20px 24px; border:1px solid rgba(164,114,215,.42); border-radius:16px; background:linear-gradient(135deg,rgba(95,25,187,.62),rgba(8,7,20,.96)); }
.settings-heading h1 { margin:3px 0; }
.settings-heading p { margin:0; color:#d7cedf; }
.settings-card { padding:20px 22px; border:1px solid rgba(164,114,215,.42); border-radius:14px; background:rgba(29,16,47,.92); box-shadow:0 14px 30px rgba(0,0,0,.25); }
.settings-card h2 { margin:0 0 12px; }
.settings-form { display:grid; gap:12px; }
.settings-form label { display:grid; gap:5px; font-weight:800; }
.settings-form input { background:rgba(255,255,255,.97); color:#080714; }
.settings-form button { justify-self:start; }
#settings-password-message,#settings-newsletter-message { min-height:20px; margin:7px 0 0; color:#aaffb3; }
.settings-toggle { display:flex; align-items:flex-start; gap:11px; cursor:pointer; }
.settings-toggle input { width:20px; height:20px; margin-top:2px; accent-color:#00d118; }
.settings-toggle span { display:grid; }
.settings-toggle small { color:#cfc5db; font-weight:400; }
.signup-error { min-height:22px; margin:0; color:#ffb7bd; font-weight:700; }
.username-availability { display:block; min-height:27px; padding:5px 8px; border:1px solid rgba(164,114,215,.3); border-radius:6px; color:#cfc4d9; background:rgba(8,7,20,.46); font-size:12px; font-weight:700; }
.username-availability.checking { color:#e6d2f7; }
.username-availability.available { border-color:rgba(0,209,24,.58); background:rgba(0,209,24,.12); color:#9cffaa; }
.username-availability.unavailable { border-color:rgba(238,65,80,.55); background:rgba(175,29,44,.18); color:#ffb7bd; }
.signup-complete-page { display:grid; min-height:610px; place-items:center; }
.signup-complete-card { width:min(620px,100%); padding:35px; border:1px solid rgba(164,114,215,.58); border-radius:20px; background:radial-gradient(circle at 88% 14%,rgba(0,209,24,.2),transparent 27%),linear-gradient(145deg,rgba(65,29,103,.97),rgba(8,7,20,.99)); box-shadow:0 22px 52px rgba(0,0,0,.38); color:#fff; text-align:center; }
.signup-complete-icon { display:grid; place-items:center; width:72px; height:72px; margin:0 auto 12px; border:3px solid #00d118; border-radius:50%; background:rgba(0,209,24,.14); color:#8dff99; box-shadow:0 0 28px rgba(0,209,24,.23); font-size:36px; font-weight:900; }
.signup-complete-card .eyebrow { color:#9cffaa; }
.signup-complete-card h1 { margin:4px 0 8px; font-size:40px; }
.signup-complete-card > p { color:#ddd3e6; }
.signup-complete-steps { display:grid; gap:8px; margin:22px 0; text-align:left; }
.signup-complete-steps span { display:flex; align-items:center; gap:11px; padding:10px 13px; border:1px solid rgba(164,114,215,.34); border-radius:9px; background:rgba(8,7,20,.5); }
.signup-complete-steps strong { display:grid; place-items:center; flex:0 0 28px; width:28px; height:28px; border-radius:50%; background:#5f19bb; }
.signup-complete-note { margin-bottom:0; font-size:13px; }
.header-profile-identity { display:flex; align-items:center; gap:7px; max-width:150px; padding:3px 8px 3px 4px; border:1px solid rgba(164,114,215,.5); border-radius:999px; background:rgba(95,25,187,.2); color:#fff; text-decoration:none; }
.header-profile-identity > span { display:grid; place-items:center; flex:0 0 30px; width:30px; height:30px; overflow:hidden; border:2px solid #00d118; border-radius:50%; background:#2a1740; font-size:11px; font-weight:900; }
.header-profile-identity img { width:100%; height:100%; object-fit:cover; }
.header-profile-identity strong { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
@media(max-width:920px){.header-profile-identity strong{display:none}.header-profile-identity{padding-right:4px}.signup-page{transform:none}}
