/* Selo proprietário de verificação da Rede Psi Brasil. */
.rpb-profile-card__photo,
.rpb-profile-photo {
    position: relative;
}

/* Credencial compacta: nunca sobrepõe a fotografia ou o rosto. */
.rpb-credential {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: center;
    gap: 11px;
    padding: 13px 14px;
    border: 1px solid #bfe1d5;
    border-radius: 14px;
    background: linear-gradient(135deg, #f2fbf8, #e7f6f1);
    color: #174e49;
    box-sizing: border-box;
}

.rpb-credential__icon {
    display: inline-grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 11px;
    background: #0b8a5b;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 900;
    box-shadow: 0 6px 15px rgba(4, 105, 70, .16);
}

.rpb-credential__copy {
    display: grid;
    min-width: 0;
    gap: 2px;
    line-height: 1.3;
}

.rpb-credential__copy strong {
    color: #164b46;
    font-size: .86rem;
}

.rpb-credential__copy small {
    color: #55706d;
    font-size: .69rem;
    line-height: 1.4;
}

.rpb-credential--hero {
    max-width: 350px;
}

.rpb-credential--example {
    max-width: 390px;
}

.rpb-credential--specialist {
    border-color: #cbd8ef;
    background: linear-gradient(135deg, #f5f8ff, #eaf0fb);
    color: #294b77;
}

.rpb-credential--specialist .rpb-credential__icon {
    background: linear-gradient(145deg, #476fa8, #294f82);
    box-shadow: 0 6px 15px rgba(41, 79, 130, .18);
}

.rpb-credential--specialist .rpb-credential__copy strong {
    color: #294f82;
}

.rpb-credential--specialist .rpb-credential__copy small {
    color: #586c88;
}

.rpb-credential--unverified {
    border-color: #d9dee3;
    background: #f6f7f8;
    color: #4c5962;
}

.rpb-credential--unverified .rpb-credential__icon {
    background: #6a7780;
    box-shadow: none;
    text-transform: lowercase;
}

.rpb-credential--unverified .rpb-credential__copy strong {
    color: #39464f;
}

.rpb-credential--unverified .rpb-credential__copy small {
    color: #65727a;
}

.rpb-unverified-note {
    margin-top: 22px;
    padding: 18px;
    border: 1px solid #d9dee3;
    border-radius: 16px;
    background: #f6f7f8;
}

.rpb-unverified-note strong {
    display: block;
    margin-bottom: 6px;
    color: #39464f;
    font-size: .84rem;
}

.rpb-unverified-note p {
    margin: 0 0 9px;
    font-size: .76rem;
    line-height: 1.55;
}

.rpb-unverified-note a {
    color: #4a666d;
    font-size: .75rem;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rpb-verification-seal {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 92px;
    height: 92px;
    padding: 10px;
    border: 3px solid #d8f7e8;
    border-radius: 50%;
    background: radial-gradient(circle at 34% 28%, #38b981 0, #0b8a5b 42%, #056642 100%);
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: .06em;
    box-shadow: 0 8px 24px rgba(4, 85, 55, .28), inset 0 0 0 2px rgba(255, 255, 255, .32);
    transform: rotate(-6deg);
    transition: transform .2s ease, box-shadow .2s ease;
}

.rpb-verification-seal::before {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px dashed rgba(255, 255, 255, .72);
    border-radius: 50%;
    pointer-events: none;
}

.rpb-verification-seal small,
.rpb-verification-seal span,
.rpb-verification-seal b {
    position: relative;
    z-index: 1;
    color: #fff;
    font-family: Manrope, system-ui, sans-serif;
}

.rpb-verification-seal small {
    font-size: .5rem;
    font-weight: 800;
    letter-spacing: .16em;
}

.rpb-verification-seal b {
    display: grid;
    place-items: center;
    width: 29px;
    height: 29px;
    margin: 4px 0 3px;
    border-radius: 50%;
    background: #fff;
    color: #087e58;
    font-size: 1.05rem;
    box-shadow: 0 2px 7px rgba(0, 0, 0, .14);
}

.rpb-verification-seal span {
    font-size: .56rem;
    font-weight: 900;
    letter-spacing: .1em;
}

.rpb-profile-card__photo .rpb-verification-seal {
    top: 14px;
    right: 14px;
}

.rpb-profile-card__photo > .rpb-verification-seal {
    display: flex;
    width: 92px;
    height: 92px;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
}

.rpb-profile-card__photo:hover .rpb-verification-seal {
    transform: rotate(0deg) scale(1.03);
    box-shadow: 0 12px 30px rgba(4, 85, 55, .34), inset 0 0 0 2px rgba(255, 255, 255, .38);
}

.rpb-verification-seal--profile {
    right: 16px;
    bottom: 16px;
    width: 112px;
    height: 112px;
    border-width: 4px;
}

.rpb-profile-photo > .rpb-verification-seal--profile {
    display: flex;
    width: 112px;
    height: 112px;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
}

.rpb-profile-photo .rpb-verification-seal small {
    position: relative;
    bottom: auto;
    left: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #fff;
}

.rpb-verification-seal--profile small {
    font-size: .58rem;
}

.rpb-verification-seal--profile b {
    width: 35px;
    height: 35px;
    font-size: 1.25rem;
}

.rpb-verification-seal--profile span {
    font-size: .64rem;
}

.rpb-verification-note {
    margin-top: 22px;
    padding: 18px;
    border: 1px solid #bfe8d4;
    border-radius: 16px;
    background: #effaf4;
}

.rpb-verification-note strong {
    display: block;
    margin-bottom: 6px;
    color: #086844;
    font-size: .84rem;
}

.rpb-verification-note p {
    margin: 0 0 9px;
    font-size: .76rem;
    line-height: 1.55;
}

.rpb-verification-note a {
    color: #087e58;
    font-size: .75rem;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Experiência documentada: o texto mostra o total exato e a cor muda nas faixas públicas. */
.rpb-credential--experience {
    --exp-border: #bfd8cf;
    --exp-bg-a: #f5fbf8;
    --exp-bg-b: #e8f3ee;
    --exp-ink: #315f51;
    position: relative;
    overflow: hidden;
    border-color: var(--exp-border);
    background: linear-gradient(135deg, var(--exp-bg-a), var(--exp-bg-b));
}

.rpb-credential--experience .rpb-credential__icon {
    background: var(--exp-ink);
    box-shadow: 0 6px 15px color-mix(in srgb, var(--exp-ink) 24%, transparent);
}

.rpb-credential--experience .rpb-credential__copy strong { color: var(--exp-ink); }
.rpb-credential--experience .rpb-credential__copy small { color: color-mix(in srgb, var(--exp-ink) 78%, #52636a); }
.rpb-experience-tier--1 { --exp-border:#bfd8cf; --exp-bg-a:#f5fbf8; --exp-bg-b:#e8f3ee; --exp-ink:#315f51; }
.rpb-experience-tier--3 { --exp-border:#98d8d1; --exp-bg-a:#effbf9; --exp-bg-b:#dff4f0; --exp-ink:#167067; }
.rpb-experience-tier--5 { --exp-border:#a9c8e6; --exp-bg-a:#f2f7fc; --exp-bg-b:#e3eef9; --exp-ink:#2e648f; }
.rpb-experience-tier--10 { --exp-border:#bcb7e6; --exp-bg-a:#f7f5ff; --exp-bg-b:#eae7fa; --exp-ink:#504b98; box-shadow:inset 0 0 0 2px rgba(255,255,255,.72); }
.rpb-experience-tier--15 { --exp-border:#ddb5c4; --exp-bg-a:#fff6f8; --exp-bg-b:#f7e6ec; --exp-ink:#8b405b; box-shadow:inset 0 0 0 2px rgba(255,255,255,.74),0 7px 18px rgba(112,43,67,.08); }
.rpb-experience-tier--20 { --exp-border:#d6b184; --exp-bg-a:#fff9f1; --exp-bg-b:#f4e5d1; --exp-ink:#8a5423; box-shadow:inset 0 0 0 2px rgba(255,255,255,.78),0 8px 20px rgba(112,68,29,.1); }
.rpb-experience-tier--25 { --exp-border:#b9c3ce; --exp-bg-a:#fbfcfd; --exp-bg-b:#e9edf1; --exp-ink:#536170; box-shadow:inset 0 0 0 2px #fff,0 8px 22px rgba(64,78,91,.11); }
.rpb-experience-tier--30 { --exp-border:#d1aa43; --exp-bg-a:#fff9de; --exp-bg-b:#f2d987; --exp-ink:#76530a; box-shadow:inset 0 0 0 2px rgba(255,255,255,.72),0 9px 24px rgba(118,83,10,.14); }
.rpb-experience-tier--40 { --exp-border:#c5a14c; --exp-bg-a:#302b22; --exp-bg-b:#111b1d; --exp-ink:#d9b85a; box-shadow:inset 0 0 0 2px rgba(230,196,104,.28),0 10px 26px rgba(17,27,29,.2); }
.rpb-experience-tier--40 .rpb-credential__copy strong { color:#f2d982; }
.rpb-experience-tier--40 .rpb-credential__copy small { color:#e8ddbd; }
.rpb-experience-tier--40::after,
.rpb-experience-tier--30::after,
.rpb-experience-tier--25::after,
.rpb-experience-tier--20::after {
    content:"✦";
    position:absolute;
    top:5px;
    right:8px;
    color:var(--exp-ink);
    font-size:.58rem;
    opacity:.55;
}

.rpb-experience-note {
    margin-top:22px;
    padding:18px;
    border:1px solid #d1aa43;
    border-radius:16px;
    background:#fff9e8;
}
.rpb-experience-note strong { display:block; margin-bottom:6px; color:#76530a; font-size:.84rem; }
.rpb-experience-note p { margin:0 0 9px; font-size:.76rem; line-height:1.55; }
.rpb-experience-note a { color:#76530a; font-size:.75rem; font-weight:800; text-decoration:underline; text-underline-offset:3px; }

.rpb-reverification-progress {
    margin:24px 0;
    padding:24px;
    border:1px solid #bfe1d5;
    border-radius:20px;
    background:linear-gradient(135deg,#f5fbf8,#edf7f3);
}
.rpb-reverification-progress h3 { margin:.35rem 0 .8rem; }
.rpb-reverification-progress p { max-width:820px; }

.rpb-credential--most-reviewed {
    border-color:#dfb63f;
    background:linear-gradient(135deg,#fff9df,#f7e3a2);
}
.rpb-credential--most-reviewed .rpb-credential__icon { background:linear-gradient(145deg,#f2c94c,#b77a00); color:#fff; }
.rpb-credential--most-reviewed .rpb-credential__copy strong { color:#76530a; }
.rpb-credential--most-reviewed .rpb-credential__copy small { color:#806823; }
.rpb-credential--most-sought-pilot { border:2px dashed #8264ae; background:#f8f3ff; }
.rpb-credential--most-sought-pilot .rpb-credential__icon { background:#8264ae; }
.rpb-credential--most-sought-pilot .rpb-credential__copy strong { color:#5f3f8d; }

@media (max-width: 760px) {
    .rpb-verification-seal {
        width: 80px;
        height: 80px;
    }

    .rpb-verification-seal small {
        font-size: .43rem;
    }

    .rpb-verification-seal b {
        width: 25px;
        height: 25px;
        font-size: .92rem;
    }

    .rpb-verification-seal span {
        font-size: .48rem;
    }

    .rpb-profile-card__photo > .rpb-verification-seal {
        width: 80px;
        height: 80px;
    }

    .rpb-verification-seal--profile {
        right: 10px;
        bottom: 10px;
        width: 94px;
        height: 94px;
    }

    .rpb-profile-photo > .rpb-verification-seal--profile {
        width: 94px;
        height: 94px;
    }

    .rpb-verification-seal--profile small {
        font-size: .5rem;
    }

    .rpb-verification-seal--profile b {
        width: 30px;
        height: 30px;
        font-size: 1.05rem;
    }

    .rpb-verification-seal--profile span {
        font-size: .55rem;
    }
}
