.member-theme-none { --member-dark:#394655; --member-light:#f5f7f9; --member-accent:#91a1b2; --member-mid:#e2e8ee; --member-ink:#263441; --member-soft:#5e6f80; --member-border:#c8d2dc; }
.member-theme-bronze { --member-dark:#875234; --member-light:#f7e7d8; --member-accent:#c58b62; --member-mid:#ead0b8; --member-ink:#4e3225; --member-soft:#795844; --member-border:#dcb293; }
.member-theme-silver { --member-dark:#748a9d; --member-light:#f3f7fb; --member-accent:#9fb5c7; --member-mid:#dce6ef; --member-ink:#293d4f; --member-soft:#617588; --member-border:#c2d0dd; }
.member-theme-gold { --member-dark:#9d7a35; --member-light:#fbf4dc; --member-accent:#ccb174; --member-mid:#ece0b7; --member-ink:#544623; --member-soft:#817144; --member-border:#d6c187; }
.member-theme-platinum { --member-dark:#7894a5; --member-light:#fbfdff; --member-accent:#b1c7d5; --member-mid:#e7f0f5; --member-ink:#304953; --member-soft:#6b8491; --member-border:#c4d7e2; }
.member-theme-diamond { --member-dark:#488dac; --member-light:#effbff; --member-accent:#85c8e0; --member-mid:#cceaf4; --member-ink:#234e63; --member-soft:#557f94; --member-border:#a7d3e4; }
.member-theme-blackgold { --member-dark:#15181d; --member-light:#2e2d2c; --member-accent:#c3a56b; --member-mid:#202229; --member-ink:#f0e2c3; --member-soft:#c0b293; --member-border:#685a40; }
.member-theme-duke { --member-dark:#32204d; --member-light:#3b2855; --member-accent:#d7b878; --member-mid:#513868; --member-ink:#f5eef9; --member-soft:#d6c6df; --member-border:#a486bc; }

.member-name-row { display:inline-flex; align-items:center; gap:7px; flex-wrap:wrap; vertical-align:middle; }
.member-badge { position:relative; display:inline-flex; width:var(--member-badge-size,28px); height:var(--member-badge-size,28px); flex:0 0 var(--member-badge-size,28px); overflow:hidden; vertical-align:middle; isolation:isolate; }
.member-symbol { display:block; width:100%; height:100%; overflow:visible; }
.member-badge::after { content:""; position:absolute; inset:12% -45%; background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 48%,transparent 62%); transform:translateX(-90%); animation:member-badge-reflect 8s ease-in-out infinite; pointer-events:none; }
.member-badge.member-theme-blackgold { border-radius:9px; background:#25272c; }
.member-profile-badge { display:inline-flex; vertical-align:middle; }
.profile-chip .member-name-row { display:flex; }
.profile-chip .member-badge { display:inline-flex; }
.profile-chip .member-name-row > strong { line-height:1.35; }

.member-center { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; min-width:0; max-width:1250px; margin:0 auto; }
.member-identity { position:relative; min-height:282px; padding:30px 34px; border:1px solid var(--member-border); border-radius:24px; overflow:hidden; isolation:isolate; color:var(--member-ink); background:linear-gradient(112deg,var(--member-light) 0%,var(--member-light) 38%,var(--member-mid) 74%,var(--member-light) 100%); box-shadow:0 14px 38px rgba(55,42,32,.065),inset 0 1px 0 rgba(255,255,255,.8); }
.member-identity::before { content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(140deg,rgba(255,255,255,.18),transparent 54%),repeating-linear-gradient(135deg,transparent 0 42px,rgba(255,255,255,.14) 43px 44px,transparent 45px 78px); opacity:.4; pointer-events:none; }
.member-theme-blackgold.member-identity { background:linear-gradient(114deg,#1c1f24 0%,#25272c 49%,#35302a 77%,#202329 100%); box-shadow:0 15px 42px rgba(20,20,26,.15),inset 0 1px 0 rgba(227,210,162,.13); }
.member-theme-duke.member-identity { background:linear-gradient(112deg,#302043 0%,#3b2855 42%,#614579 81%,#38264e 100%); box-shadow:0 15px 42px rgba(45,25,65,.15),inset 0 1px 0 rgba(239,221,255,.24); }
.member-card-texture { position:absolute; width:380px; height:380px; right:-65px; top:-45px; opacity:.2; transform:rotate(-13deg); pointer-events:none; }
.member-theme-bronze .member-card-texture { transform:rotate(0deg); opacity:.17; }
.member-theme-silver .member-card-texture { transform:rotate(17deg); }
.member-theme-gold .member-card-texture { transform:rotate(-27deg); }
.member-theme-platinum .member-card-texture { transform:rotate(9deg); opacity:.18; }
.member-theme-diamond .member-card-texture { transform:rotate(-8deg); opacity:.25; }
.member-theme-blackgold .member-card-texture { transform:rotate(12deg); opacity:.22; }
.member-theme-duke .member-card-texture { transform:rotate(-12deg); opacity:.28; }
.member-card-reflection { position:absolute; top:-70%; bottom:-70%; left:-30%; width:45%; background:linear-gradient(100deg,transparent 10%,rgba(255,255,255,.04) 38%,rgba(255,255,255,.38) 50%,rgba(255,255,255,.08) 58%,transparent 83%); transform:translateX(-120%) rotate(18deg); animation:member-card-reflect 10s cubic-bezier(.22,.61,.36,1) infinite; pointer-events:none; }
.member-card-edge { position:absolute; left:14%; right:14%; top:0; height:1px; background:linear-gradient(90deg,transparent,var(--member-accent),rgba(255,255,255,.9),var(--member-accent),transparent); opacity:.8; animation:member-edge-glow 6s ease-in-out infinite; pointer-events:none; }
.member-card-content { position:relative; z-index:2; max-width:70%; }
.member-card-kicker { display:block; color:var(--member-soft); font-size:12px; font-weight:600; letter-spacing:.14em; }
.member-card-user { display:flex; align-items:center; gap:15px; margin-top:25px; }
.member-card-avatar { display:grid; place-items:center; width:56px; height:56px; flex:0 0 56px; border:1px solid rgba(255,255,255,.65); border-radius:17px; overflow:hidden; font-size:18px; font-weight:700; background:rgba(255,255,255,.25); box-shadow:0 4px 14px rgba(24,26,38,.05); }
.member-card-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.member-card-user strong { display:block; font-size:22px; line-height:1.4; overflow-wrap:anywhere; }
.member-card-user div > span { display:block; margin-top:4px; color:var(--member-soft); font-size:12px; letter-spacing:.03em; }
.member-card-tier { display:flex; align-items:baseline; gap:16px; flex-wrap:wrap; margin-top:24px; }
.member-card-tier h2 { margin:0; font-size:31px; font-weight:700; letter-spacing:.055em; line-height:1.35; }
.member-card-tier h2 small { margin-left:10px; font-size:15px; font-weight:500; letter-spacing:.08em; }
.member-card-tier > span { font-size:12px; color:var(--member-soft); }
.member-card-note { margin:14px 0 0; font-size:12px; line-height:1.8; color:var(--member-soft); }
.member-card-emblem { position:absolute; right:7%; top:50%; width:146px; height:146px; transform:translateY(-50%); z-index:1; }
.member-neutral-orbit { display:block; width:100%; height:100%; border:1px solid var(--member-border); border-radius:32%; transform:rotate(45deg); }
.member-neutral-orbit::after { content:""; position:absolute; inset:20%; border:1px solid var(--member-border); border-radius:30%; }
.member-identity--compact { margin-bottom:22px; min-height:235px; padding:25px 30px; }
.member-identity--compact .member-card-user { margin-top:20px; }
.member-identity--compact .member-card-tier { margin-top:18px; }
.member-identity--compact .member-card-tier h2 { font-size:27px; }
.member-identity--compact .member-card-emblem { width:126px; height:126px; right:7%; }
.member-card-entry { margin-top:17px; padding:0; color:var(--member-ink); border:0; background:none; font-size:13px; font-weight:600; }
.member-card-entry span { margin-left:12px; }
.member-card-entry:not(:disabled):hover { box-shadow:none; transform:none; color:var(--member-dark); }
.member-theme-blackgold .member-card-entry:not(:disabled):hover { color:#fff1cb; }
.member-theme-duke .member-card-entry:not(:disabled):hover { color:#fff0da; }

.member-progress-panel,.member-tier-panel,.member-history-panel,.member-rules-panel { padding:27px 29px; background:#fff; border:1px solid #eee7e9; border-radius:22px; box-shadow:0 9px 27px rgba(71,38,49,.025); min-width:0; }
.member-section-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.member-section-head h3,.member-rules-panel h3 { margin:7px 0 0; font-size:20px; line-height:1.45; color:#29242b; }
.member-section-kicker { color:#9e6074; font-size:11px; letter-spacing:.14em; font-weight:650; }
.member-refresh { border:1px solid #ebdfe3; background:#fdf9fb; border-radius:10px; padding:8px 13px; color:#805867; font-size:12px; white-space:nowrap; }
.member-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.member-metrics > div { min-width:0; }
.member-metrics > div:not(:first-child) { padding-left:27px; border-left:1px solid #efe8eb; }
.member-metrics span,.member-metrics small { display:block; color:#857782; font-size:12px; line-height:1.6; }
.member-metrics strong { display:block; font-size:28px; line-height:1.5; margin:8px 0 3px; color:#342a34; font-weight:650; letter-spacing:-.025em; overflow-wrap:anywhere; }
.member-metrics small { font-size:11px; color:#9a8a93; }
.member-progress-caption { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:29px 0 11px; color:#9b7b86; font-size:12px; }
.member-progress-caption strong { font-weight:500; color:#725362; text-align:center; }
.member-progress-track { height:5px; border-radius:10px; background:#f4ecef; overflow:hidden; }
.member-progress-track > span { display:block; height:100%; min-width:0; max-width:100%; border-radius:inherit; background:linear-gradient(90deg,#cf9aa9,#a66c86); transition:width .4s ease; }
.member-error { padding:11px 14px; margin-top:18px; border-radius:10px; background:#fff4f4; color:#aa4444; font-size:13px; line-height:1.6; }
.member-preview-tip,.member-history-label { font-size:11px; color:#a2949c; text-align:right; }
.member-tier-gallery { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:10px; }
.member-tier-choice { border:1px solid #eee7eb; border-radius:16px; padding:15px 8px 13px; background:#fff; color:#39313b; display:flex; align-items:center; flex-direction:column; min-width:0; }
.member-tier-choice:not(:disabled):hover { border-color:var(--member-border); box-shadow:0 8px 16px rgba(38,27,36,.055); }
.member-tier-choice.selected { border-color:var(--member-border); background:linear-gradient(145deg,#fff,var(--member-light)); box-shadow:inset 0 0 0 1px var(--member-border); }
.member-tier-choice.member-theme-blackgold.selected { background:linear-gradient(145deg,#27292e,#3a332b); color:#eeddb7; }
.member-tier-choice.member-theme-duke.selected { background:linear-gradient(145deg,#3b2855,#614579); color:#f5eef9; }
.member-tier-art { display:block; width:57px; height:57px; margin-bottom:9px; }
.member-tier-choice.member-theme-blackgold .member-tier-art { background:#282a2e; border-radius:16px; }
.member-tier-choice strong { font-size:15px; line-height:1.6; letter-spacing:.025em; }
.member-tier-choice small { font-size:9px; color:#958691; margin-top:7px; white-space:nowrap; }
.member-tier-choice.member-theme-blackgold.selected small { color:#c5b698; }
.member-tier-choice.member-theme-duke.selected small { color:#d6c6df; }
.member-tier-state { color:#b18b9b; font-size:9px; margin-top:10px; padding:3px 7px; border-radius:5px; background:rgba(162,112,136,.07); }
.member-preview-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr); align-items:center; gap:28px; margin-top:24px; }
.member-identity--preview { min-height:235px; padding:23px 26px; }
.member-identity--preview .member-card-content { max-width:70%; }
.member-identity--preview .member-card-user { margin-top:20px; }
.member-identity--preview .member-card-user strong { font-size:18px; }
.member-identity--preview .member-card-avatar { width:43px; height:43px; flex-basis:43px; border-radius:13px; font-size:15px; }
.member-identity--preview .member-card-user div > span { font-size:10px; }
.member-identity--preview .member-card-tier h2 { font-size:27px; }
.member-identity--preview .member-card-emblem { width:100px; height:100px; right:5%; }
.member-identity--preview .member-card-note { font-size:10px; }
.member-preview-description h3 { font-size:21px; margin:9px 0 12px; color:#332a36; }
.member-preview-description p { color:#93858f; font-size:12px; line-height:1.9; margin:8px 0; }
.member-preview-description p strong { color:#695264; font-weight:500; }
.member-icon-scale { display:flex; align-items:center; gap:12px; margin-top:17px; }
.member-icon-scale > span:last-child { font-size:10px; color:#aa9ca6; }

.member-ledger-head,.member-ledger-row { display:grid; grid-template-columns:minmax(0,2fr) minmax(90px,1fr) minmax(80px,.85fr) minmax(155px,1.2fr); align-items:center; gap:20px; }
.member-ledger-head { padding:11px 14px; border-radius:8px; background:#fbf7f9; color:#9e8e98; font-size:11px; }
.member-ledger-row { padding:19px 14px; border-bottom:1px solid #f2edf0; color:#7a6b76; font-size:12px; }
.member-ledger-row div strong { display:block; font-size:13px; color:#514450; line-height:1.7; overflow-wrap:anywhere; }
.member-ledger-row small { display:block; font-size:10px; color:#ac9da7; overflow-wrap:anywhere; margin-top:3px; }
.member-ledger-points { color:#936982; font-size:14px; font-weight:600; }
.member-ledger-row--adjustment .member-ledger-points { color:#9a7b59; }
.member-ledger-row time { font-size:11px; color:#a3939e; }
.member-history-more { display:block; margin:18px auto 0; }
.member-history-end { margin:18px 0 0; color:#b2a5ad; font-size:11px; text-align:center; }
.member-empty { padding:30px 18px; text-align:center; color:#a08e99; font-size:13px; line-height:1.9; }
.member-empty strong { display:block; color:#755c6e; font-size:15px; }
.member-empty p { margin:7px 0; }
.member-empty .primary-btn { margin-top:16px; }
.member-rules-panel { background:#fcf9fb; }
.member-rules-panel h3 { font-size:15px; margin:0 0 14px; color:#725566; }
.member-rules-panel ul { padding-left:19px; margin:0; color:#aa94a2; font-size:12px; line-height:2; }
.member-order-customer { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin-top:11px; color:#8e818a; font-size:12px; }
.member-order-note { margin-top:14px; padding:10px 13px; border-radius:9px; font-size:12px; line-height:1.8; color:#937583; background:#fcf7fa; }
.member-order-note a { color:#99667f; text-decoration:none; }
.order-chat-member .member-badge,.order-chat-message .member-badge { flex:none; }

@keyframes member-card-reflect { 0%,15% { transform:translateX(-120%) rotate(18deg); opacity:0; } 22% { opacity:.7; } 62%,100% { transform:translateX(370%) rotate(18deg); opacity:0; } }
@keyframes member-badge-reflect { 0%,42% { transform:translateX(-90%); opacity:0; } 49% { opacity:.55; } 66%,100% { transform:translateX(90%); opacity:0; } }
@keyframes member-edge-glow { 0%,100% { opacity:.35; } 50% { opacity:.9; } }

@media (max-width:1150px) {
  .member-tier-gallery { gap:7px; }
  .member-tier-choice { padding-inline:4px; }
  .member-tier-choice small { font-size:8px; }
  .member-preview-layout { grid-template-columns:minmax(0,1fr); gap:20px; }
  .member-preview-description { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }
  .member-preview-description h3 { grid-column:1; }
  .member-preview-description .member-section-kicker { grid-column:1 / -1; }
  .member-preview-description p { grid-column:2; margin-top:0; }
  .member-preview-description .member-icon-scale { grid-column:1 / -1; margin-top:8px; }
}
@media (max-width:800px) {
  .member-tier-gallery { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
  .member-tier-choice small { font-size:9px; }
  .member-ledger-head { display:none; }
  .member-ledger-row { grid-template-columns:1fr 1fr; gap:10px 17px; }
  .member-ledger-row > div { grid-column:1 / -1; }
  .member-ledger-row > [data-label]::before { content:attr(data-label); display:block; color:#b2a0ab; font-size:10px; line-height:1.8; font-weight:400; }
  .member-ledger-row time { grid-column:1 / -1; }
}
@media (max-width:640px) {
  .app-shell { grid-template-columns:minmax(0,1fr); }
  .sidebar { min-width:0; }
  .member-center { gap:18px; }
  .member-identity { min-height:238px; padding:25px 22px; border-radius:20px; }
  .member-card-kicker { font-size:10px; letter-spacing:.1em; }
  .member-card-content { max-width:77%; }
  .member-card-user { gap:11px; margin-top:23px; }
  .member-card-avatar { width:45px; height:45px; flex-basis:45px; border-radius:14px; font-size:15px; }
  .member-card-user strong { font-size:18px; }
  .member-card-user div > span { font-size:10px; }
  .member-card-tier { margin-top:20px; gap:7px; }
  .member-card-tier h2 { font-size:26px; }
  .member-card-tier h2 small { margin-left:6px; font-size:12px; }
  .member-card-tier > span { font-size:10px; }
  .member-card-emblem { width:85px; height:85px; right:5%; top:56%; }
  .member-card-texture { right:-143px; width:330px; height:330px; }
  .member-card-note { font-size:10px; }
  .member-identity--compact { min-height:226px; padding:23px 21px; }
  .member-identity--compact .member-card-emblem { width:87px; height:87px; right:6%; }
  .member-identity--compact .member-card-tier h2 { font-size:24px; }
  .member-card-entry { font-size:12px; margin-top:14px; }
  .member-progress-panel,.member-tier-panel,.member-history-panel,.member-rules-panel { padding:22px 18px; border-radius:18px; }
  .member-section-head { gap:12px; margin-bottom:20px; align-items:flex-start; }
  .member-section-head h3 { font-size:18px; }
  .member-section-kicker { font-size:10px; }
  .member-refresh { padding:7px 9px; font-size:11px; }
  .member-metrics { grid-template-columns:1fr 1fr; gap:20px 12px; }
  .member-metrics > div:not(:first-child) { padding-left:12px; }
  .member-metrics > div:last-child { grid-column:1 / -1; display:grid; grid-template-columns:1fr auto; gap:0 12px; border-left:0; padding:14px 0 0; border-top:1px solid #efe8eb; }
  .member-metrics > div:last-child strong { grid-column:2; grid-row:1 / 3; align-self:center; font-size:21px; margin:0; }
  .member-metrics > div:last-child small { grid-column:1; }
  .member-metrics span { font-size:11px; }
  .member-metrics strong { font-size:23px; }
  .member-metrics small { font-size:9px; }
  .member-progress-caption { font-size:10px; gap:6px; margin-top:22px; }
  .member-preview-tip { max-width:78px; line-height:1.7; font-size:9px; }
  .member-tier-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
  .member-tier-choice { padding:12px 4px 11px; border-radius:13px; }
  .member-tier-art { width:48px; height:48px; margin-bottom:6px; }
  .member-tier-choice strong { font-size:14px; }
  .member-tier-choice small { font-size:8px; }
  .member-tier-state { font-size:8px; margin-top:8px; }
  .member-preview-layout { margin-top:19px; }
  .member-identity--preview { padding:21px 18px; min-height:220px; border-radius:16px; }
  .member-identity--preview .member-card-content { max-width:78%; }
  .member-identity--preview .member-card-kicker { font-size:9px; }
  .member-identity--preview .member-card-avatar { width:37px; height:37px; flex-basis:37px; }
  .member-identity--preview .member-card-user { gap:8px; margin-top:18px; }
  .member-identity--preview .member-card-user strong { font-size:16px; }
  .member-identity--preview .member-card-user div > span { font-size:8px; }
  .member-identity--preview .member-card-tier h2 { font-size:23px; }
  .member-identity--preview .member-card-emblem { width:70px; height:70px; right:5%; }
  .member-preview-description { display:block; }
  .member-preview-description h3 { font-size:18px; margin:8px 0; }
  .member-preview-description p { font-size:11px; line-height:1.85; margin-top:8px; }
  .member-icon-scale { gap:10px; }
  .member-icon-scale > span:last-child { font-size:9px; }
  .member-history-label { max-width:70px; font-size:9px; line-height:1.8; }
  .member-ledger-row { padding:17px 0; }
  .member-rules-panel ul { font-size:11px; line-height:1.95; }
}
@media (prefers-reduced-motion:reduce) {
  .member-card-reflection,.member-card-edge,.member-badge::after { animation:none; }
  .member-card-reflection,.member-badge::after { display:none; }
  .member-progress-track > span { transition:none; }
}
