.member-page main > :not(#catalog), .member-page footer { display:none; }
.member-page .header nav > a:not(#login-link):not(.member-help) { display:none; }
.member-page .header { width:min(1440px,calc(100% - 64px)); max-width:none; margin:auto; height:76px; }
.member-page #login-link { color:var(--teal); background:#e2f5f1; padding:8px 18px; border-radius:24px; }
.member-page #catalog { padding:12px 0 64px; min-height:75dvh; background:var(--cream); }
.member-page #login-link { display:flex; }
.member-page #catalog > .container { width:min(1440px,calc(100% - 64px)); max-width:none; }
.member-welcome { position:relative; min-height:160px; display:flex; align-items:center; overflow:hidden; border-bottom:1px solid var(--line); margin-bottom:20px; padding:12px 28px; border-radius:24px; background:linear-gradient(90deg,var(--cream) 40%,rgb(255 252 245 / 80%) 65%,rgb(255 252 245 / 20%)),url('/brand/world.webp') right 45% / auto 450px no-repeat; }
.member-welcome > div { position:relative; z-index:1; max-width:75%; }
.member-welcome h1 { font-size:clamp(30px,3.2vw,44px); line-height:1.15; margin:4px 0 8px; }
.member-welcome p { margin:6px 0; }
.member-welcome > img { position:absolute; right:56px; top:4px; height:205px; width:170px; object-fit:contain; object-position:top; }
#account-summary { font-size:16px; color:var(--muted); overflow-wrap:anywhere; }
.member-subjects { display:flex; gap:12px; overflow-x:auto; padding:4px 3px 12px; margin-bottom:12px; }
.member-subject { display:flex; align-items:center; justify-content:center; gap:12px; padding:10px 18px; min-height:64px; flex:0 0 auto; border:1px solid transparent; border-radius:16px; background:var(--tile); color:var(--ink); }
.member-subject img { width:38px; height:38px; object-fit:contain; }
.member-subject[aria-pressed=true] { outline:3px solid var(--teal); outline-offset:1px; }
.member-page .filters { background:rgb(255 255 255 / 92%); border:1px solid var(--line); border-radius:18px; padding:16px; gap:16px; margin-bottom:12px; box-shadow:0 6px 20px rgb(23 61 59 / 4%); }
.member-page .filters label { min-width:0; }
.member-page .filters input, .member-page .filters select { min-height:48px; width:100%; }
.member-page .reset { min-height:48px; align-self:end; }
#active-filters { min-height:28px; font-size:16px; color:var(--muted); margin:8px 0; }
#catalog-note { margin:12px 0 20px; font-size:17px; }
.member-page .game-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; align-items:stretch; }
.member-card { background:white; display:flex; flex-direction:column; border:1px solid #e3ebe5; border-radius:20px; overflow:hidden; box-shadow:0 8px 24px rgb(23 61 59 / 5%); min-width:0; }
.member-card-heading { padding:18px; min-height:var(--member-title-height,100px); display:flex; align-items:center; }
.member-card-heading h3 { font-size:22px; line-height:1.4; margin:0; overflow-wrap:anywhere; }
.member-card > img { display:block; width:100%; height:auto; aspect-ratio:16 / 10; object-fit:cover; border-radius:0; }
.member-card .game-info { padding:16px; margin-top:auto; }
.member-card .game-tags { min-height:38px; align-items:center; }
.member-card .game-tags span { background:#edf7f2; border:0; }
.member-card .button { gap:12px; margin-top:16px; }
.member-dialog { width:min(1100px,calc(100vw - 32px)); height:auto; max-height:90dvh; margin:auto; background:var(--cream); color:var(--ink); border-radius:24px; padding:28px; overflow:auto; }
.member-dialog::backdrop { background:rgb(7 35 30 / 60%); }
.member-dialog .detail-top { display:flex; justify-content:space-between; gap:16px; align-items:center; }
.member-dialog .detail-top button { min-height:44px; padding:8px 16px; border-radius:12px; border:1px solid var(--line); background:white; color:var(--teal); }
.member-dialog h2 { font-size:clamp(26px,3vw,40px); line-height:1.25; margin:20px 0; overflow-wrap:anywhere; }
.detail-layout { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:24px; align-items:start; }
#detail-cover { width:100%; height:auto; aspect-ratio:16 / 10; object-fit:cover; border-radius:18px; }
.detail-copy h3 { font-size:26px; margin:0 0 16px; }
.detail-copy p { margin:12px 0; }
.detail-copy .button { width:100%; margin-top:16px; gap:10px; }
#detail-review { font-size:16px; padding:12px; background:#fff0c7; border-radius:12px; }
.creator-layout { display:grid; grid-template-columns:2fr 1fr; gap:28px; }
.creator-layout ol { padding-left:26px; margin:16px 0; }
.creator-layout li { padding:10px 0; }
.creator-layout h3 { margin:18px 0 0; font-size:24px; }
.creator-layout textarea { font:inherit; }
.inline-prompt { margin-top:28px; border-top:1px solid var(--line); padding-top:24px; }
.inline-prompt-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.inline-prompt-heading h3 { font-size:26px; margin:0; }
.inline-prompt-heading p { font-size:16px; margin:4px 0; }
#prompt-actions { display:flex; gap:10px; flex-wrap:wrap; }
#prompt-actions button { min-height:44px; padding:8px 18px; gap:8px; }
.inline-prompt-stage { position:relative; min-height:320px; border:1px solid #dce9e2; border-radius:18px; overflow:hidden; background:#f7faf6; }
.prompt-teaser { height:320px; padding:24px; filter:blur(5px); user-select:none; pointer-events:none; opacity:.55; }
.prompt-teaser p { margin:8px 0 16px; }
.prompt-overlay { position:absolute; inset:0; display:grid; place-items:center; padding:24px; background:rgb(255 252 245 / 25%); text-align:center; }
.prompt-overlay p { color:var(--ink); margin:0 0 14px; }
.prompt-overlay .button { gap:10px; min-width:180px; }
.inline-prompt #prompt-text { height:360px; margin:0; border:0; border-radius:0; padding:24px; background:#f7faf6; font:inherit; font-size:17px; line-height:1.8; }
.inline-prompt [hidden] { display:none!important; }
.prompt-level-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0 16px}.prompt-level-controls select{width:auto;min-height:44px}.prompt-level-controls p{flex-basis:100%;font-size:15px;margin:0;color:var(--muted)}
#detail-dialog { height:fit-content; }
@media(max-width:600px) { .inline-prompt-heading { align-items:flex-start; flex-direction:column; } .inline-prompt #prompt-text { padding:16px; } }
@media(max-width:1000px) { .member-page .game-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
 .member-page .header, .member-page #catalog > .container { width:calc(100% - 32px); }
 .member-page .header { align-items:center; gap:8px; padding:12px 16px; flex-wrap:wrap; height:auto; }
 .member-page .header nav { flex-wrap:wrap; width:100%; justify-content:flex-end; gap:12px; }
 .member-page #catalog { padding-top:8px; }
 .member-welcome { min-height:165px; margin-bottom:16px; padding:16px 12px; background-size:auto 300px; }
 .member-welcome > div { max-width:74%; }
 .member-welcome > img { right:-18px; top:20px; width:115px; height:210px; }
 .member-welcome h1 { font-size:31px; }
 .member-welcome p { font-size:16px; }
 .member-subject { min-height:52px; padding:8px 12px; font-size:17px; }
 .member-subject img { width:30px; height:30px; }
 .member-page .filters { display:grid; grid-template-columns:1fr 1fr; padding:12px; gap:12px; }
 .member-page .search-label { grid-column:1 / -1; }
 .member-page .reset { grid-column:1 / -1; }
 .member-page .game-grid { grid-template-columns:1fr; gap:20px; }
 .member-card-heading { min-height:0; padding:16px; }
 .member-dialog { padding:18px; width:calc(100vw - 20px); border-radius:18px; }
 .detail-layout, .creator-layout { grid-template-columns:1fr; gap:20px; }
}
