.rp360-member-section{background:linear-gradient(145deg,#f7faff,#fff);padding:42px 16px 70px;color:#0a255a}
.rp360-member-shell{max-width:1150px;margin:auto}.rp360-member-shell>h1{font-size:clamp(30px,4vw,49px);line-height:1.15;color:#071e52;letter-spacing:-.045em}.rp360-member-shell>p{color:#597097}
.rp360-member-duo{display:grid;grid-template-columns:1fr 1.4fr;gap:22px;margin-top:26px}.rp360-member-duo>form,.rp360-member-logged{border:1px solid #dce7f8;border-radius:17px;background:#fff;padding:27px;box-shadow:0 8px 27px #0a2b6812}
.rp360-member-duo h2{font-size:23px}.rp360-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.rp360-member-duo label:not(.rp360-member-consent){display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;margin-bottom:11px}
.rp360-member-duo input:not([type=checkbox]){border:1px solid #ccdaf4;padding:12px;border-radius:10px;min-width:0;font-size:14px}
.rp360-member-duo button,.rp360-member-logged button{background:#075ff4;border:0;color:#fff;border-radius:11px;font-weight:850;padding:13px 22px;cursor:pointer}
.rp360-member-consent{font-size:12px;display:block;margin:16px 0;color:#597093}.rp360-member-consent a{color:#0758ea;text-decoration:underline}
.rp360-member-error{color:#a82135;background:#fff1f3;border:1px solid #ffced9;padding:13px;border-radius:10px}
.rp360-member-logged a,.rp360-member-saved a{color:#0755d8!important;text-decoration:underline}
.rp360-member-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:35px auto;padding:26px 34px;border:1px solid #cee0fd;border-radius:16px;background:linear-gradient(120deg,#eff6ff,#f7faff)}
.rp360-member-banner span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#0860f2}.rp360-member-banner h2{font-size:clamp(21px,2.2vw,28px);color:#08265e;margin:8px 0}.rp360-member-banner p{font-size:13px;color:#5c7196;margin:0}
.rp360-member-banner>a{background:#0a61ed;color:#fff!important;padding:13px 20px;border-radius:24px;font-size:13px;font-weight:850;white-space:nowrap}
.rp360-card-actions{display:flex;align-items:center;gap:6px;margin:8px 0 0}.rp360-card-actions button{border:1px solid #d5e2fa;color:#075adf;border-radius:25px;font-size:11px;font-weight:800;padding:6px 10px;background:#fff;cursor:pointer}
.rp360-card-actions button.saved{background:#e1f7ec;color:#076b48}
@media(max-width:780px){.rp360-member-duo{grid-template-columns:1fr}.rp360-member-banner{flex-direction:column;align-items:flex-start}.rp360-member-grid{grid-template-columns:1fr}}

.rp360-card-actions{flex-wrap:wrap}.rp360-share-links{flex:1 0 100%;display:flex;gap:7px;flex-wrap:wrap;background:#eef5ff;border-radius:10px;padding:9px}.rp360-share-links a,.rp360-share-links button{font:800 11px Inter,Arial,sans-serif;background:white;color:#0758e8;padding:7px 10px;border:1px solid #cfe0fd;border-radius:9px;text-decoration:none;cursor:pointer}
.rp360-place-details{max-width:1080px;margin-inline:auto;padding-block:40px}.rp360-place-card,.rp360-place-opinion{background:#fff;border:1px solid #dbe5ef;border-radius:16px;padding:24px;margin-block:20px}.rp360-place-details h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.15}.rp360-place-details #opinioes{margin-top:40px}.rp360-opinion-form{display:grid;gap:18px;max-width:680px}.rp360-opinion-form label{display:grid;gap:8px;font-weight:700}.rp360-opinion-form textarea,.rp360-opinion-form select{width:100%;border:1px solid #b6c6d9;border-radius:8px;padding:12px;background:white;color:#102a43}.rp360-opinion-form button{background:#0747a6;color:white;border:0;border-radius:8px;padding:14px;font-weight:700}.rp360-dir-card h3 a{color:inherit;text-decoration:none}.rp360-dir-card h3 a:hover{text-decoration:underline}.rp360-card-actions button[aria-pressed=true]{background:#e0f3ff;color:#0753a0}

.rp360-share-links a { display: inline-flex; align-items: center; gap: 6px; }
.rp360-share-logo { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: #1877f2; color: #fff; }
.rp360-share-logo svg { width: 13px; height: 13px; }
.rp360-share-x .rp360-share-logo { background: #111; }
.rp360-share-whatsapp .rp360-share-logo { background: #137d42; }

.rp360-place-card h1 a { color: inherit; text-decoration: none; }
.rp360-place-data { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,210px),1fr)); gap: 12px; margin: 22px 0; }
.rp360-place-data > div { background: #f3f7fc; border-radius: 10px; padding: 12px 14px; }
.rp360-place-data dt { font-weight: 800; }
.rp360-place-data dd { margin: 5px 0 0; overflow-wrap: anywhere; }

/* Cadastro único com a mesma identidade das páginas do portal. */
.rp360-member-duo.rp360-member-login { grid-template-columns: minmax(0, 520px); justify-content: center; }
.rp360-login-page .rp360-member-section { padding: 12px 0 64px; background: transparent; }
.rp360-login-page .rp360-member-shell > h1,
.rp360-login-page .rp360-member-shell > h1 + p { display: none; }
.rp360-login-page .rp360-member-login { margin-top: 0; }
.rp360-login-page .rp360-member-login > form { border-color: #d3e2fb; border-radius: 18px; box-shadow: 0 12px 35px #08245a0c; }
.rp360-login-page .rp360-member-shell > .rp360-member-error { max-width: 520px; margin: 0 auto 18px; }
.rp360-account-page .rp360-unified-register { grid-template-columns: minmax(230px, .75fr) minmax(0, 1.25fr); align-items: start; gap: clamp(24px, 4vw, 60px); padding: 0; color: #092451; }
.rp360-unified-register .rp360-register-intro { padding: 26px 0; }
.rp360-unified-register .rp360-register-intro > span { color: #075dff; }
.rp360-unified-register .rp360-register-intro h2 { color: #071e52; font-size: clamp(32px, 4vw, 50px); }
.rp360-unified-register .rp360-register-intro p { color: #4d668f; }
.rp360-unified-register .rp360-register-benefits > span { color: #0753cf; background: #eaf2ff; border: 1px solid #d3e2fb; }
.rp360-unified-register .rp360-register-form { min-width: 0; padding: clamp(20px, 3vw, 34px); border: 1px solid #d3e2fb; border-radius: 18px; background: #fff; box-shadow: 0 12px 35px #08245a0c; }
.rp360-unified-register .rp360-register-form h2 { color: #071e52; line-height: 1.25; }
.rp360-unified-register .rp360-register-form > p { color: #4d668f; line-height: 1.6; }
.rp360-unified-register .rp360-register-form label { color: #092451; }
.rp360-unified-register .rp360-register-form input:not([type=checkbox]):not([type=radio]),
.rp360-unified-register .rp360-register-form select { height: 46px; border: 1px solid #bdcff0; border-radius: 10px; background: #fff; color: #092451; font-size: 14px; }
.rp360-unified-register .rp360-register-form input:focus-visible,
.rp360-unified-register .rp360-register-form select:focus-visible,
.rp360-unified-register .rp360-register-form button:focus-visible { outline: 3px solid #b4d0ff; outline-offset: 2px; border-color: #075dff; }
.rp360-unified-register input[readonly] { background: #f3f7fd !important; }
.rp360-unified-register .rp360-register-form fieldset { padding-top: 18px; margin: 22px 0 14px; border-top: 1px solid #e1eafa; }
.rp360-unified-register .rp360-register-form legend { color: #092451; }
.rp360-unified-register .rp360-register-form .rp360-choice { display: inline-flex; flex-direction: row; align-items: flex-start; line-height: 1.6; font-weight: 500; }
.rp360-unified-register .rp360-register-form .rp360-opt { display: flex; }
.rp360-unified-register .rp360-choice input { accent-color: #075dff; margin-top: 4px; width: 16px; height: 16px; }
.rp360-unified-register .rp360-register-form .rp360-opt a { color: #075dff; text-decoration: underline; }
.rp360-unified-register .rp360-register-form button { width: 100%; min-height: 48px; margin-top: 12px; background: #075dff; color: #fff; border: 0; border-radius: 10px; font-size: 14px; }
.rp360-unified-register .rp360-register-form button:hover { background: #0849ad; }
.rp360-unified-register .rp360-register-form .rp360-tip { color: #52688b; }
.rp360-form-message { color: #075141 !important; background: #eaf9f1; padding: 14px; border: 1px solid #b9e1ce; border-radius: 10px; }
@media (max-width: 880px) {
 .rp360-account-page .rp360-unified-register { grid-template-columns: minmax(0, 1fr); gap: 12px; }
 .rp360-unified-register .rp360-register-intro { padding: 6px 0 16px; }
}
@media (max-width: 560px) {
 .rp360-unified-register .rp360-register-grid, .rp360-unified-register .rp360-check-grid { grid-template-columns: minmax(0, 1fr); }
 .rp360-unified-register .rp360-register-form { padding: 20px; }
}
