/* Members-only viewing: the app shell (header, hero, nav) stays; each tab's
   content is replaced by one join card in the composer look. The html class is
   set before first paint from the server's decision (window.MEMBERS_GATE). */
html.members-locked [id$="-main-area"] > :not(.members-gate),
html.members-locked #arena-grid > :not(.members-gate),
html.members-locked #mobile-import-library > :not(.mobile-import-library__body),
html.members-locked #mobile-import-library .mobile-import-library__body > :not(.members-gate):not(.mobile-import-library__profile-strip) { display: none !important; }
html.members-locked [id$="-main-area"], html.members-locked #arena-grid { min-height: 60vh; }

html body .members-gate {
    display: block; margin: 18px; padding: 26px 18px 20px; border: 1px solid #EAEAE6; border-radius: 22px;
    background: #FFFFFF; box-shadow: 0 1px 2px rgba(17, 18, 20, 0.03); text-align: center;
    font-family: Manrope, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}
html body .members-gate * { font-family: inherit; box-sizing: border-box; }
html body .members-gate .fas { font-family: "Font Awesome 6 Free" !important; font-weight: 900 !important; }
html body .members-gate-icon { width: 56px; height: 56px; margin: 0 auto 14px; border-radius: 18px; background: #111214; display: grid; place-items: center; }
html body .members-gate.members-gate.members-gate .members-gate-icon i { font-size: 20px; color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; }
html body .members-gate-title { margin: 0 0 6px !important; font-size: 20px !important; font-weight: 800 !important; letter-spacing: -0.03em; color: #111214 !important; -webkit-text-fill-color: #111214 !important; }
html body .members-gate-copy { margin: 0 auto 16px !important; max-width: 300px; font-size: 13px !important; font-weight: 500; line-height: 1.5; color: #63635F !important; -webkit-text-fill-color: #63635F !important; }
html body .members-gate-eyebrow, html body .members-gate-eyebrow span { font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace !important; font-size: 9px !important; font-weight: 500 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; color: #70706B !important; -webkit-text-fill-color: #70706B !important; }
html body .members-gate-eyebrow { display: flex; align-items: baseline; justify-content: space-between; margin: 0 0 8px; padding: 0 4px; }
html body .members-gate-eyebrow span:last-child { letter-spacing: 0.08em !important; text-transform: none !important; }
html body .members-gate.members-gate.members-gate .members-gate-join.members-gate-join, html body .members-gate.members-gate.members-gate button.members-gate-join {
    display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 54px !important; min-height: 54px !important;
    margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 16px !important; background: #111214 !important; box-shadow: 0 12px 24px -12px rgba(17, 18, 20, 0.55) !important;
    font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: 0.22em !important; text-transform: uppercase !important;
    color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; text-shadow: none !important; cursor: pointer;
}
html body .members-gate-join::before, html body .members-gate-join::after { content: none !important; }
html body .members-gate.members-gate.members-gate .members-gate-login.members-gate-login, html body .members-gate.members-gate.members-gate button.members-gate-login {
    display: block !important; width: 100% !important; min-height: 0 !important; margin: 10px 0 0 !important; padding: 10px 0 !important; border: 0 !important; border-radius: 0 !important;
    background: transparent !important; box-shadow: none !important; font-size: 12.5px !important; font-weight: 700 !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important;
    backdrop-filter: none !important; -webkit-backdrop-filter: none !important; cursor: pointer;
}
html body .members-gate.members-gate.members-gate .members-gate-join.members-gate-join * { color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; }
