/* Recovery Familia members / forum participation — extension only.
   Preserves official imagery, muted black/white design and mobile drawer. */
.rf-member-intro{
 background:linear-gradient(135deg,#111 0%,#050505 75%);
 border-bottom:1px solid #373737;
 padding:clamp(54px,7vw,90px) 0;
}
.rf-member-intro .eyebrow{color:#f6f6f6}
.rf-member-intro h1{
 font:500 clamp(2.65rem,6vw,5.35rem)/1.09 Georgia,"Times New Roman",serif;
 letter-spacing:-.052em;color:#fff;max-width:920px;margin:18px 0 24px;
 text-wrap:balance;
}
.rf-member-intro p{color:#dedede;max-width:780px;font-size:clamp(1rem,1.6vw,1.17rem);line-height:1.75;margin:0}
.rf-member-section{background:#090909}
.rf-member-content{max-width:1060px}
.rf-member-card{
 border:1px solid #434343;background:#131313;border-radius:9px;
 padding:clamp(22px,4.8vw,42px);margin:0 0 28px;
 min-width:0;overflow-wrap:anywhere;
}
.rf-member-card>h2,.rf-member-card-heading h2{
 font:500 clamp(1.9rem,3.5vw,2.7rem)/1.15 Georgia,serif;
 letter-spacing:-.035em;color:#fff;margin:0 0 14px;
}
.rf-member-card p,.rf-member-card-heading p{color:#d7d7d7;line-height:1.7}
.rf-account-form{display:grid;gap:19px;margin:27px 0 20px}
.rf-account-form[hidden],.rf-report-form[hidden]{display:none!important}
.rf-field{display:grid;gap:9px;max-width:100%;min-width:0;font-size:.9rem;color:#fff;font-weight:700}
.rf-field>span{display:block}
.rf-field input,.rf-field textarea,.rf-field select,
.rf-report-form input,.rf-report-form textarea,.rf-mod-item textarea{
 display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;
 padding:13px 16px;border:1px solid #767676;border-radius:6px;
 background:#090909;color:#fff;font:inherit;line-height:1.5;
}
.rf-field input,.rf-field select{min-height:50px}
.rf-field textarea{resize:vertical;min-height:135px}
.rf-field input::placeholder,.rf-field textarea::placeholder{color:#aaa}
.rf-field input:focus,.rf-field textarea:focus,.rf-field select:focus{
 outline:2px solid #fff;outline-offset:1px;border-color:#fff;
}
.rf-member-checks{display:grid;gap:16px}
.rf-member-checks label,.rf-checkline{
 display:flex;gap:12px;align-items:flex-start;color:#e5e5e5;
 font-size:.89rem;line-height:1.55;font-weight:500;
}
.rf-member-checks input,.rf-checkline input{width:18px;height:18px;flex:0 0 auto;accent-color:#fff;margin-top:2px}
.rf-member-checks a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.rf-captcha{min-height:75px;max-width:100%;overflow:hidden}
.rf-captcha>div{max-width:100%}
.rf-submit{justify-self:start;min-width:170px;border-radius:5px}
.rf-member-links,.rf-account-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin:22px 0}
.rf-member-links a{color:#fff;text-decoration:underline;text-underline-offset:5px;font-size:.91rem}
.rf-member-links a:hover{text-decoration-color:var(--rf-green)}
.rf-member-note,.rf-member-loading{color:#bfbfbf;font-size:.87rem;line-height:1.65}
.rf-members-safety{color:#cfcfcf;font-size:.85rem;line-height:1.7;max-width:920px;margin:32px 0 0;border-left:2px solid #656565;padding:11px 0 12px 18px}
.rf-form-result{margin:14px 0;max-width:100%}
.rf-message{border:1px solid #484848;background:#171717;color:#fff;border-radius:6px;padding:15px 17px;line-height:1.6;margin:0 0 16px}
.rf-message-success{border-left:3px solid var(--rf-green)}
.rf-message-error{border-left:3px solid var(--rf-red)}
.rf-recovery-result{
 padding:24px;max-width:100%;background:#070707;
 border:1px solid #6b6b6b;border-radius:8px;
 display:flex;flex-direction:column;align-items:flex-start;gap:16px;
}
.rf-recovery-result strong{color:#fff;font-size:1.3rem}
.rf-recovery-result p{margin:0}
.rf-recovery-secret{
 display:block;width:100%;overflow-wrap:anywhere;word-break:break-all;
 padding:15px;background:#1d1d1d;color:#fff;letter-spacing:.04em;
 border:1px solid #424242;font-size:clamp(.75rem,1.8vw,1rem);
}
.rf-submission-list,.rf-mod-list{display:grid;gap:14px;margin:22px 0}
.rf-submission,.rf-mod-item{border:1px solid #3d3d3d;padding:22px 23px;background:#101010;border-radius:7px;min-width:0}
.rf-submission small,.rf-mod-item small{color:#ddd;letter-spacing:.1em;font-size:.73rem;text-transform:uppercase;font-weight:700}
.rf-submission h3,.rf-mod-item h3{
 font:500 1.45rem/1.2 Georgia,serif;color:#fff;margin:10px 0 14px;
}
.rf-submission p,.rf-mod-item p{
 color:#dedede;line-height:1.62;overflow-wrap:anywhere;white-space:pre-wrap;
}
.rf-mod-item textarea{min-height:70px}
.rf-mod-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.rf-mod-actions button{font-size:.83rem;padding:9px 14px}
.rf-community-member-cta{
 margin:0 0 28px;padding:24px 26px;
 display:flex;align-items:center;justify-content:space-between;gap:22px;
 border:1px solid #505050;border-left:3px solid #fff;background:#161616;
 border-radius:7px;
}
.rf-community-member-cta strong{display:block;font:500 1.5rem Georgia,serif;color:#fff;margin-bottom:8px}
.rf-community-member-cta p{color:#dedede;margin:0;font-size:.94rem;line-height:1.6}
.rf-community-member-cta .button-ghost{white-space:nowrap}
.rf-board-member-cta{display:flex;justify-content:flex-start;margin:30px 0 12px}
.rf-member-reply-section{padding:29px 0;margin-top:25px;border-top:1px solid #484848;max-width:860px}
.rf-member-reply-section h2{color:#fff;font:500 clamp(1.65rem,3vw,2.3rem) Georgia,serif}
.rf-member-reply-section p{color:#dedede}
.rf-report-toggle{
 font:inherit;font-size:.86rem;color:#fff;background:transparent;
 border:1px solid #666;border-radius:5px;
 padding:10px 15px;margin-top:15px;cursor:pointer;
}
.rf-report-form{
 display:grid;gap:12px;margin:14px 0;padding:20px;
 background:#161616;border:1px solid #4a4a4a;max-width:660px;
}
.rf-report-form button{justify-self:start}
.rf-drawer-account{
 display:block;color:#fff;border:1px solid #666;background:#191919;
 padding:12px 14px;margin:0 0 14px;border-radius:6px;font-weight:700;
}
@media(max-width:700px){
 .rf-member-section{padding-block:46px}
 .rf-member-intro{padding-block:45px}
 .rf-member-card{padding:23px 18px}
 .rf-community-member-cta{align-items:stretch;flex-direction:column;padding:22px 18px}
 .rf-community-member-cta .button-ghost{text-align:center}
 .rf-submit{width:100%}
 .rf-member-links{flex-direction:column;align-items:flex-start}
 .rf-member-card .rf-account-actions>a,.rf-member-card .rf-account-actions>button{width:100%}
}
@media(prefers-reduced-motion:reduce){.rf-member-card,.rf-community-member-cta{transition:none}}


.rf-danger-action{display:inline-flex;justify-content:center;justify-self:start;
 color:#fff;border:1px solid #8b6464;background:transparent;padding:13px 18px;
 min-height:46px;border-radius:5px;cursor:pointer;font-weight:700}
.rf-danger-action:hover{background:#302020;border-color:#c78d8d}


.rf-drawer-member-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 24px}
.rf-drawer-member-links[hidden]{display:none!important}
.rf-drawer-member-links a{display:flex;align-items:center;justify-content:center;min-height:44px;
 background:#181818;color:#fff;border:1px solid #777;border-radius:6px;font-weight:700;font-size:.85rem;text-align:center}
.rf-drawer-member-links a:hover{border-color:#fff;background:#202020}
.rf-drawer-member-links a:first-child{background:#fff;color:#0a0a0a}


/* P0 account-creation feedback: captcha success does not imply account creation. */
.rf-signup-instructions{
 display:block;max-width:750px;margin:0 0 4px;padding:17px 19px;
 background:#0c0c0c;border:1px solid #555;border-left:2px solid #ddd;
 color:#eee;font-size:.91rem;line-height:1.72;
}
.rf-signup-instructions strong{color:#fff}
.rf-signup-verification{
 margin:-1px 0 0;
 padding:12px 15px;border:1px solid #525252;
 border-radius:5px;background:#191919;color:#ededed;
 font-size:.86rem;line-height:1.6;
}
.rf-signup-verification[data-state="verified"]{border-left:3px solid var(--rf-green,#0bb84b);color:#fff}
.rf-signup-verification[data-state="error"],.rf-signup-verification[data-state="expired"]{border-left:3px solid var(--rf-red,#ee3434)}
[data-rf-signup-inline]:empty{display:none}
[data-rf-signup-inline] .rf-message{margin:0}
[data-rf-signup] .rf-submit[aria-busy="true"]{opacity:.8;cursor:progress}
@media(max-width:590px){
 .rf-signup-instructions{padding:14px 15px;font-size:.87rem}
 .rf-signup-verification{font-size:.84rem}
}
