[hidden] { display: none !important; }

.account-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 12% 8%, rgba(0, 201, 255, 0.17), transparent 26rem),
    radial-gradient(circle at 90% 6%, rgba(255, 213, 31, 0.11), transparent 21rem),
    linear-gradient(180deg, #020914 0%, #061527 42rem, #f4f8fc 42rem, #f4f8fc 100%);
}

.account-header { position: sticky; }
.account-nav { display: flex; align-items: center; gap: 22px; color: #bad0e3; font-size: 0.94rem; font-weight: 750; }
.account-nav a:hover { color: #fff; }
.account-main { max-width: 1180px; padding: 112px 0 88px; }
.account-hero { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: 34px; align-items: stretch; margin-bottom: 28px; }
.account-main > *, .account-hero > *, .account-panel > *, .download-grid > *, .workflow-grid > *, .account-details > * { min-width: 0; }
.account-hero-copy, .launch-card, .account-panel {
  border: 1px solid rgba(122, 198, 255, 0.24);
  border-radius: 30px;
  box-shadow: 0 30px 90px rgba(0, 16, 43, 0.24);
}
.account-hero-copy { padding: clamp(28px, 5vw, 54px); background: rgba(3, 16, 31, 0.78); backdrop-filter: blur(18px); }
.account-main h1 { max-width: 820px; margin: 0; font-size: clamp(2.7rem, 5.7vw, 5.45rem); line-height: .98; letter-spacing: -.065em; }
.account-main h1, .account-main h2, .account-main h3, .account-main p, .account-main li, .account-main dd { overflow-wrap: break-word; }
.account-main h2 { margin: 0; font-size: clamp(1.55rem, 2.8vw, 2.28rem); line-height: 1.12; letter-spacing: -.04em; }
.account-main h3 { margin: 0 0 12px; font-size: 1.1rem; letter-spacing: -.02em; }
.account-main .hero-lead { max-width: 690px; margin-top: 24px; color: #c7d7e6; }
.account-status-card { display: flex; gap: 14px; align-items: flex-start; max-width: 660px; margin-top: 30px; padding: 17px 18px; border: 1px solid rgba(0, 201, 255, .24); border-radius: 18px; background: rgba(0, 201, 255, .07); }
.account-status-card strong { display: block; color: #fff; }
.account-status-card span:not(.status-dot) { display: block; color: #96b1c9; font-size: .86rem; }
.status-dot { width: 12px; height: 12px; flex: 0 0 auto; margin-top: 7px; border-radius: 50%; background: #ffd51f; box-shadow: 0 0 0 7px rgba(255, 213, 31, .12); }
body[data-membership="premium"] .status-dot { background: #39e58c; box-shadow: 0 0 0 7px rgba(57, 229, 140, .13); }
body[data-membership="unavailable"] .status-dot { background: #ff8a8a; box-shadow: 0 0 0 7px rgba(255, 138, 138, .12); }
.account-actions { margin-top: 26px; }
.launch-card { position: relative; overflow: hidden; padding: clamp(26px, 4vw, 40px); background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(230, 244, 255, .95)); color: #071221; }
.launch-card::after { content: ""; position: absolute; inset: auto -18% -34% 28%; height: 230px; border-radius: 999px; background: rgba(0, 125, 255, .12); filter: blur(22px); }
.launch-label { display: inline-flex; padding: 6px 10px; border-radius: 999px; color: #003b67; background: #dff5ff; font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.launch-card h2 { margin-top: 26px; color: #06182b; }
.launch-card ul { position: relative; z-index: 1; display: grid; gap: 12px; padding: 0; margin: 26px 0 0; list-style: none; }
.launch-card li { color: #344a5e; font-weight: 750; }
.launch-card li::before { content: "✓"; margin-right: 10px; color: #008add; font-weight: 900; }

.account-panel { margin-top: 18px; padding: clamp(22px, 4vw, 36px); background: rgba(255, 255, 255, .96); color: #071221; }
.account-panel-feature { border-color: rgba(0, 151, 255, .3); }
.account-panel-downloads { background: #fff; }
.account-panel-muted { background: rgba(255,255,255,.88); box-shadow: 0 16px 46px rgba(8, 33, 59, 0.08); }
.panel-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
.account-panel .eyebrow { margin-bottom: 8px; color: #0070cf; }
.panel-copy, .download-message, .account-panel p { color: #52687c; line-height: 1.7; }
.membership-badge { display: inline-flex; align-items: center; min-height: 34px; padding: 6px 12px; border-radius: 999px; color: #003b67; background: #dff5ff; font-size: .78rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
body[data-membership="premium"] .membership-badge { color: #063f24; background: #dffbea; }
body[data-membership="unavailable"] .membership-badge { color: #641515; background: #ffe6e6; }
.account-details { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; padding: 0; margin: 24px 0; }
.account-details div { padding: 18px; border: 1px solid #dbe6f1; border-radius: 18px; background: #f7fbff; }
.account-details dt { color: #5c7186; font-size: .78rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.account-details dd { margin: 8px 0 0; color: #071221; font-size: 1.15rem; font-weight: 850; text-align: left; text-transform: capitalize; }
.account-main button:disabled { opacity: .58; cursor: wait; }

.download-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 22px 0; }
.download-card { min-height: 250px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 22px; border: 1px solid #dbe6f1; border-radius: 22px; background: linear-gradient(180deg, #fafdff, #f1f7fe); }
.platform-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; color: #006ecd; background: #e5f5ff; font-size: 1.18rem; font-weight: 900; }
.download-card strong { display: block; color: #071221; font-size: 1.25rem; }
.download-card small { color: #62788d; font-weight: 750; }
.download-card p { margin: 8px 0 0; }
.download-card .download-button { margin-top: auto; color: #10130b; text-decoration: none; }
.download-note { display: block; margin-top: 10px; color: #60768a; font-size: .82rem; }

.advanced-details { border: 0; }
.advanced-details summary { display: grid; grid-template-columns: 1fr auto; gap: 14px; align-items: center; list-style: none; cursor: pointer; }
.advanced-details summary::-webkit-details-marker { display: none; }
.advanced-details summary::after { content: "+"; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #bdd4e9; border-radius: 50%; color: #006ecd; font-size: 1.35rem; }
.advanced-details[open] summary::after { content: "−"; }
.advanced-details summary span { color: #071221; font-size: 1.35rem; font-weight: 850; letter-spacing: -.03em; }
.advanced-details summary small { display: block; margin-top: 4px; color: #65788b; font-size: .92rem; line-height: 1.45; }
.advanced-body { margin-top: 28px; padding-top: 26px; border-top: 1px solid #dbe6f1; }
.workflow-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 20px 0 0; }
.workflow-grid article { padding: 20px; border: 1px solid #dbe6f1; border-radius: 20px; background: #f9fcff; }
.account-form { display: grid; gap: 12px; margin: 16px 0; }
.request-form { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; }
.request-form .wide-field { grid-column: 1 / -1; }
.account-form label { display: grid; gap: 7px; color: #273f55; font-weight: 760; }
.account-form input, .account-form select, .account-form textarea { width: 100%; padding: 12px; border: 1px solid #bfd0df; border-radius: 12px; background: #fff; color: #03101f; }
.account-form textarea { min-height: 92px; resize: vertical; }
.account-form fieldset { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; border: 1px solid #d5e2ee; border-radius: 14px; padding: 12px; }
.account-form legend { padding: 0 6px; color: #4e6579; font-weight: 850; }
.account-form fieldset label { display: flex; align-items: center; gap: 8px; }
.account-form fieldset input { width: auto; }
.account-list { display: grid; gap: 8px; padding: 0; margin: 12px 0 0; list-style: none; }
.account-list li { padding: 12px 0 0; border-top: 1px solid #dbe6f1; color: #273f55; }
.account-list small { display: block; color: #65788b; margin-top: 3px; }
.account-list-action { margin-top: 10px; }
.account-list-action + .account-list-action { margin-left: 8px; }
.connector-vault { margin-top: 24px; padding-top: 20px; border-top: 1px solid #dbe6f1; }
.connector-action-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 6px; }
.checkout-fineprint { margin: 18px 0 0; color: #697f93; font-size: .8rem; }

@media (max-width: 920px) {
  .account-hero { grid-template-columns: 1fr; }
  .account-details, .download-grid, .workflow-grid, .request-form { grid-template-columns: 1fr; }
  .request-form .wide-field { grid-column: auto; }
}

@media (max-width: 620px) {
  .account-main { padding-top: 84px; }
  .account-hero-copy, .launch-card, .account-panel { border-radius: 24px; }
  .account-hero-copy { padding: 28px; }
  .account-main h1 { font-size: clamp(2.35rem, 11vw, 2.9rem); }
  .account-header .nav-wrap { justify-content: flex-start; }
  .account-nav { flex: 1 1 100%; flex-wrap: wrap; gap: 10px 16px; padding-bottom: 12px; font-size: .86rem; }
  .panel-heading { flex-direction: column; }
  .account-details div, .download-card, .workflow-grid article { padding: 16px; }
  .advanced-details summary { grid-template-columns: 1fr; }
  .advanced-details summary::after { justify-self: start; }
}
