.member-page { min-height: 100vh; background: radial-gradient(circle at 85% 10%, rgba(var(--purple-rgb), .2), transparent 26%), linear-gradient(150deg, var(--paper) 0%, var(--paper) 100%); }
.account-text-action,
.account-switch button { display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px; }
#member-auth { scroll-margin-top:calc(88px + env(safe-area-inset-top, 0px)); }
[hidden] { display: none !important; }
.member-header { position: sticky; top: max(12px, env(safe-area-inset-top, 0px)); margin: max(12px, env(safe-area-inset-top, 0px)) 24px 0; inset: auto; }
.member-header .member-visit-nav { color: var(--night); background: var(--gold); }
.member-header .member-nav-account { color: var(--night); background: var(--gold); }
.member-main { width: min(1120px, calc(100% - 40px)); margin: 0 auto; padding: 92px 0 58px; }
.member-hero { display:flex; align-items:end; justify-content:space-between; gap:28px; padding:42px 0 30px; }
.member-hero h1 { margin: 4px 0 10px; font-size: clamp(2.4rem, 5vw, 4.5rem); line-height: .98; letter-spacing:-.055em; }
.member-hero p:not(.eyebrow) { max-width: 570px; margin:0; color:rgba(255,255,255,.88); font-size:1.08rem; }
.member-public-link { flex:none; padding:12px 15px; border-radius:10px; background:var(--night); color:var(--white); font-weight:800; }
.member-card { padding:clamp(22px, 4vw, 38px); border:1px solid rgba(21,21,31,.1); border-radius:18px; background:var(--white); box-shadow:var(--soft-shadow); }
.member-loading { text-align:center; color:var(--muted); }
.member-auth-layout { display:grid; grid-template-columns: .95fr 1.05fr; gap:20px; }
.member-welcome {  background:radial-gradient(circle at 80% 15%, rgba(var(--gold-rgb),.42), transparent 25%), linear-gradient(140deg, var(--purple-deep), #080b1c);  color:var(--white);}
.member-welcome h2, .member-auth-card h2 { margin:5px 0 12px; font-size:clamp(1.75rem, 3vw, 2.6rem); line-height:1.05; }
.member-welcome p:not(.eyebrow) { color:rgba(255,255,255,.88); }.member-welcome ul { display:grid; gap:12px; padding-left:20px; font-weight:700; }.member-star { display:grid; width:46px; height:46px; place-items:center; border-radius:13px; color:var(--night); background:var(--gold); font-size:26px; }
.member-tabs { display:flex; gap:7px; margin:-10px -10px 28px; padding:5px; border-radius:12px; background:#f1f0f5; }.member-tabs button { flex:1; padding:11px; border:0; border-radius:9px; color:var(--muted); background:transparent; font:inherit; font-weight:800; cursor:pointer; }.member-tabs .is-active { color:var(--purple); background:var(--purple-soft); box-shadow:0 2px 8px rgba(0,0,0,.08); }
.member-auth-card form { display:grid; gap:10px; }.member-auth-card label { font-size:.88rem; font-weight:800; }.member-auth-card input[type="email"],.member-auth-card input[type="password"] { width:100%; padding:14px; border:1px solid var(--input-border); border-radius:10px; font:inherit; }.member-consent { display:flex; align-items:flex-start; gap:9px; margin-top:6px; color:var(--muted); font-weight:600 !important; }.member-consent input { margin-top:3px; }.member-submit { width:100%; margin-top:8px; padding:14px; border:0; border-radius:10px; color:var(--night); background:var(--gold); font:inherit; font-weight:900; cursor:pointer; }.member-submit:disabled { cursor:not-allowed; opacity:.6; }.member-form-message { min-height:1.4em; margin:14px 0 0; color:var(--muted); font-size:.9rem; }.member-form-message[data-kind="error"] { color:var(--color-error); }.member-form-message[data-kind="success"] { color:var(--color-success); }.member-note { margin:22px 0 0; color:var(--muted); font-size:.82rem; }.account-view > p { color:var(--muted); }.account-text-action { margin-top:12px; padding:0; border:0; color:var(--purple); background:transparent; font:inherit; font-weight:900; cursor:pointer; }.account-switch { margin:22px 0 0; padding-top:18px; border-top:1px solid var(--line); text-align:center; }.account-switch button { padding:0; border:0; color:var(--purple); background:transparent; font:inherit; font-weight:900; cursor:pointer; }.account-message-view { text-align:center; }.account-message-icon { display:grid; width:58px; height:58px; margin:0 auto 18px; place-items:center; border-radius:50%; color:var(--night); background:var(--gold); font-size:1.6rem; }.account-message-view strong { color:var(--night); }
.member-oauth { margin-bottom:22px; }.member-oauth h2 { margin-bottom:7px; }.member-oauth > p { margin:0; color:var(--muted); }.member-oauth-actions { display:grid; gap:10px; margin-top:18px; }.member-oauth-button { display:grid; grid-template-columns:32px 1fr auto; align-items:center; gap:10px; min-height:52px; padding:10px 13px; border:1px solid var(--line); border-radius:10px; color:var(--night); background:var(--white); text-align:left; font:inherit; cursor:pointer; }.member-oauth-button > span { display:grid; width:30px; height:30px; place-items:center; border-radius:50%; color:var(--white); background:var(--night); font-weight:900; }.member-oauth-button small { color:var(--muted); }.member-oauth-button:disabled { cursor:not-allowed; opacity:.62; }.member-oauth-button:not(:disabled):hover { border-color:var(--night); }.member-identity-note { margin-top:12px!important; font-size:.78rem; line-height:1.5; }.member-auth-divider { display:flex; align-items:center; gap:10px; margin:4px 0 20px; color:var(--muted); font-size:.76rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.member-auth-divider::before,.member-auth-divider::after { content:""; flex:1; height:1px; background:var(--line); }
.member-demo-button { width:100%; margin-top:14px; padding:12px; border:1px solid var(--night); border-radius:10px; color:var(--night); background:transparent; font:inherit; font-weight:900; cursor:pointer; }.member-demo-button:hover { color:var(--white); background:var(--night); }.member-demo-note { margin:8px 0 0; color:var(--muted); font-size:.78rem; text-align:center; }.member-demo-badge { display:inline-block; margin-left:7px; padding:3px 7px; border-radius:999px; color:var(--purple); background:rgba(var(--purple-rgb),.18); font-size:.67rem; font-weight:900; letter-spacing:0; vertical-align:middle; }
.member-account-bar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:20px; }.member-account-bar h2 { margin:3px 0 0; font-size:2rem; }.member-logout { padding:10px 13px; border:1px solid var(--line); border-radius:9px; background:var(--white); font:inherit; font-weight:800; cursor:pointer; }.member-dashboard-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:16px; }.member-dashboard-grid p { margin:0 0 8px; color:var(--muted); font-weight:800; }.member-dashboard-grid strong { display:block; font-size:clamp(1.45rem,3vw,2.35rem); }.member-dashboard-grid small { display:block; margin-top:14px; color:var(--muted); }.member-wallet-card { color:var(--ink); background:linear-gradient(135deg, var(--purple-deep), var(--purple-deep)); }.member-wallet-card p, .member-wallet-card small { color:var(--muted); }.member-wallet-card strong { color:var(--purple); }.member-shortcuts { display:grid; grid-template-columns:repeat(4, 1fr); gap:12px; margin-top:16px; }.member-shortcuts a { display:grid; gap:5px; padding:18px; border:1px solid var(--line); border-radius:13px; background:var(--white); font-weight:900; }.member-shortcuts span { color:var(--muted); font-size:.78rem; font-weight:600; }.member-status { margin:18px 0 0; padding:15px 17px; border-left:4px solid var(--purple); border-radius:8px; color:var(--ink); background:rgba(var(--purple-rgb),.12); }.member-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:26px max(24px, calc((100% - 1120px)/2)); color:var(--white); background:var(--night); }.member-footer div { display:grid; gap:5px; }.member-footer strong { color:var(--white); }.member-footer nav { display:flex; flex-wrap:wrap; gap:16px; }.member-footer a { color:var(--white); font-weight:700; }
@media (max-width: 820px) { .member-header { position:relative; top:auto; margin:12px; }.member-header .site-nav { display:flex; }.member-header .site-nav a:not(:first-child) { display:none; }.member-header .site-nav a:first-child { padding:10px 12px; color:var(--night); background:var(--gold); }.member-main { width:min(100% - 28px, 620px); padding-top:25px; }.member-hero { display:grid; align-items:start; padding:28px 0; }.member-auth-layout, .member-dashboard-grid { grid-template-columns:1fr; }.member-shortcuts { grid-template-columns:repeat(2, 1fr); }.member-footer { display:grid; padding:26px 20px; } }
@media (max-width: 460px) { .member-shortcuts { grid-template-columns:1fr; }.member-public-link { width:100%; text-align:center; }.member-account-bar { align-items:flex-start; flex-direction:column; } }

/* Shared three-colour identity: light functional panels, purple emphasis,
   and night/purple promotional surfaces; existing member layout unchanged. */
.member-page { background:var(--paper); color:var(--ink); }
.member-main { width:100%; padding-top:0; }.member-hero { min-height:96vh; }.member-hero .hero-status { display:grid; }.member-hero-status { gap:12px; }.member-hero-status strong { font-size:1.35rem; }.member-hero-status p { margin:0; color:rgba(255,255,255,.88); }.member-hero .status-badge { width:max-content; padding:5px 8px; border-radius:6px; color:var(--night); background:var(--gold); font-size:.7rem; font-weight:900; letter-spacing:.06em; }.member-auth-layout, #member-dashboard { width:min(1180px, calc(100% - 40px)); margin:44px auto 0; }
.member-uki-hero { position:absolute; z-index:2; right:8%; bottom:-6%; width:min(39vw, 530px); max-height:88%; object-fit:contain; object-position:bottom; filter:drop-shadow(0 28px 28px rgba(5,2,28,.55)); pointer-events:none; }.member-hero .hero-content { position:relative; z-index:3; max-width:58%; }.member-hero .hero-status { z-index:4; right:5%; bottom:9%; max-width:260px; }.member-uki-welcome { position:absolute; right:-34px; bottom:-28px; width:210px; opacity:.36; filter:drop-shadow(0 12px 14px rgba(0,0,0,.3)); pointer-events:none; }.member-welcome { position:relative; overflow:hidden;  color:var(--white);}.member-welcome > *:not(.member-uki-welcome) { position:relative; z-index:1; }
.member-card { border-color:var(--line); background:var(--white); color:var(--ink); box-shadow:var(--soft-shadow); }.member-auth-card { color:var(--ink); background:var(--white); }.member-auth-card h2 { color:var(--night); }.member-welcome { background:radial-gradient(circle at 82% 14%, rgba(var(--gold-rgb),.46), transparent 26%), linear-gradient(135deg, var(--purple-deep), #080b1c 65%);  color:var(--white);}.member-loading { color:var(--muted); }
.member-account-bar { position:relative; padding:33px 36px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(115deg,var(--white),var(--purple-soft)); box-shadow:var(--soft-shadow); }.member-account-bar h2 { color:var(--ink); font-size:clamp(2.1rem, 4vw, 3.4rem); }.member-tonight { margin:8px 0 0; color:var(--muted); }.member-tonight strong { color:var(--purple); }.member-logout { color:var(--ink); border-color:var(--line); background:var(--white); }
.member-dashboard-grid { margin-top:18px; }.member-dashboard-grid .member-card { min-height:205px; }.member-dashboard-grid p { color:var(--muted); }.member-dashboard-grid small { color:var(--muted); }.member-wallet-card { position:relative; overflow:hidden; background:var(--purple-soft); }.member-wallet-card::after { content:"✦"; position:absolute; right:20px; top:-18px; color:rgba(var(--purple-rgb),.10); font-size:130px; line-height:1; }.member-wallet-card strong { color:var(--purple); font-size:4.5rem; line-height:1; }
.member-reward-summary { position:relative; overflow:hidden; }.member-reward-summary > *:not(.member-uki-celebrate) { position:relative; z-index:1; }.member-uki-celebrate { position:absolute; right:-34px; bottom:-42px; width:180px; height:auto; opacity:.27; pointer-events:none; }
.member-shortcuts a { min-height:144px; padding:23px; border-color:var(--line); color:var(--ink); background:var(--white); transition:transform .2s ease, border-color .2s ease; }.member-shortcuts a:hover { border-color:var(--purple); transform:translateY(-4px); }.member-shortcuts b { color:var(--purple); font-size:1.7rem; }.member-shortcuts span { color:var(--muted); }.member-status { color:var(--ink); border-left-color:var(--purple); background:rgba(var(--purple-rgb),.16); }.member-footer { margin-top:0; }
@media (max-width:820px) { .member-auth-layout, #member-dashboard { width:min(100% - 28px, 680px); }.member-hero { min-height:680px; }.member-hero .hero-status { display:none; }.member-account-bar { padding:26px; }.member-dashboard-grid .member-card { min-height:0; } }
@media (max-width:820px) { .member-uki-hero { right:-12%; width:92vw; bottom:-3%; opacity:.58; }.member-hero .hero-content { max-width:100%; }.member-uki-welcome { width:180px; right:-36px; opacity:.24; } }

.member-priority-grid { display:grid; grid-template-columns:1.2fr 1fr .85fr; gap:16px; margin-top:18px; }.member-priority-grid .member-card { min-height:220px; }.member-card-cta { display:grid; align-content:center; gap:8px; width:100%; padding:30px; border:1px solid var(--line); text-align:left; cursor:pointer; }.member-card-cta strong { color:var(--ink); font-size:1.8rem; }.member-card-cta small,.member-card-cta span { color:var(--muted); }.member-card-icon { color:var(--purple)!important; font-size:2.4rem; }.member-reward-summary strong { display:block; color:var(--purple); font-size:4.5rem; line-height:1; }.member-reward-summary span { display:block; margin-top:12px; font-weight:800; }.profile-progress-card { display:grid; grid-template-columns:1fr 330px; align-items:center; gap:28px; margin-top:16px; }.profile-progress-card h3 { margin:0 0 7px; font-size:1.55rem; }.profile-progress-card p { margin-bottom:5px; }.profile-progress-card > div > span { color:var(--muted); }.profile-progress-side { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:10px 14px; }.profile-progress-side > strong { color:var(--purple); font-size:1.6rem; }.profile-progress-track { height:10px; overflow:hidden; border-radius:999px; background:var(--purple-soft); }.profile-progress-track span { display:block; width:60%; height:100%; border-radius:inherit; background:var(--purple); }.profile-progress-side button { grid-column:1/-1; padding:11px; border:0; border-radius:9px; color:var(--night); background:var(--gold); font:inherit; font-weight:900; cursor:pointer; }
.member-shortcuts button { display:grid; gap:5px; min-height:144px; padding:23px; border:1px solid var(--line); border-radius:13px; color:var(--ink); background:var(--white); text-align:left; font:inherit; font-weight:900; cursor:pointer; transition:transform .2s ease,border-color .2s ease; }.member-shortcuts button:hover { border-color:var(--purple); transform:translateY(-4px); }.member-shortcuts button b { color:var(--purple); font-size:1.7rem; }.member-shortcuts button span { color:var(--muted); font-size:.78rem; font-weight:600; }
.member-linked-accounts { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; gap:28px; margin-top:16px; }.member-linked-accounts h3 { margin:3px 0 7px; font-size:1.5rem; }.member-linked-accounts p { margin:0; color:var(--muted); }.linked-account-list { display:grid; gap:9px; }.linked-account-list > div { display:grid; grid-template-columns:80px 1fr auto; align-items:center; gap:12px; min-height:54px; padding:9px 10px 9px 15px; border:1px solid var(--line); border-radius:11px; background:var(--white); }.linked-account-list span { color:var(--muted); }.linked-account-list button { min-height:38px; padding:8px 11px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:transparent; font:inherit; font-weight:800; }.linked-account-list button:disabled { opacity:.55; }.member-profile-identity { display:grid; grid-template-columns:auto 1fr; gap:4px 14px; margin:-12px 0 24px; padding:16px 18px; border:1px solid var(--line); border-radius:12px; background:var(--white); }.member-profile-identity span { grid-row:1/3; align-self:center; color:var(--muted); }.member-profile-identity strong { color:var(--purple); }.member-profile-identity small { color:var(--muted); }.profile-progress-track span { transition:width .2s ease; }
.member-detail { width:min(1180px,calc(100% - 40px)); min-height:620px; margin:44px auto 0; }.member-detail-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:28px; }.member-detail-head button { padding:10px 14px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:var(--white); font:inherit; font-weight:800; cursor:pointer; }.member-detail-title { max-width:760px; margin-bottom:30px; }.member-detail-title h2 { margin:0 0 10px; font-size:clamp(2.3rem,5vw,4.2rem); line-height:1; }.member-detail-title > p:last-child { color:var(--muted); font-size:1.05rem; }.member-card-detail-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:20px; }.digital-member-card { position:relative; display:grid; grid-template-columns:1fr 180px; min-height:360px; padding:38px; overflow:hidden; border:1px solid var(--line); border-radius:24px; color:var(--white); background:radial-gradient(circle at 85% 10%,rgba(var(--gold-rgb),.35),transparent 26%),linear-gradient(135deg,var(--purple-deep),var(--purple-deep) 55%,var(--purple-deep)); box-shadow:0 28px 70px rgba(0,0,0,.35); }.digital-member-card::after { content:"UKI"; position:absolute; right:-12px; bottom:-54px; color:rgba(255,255,255,.09); font-size:190px; font-weight:1000; }.digital-member-card div:first-child { display:grid; align-content:start; gap:4px; }.digital-member-card div:first-child strong { font-size:2.5rem; }.digital-member-card p { align-self:end; margin:0; font-size:1.3rem; font-weight:900; }.digital-member-card small { align-self:end; z-index:1; }.demo-qr { width:170px; height:170px; padding:12px; border:10px solid #fff; border-radius:12px; background:repeating-conic-gradient(#080b1c 0 25%,#fff 0 50%) 0/22px 22px; }.card-status-card dl { display:grid; gap:12px; }.card-status-card dl div { display:flex; justify-content:space-between; gap:20px; padding-bottom:10px; border-bottom:1px solid rgba(255,255,255,.1); }.card-status-card dt { color:var(--muted); }.card-status-card dd { margin:0; font-weight:800; }.card-status-card > strong { color:var(--green); font-size:2rem; }.card-status-card button { width:100%; margin-top:15px; padding:11px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:transparent; font:inherit; font-weight:800; }.card-status-card small { display:block; margin-top:8px; color:var(--muted); }
.token-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }.token-filters button { padding:9px 14px; border:1px solid var(--line); border-radius:999px; color:var(--ink); background:transparent; font:inherit; font-weight:800; cursor:pointer; }.token-filters .is-active { color:var(--night); background:var(--gold); }.token-ledger { display:grid; gap:10px; }.token-ledger article { display:grid; grid-template-columns:60px 1fr auto; align-items:center; gap:16px; padding:20px; border:1px solid var(--line); border-radius:14px; background:var(--white); }.token-ledger span { font-size:1.35rem; font-weight:900; }.token-in { color:var(--green); }.token-out { color:var(--color-error); }.token-ledger div { display:grid; gap:3px; }.token-ledger small { color:var(--muted); }.token-ledger b { color:var(--muted); }.profile-form { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.profile-form label { display:grid; gap:7px; color:var(--muted); font-weight:800; }.profile-form input,.profile-form select { width:100%; padding:13px; border:1px solid var(--input-border); border-radius:9px; color:var(--ink); background:var(--white); font:inherit; }.profile-form select option { color:var(--ink); }.profile-form .profile-consent,.profile-form button,.profile-form p { grid-column:1/-1; }.profile-consent { display:flex!important; grid-template-columns:auto 1fr; align-items:center; }.profile-consent input { width:auto; }.profile-form button { padding:13px; border:0; border-radius:9px; color:var(--night); background:var(--gold); font:inherit; font-weight:900; cursor:pointer; }
@media (max-width:820px) { .member-priority-grid,.member-card-detail-grid,.profile-progress-card { grid-template-columns:1fr; }.profile-progress-side { grid-template-columns:auto 1fr; }.profile-form { grid-template-columns:1fr; }.digital-member-card { grid-template-columns:1fr; gap:24px; }.demo-qr { width:145px; height:145px; }.member-detail { width:min(100% - 28px,680px); } }

@supports (padding: max(0px)) {
  .member-footer { padding-bottom: max(26px, env(safe-area-inset-bottom)); }
  @media (max-width: 820px) { .member-header { margin-top: max(12px, env(safe-area-inset-top)); } }
}

@media (max-width: 980px) {
  .member-header { position:relative; top:auto; margin:max(12px, env(safe-area-inset-top, 0px)) 12px 0; }
  .member-header .site-nav { display:none; }
  .member-main { width:100%; }
  .member-auth-layout, #member-dashboard, .member-detail { width:min(100% - 28px, 760px); }
  .member-auth-layout,.member-priority-grid,.member-card-detail-grid,.profile-progress-card,.member-linked-accounts { grid-template-columns:1fr; }
  .member-hero { min-height:680px; }
  .member-hero .hero-status { display:none; }
  .member-account-bar { padding:26px; }
  .member-priority-grid .member-card { min-height:0; }
  .member-footer { justify-content:center; padding:24px 20px; text-align:center; }
  .member-footer-links { display:none; }
  .member-footer div { justify-items:center; }
}

@media (max-width: 980px) {
  .member-page[data-global-navigation] .member-hero { padding-top: calc(104px + env(safe-area-inset-top, 0px)); }
}

@media (max-width: 640px) {
  .member-oauth-button { grid-template-columns:32px 1fr; }
  .member-oauth-button small { grid-column:2; }
  .member-shortcuts { grid-template-columns:1fr; }
  .linked-account-list > div { grid-template-columns:1fr auto; }
  .linked-account-list span { grid-column:1; }
  .linked-account-list button { grid-column:2; grid-row:1/3; min-height:44px; }
  .member-account-bar { align-items:flex-start; flex-direction:column; }
}

/* 验证码／同意沿用原表单；长邮箱和会员编号在三端换行。 */
#otp-token { width:100%; min-height:48px; padding:14px; border:1px solid var(--input-border); border-radius:10px; font:inherit; letter-spacing:.2em; }
#otp-email-display,#account-member-id,#member-enrol-versions { overflow-wrap:anywhere; }
#member-enrol-legal a { display:inline-flex; min-height:44px; align-items:center; color:var(--purple); }
#member-enrol-legal .member-consent { min-height:44px; color:inherit; }
#member-enrol-consent { min-width:24px; min-height:24px; }

/* 积分赚取说明沿用共享浅色功能卡片；数值待批，不创建客户端积分账户。 */
.member-earn-teaser { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:16px; }
.member-earn-teaser h3 { margin:0 0 6px; font-size:1.4rem; }
.member-earn-teaser p { margin:0; color:var(--muted); }
.member-earn-action { min-height:44px; padding:12px 18px; border:1px solid var(--gold); border-radius:10px; background:var(--gold); color:var(--night); font:inherit; font-weight:800; cursor:pointer; }
.member-earn-action:focus-visible,.member-earn-rules summary:focus-visible { outline:3px solid var(--purple); outline-offset:4px; }
.member-earn-action:disabled { background:var(--white); color:var(--muted); border-color:var(--line); cursor:not-allowed; }
.member-earn-secondary { color:var(--purple); background:transparent;  border-color:var(--purple);}
.member-earn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:24px; }
.member-earn-method { min-width:0; padding:24px; display:flex; flex-direction:column; align-items:flex-start; }
.member-earn-method-head { display:flex; flex-wrap:wrap; align-items:center; gap:10px; width:100%; }
.member-earn-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:rgba(var(--gold-rgb),.13); color:var(--purple); font-size:1.5rem; }
.member-earn-badge { color:var(--purple); font-size:.76rem; font-weight:800; }
.member-earn-icon::before { content:attr(data-earn-icon); }
.member-detail,#member-dashboard { scroll-margin-top:calc(126px + env(safe-area-inset-top, 0px)); }
.member-earn-method h3 { margin:20px 0 10px; font-size:1.35rem; line-height:1.25; }
.member-earn-method p { margin:0 0 20px; color:var(--muted); line-height:1.65; }
.member-earn-method small { margin-top:auto; color:var(--purple); font-weight:700; }
.member-earn-rules { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:24px; }
.member-earn-rules .member-card { padding:16px 20px; align-self:start; }
.member-earn-rules summary { min-height:44px; align-content:center; font-weight:800; cursor:pointer; }
.member-earn-rules p,.member-earn-distinction { color:var(--muted); line-height:1.65; }
.member-earn-distinction { margin:24px 0; }
.member-earn-actions { display:flex; flex-wrap:wrap; gap:12px; }
[data-member-panel="earn"] .member-detail-title h2 { font-size:clamp(2rem,4vw,3.5rem); line-height:1.12; }
[data-member-panel="earn"] .member-status { margin-bottom:0; }
@media (min-width:641px) and (max-width:980px) { .member-earn-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) {
  .member-earn-teaser { align-items:stretch; flex-direction:column; padding:22px; }
  .member-earn-grid,.member-earn-rules { grid-template-columns:minmax(0,1fr); gap:12px; }
  .member-earn-actions { flex-direction:column; }
  .member-earn-actions button { width:100%; }
}

/* Account stays readable and task-first within the shared app shell. */
@media (max-width:980px) {
  .member-page .member-hero {
    grid-template-columns:minmax(0,1fr);
    min-height:clamp(360px, 55svh, 540px);
    padding:calc(104px + env(safe-area-inset-top, 0px)) 0 32px;
    align-content:end;
  }
  .member-page .member-hero .hero-content {
    width:min(calc(100% - 40px), 640px);
    max-width:none;
    margin:0 auto;
  }
  .member-page .member-hero h1 {
    font-size:clamp(28px, 6.8vw, 40px);
    line-height:1.12;
    white-space:normal;
  }
  .member-page .member-uki-hero {
    right:-12px;
    bottom:0;
    width:min(64vw, 330px);
    opacity:.2;
  }
  .member-auth-layout { margin-top:24px; }
  .member-auth-layout .member-auth-card { order:-1; }
  .member-footer .member-footer-links { display:none; }
}

/* 2026-10-23: Account is a functional area inside the same website.
   Keep original nodes/IDs/Auth handlers; remove the repeated marketing step. */
.member-page .site-header,.member-page .site-header.is-scrolled { background:var(--night);box-shadow:none; }
.member-page .member-hero {
  display:block;
  min-height:0;
  height:auto;
  padding:calc(140px + env(safe-area-inset-top, 0px)) 0 18px;
  color:var(--ink);
  background:var(--paper);
}
.member-page .member-hero :is(.hero-image,.hero-shade,.member-uki-hero,.hero-status,.hero-actions) { display:none; }
.member-page .member-hero .hero-content {
  width:min(1120px, calc(100% - 40px));
  max-width:none;
  margin:0 auto;
}
.member-page .member-hero .eyebrow { color:var(--purple);margin-bottom:10px; }
.member-page .member-hero h1 { color:var(--ink);font-size:clamp(28px, 3.2vw, 40px);line-height:1.14;letter-spacing:-.035em;white-space:normal; }
.member-page .member-hero .hero-copy { display:block;max-width:640px;margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.65; }
.member-page :is(.member-auth-layout,#member-dashboard,.member-detail) { width:min(1120px, calc(100% - 40px));margin-top:20px; }
.member-auth-layout { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:24px; }
.member-auth-layout .member-auth-card { order:-1; }
.member-page .member-card { min-width:0;border-radius:var(--panel-radius); }
.member-page .member-welcome { color:var(--white);background:var(--brand-gradient); }
.member-page .member-welcome h2 { font-size:clamp(24px, 2.5vw, 32px);line-height:1.2; }
.member-page .member-auth-card h2 { font-size:clamp(24px, 2.4vw, 32px);line-height:1.2; }
.member-page .member-uki-welcome { display:none; }
.member-page :is(.member-submit,.member-demo-button,.member-logout,.member-earn-action,.profile-form button,.member-detail-head button) { min-height:var(--control-height);border-radius:var(--control-radius); }
.member-page :is(.account-text-action,.account-switch button,.linked-account-list button,.member-consent) { min-height:var(--touch-target); }
.member-page .member-auth-card :is(input[type="email"],input[type="password"],#otp-token),.member-page .profile-form :is(input:not([type="checkbox"]),select) { min-height:var(--control-height);border-radius:var(--control-radius); }
.member-page .member-account-bar { padding:24px;border-radius:var(--panel-radius);box-shadow:none; }
.member-page .member-account-bar h2 { font-size:clamp(24px, 3vw, 32px);line-height:1.2; }
.member-page .member-priority-grid .member-card { min-height:0; }
.member-page :is(.member-card-cta,.member-shortcuts button,.member-shortcuts a) { min-height:100px; }
.member-page :is(.member-submit,.member-demo-button,.member-logout,.account-text-action,.account-switch button,.linked-account-list button,input,select):focus-visible { outline:3px solid var(--purple);outline-offset:3px;box-shadow:0 0 0 5px var(--white); }
@media (max-width:980px) {
  .member-page[data-global-navigation] .member-hero { min-height:0;padding:calc(88px + env(safe-area-inset-top, 0px)) 0 14px; }
  .member-page :is(.member-auth-layout,#member-dashboard,.member-detail) { width:min(760px, calc(100% - 32px));margin-top:16px; }
  .member-page .member-hero .hero-content { width:min(760px, calc(100% - 32px)); }
  .member-auth-layout { grid-template-columns:minmax(0,1fr);gap:20px; }
  .member-page .member-hero h1 { font-size:clamp(28px, 5vw, 36px); }
}
@media (max-width:640px) {
  .member-page .member-card { padding:22px 20px;border-radius:var(--panel-radius-mobile); }
  .member-page .member-hero .hero-copy { font-size:14px; }
  .member-page .member-account-bar { padding:20px;border-radius:var(--panel-radius-mobile); }
}

/* Shared typography: preserve marketing headings and all form/data owners. */
.member-page :is(.member-auth-card form,.profile-form) { font-size:var(--text-body,16px);font-weight:var(--weight-body,400);line-height:1.6; }
.member-page :is(.member-auth-card form label,.profile-form label,.account-switch button,.member-tabs button,.account-text-action) { font-weight:var(--weight-label,600); }
.member-page :is(.member-auth-card h2,.member-welcome h2,.member-detail-title h2,.member-submit,.member-demo-button,.profile-form button) { font-weight:var(--weight-heading,700); }
.member-page :is(.member-note,.member-demo-note,.member-identity-note) { font-size:var(--text-caption,12px);line-height:1.6; }
.member-page .profile-form label { min-width:0; }
.member-page .profile-form :is(input:not([type="checkbox"]),select) { min-width:0;font-size:16px; }
@media(min-width:641px) and (max-width:980px) {
  .member-page #member-auth.member-auth-layout { width:min(var(--tablet-form-width,560px),calc(100% - 32px));margin-inline:auto; }
  .member-page .profile-form { grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
  .member-page .profile-form :is(.profile-consent,button,p) { grid-column:1/-1; }
}
