/* RW 2.2 — unified interface, based on original brand assets. Presentation only.
   Last stylesheet: overrides conflicting historic light/dark themes without altering APIs. */
:root { --r22-green:#1a5c3a; --r22-dark:#193e2a; --r22-mint:#eef5ef; --r22-paper:#f8faf8; --r22-border:#e0e9e2; --r22-muted:#65766a; --r22-radius:14px; --r22-shadow:0 7px 24px rgba(22,57,36,.045); }
/* Consistent global touch and content sizing */
#app *,#landing * { -webkit-tap-highlight-color:transparent; }
#app button, #landing button { touch-action:manipulation; }
#app :is(button,a,input,textarea,select):focus-visible,#landing :is(button,a,input,textarea,select):focus-visible{outline:3px solid #77bd91!important;outline-offset:2px}
#mainContent {background:var(--r22-paper)}
#mainContent>.panel.active:not([data-panel="forum"]):not([data-panel="creators"]):not([data-panel="messages"]){background:var(--r22-paper)!important;color:#213b2a}
#mainContent>.panel:not([data-panel="forum"]):not([data-panel="creators"]):not([data-panel="messages"]){max-width:100%;min-width:0}
#app .sidebar{background:#fff!important;border-right:1px solid var(--r22-border)!important}
#app .sidebar-brand{border-bottom:1px solid #e8eee9}
#app .nav button.active,#app .nav .nav-item.active{background:#e7f2ea!important;color:#175338!important}
#app .nav button:hover{background:#f1f6f2}
#app .mobile-header{background:#fff!important;border-bottom:1px solid var(--r22-border)!important}
/* Forum: remove the dark override from rw-social-refresh.css. */
.panel[data-panel="forum"]{background:var(--r22-paper)!important;color:#203b2a!important}
.panel[data-panel="forum"] .rwf{color:#243c2c!important;padding:18px 22px 70px!important}
.panel[data-panel="forum"] .rwf-wrap{grid-template-columns:minmax(175px,215px) minmax(0,650px) minmax(180px,220px)!important;gap:20px!important;max-width:1220px!important}
.panel[data-panel="forum"] .rwf-card{background:#fff!important;color:#243b2b!important;border:1px solid var(--r22-border)!important;border-radius:var(--r22-radius)!important;box-shadow:var(--r22-shadow)!important}
.panel[data-panel="forum"] .rwf-topline{padding:0 0 12px!important}
.panel[data-panel="forum"] .rwf-topline h2{font-family:Inter,system-ui,sans-serif!important;color:var(--r22-dark)!important;font-weight:800!important;letter-spacing:-.045em!important;font-size:clamp(24px,3vw,32px)!important}
.panel[data-panel="forum"] .rwf-topline span{color:#688574!important;letter-spacing:.08em!important;font-size:10px!important}
.panel[data-panel="forum"] .rwf-left-title,.panel[data-panel="forum"] .rwf-side-card h3,.panel[data-panel="forum"] .rwf-author strong{color:var(--r22-dark)!important;font-family:Inter,system-ui,sans-serif!important}
.panel[data-panel="forum"] .rwf-link{color:#3e6049!important;border-radius:10px!important;min-height:47px!important}
.panel[data-panel="forum"] .rwf-link.active{background:#e4f1e8!important;color:#175b3a!important;border:0!important;box-shadow:inset 3px 0 #2e8050!important}
.panel[data-panel="forum"] .rwf-link:hover,.panel[data-panel="forum"] .rwf-action:hover{background:#f1f6f2!important;color:#174c33!important}
.panel[data-panel="forum"] .rwf-tab{background:#fff!important;border:1px solid #d9e7dd!important;color:#27583b!important;border-radius:10px!important}
.panel[data-panel="forum"] .rwf-tab.active{background:var(--r22-green)!important;color:#fff!important;border-color:var(--r22-green)!important}
.panel[data-panel="forum"] .rwf-compose{padding:16px!important}
.panel[data-panel="forum"] .rwf-avatar{background:#e5f1e8!important;border:1px solid #c9e1d0!important;color:#215b3a!important}
.panel[data-panel="forum"] .rwf-prompt{background:#f5f8f5!important;color:#718375!important;border:1px solid #dce9e0!important;border-radius:999px!important}
.panel[data-panel="forum"] .rwf-prompt:hover{background:#edf5ef!important;color:var(--r22-dark)!important}
.panel[data-panel="forum"] .rwf-compose-extra,.panel[data-panel="forum"] .rwf-meta,.panel[data-panel="forum"] .rwf-replies{border-color:#e8eee9!important}
.panel[data-panel="forum"] .rwf-compose-extra button,.panel[data-panel="forum"] .rwf-action{color:#476850!important}
.panel[data-panel="forum"] .rwf-author small,.panel[data-panel="forum"] .rwf-meta,.panel[data-panel="forum"] .rwf-side-card p{color:#748678!important}
.panel[data-panel="forum"] .rwf-post-text{color:#233d2c!important;line-height:1.65!important}
.panel[data-panel="forum"] .rwf-reply p{color:#2b4c34!important;background:#f0f5f0!important}
.panel[data-panel="forum"] .rwf-reply-form input,.panel[data-panel="forum"] .rwf-dialog textarea{background:#fff!important;color:#203c2a!important;border:1px solid #ceded2!important}
.panel[data-panel="forum"] .rwf-side-card button,.panel[data-panel="forum"] .rwf-load{background:#f1f6f2!important;color:#245b3c!important;border:1px solid #e0eae3!important}
.panel[data-panel="forum"] .rwf-empty,.panel[data-panel="forum"] .rwf-notice{color:#718676!important}
.panel[data-panel="forum"] .rwf-dialog{background:#fff!important;color:#233d2d!important;border:1px solid #d8e5dc!important;box-shadow:0 28px 60px #0d2c1940!important}
.panel[data-panel="forum"] .rwf-dialog h3{color:var(--r22-dark)!important}
.panel[data-panel="forum"] .rwf-outline{background:#eef5ef!important;color:#245c3d!important}
.panel[data-panel="forum"] .rwf-primary{background:var(--r22-green)!important;color:#fff!important}
.panel[data-panel="forum"] .rwf-media{background:#eaf1eb}
/* Private messages — align with Instagram-inspired Creators, preserve behavior. */
.panel[data-panel="messages"]{background:var(--r22-paper)!important;color:#213c2a!important}
.panel[data-panel="messages"] .rw-msg-shell{max-width:1190px!important;margin:auto!important;background:transparent!important;color:#223c2b!important;padding:22px 22px 36px!important}
.panel[data-panel="messages"] .rw-msg-heading{margin-bottom:15px!important}
.panel[data-panel="messages"] .rw-msg-heading h2{font:800 clamp(24px,3vw,32px)/1.15 Inter,system-ui,sans-serif!important;color:var(--r22-dark)!important;letter-spacing:-.045em!important}
.panel[data-panel="messages"] .rw-msg-heading p,.panel[data-panel="messages"] .rw-msg-hint,.panel[data-panel="messages"] .rw-msg-empty{color:#687e6d!important}
.panel[data-panel="messages"] .rw-msg-overline{color:#649071!important}
.panel[data-panel="messages"] .rw-msg-actions button{background:var(--r22-green)!important;color:#fff!important;border-color:var(--r22-green)!important;border-radius:10px!important}
.panel[data-panel="messages"] .rw-msg-actions button.secondary{background:#fff!important;color:#205d3b!important;border-color:#d3e3d7!important}
.panel[data-panel="messages"] .rw-msg-layout{grid-template-columns:minmax(240px,315px) minmax(0,1fr)!important;gap:12px!important;min-height:min(76vh,740px)!important}
.panel[data-panel="messages"] .rw-msg-sidebar,.panel[data-panel="messages"] .rw-msg-conversation{background:#fff!important;color:#223b2b!important;border:1px solid var(--r22-border)!important;border-radius:14px!important;box-shadow:var(--r22-shadow)!important}
.panel[data-panel="messages"] .rw-msg-sidebar-header strong,.panel[data-panel="messages"] .rw-msg-conversation-header h3,.panel[data-panel="messages"] .rw-msg-empty strong{color:var(--r22-dark)!important}
.panel[data-panel="messages"] .rw-msg-sidebar input,.panel[data-panel="messages"] .rw-msg-form textarea{background:#f6f9f6!important;color:#233c2c!important;border:1px solid #dbe7dd!important;border-radius:10px!important}
.panel[data-panel="messages"] .rw-msg-sidebar input::placeholder,.panel[data-panel="messages"] .rw-msg-form textarea::placeholder{color:#8a9c8e!important}
.panel[data-panel="messages"] .rw-msg-filter{border-color:#e4eee6!important}
.panel[data-panel="messages"] .rw-msg-filter button{color:#65816c!important}
.panel[data-panel="messages"] .rw-msg-filter button.active{background:#e6f1e9!important;color:var(--r22-green)!important}
.panel[data-panel="messages"] .rw-msg-thread,.panel[data-panel="messages"] .rw-msg-contact{color:#2c4a33!important}
.panel[data-panel="messages"] .rw-msg-thread:hover,.panel[data-panel="messages"] .rw-msg-contact:hover{background:#f4f8f5!important}
.panel[data-panel="messages"] .rw-msg-thread.selected{background:#e7f2ea!important;box-shadow:inset 3px 0 #338253!important}
.panel[data-panel="messages"] .rw-msg-thread-text small,.panel[data-panel="messages"] .rw-msg-contact small,.panel[data-panel="messages"] .rw-msg-thread-time{color:#7a8e7e!important}
.panel[data-panel="messages"] .rw-msg-avatar,.panel[data-panel="messages"] .rw-v3-empty-icon{background:#e5f1e8!important;color:#236141!important}
.panel[data-panel="messages"] .rw-msg-conversation-header,.panel[data-panel="messages"] .rw-msg-form{background:#fff!important;border-color:#e7eee8!important}
.panel[data-panel="messages"] .rw-msg-conversation-header span{color:#698372!important}
.panel[data-panel="messages"] #rwMsgRefresh,.panel[data-panel="messages"] .rw-msg-inline-action,.panel[data-panel="messages"] .rw-msg-form button{background:var(--r22-green)!important;color:#fff!important;border-color:#2e7a4d!important}
.panel[data-panel="messages"] .rw-msg-guide,.panel[data-panel="messages"] .rw-msg-login{background:#f1f7f2!important;color:#3b6046!important;border:1px solid #deeadf!important}
.panel[data-panel="messages"] .rw-msg-guide strong{color:var(--r22-dark)!important}
.panel[data-panel="messages"] .rw-msg-guide p{color:#607b67!important}
.panel[data-panel="messages"] .rw-msg-messages{background:#f8faf8!important;scrollbar-color:#d8e5da #f8faf8!important}
.panel[data-panel="messages"] .rw-msg-bubble{background:#eef4ef!important;color:#23442e!important;border:1px solid #e0eae2!important}
.panel[data-panel="messages"] .rw-msg-bubble-row.mine .rw-msg-bubble{background:var(--r22-green)!important;color:#fff!important;border-color:var(--r22-green)!important}
.panel[data-panel="messages"] .rw-msg-bubble small{color:#758777!important}
.panel[data-panel="messages"] .rw-msg-bubble-row.mine .rw-msg-bubble small{color:#d8eedf!important}
/* Overlay wizard was dark-only. */
.rw-msg-wizard{background:#fff!important;color:#24412e!important;border:1px solid #dce8de!important}
.rw-msg-wizard-head h2,.rw-msg-wizard-person strong,.rw-msg-wizard .rw-discovery-person strong{color:var(--r22-dark)!important}
.rw-msg-wizard-eyebrow,.rw-msg-wizard-link{color:var(--r22-green)!important}
.rw-msg-close{background:#eef4ef!important;color:var(--r22-green)!important}
.rw-msg-wizard-tabs{background:#edf4ef!important}
.rw-msg-wizard-tabs button{color:#587461!important}
.rw-msg-wizard-tabs button[aria-selected=true]{background:#fff!important;color:var(--r22-dark)!important}
.rw-msg-wizard-body label:not(.rw-msg-wizard-person){color:#23452f!important}
.rw-msg-wizard-lead,.rw-msg-wizard .rw-discovery-hint{color:#65816b!important}
.rw-msg-wizard-body input:not([type=checkbox]){background:#f7faf7!important;color:#20412c!important;border-color:#d6e4d9!important}
.rw-msg-wizard-person,.rw-msg-wizard .rw-discovery-person{background:#fff!important;color:#23432f!important;border-color:#e3ebe5!important}
.rw-msg-wizard-person small,.rw-msg-wizard .rw-discovery-person small{color:#6a806f!important}
.rw-msg-wizard .rw-discovery-person button{background:var(--r22-green)!important;color:#fff!important}
.rw-msg-wizard .rw-discovery-settings,.rw-msg-my-code,.rw-msg-wizard-pending{background:#f3f7f3!important;color:#31553a!important;border-color:#dbe9de!important}
/* Rest of the app — consistent spacing, buttons and panels without replacing markup or API. */
#app .panel-header h2,#app .contact-clean-head h2,#app .community-page-head h2,#app .friends-page-head h2,#app .profile-header h2{font-family:Inter,system-ui,sans-serif!important;font-weight:800!important;letter-spacing:-.035em!important}
#app .panel[data-panel="profile"] .profile-card,#app .panel[data-panel="contact"] .contact-form,#app .panel[data-panel="friends"] .friends-card-v2,#app .panel[data-panel="chat"] .chat-card{border-radius:14px!important;box-shadow:var(--r22-shadow)}
#app :is(.profile-card,.contact-form,.friends-card-v2,.panel-card) {max-width:100%;min-width:0}
/* 320px contact fix: long phone numbers and grid in old inline stylesheet. */
#app [data-panel="contact"],#app #contactMain,#app .contact-form,#app .contact-phone-card-launch{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
#app .contact-phone-card-launch{grid-template-columns:52px minmax(0,1fr)!important;gap:12px!important}
#app .contact-phone-card-launch .contact-phone-main{min-width:0!important}
#app .contact-phone-card-launch #contactPhoneLink{font-size:clamp(1.12rem,5.3vw,1.9rem)!important;white-space:normal!important;overflow-wrap:anywhere!important;letter-spacing:-.035em!important}
#app .contact-phone-card-launch p,#app .contact-form a,#app .contact-form .field{overflow-wrap:anywhere!important}
#app .contact-phone-call-now{grid-column:1/-1!important;justify-self:stretch!important;white-space:normal!important}
#app .contact-form :is(input,textarea){max-width:100%;min-width:0;box-sizing:border-box}
/* Landing: less clutter; first visit = understand, get in, then explore. */
#landing{background:var(--r22-paper)}
#landing .landing-nav{box-shadow:0 2px 22px #132b1b16}
#landing .hero-symbols-float{display:none!important}
#landing .hero{min-height:580px!important}
#landing .hero-content{max-width:870px!important}
#landing .hero-brand h1{letter-spacing:-.045em!important}
#landing .hero-lead{max-width:650px!important;line-height:1.65!important}
#landing .hero-trust-row{gap:8px!important}
#landing .hero-trust-pill{border-radius:999px!important;white-space:normal!important}
#landing .hero-stats{opacity:.88}
#landing .landing-photo-wall{padding-top:28px!important;padding-bottom:24px!important}
#landing .landing-privacy,#landing .landing-easy-start,#landing .landing-how,#landing .landing-about,#landing .landing-parishes,#landing .features,#landing .landing-today,#landing .landing-help-contact{padding-top:clamp(30px,4vw,54px)!important;padding-bottom:clamp(30px,4vw,54px)!important}
#landing .landing-easy-grid button{background:#fff!important;border:1px solid var(--r22-border)!important;border-radius:14px!important;box-shadow:var(--r22-shadow)!important}
#landing .landing-easy-grid button:hover{transform:translateY(-2px)}
#landing .landing-easy-head h2,#landing .landing-how h2,#landing .landing-help-contact h2{font-family:Inter,system-ui,sans-serif!important;letter-spacing:-.04em!important;font-weight:800!important}
#landing .public-phone-card>a{overflow-wrap:anywhere;font-size:clamp(1.12rem,4.6vw,2.1rem)!important;line-height:1.18}
#landing .landing-help-actions a,#landing .landing-help-actions button{max-width:100%;overflow-wrap:anywhere}
@media(max-width:970px){.panel[data-panel="forum"] .rwf-wrap{display:block!important;max-width:670px!important}.panel[data-panel="forum"] .rwf-left,.panel[data-panel="forum"] .rwf-right{display:none!important}.panel[data-panel="messages"] .rw-msg-shell{padding:16px 12px 28px!important}}
@media(max-width:730px){.panel[data-panel="messages"] .rw-msg-layout{display:grid!important;grid-template-columns:1fr!important;min-height:0!important}.panel[data-panel="messages"] .rw-msg-conversation{display:none!important}.panel[data-panel="messages"] #rwMsgMain.rw-msg-mobile-active .rw-msg-conversation{display:flex!important}.panel[data-panel="messages"] #rwMsgMain.rw-msg-mobile-active .rw-msg-sidebar{display:none!important}}
@media(max-width:560px){#landing .hero{min-height:520px!important}#landing .hero-content{padding-top:34px!important;padding-bottom:24px!important}#landing .hero-actions{gap:8px!important}#landing .hero-trust-row{gap:6px!important}#landing .landing-photo-wall{display:none!important}#landing .landing-easy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#landing .landing-easy-grid button{min-height:110px!important}#landing .landing-easy-start,#landing .landing-how,#landing .landing-help-contact{padding:28px 0!important}#landing .landing-about-photo{min-height:230px!important}.panel[data-panel="forum"] .rwf{padding:8px 0 85px!important}.panel[data-panel="forum"] .rwf-topline{padding:8px 12px 12px!important}.panel[data-panel="forum"] .rwf-topline h2{font-size:26px!important}.panel[data-panel="forum"] .rwf-card{border-radius:11px!important}.panel[data-panel="messages"] .rw-msg-shell{padding:8px 5px 100px!important}}
@media(max-width:360px){#app .contact-phone-card-launch{grid-template-columns:1fr!important;padding:12px!important}#app .contact-phone-card-launch .contact-phone-icon{width:46px!important;height:46px!important}#app .contact-phone-card-launch #contactPhoneLink{font-size:1.12rem!important;letter-spacing:-.04em!important}#app .contact-phone-call-now{grid-column:auto!important}#landing .landing-easy-grid{grid-template-columns:1fr!important}#landing .landing-easy-grid button{min-height:88px!important}#landing .hero-actions .btn{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){#app *,#landing *{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}
/* Profile panel: prevent narrow badge and account ID rows from expanding the column. */
#mainContent>.panel[data-panel="profile"]{min-width:0!important;overflow-x:clip!important}
#mainContent>.panel[data-panel="profile"] :is(.profile-header,.profile-card,.profile-grid,.profile-form,.profile-stats,.profile-actions,.profile-container){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
#mainContent>.panel[data-panel="profile"] :is(p,span,strong,label,a){overflow-wrap:anywhere}
#mainContent>.panel[data-panel="profile"] :is(input,textarea,select){min-width:0;max-width:100%;box-sizing:border-box}
