@import url("portal.css");

.member-shell { min-height:100vh; }
.member-brand span { color:var(--gold-bright); font:600 1.03rem var(--display); letter-spacing:.11em; }
.member-nav a { font-size:.75rem; }
.member-account { max-width:190px; min-width:150px; overflow:hidden; padding:11px 15px; color:var(--gold-bright); border:1px solid var(--line); font-size:1rem; text-overflow:ellipsis; white-space:nowrap; }
.member-account::after { content:"  ›"; color:var(--gold); }
.member-account:hover { border-color:var(--gold); }
.member-content { width:100%; }

.member-masthead { min-height:288px; padding:48px max(24px,calc((100vw - 1400px)/2)); display:grid; grid-template-columns:86px minmax(0,1fr) minmax(330px,.62fr); align-items:center; gap:38px; position:relative; overflow:hidden; isolation:isolate; border-bottom:1px solid var(--line); background:linear-gradient(90deg,rgba(7,7,6,.99) 15%,rgba(8,8,7,.91) 55%,rgba(52,10,8,.58)),url("assets/welcome_moon_dashboard.png") right 42%/auto 130% no-repeat; }
.member-masthead::before { content:""; position:absolute; z-index:-1; inset:0; opacity:.34; background:linear-gradient(90deg,transparent 0 62%,rgba(8,8,7,.2)),repeating-linear-gradient(90deg,transparent 0 119px,rgba(214,173,85,.035) 120px); }
.member-masthead::after { content:""; position:absolute; z-index:-1; left:max(24px,calc((100vw - 1400px)/2)); right:max(24px,calc((100vw - 1400px)/2)); bottom:28px; height:1px; background:linear-gradient(90deg,var(--blood-bright),var(--line) 38%,transparent 84%); }
.masthead-index { width:68px; height:68px; display:grid; place-items:center; color:var(--gold); border:1px solid var(--line-strong); transform:rotate(45deg); font:500 1rem var(--display); }
.masthead-index > span { transform:rotate(-45deg); }
.masthead-copy { min-width:0; }
.member-eyebrow { margin:0 0 10px; color:#c79c48; font:600 .76rem var(--display); letter-spacing:.18em; text-transform:uppercase; }
.masthead-copy h1 { margin:0; color:var(--gold-bright); font:500 clamp(2.55rem,4.2vw,4.4rem)/1 var(--display); letter-spacing:-.035em; }
.masthead-copy > p:last-child { max-width:680px; margin:18px 0 0; color:#d1c19e; font-size:1.2rem; line-height:1.45; }

.member-context { min-width:0; padding:8px 0 8px 28px; border-left:1px solid var(--line); }
.context-identity { display:flex; align-items:center; gap:14px; }
.context-avatar { width:52px; height:52px; flex:0 0 auto; display:grid; place-items:center; color:var(--gold-bright); border:1px solid var(--gold-muted); border-radius:50%; background:radial-gradient(circle,#5c1712,#090706 72%); font:600 12px var(--display); }
.context-avatar { position:relative; overflow:hidden; }
.context-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.context-avatar.has-photo b { display:none; }
.context-identity > div { min-width:0; display:grid; }
.context-identity small,.member-context dt { color:var(--quiet); font:600 .68rem var(--display); letter-spacing:.11em; text-transform:uppercase; }
.context-identity strong { overflow:hidden; color:var(--cream); font:600 1.16rem var(--serif); text-overflow:ellipsis; white-space:nowrap; }
.context-identity div > span { color:var(--gold-muted); font-size:.88rem; }
.member-context dl { margin:18px 0 14px; display:grid; grid-template-columns:1fr 1fr; border-block:1px solid var(--line-soft); }
.member-context dl div { padding:11px 10px 11px 0; }
.member-context dl div + div { padding-left:16px; border-left:1px solid var(--line-soft); }
.member-context dd { margin:3px 0 0; color:var(--gold-bright); font:500 1.4rem var(--display); }
.member-context > a { color:var(--gold); font:600 .75rem var(--display); letter-spacing:.07em; text-transform:uppercase; }
.member-context > a span { margin-left:8px; }

.member-workspace { width:min(1400px,calc(100% - 48px)); margin:58px auto 100px; display:grid; gap:78px; }
.member-workspace [id] { scroll-margin-top:118px; }
.section-heading { padding-bottom:24px; display:flex; justify-content:space-between; align-items:end; gap:28px; border-bottom:1px solid var(--line); }
.section-heading h2 { margin:0; color:var(--gold-bright); font:500 clamp(1.75rem,2.8vw,2.55rem)/1.08 var(--display); }
.section-heading > div > p:last-child:not(.member-eyebrow) { max-width:720px; margin:10px 0 0; color:var(--muted); font-size:1rem; }
.empty-state { min-height:160px; display:grid; place-items:center; align-content:center; gap:10px; color:var(--quiet); border-block:1px solid var(--line-soft); text-align:center; }
.empty-state.large { min-height:280px; }
.empty-state span { color:var(--gold-muted); font-size:1.5rem; }
.empty-state p { margin:0; font-size:1rem; }

label { display:flex; flex-direction:column; gap:9px; color:var(--gold-muted); font:600 .78rem var(--display); letter-spacing:.08em; text-transform:uppercase; }
input,select,textarea { width:100%; min-height:52px; padding:12px 14px; color:var(--cream); border:1px solid rgba(214,173,85,.28); border-radius:0; outline:0; background:rgba(5,5,5,.78); font:1rem var(--serif); letter-spacing:0; text-transform:none; }
textarea { min-height:118px; resize:vertical; }
input:focus,select:focus,textarea:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(214,173,85,.08); }
input::placeholder,textarea::placeholder { color:#756a55; }
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus { -webkit-text-fill-color:var(--cream); box-shadow:0 0 0 1000px #090807 inset; transition:background-color 9999s; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.form-grid .full { grid-column:1/-1; }
.field-note { margin:-4px 0 0; color:var(--quiet); font-size:.88rem; }
.profile-line-assignment { min-height:52px; padding:10px 14px; display:grid; align-content:center; border:1px solid rgba(214,173,85,.2); background:rgba(63,38,21,.18); }
.profile-line-assignment span { color:var(--gold-muted); font:600 .68rem var(--display); letter-spacing:.08em; }
.profile-line-assignment strong { margin-top:4px; color:var(--cream); font:500 1rem var(--serif); }
.profile-line-assignment small { margin-top:3px; color:var(--quiet); font-size:.78rem; }
.form-message { min-height:22px; margin:0; color:#e4776d; font-size:.9rem; }
.form-message.good { color:#9bc896; }
.form-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line-soft); padding-top:22px; }
.form-footer > div { display:flex; align-items:center; gap:22px; }
.security-actions { display:flex; gap:12px; flex-wrap:wrap; }
.member-dialog { width:min(520px,calc(100% - 34px)); padding:0; color:var(--cream); border:1px solid var(--line-strong); background:linear-gradient(145deg,#17100d,#080706); box-shadow:0 30px 100px #000; }
.member-dialog::backdrop { background:rgba(0,0,0,.78); backdrop-filter:blur(5px); }
.member-dialog form { padding:34px; }
.member-dialog h2 { margin:0; color:var(--gold-bright); font:500 1.8rem var(--display); }
.member-dialog form > p:not(.member-eyebrow) { margin:14px 0 28px; color:var(--muted); font-size:1rem; }
.member-dialog form > div { display:flex; justify-content:flex-end; gap:12px; }

.profile-record { min-height:360px; display:grid; grid-template-columns:230px minmax(0,1fr) 270px; align-items:stretch; border-block:1px solid var(--line); background:linear-gradient(90deg,rgba(39,19,15,.78),rgba(8,8,7,.5)); }
.profile-portrait-large { min-height:360px; display:grid; place-items:center; position:relative; overflow:hidden; border-right:1px solid var(--line); background:radial-gradient(circle at 50% 38%,rgba(146,30,22,.66),transparent 38%),url("assets/profile_silhouette_placeholder.png") center 28%/145% auto no-repeat,#090807; }
.profile-portrait-large > .profile-photo-crop { position:absolute; inset:14px; overflow:hidden; }
.profile-portrait-large .profile-photo-crop img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.12); }
.profile-portrait-large.has-photo { background:#090807; }
.profile-portrait-large::after { content:""; position:absolute; inset:14px; border:1px solid rgba(214,173,85,.22); }
.profile-portrait-large span { display:none; }
.profile-record-copy { padding:46px 48px; }
.profile-record-copy h2 { margin:0; color:var(--gold-bright); font:500 clamp(2rem,3.2vw,3.25rem)/1 var(--display); }
.profile-record-copy blockquote { margin:14px 0 30px; color:#cbb991; font-size:1.2rem; font-style:italic; }
.profile-record-copy dl { margin:0; display:grid; grid-template-columns:1fr 1fr; gap:18px 34px; }
.profile-record-copy dl div:last-child { grid-column:1/-1; }
.profile-record-copy dt { color:var(--quiet); font:600 .7rem var(--display); letter-spacing:.1em; text-transform:uppercase; }
.profile-record-copy dd { margin:4px 0 0; color:var(--cream); font-size:1rem; }
.profile-balances { display:grid; border-left:1px solid var(--line); }
.profile-balances > span { padding:32px; display:grid; align-content:center; border-bottom:1px solid var(--line-soft); }
.profile-balances > span:last-child { border-bottom:0; }
.profile-balances small { color:var(--quiet); font:600 .68rem var(--display); letter-spacing:.1em; }
.profile-balances strong { color:var(--gold-bright); font:500 2.55rem var(--display); }
.profile-balances em { color:var(--gold-muted); font-style:normal; }
.trivia-career-strip{width:100%;min-width:0;display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);align-items:stretch;gap:42px;padding:34px 42px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(8,8,7,.96),rgba(43,17,13,.42),rgba(8,8,7,.96));box-sizing:border-box}.trivia-career-strip>div:first-child{min-width:0;align-self:center}.trivia-career-strip h2{margin:2px 0 5px;color:var(--gold-bright);font:500 1.65rem var(--display)}.trivia-career-strip>div>p:last-child{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.trivia-career-strip .trivia-stats{min-width:0;margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-left:1px solid var(--line)}.trivia-career-strip .trivia-stat{min-width:0;min-height:82px;padding:12px 18px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.trivia-career-strip dt{color:var(--quiet);font:600 .62rem var(--display);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.trivia-career-strip dd{min-width:0;margin:6px 0 0;overflow:hidden;color:var(--cream);font:500 1.25rem/1.15 var(--display);text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.profile-photo-editor { min-height:390px; display:grid; grid-template-columns:minmax(220px,330px) minmax(0,1fr); border-block:1px solid var(--line); background:linear-gradient(105deg,rgba(55,18,13,.5),rgba(8,8,7,.5)); }
.profile-photo-preview { min-height:390px; display:grid; place-items:center; position:relative; overflow:hidden; color:var(--gold-bright); border-right:1px solid var(--line); background:radial-gradient(circle,#53150f,#080706 70%); font:500 2.3rem var(--display); }
.profile-photo-preview::after { content:""; position:absolute; inset:14px; z-index:2; pointer-events:none; border:1px solid rgba(214,173,85,.25); }
.profile-photo-preview > .profile-photo-crop { position:absolute; inset:14px; overflow:hidden; }
.profile-photo-preview .profile-photo-crop img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.12); }
.profile-photo-preview.has-photo > span:not(.profile-photo-crop) { display:none; }
.profile-photo-controls { padding:42px 46px; align-self:center; }
.profile-photo-controls h3 { margin:0; color:var(--gold-bright); font:500 1.8rem var(--display); }
.profile-photo-controls > p:not(.member-eyebrow) { max-width:600px; margin:12px 0 24px; color:var(--muted); }
.profile-photo-picker { width:max-content; min-height:46px; padding:0 22px; display:inline-flex; justify-content:center; color:var(--gold-bright); border:1px solid var(--line-strong); background:rgba(54,18,13,.62); cursor:pointer; }
.profile-photo-picker:hover { border-color:var(--gold); }
.profile-photo-picker input { position:absolute; width:1px; height:1px; min-height:0; overflow:hidden; opacity:0; pointer-events:none; }
.profile-photo-status { min-height:23px; margin:14px 0 24px; display:block; color:var(--gold-muted); font-size:.92rem; }
.profile-photo-focus { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.profile-photo-focus input[type="range"] { min-height:28px; padding:0; accent-color:var(--gold); cursor:pointer; }
.verification-section { padding:0 0 36px; display:grid; grid-template-columns:minmax(0,1fr) 410px; gap:48px; border-bottom:1px solid var(--line); }
.verification-section .section-heading { border:0; padding:0; }
.verification-action { display:grid; gap:13px; align-content:start; }
.verification-status { color:#e0ad78; font-size:.92rem; }
.verification-status i { width:27px; height:27px; margin-right:10px; display:inline-grid; place-items:center; color:#fff3ce; border:1px solid var(--blood-bright); border-radius:50%; background:#5b1612; font-style:normal; }
.verification-section.is-verified .verification-status { color:#a8cc9b; }
.verification-section.is-verified .verification-status i { border-color:#709767; background:#234521; }
.verification-action output { display:grid; place-items:center; text-align:center; }
.verification-action output:not(:empty) { min-height:105px; padding:14px; border:1px solid var(--line); background:#090807; }
.verification-action output small,.verification-action output span { color:var(--quiet); font:.68rem var(--display); letter-spacing:.08em; }
.verification-action output strong { color:var(--gold-bright); font:500 1.5rem var(--display); letter-spacing:.08em; }
.profile-settings,.security-section { display:grid; grid-template-columns:320px minmax(0,1fr); gap:56px; }
.profile-settings .section-heading,.security-section .section-heading { align-self:start; display:block; border:0; }
.security-form { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.security-form .form-message,.security-form .security-actions { grid-column:1/-1; }

.events-ledger,.leaderboard-stage,.merchant-directory,.auction-house,.activity-archive { display:grid; gap:0; }
.event-entry { min-height:150px; display:grid; grid-template-columns:110px minmax(0,1fr) minmax(250px,.48fr); align-items:center; border-bottom:1px solid var(--line-soft); transition:background .2s; }
.event-entry:hover { background:linear-gradient(90deg,rgba(111,25,18,.18),transparent); }
.event-entry.featured { min-height:245px; border-bottom:1px solid var(--line); background:linear-gradient(100deg,rgba(78,19,14,.42),rgba(9,8,7,.62)),url("assets/welcome_moon_dashboard.png") right 42%/auto 180% no-repeat; }
.event-entry time { width:72px; height:86px; display:grid; place-items:center; align-content:center; color:var(--gold); border:1px solid var(--line-strong); background:#160a08; }
.event-entry time small,.event-entry time span { font:600 .65rem var(--display); letter-spacing:.1em; }
.event-entry time strong { color:var(--gold-bright); font:500 2rem var(--display); line-height:1; }
.event-copy { padding:30px 22px 30px 0; }
.event-status { display:inline-block; margin-bottom:8px; color:var(--gold); font:600 .68rem var(--display); letter-spacing:.12em; }
.is-live .event-status { color:#e25a4d; }
.event-copy h3 { margin:0 0 9px; color:var(--gold-bright); font:500 1.55rem var(--display); }
.event-copy p { margin:2px 0; color:var(--muted); font-size:.98rem; }
.event-requirement { min-width:0; padding:28px 0 28px 34px; display:grid; border-left:1px solid var(--line-soft); }
.event-requirement small { color:var(--quiet); font:600 .68rem var(--display); letter-spacing:.1em; }
.event-requirement strong { margin-top:7px; color:var(--cream); font-size:1rem; }
.event-requirement > span { margin-top:5px; color:var(--gold-muted); font-size:.88rem; }
.event-action { margin-top:16px; color:var(--gold); font:600 .7rem var(--display); letter-spacing:.07em; text-transform:uppercase; }
.event-list > header { min-height:48px; display:grid; grid-template-columns:110px minmax(0,1fr) minmax(250px,.48fr); align-items:center; color:var(--quiet); border-bottom:1px solid var(--line); font:600 .65rem var(--display); letter-spacing:.11em; }
.attendance-guide { padding-top:2px; border-top:1px solid var(--line); }
.attendance-guide ol { margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); list-style:none; border-bottom:1px solid var(--line); }
.attendance-guide li { min-height:200px; padding:32px; display:grid; grid-template-columns:48px 1fr; gap:16px; border-right:1px solid var(--line-soft); }
.attendance-guide li:last-child { border-right:0; }
.attendance-guide li > span { color:var(--gold); font:500 .8rem var(--display); }
.attendance-guide strong { color:var(--cream); font-size:1.08rem; }
.attendance-guide p { margin:8px 0 0; color:var(--muted); font-size:.96rem; }
.attendance-guide > .text-link { margin-top:22px; }

.your-standing { min-height:112px; padding:18px 24px; display:grid; grid-template-columns:220px 110px 1fr; align-items:center; border-bottom:1px solid var(--line); background:linear-gradient(90deg,rgba(105,23,16,.4),rgba(15,12,10,.3)); }
.your-standing > span { color:var(--gold-muted); font:600 .72rem var(--display); letter-spacing:.12em; }
.your-standing > strong { color:var(--gold-bright); font:500 2.4rem var(--display); }
.your-standing div { display:grid; }
.your-standing b { color:var(--cream); font-size:1.08rem; }
.your-standing small { color:var(--quiet); font-size:.85rem; }
.leaderboard-ledger { margin:0; padding:0; list-style:none; border-bottom:1px solid var(--line); }
.leaderboard-ledger li { min-height:92px; padding:14px 24px; display:grid; grid-template-columns:72px 52px 1fr auto; align-items:center; gap:18px; border-bottom:1px solid var(--line-soft); }
.leaderboard-ledger li:last-child { border:0; }
.leaderboard-ledger li.current { background:linear-gradient(90deg,rgba(113,25,17,.25),transparent 70%); }
.rank { color:var(--gold-muted); font:500 .8rem var(--display); }
.leader-avatar { width:44px; height:44px; display:grid; place-items:center; color:var(--gold-bright); border:1px solid var(--line); border-radius:50%; background:#160c09; font:600 .68rem var(--display); }
.leader-name { display:grid; }
.leader-name strong { color:var(--cream); font-size:1.08rem; }
.leader-name small { color:var(--quiet); font-size:.84rem; }
.leader-points { display:grid; justify-items:end; }
.leader-points strong { color:var(--gold-bright); font:500 1.55rem var(--display); }
.leader-points small { color:var(--quiet); font:600 .64rem var(--display); letter-spacing:.1em; }
.ledger-note { margin:18px 0 0; color:var(--quiet); font-size:.9rem; }

.bank-ledger { min-height:270px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(300px,.65fr) minmax(300px,.7fr); align-items:center; border-block:1px solid var(--line); background:linear-gradient(100deg,rgba(52,17,12,.45),rgba(8,8,7,.64)); }
.bank-intro { padding:38px 44px; }
.bank-intro h2 { margin:0; color:var(--gold-bright); font:500 2.15rem var(--display); }
.bank-intro > p:last-child { max-width:540px; margin:12px 0 0; color:var(--muted); }
.bank-ledger dl { margin:0; display:grid; grid-template-columns:1fr 1fr; border-inline:1px solid var(--line); }
.bank-ledger dl div { min-height:150px; padding:28px; display:grid; align-content:center; }
.bank-ledger dl div + div { border-left:1px solid var(--line-soft); }
.bank-ledger dt { color:var(--quiet); font:600 .68rem var(--display); letter-spacing:.1em; text-transform:uppercase; }
.bank-ledger dd { margin:7px 0 0; color:var(--gold-bright); font:500 2.35rem var(--display); }
.bank-ledger form { padding:30px; display:grid; gap:13px; }
.merchant-list { border-top:1px solid var(--line); }
.merchant-section { padding:34px 0; display:grid; grid-template-columns:300px minmax(0,1fr); gap:36px; border-bottom:1px solid var(--line); }
.merchant-section > header { padding-right:28px; border-right:1px solid var(--line-soft); }
.merchant-section > header h3 { margin:0; color:var(--gold-bright); font:500 1.35rem var(--display); }
.merchant-section > header > span { display:block; margin-top:12px; color:#95bd8b; font:600 .66rem var(--display); letter-spacing:.1em; }
.merchant-section.is-locked > header > span { color:#d27d72; }
.merchant-products { display:grid; }
.merchant-product { min-height:88px; padding:14px 0; display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px; border-bottom:1px solid var(--line-soft); }
.merchant-product:last-child { border-bottom:0; }
.merchant-product strong { color:var(--cream); font-size:1.06rem; }
.merchant-product p { margin:4px 0 0; color:var(--quiet); font-size:.9rem; }
.merchant-product .gold-button { min-width:120px; }
.auction-list { display:grid; gap:1px; background:var(--line-soft); }
.auction-entry { min-height:190px; padding:30px; display:grid; grid-template-columns:1fr .75fr .75fr; align-items:center; gap:34px; background:#0b0a09; }
.auction-entry > div > span { color:var(--gold-muted); font:600 .65rem var(--display); letter-spacing:.1em; }
.auction-entry h3 { margin:7px 0; color:var(--gold-bright); font:500 1.35rem var(--display); }
.auction-entry p { margin:0; color:var(--muted); }
.auction-entry dl { margin:0; display:grid; gap:10px; }
.auction-entry dl div { display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line-soft); }
.auction-entry dt { color:var(--quiet); }
.auction-entry dd { margin:0; color:var(--gold); }
.auction-entry form { display:grid; grid-template-columns:1fr auto; align-items:end; gap:10px; }

.activity-timeline { border-top:1px solid var(--line); }
.activity-timeline > section { display:grid; grid-template-columns:210px minmax(0,1fr); border-bottom:1px solid var(--line); }
.activity-timeline h3 { margin:0; padding:28px 26px 28px 0; color:var(--gold-muted); font:500 .82rem var(--display); }
.activity-timeline > section > div { border-left:1px solid var(--line-soft); }
.activity-entry { min-height:84px; padding:17px 20px; display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:15px; border-bottom:1px solid var(--line-soft); }
.activity-entry:last-child { border:0; }
.activity-entry.unread { background:linear-gradient(90deg,rgba(112,25,18,.3),transparent 75%); }
.activity-mark { width:31px; height:31px; display:grid; place-items:center; color:var(--gold); border:1px solid var(--line); }
.activity-entry > div { display:grid; }
.activity-entry strong { color:var(--cream); font-size:1rem; }
.activity-entry small { color:var(--quiet); font-size:.84rem; }
.activity-state { color:var(--quiet); font:600 .64rem var(--display); letter-spacing:.1em; }
.activity-entry.unread .activity-state { color:#e15a4e; }
.archive-key { padding:22px 0; display:flex; flex-wrap:wrap; gap:28px; color:var(--quiet); font-size:.88rem; }
.archive-key i { margin-right:8px; color:var(--gold); font-style:normal; }

.member-loading,.member-error { min-height:calc(100vh - 90px); display:grid; place-items:center; align-content:center; gap:14px; text-align:center; }
.member-loading span { width:38px; height:38px; border:1px solid var(--line); border-top-color:var(--gold); border-radius:50%; animation:member-spin .9s linear infinite; }
.member-loading p,.member-error > p:not(.member-eyebrow) { color:var(--muted); font-size:1rem; }
.member-error > span { color:var(--gold); font:500 2rem var(--display); }
.member-error h1 { margin:0; color:var(--gold-bright); font:500 2.2rem var(--display); }
@keyframes member-spin { to { transform:rotate(1turn); } }

@media(max-width:1100px) {
  .member-masthead { grid-template-columns:64px 1fr; }
  .member-context { grid-column:1/-1; padding:18px 0 0; display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:24px; border-left:0; border-top:1px solid var(--line-soft); }
  .member-context dl { margin:0; min-width:260px; }
  .profile-record { grid-template-columns:200px 1fr; }
  .profile-balances { grid-column:1/-1; grid-template-columns:1fr 1fr; border-left:0; border-top:1px solid var(--line); }
  .profile-balances > span { min-height:120px; }
  .profile-balances > span:first-child { border-right:1px solid var(--line-soft); border-bottom:0; }
  .bank-ledger { grid-template-columns:1fr 1fr; }
  .bank-intro { grid-column:1/-1; border-bottom:1px solid var(--line); }
  .bank-ledger dl { border-left:0; }
  .auction-entry { grid-template-columns:1fr 1fr; }
  .auction-entry form { grid-column:1/-1; }
}

@media(max-width:1380px) and (min-width:821px) {
  .member-header { grid-template-columns:auto minmax(0,1fr) 52px; gap:20px; padding-inline:24px; }
  .member-brand img { width:62px; height:62px; }
  .member-brand span { font-size:.92rem; }
  .member-nav { gap:clamp(10px,1.25vw,18px); }
  .member-nav a { font-size:.75rem; }
  .member-account { width:52px; min-width:52px; padding:0; display:grid; place-items:center; color:transparent; font-size:0; text-align:center; }
  .member-account::before { content:"LF"; color:var(--gold-bright); font:.7rem var(--display); }
  .member-account::after { display:none; }
}

@media(max-width:820px) {
  .member-nav a { font:600 .78rem var(--serif); letter-spacing:0; }
  .member-account { min-width:48px; width:48px; padding:0; display:grid; place-items:center; color:transparent; font-size:0; }
  .member-account::before { content:"LF"; color:var(--gold-bright); font:.7rem var(--display); }
  .member-account::after { display:none; }
  .member-masthead { min-height:0; padding:44px 20px 34px; grid-template-columns:1fr; gap:24px; background-position:center; }
  .masthead-index { width:50px; height:50px; }
  .member-context { grid-template-columns:1fr auto; }
  .member-context dl { grid-row:2; grid-column:1/-1; }
  .member-workspace { width:calc(100% - 32px); margin:44px auto 74px; gap:58px; }
  .profile-record { grid-template-columns:150px 1fr; }
  .profile-portrait-large { min-height:300px; }
  .profile-record-copy { padding:32px; }
  .verification-section,.profile-settings,.security-section { grid-template-columns:1fr; gap:28px; }
  .event-entry,.event-entry.featured { grid-template-columns:88px 1fr; }
  .event-requirement { grid-column:1/-1; padding:22px 0; border-left:0; border-top:1px solid var(--line-soft); }
  .event-list > header { display:none; }
  .attendance-guide ol { grid-template-columns:1fr; }
  .attendance-guide li { min-height:0; border-right:0; border-bottom:1px solid var(--line-soft); }
  .merchant-section { grid-template-columns:1fr; }
  .merchant-section > header { padding:0 0 20px; border-right:0; border-bottom:1px solid var(--line-soft); }
  .bank-ledger { grid-template-columns:1fr; }
  .bank-intro,.bank-ledger dl,.bank-ledger form { grid-column:auto; }
  .bank-ledger dl { border-block:1px solid var(--line); border-right:0; }
  .activity-timeline > section { grid-template-columns:1fr; }
  .activity-timeline h3 { padding:22px 0 12px; }
  .activity-timeline > section > div { border-left:0; }
  .profile-photo-editor { grid-template-columns:minmax(180px,.65fr) 1fr; }
  .profile-photo-controls { padding:34px 28px; }
  .profile-photo-focus { grid-template-columns:1fr; gap:14px; }
}

@media(max-width:560px) {
  .member-masthead { padding-inline:17px; }
  .masthead-copy h1 { font-size:2.25rem; }
  .masthead-copy > p:last-child { font-size:1rem; }
  .member-context { display:block; }
  .member-context dl { margin:16px 0; }
  .member-workspace { width:calc(100% - 24px); }
  .section-heading { align-items:start; flex-direction:column; }
  .profile-record { grid-template-columns:1fr; }
  .profile-portrait-large { min-height:245px; border-right:0; border-bottom:1px solid var(--line); }
  .profile-record-copy { padding:28px 20px; }
  .profile-record-copy dl,.form-grid,.security-form { grid-template-columns:1fr; }
  .profile-record-copy dl div:last-child,.form-grid .full,.security-form .form-message,.security-form .security-actions { grid-column:auto; }
  .form-footer { align-items:stretch; flex-direction:column; }
  .form-footer > div { align-items:stretch; flex-direction:column; }
  .event-entry,.event-entry.featured { padding:24px 0; grid-template-columns:70px 1fr; }
  .event-entry time { width:58px; height:72px; }
  .event-copy { padding:0; }
  .your-standing { grid-template-columns:1fr auto; gap:8px; }
  .your-standing div { grid-column:1/-1; }
  .leaderboard-ledger li { grid-template-columns:42px 1fr auto; padding-inline:6px; gap:10px; }
  .leader-avatar { display:none; }
  .leader-points strong { font-size:1.15rem; }
  .leader-points small { font-size:.56rem; }
  .bank-intro { padding:32px 20px; }
  .bank-ledger dl { grid-template-columns:1fr; }
  .bank-ledger dl div { min-height:110px; }
  .bank-ledger dl div + div { border-left:0; border-top:1px solid var(--line-soft); }
  .merchant-product { grid-template-columns:1fr; }
  .merchant-product .gold-button { justify-self:start; }
  .auction-entry { padding:24px 18px; grid-template-columns:1fr; }
  .auction-entry form { grid-column:auto; grid-template-columns:1fr; }
  .activity-entry { grid-template-columns:34px 1fr; }
  .activity-state { grid-column:2; }
  .profile-photo-editor { grid-template-columns:1fr; }
  .profile-photo-preview { min-height:360px; border-right:0; border-bottom:1px solid var(--line); }
  .profile-photo-controls { padding:30px 20px; }
}

@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .member-loading span { animation:none; }
  *,*::before,*::after { transition-duration:.01ms !important; }
}

@media(max-width:980px) and (min-width:821px) {
  .member-header { grid-template-columns:auto 52px; min-height:74px; padding:6px 20px; }
  .member-nav { position:fixed; z-index:50; left:0; right:0; bottom:0; height:68px; padding:0 4px; gap:0; justify-content:flex-start; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:none; scroll-snap-type:x proximity; background:rgba(7,7,6,.98); border-top:1px solid var(--line); box-shadow:0 -12px 30px rgba(0,0,0,.38); }
  .member-nav::-webkit-scrollbar { display:none; }
  .member-nav a { flex:0 0 96px; min-width:96px; padding:21px 5px 17px; text-align:center; scroll-snap-align:start; font:600 .8rem var(--serif); letter-spacing:0; }
  .member-nav a::after { top:0; bottom:auto; }
  .member-account { width:52px; min-width:52px; height:42px; }
}

@media(max-width:900px){.trivia-career-strip{grid-template-columns:1fr;gap:22px}.trivia-career-strip .trivia-stats{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:620px){.trivia-career-strip{padding:28px 20px}.trivia-career-strip .trivia-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.trivia-career-strip .trivia-stat{min-height:76px;padding:12px 16px;border-bottom:1px solid var(--line)}.trivia-career-strip .trivia-stat:nth-child(odd){border-right:1px solid var(--line)}.trivia-career-strip .trivia-stat:last-child{grid-column:1/-1;border-right:0}}
