/* Nova bbPress 4.9.80: private message controls inherit theme typography. */
.cls-nova-pm { padding: 20px 0; max-width: 920px; }
.cls-nova-pm__nav {display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 24px;}
.cls-nova-pm__nav a,.cls-nova-pm__profile-action,.cls-nova-pm__button {display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--cls-border,#d4deec);border-radius:10px;padding:10px 14px;text-decoration:none;font-weight:700;cursor:pointer;}
.cls-nova-pm__nav a.is-active,.cls-nova-pm__button {background:#1768bd;color:#fff;border-color:#1768bd;}
.cls-nova-pm__nav a span,.cls-nova-pm__tab-count {border-radius:99px;padding:2px 7px;background:#e2ebf6;color:#163454;font-size:.8em;}
.cls-nova-pm__profile-action {align-self:center;white-space:nowrap;margin:10px;}
.cls-nova-pm__form {display:flex;flex-direction:column;gap:10px;max-width:720px;}
.cls-nova-pm__form label {font-weight:700;margin-top:9px;}
.cls-nova-pm__form input,.cls-nova-pm__form textarea {box-sizing:border-box;width:100%;padding:12px;border:1px solid #a9b8c8;border-radius:8px;background:var(--cls-surface,#fff);color:inherit;font:inherit;}
.cls-nova-pm__form textarea {resize:vertical;min-height:170px;}
.cls-nova-pm__form .cls-nova-pm__button {align-self:flex-start;font:inherit;font-weight:700;}
.cls-nova-pm__hint,.cls-nova-pm__meta {font-size:.92rem;opacity:.8;}
.cls-nova-pm__notice,.cls-nova-pm__error,.cls-nova-pm__empty {padding:14px;border-radius:8px;background:#e7f3e9;color:#185b30;margin:12px 0;}
.cls-nova-pm__error {background:#fff0ee;color:#91251e;}
.cls-nova-pm__list {border:1px solid #d5dfed;border-radius:12px;overflow:hidden;}
.cls-nova-pm__item {display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid #d5dfed;text-decoration:none;color:inherit;}
.cls-nova-pm__item:last-child {border-bottom:0;}
.cls-nova-pm__item.is-unread {background:rgba(30,112,208,.09);}
.cls-nova-pm__item>span:nth-child(2) {display:flex;flex:1;min-width:0;flex-direction:column;gap:3px;}
.cls-nova-pm__item strong {overflow-wrap:anywhere;}
.cls-nova-pm__item small,.cls-nova-pm__item time {opacity:.75;}
.cls-nova-pm__dot {width:9px;height:9px;background:#1768bd;border-radius:50%;}
.cls-nova-pm__message {padding:20px;border:1px solid #d5dfed;border-radius:12px;margin-bottom:20px;}
.cls-nova-pm__message h3 {margin-top:0;overflow-wrap:anywhere;}
.cls-nova-pm__body {white-space:normal;overflow-wrap:anywhere;line-height:1.65;}
.cls-nova-pm__reply-action {display:inline-flex;gap:6px;align-items:center;}
@media(max-width:600px) {.cls-nova-pm{padding:12px 0}.cls-nova-pm__profile-action{white-space:normal;margin:8px 0}.cls-nova-pm__item{padding:10px;gap:8px}.cls-nova-pm__item time{font-size:.75em}}

/* Nova PM author-card responsive placement: no topic/reply footer action. */
body.cls-bbp-unified .cls-post-card__author .cls-nova-pm__presence-row {
    display:flex; align-items:center; justify-content:center; flex-wrap:nowrap;
    gap:7px; max-width:100%; margin:3px auto 2px;
}
body.cls-bbp-unified .cls-post-card__author .cls-nova-pm__presence-row .cls-user-presence {
    flex:0 0 auto; margin:0!important;
}
body.cls-bbp-unified .cls-post-card__author a.cls-nova-pm__mobile-action {display:none!important;}
@media (max-width:760px) {
    body.cls-bbp-unified .cls-post-card__author .cls-nova-pm__presence-row {
        grid-column:2!important; grid-row:4!important;
        justify-self:start!important; justify-content:flex-start!important;
        margin:0!important; min-width:0; gap:8px;
    }
    body.cls-bbp-unified .cls-post-card__author a.cls-nova-pm__mobile-action {
        display:inline-flex!important; align-items:center!important; justify-content:center!important;
        flex:0 0 32px!important; width:32px; height:28px;
        box-sizing:border-box; border:1px solid #c5dded; border-radius:8px;
        background:#fff; color:#176aa7; font-size:15px; text-decoration:none;
        margin:0!important; padding:0!important;
    }
}

/* Nova 4.9.82 — private inbox adopts the forum's unified Nova surfaces. */
body.cls-bbp-unified .cls-nova-pm {
    width:100%; max-width:none; box-sizing:border-box; margin:0;
    padding:22px; border:1px solid var(--cls-bbp-line,#d9e8f5);
    border-radius:16px; background:#fff; color:var(--cls-bbp-ink,#0f1a39);
    box-shadow:0 8px 22px rgba(14,55,92,.05);
}
body.cls-bbp-unified .cls-nova-pm > .cls-section-title {
    padding:0 0 19px; margin:0 0 16px;
    border-bottom:1px solid var(--cls-bbp-line,#d9e8f5);
}
body.cls-bbp-unified .cls-nova-pm .cls-section-title h2 {font-size:clamp(20px,2vw,26px);color:#13264c;}
body.cls-bbp-unified .cls-nova-pm .cls-section-title p {font-size:13px;line-height:1.5;color:var(--cls-bbp-muted,#617092);}
body.cls-bbp-unified .cls-nova-pm__nav {gap:8px; margin:0 0 22px; padding:7px; border:1px solid var(--cls-bbp-line,#d9e8f5); border-radius:13px; background:#f8fbff;}
body.cls-bbp-unified .cls-nova-pm__nav a {
    min-height:40px; box-sizing:border-box; padding:9px 15px; border:1px solid transparent;
    background:transparent; color:#536987; border-radius:9px; font-size:13px; line-height:1.3;
    font-weight:800; transition:background .15s ease,color .15s ease;
}
body.cls-bbp-unified .cls-nova-pm__nav a:hover {background:#edf7ff;color:#075da9;}
body.cls-bbp-unified .cls-nova-pm__nav a.is-active {
    border-color:#c4e1f8; background:linear-gradient(180deg,#eaf7ff,#dff2ff);
    color:#076dbd; box-shadow:inset 0 -2px 0 #159df0;
}
body.cls-bbp-unified .cls-nova-pm__nav a span {background:#fff;color:#0d65ab;}
body.cls-bbp-unified .cls-nova-pm__form {max-width:840px; gap:10px; padding:22px; border:1px solid var(--cls-bbp-line,#d9e8f5); border-radius:14px; background:#fbfdff;}
body.cls-bbp-unified .cls-nova-pm h3 {font-size:20px;line-height:1.4;color:#142448;}
body.cls-bbp-unified .cls-nova-pm__form label {color:#1c3154;font-size:13px;}
body.cls-bbp-unified .cls-nova-pm__form input,
body.cls-bbp-unified .cls-nova-pm__form textarea {padding:13px 14px; border:1px solid #ccdded; background:#fff; color:#193452; border-radius:10px; box-shadow:inset 0 1px 2px rgba(14,55,92,.025);}
body.cls-bbp-unified .cls-nova-pm__form :is(input,textarea):focus-visible {outline:2px solid #1688e3;outline-offset:2px;border-color:#1688e3;}
body.cls-bbp-unified .cls-nova-pm__button,
body.cls-bbp-unified .cls-nova-pm__form .cls-nova-pm__button {
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    min-height:42px; padding:10px 17px; border:1px solid #0869c5;
    border-radius:10px; background:linear-gradient(180deg,#1189ed,#086cce);
    color:#fff; font-size:13px; font-weight:800; text-decoration:none;
    box-shadow:0 5px 12px rgba(9,111,204,.13); cursor:pointer;
}
body.cls-bbp-unified .cls-nova-pm__button:hover {background:#085da9;color:#fff;}
body.cls-bbp-unified .cls-nova-pm__list {display:grid;gap:10px;overflow:visible;border:0;border-radius:0;}
body.cls-bbp-unified .cls-nova-pm__list-row {
    display:flex; align-items:stretch; min-width:0;
    border:1px solid var(--cls-bbp-line,#d9e8f5); border-radius:13px;
    background:#fff; box-shadow:0 4px 14px rgba(24,72,107,.045);
    transition:border-color .15s ease,box-shadow .15s ease;
}
body.cls-bbp-unified .cls-nova-pm__list-row:hover {border-color:#b8daf1;box-shadow:0 7px 19px rgba(24,72,107,.08);}
body.cls-bbp-unified .cls-nova-pm__list-row.is-unread {background:#f0f8ff;border-color:#aed9f7;}
body.cls-bbp-unified .cls-nova-pm__item {
    flex:1 1 auto; min-width:0; display:flex; gap:12px; align-items:center;
    padding:15px 14px; border:0; background:transparent; color:#1b3154;
    text-decoration:none; line-height:1.4;
}
body.cls-bbp-unified .cls-nova-pm__item:hover {color:#0967b5;}
body.cls-bbp-unified .cls-nova-pm__item img.avatar {width:42px;height:42px;object-fit:cover;flex:0 0 42px;border-radius:11px;}
body.cls-bbp-unified .cls-nova-pm__item strong {font-size:14px;color:#142448;}
body.cls-bbp-unified .cls-nova-pm__item small {font-size:12px;color:#607491;}
body.cls-bbp-unified .cls-nova-pm__item time {flex:0 0 auto;color:#637794;font-size:12px;}
body.cls-bbp-unified .cls-nova-pm__dot {flex:0 0 9px;box-shadow:0 0 0 3px #d5edff;}
body.cls-bbp-unified .cls-nova-pm__delete-form {margin:0;display:flex;align-items:center;flex:0 0 auto;}
body.cls-bbp-unified .cls-nova-pm__delete {
    display:inline-flex;gap:8px;align-items:center;justify-content:center;
    min-height:42px;padding:10px 13px;border:1px solid #edc7c7;
    border-radius:10px;background:#fff8f8;color:#a82929;cursor:pointer;
    font-family:inherit;font-size:13px;font-weight:800;line-height:1.2;
}
body.cls-bbp-unified .cls-nova-pm__delete:hover {background:#ffeded;border-color:#d99797;color:#8b1818;}
body.cls-bbp-unified .cls-nova-pm__delete:focus-visible,
body.cls-bbp-unified .cls-nova-pm__nav a:focus-visible,
body.cls-bbp-unified .cls-nova-pm__item:focus-visible {outline:2px solid #0878df;outline-offset:2px;}
body.cls-bbp-unified .cls-nova-pm__list-row .cls-nova-pm__delete-form {padding:0 12px 0 5px;}
body.cls-bbp-unified .cls-nova-pm__delete--icon {width:38px;min-height:38px;padding:0;font-size:15px;}
body.cls-bbp-unified .cls-nova-pm__message {
    margin:0 0 16px;padding:23px; border:1px solid var(--cls-bbp-line,#d9e8f5);
    border-radius:14px; background:linear-gradient(180deg,#fcfeff,#fff);
    box-shadow:0 5px 16px rgba(14,55,92,.04);
}
body.cls-bbp-unified .cls-nova-pm__message h3 {margin:0 0 7px;padding-bottom:0;overflow-wrap:anywhere;}
body.cls-bbp-unified .cls-nova-pm__meta {padding-bottom:15px;margin:0 0 19px;border-bottom:1px solid var(--cls-bbp-line,#d9e8f5);color:#657892;opacity:1;}
body.cls-bbp-unified .cls-nova-pm__body {font-size:15px;line-height:1.8;color:#283b57;}
body.cls-bbp-unified .cls-nova-pm__message-actions {display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 8px;}
body.cls-bbp-unified .cls-nova-pm__hint {color:#687c94;opacity:1;font-size:12px;line-height:1.5;}
body.cls-bbp-unified .cls-nova-pm__notice {border:1px solid #bde7cc;background:#eaf8ef;color:#17613a;}
body.cls-bbp-unified .cls-nova-pm__error {border:1px solid #f0c4c4;background:#fff1f1;color:#91251e;}
body.cls-bbp-unified .cls-nova-pm__empty {padding:28px;border:1px dashed #cbdceb;background:#f8fbff;color:#617092;text-align:center;}
@media(max-width:600px) {
    body.cls-bbp-unified .cls-nova-pm {padding:14px;border-radius:13px;}
    body.cls-bbp-unified .cls-nova-pm .cls-section-title h2 {font-size:19px;}
    body.cls-bbp-unified .cls-nova-pm__nav {gap:4px;padding:5px;}
    body.cls-bbp-unified .cls-nova-pm__nav a {padding:9px 11px;}
    body.cls-bbp-unified .cls-nova-pm__form {padding:15px;}
    body.cls-bbp-unified .cls-nova-pm__item {padding:11px 8px;gap:8px;}
    body.cls-bbp-unified .cls-nova-pm__item img.avatar {width:34px;height:34px;flex-basis:34px;}
    body.cls-bbp-unified .cls-nova-pm__item time {font-size:10px;}
    body.cls-bbp-unified .cls-nova-pm__list-row .cls-nova-pm__delete-form {padding:0 6px 0 0;}
    body.cls-bbp-unified .cls-nova-pm__delete--icon {width:34px;min-height:36px;}
    body.cls-bbp-unified .cls-nova-pm__message {padding:15px;}
}

/* Nova 4.9.85: the PM bubble sits below Topic/Risposte on desktop, never in the post footer. */
body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__desktop-action {
    display:inline-flex!important; align-items:center; justify-content:center;
    align-self:center; width:34px; height:32px; min-width:34px;
    box-sizing:border-box; padding:0; margin:5px auto 3px;
    border:1px solid #c5dded; border-radius:9px;
    background:#fff; color:#176aa7; text-decoration:none;
    font-size:16px; line-height:1;
    order:99!important;
}
body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__desktop-action:hover,
body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__mobile-action:hover {
    background:#edf7ff; border-color:#9bcce9; color:#075ca8;
}
body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__desktop-action:focus-visible,
body.cls-bbp-unified .cls-post-card__author a.cls-nova-pm__mobile-action:focus-visible {
    outline:2px solid #0878df!important; outline-offset:2px!important;
}
@media(max-width:760px) {
    body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__desktop-action {display:none!important;}
    body.cls-bbp-unified .cls-post-card__author a.cls-nova-pm__mobile-action {display:inline-flex!important;}
}
/* Private-message SCEditor uses the same Nova card treatment, without changing topic/reply editors. */
body.cls-bbp-unified .cls-nova-pm__editor {width:100%;min-width:0;box-sizing:border-box;}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container {
    width:100%!important;max-width:100%!important;min-width:0;
    box-sizing:border-box;border:1px solid #ccdded;border-radius:11px;
    background:#fff;box-shadow:0 2px 8px rgba(14,55,92,.04);
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-toolbar {
    background:#f3f9fe; border-bottom:1px solid #d9e8f5;
    padding:6px;box-sizing:border-box;max-width:100%;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container iframe,
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container textarea {max-width:100%;box-sizing:border-box;}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container textarea {padding:12px;}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container:focus-within {
    border-color:#1688e3;box-shadow:0 0 0 2px rgba(22,136,227,.12);
}
@media(max-width:600px) {
    body.cls-bbp-unified .cls-nova-pm__editor .sceditor-toolbar {padding:4px;}
    body.cls-bbp-unified .cls-nova-pm__editor .sceditor-group {margin:2px;}
}

/* Nova 4.9.83 — SCEditor toolbar buttons, native Nova appearance. */
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-container {
    overflow:visible; font-family:inherit; color:var(--cls-bbp-ink,#0f1a39);
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-toolbar {
    display:flex!important;flex-wrap:wrap!important;align-items:center;gap:5px;
    padding:8px!important;border:0!important;border-bottom:1px solid var(--cls-bbp-line,#d9e8f5)!important;
    border-radius:11px 11px 0 0!important;background:#f3f9fe!important;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-group {
    display:inline-flex!important;align-items:center;flex-wrap:nowrap;
    gap:3px;padding:3px!important;margin:0!important;
    border:1px solid #d6e6f4!important;border-radius:9px!important;background:#fff!important;
    box-shadow:none!important;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button {
    display:inline-flex!important;align-items:center;justify-content:center;
    float:none!important;box-sizing:border-box!important;
    width:34px!important;height:32px!important;min-width:34px;
    margin:0!important;padding:5px!important;
    border:1px solid transparent!important;border-radius:7px!important;
    background:transparent!important;color:#245b91!important;
    text-decoration:none!important;box-shadow:none!important;
    opacity:1;cursor:pointer;
    transition:background .15s,border-color .15s,color .15s;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button > div {
    float:none!important;margin:0 auto!important;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button:hover,
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button:focus-visible {
    background:#e6f4ff!important;border-color:#b5dcf6!important;color:#075ca8!important;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button.active,
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button:active {
    background:linear-gradient(180deg,#dff3ff,#cdeaff)!important;
    border-color:#79bbed!important;color:#075ca8!important;
    box-shadow:inset 0 1px 3px rgba(6,103,184,.12)!important;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button.disabled {
    opacity:.4!important;cursor:not-allowed;
}
body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button:focus-visible {
    outline:2px solid #0878df!important;outline-offset:2px!important;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-dropdown {
    border:1px solid #b9d8ed!important;border-radius:10px!important;
    background:#fff!important;box-shadow:0 9px 22px rgba(14,55,92,.13)!important;
    color:#1b3154!important;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-dropdown input,
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-dropdown select {
    border:1px solid #ccdded;border-radius:7px;background:#fff;color:#193452;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-dropdown button {
    padding:7px 11px;border:1px solid #0869c5;border-radius:7px;
    background:#086cce;color:#fff;font-weight:700;cursor:pointer;
}
body.cls-bbp-unified .cls-nova-pm__editor .sceditor-dropdown button:hover {background:#075da9;}
body.cls-bbp-unified .cls-nova-pm__body p {margin:0 0 .8em;}
body.cls-bbp-unified .cls-nova-pm__body ul,
body.cls-bbp-unified .cls-nova-pm__body ol {padding-left:1.5em;margin:.5em 0 1em;}
body.cls-bbp-unified .cls-nova-pm__body blockquote {
    border-left:3px solid var(--cls-bbp-blue,#0787f9);margin:1em 0;padding:8px 15px;
    border-radius:0 8px 8px 0;background:#f3f9fe;
}
body.cls-bbp-unified .cls-nova-pm__body a {color:#086cce;text-decoration:underline;}
@media(max-width:760px) {
    body.cls-bbp-unified .cls-post-card__author > a.cls-nova-pm__desktop-action {display:none!important;}
    body.cls-bbp-unified .cls-nova-pm__editor .sceditor-toolbar {gap:3px;padding:6px!important;}
    body.cls-bbp-unified .cls-nova-pm__editor a.sceditor-button {
        width:32px!important;height:32px!important;min-width:32px;padding:4px!important;
    }
}

/* Nova 4.9.84 — replies stay in one conversation; contained, scrollable chat. */
body.cls-bbp-unified .cls-nova-pm__thread-header {margin:0 0 12px;}
body.cls-bbp-unified .cls-nova-pm__thread-header h3 {margin:0 0 4px;overflow-wrap:anywhere;}
body.cls-bbp-unified .cls-nova-pm__thread-header .cls-nova-pm__hint {margin:0;}
body.cls-bbp-unified .cls-nova-pm__chat {
    display:flex;flex-direction:column;gap:12px;
    box-sizing:border-box;max-height:min(62vh,560px);min-height:170px;overflow-y:auto;
    overscroll-behavior:contain;scrollbar-gutter:stable;
    padding:18px;border:1px solid var(--cls-bbp-line,#d9e8f5);border-radius:14px;
    background:#f4f8fd;
}
body.cls-bbp-unified .cls-nova-pm__chat:focus-visible {outline:2px solid #1688e3;outline-offset:2px;}
body.cls-bbp-unified .cls-nova-pm__bubble {
    box-sizing:border-box;min-width:0;width:fit-content;max-width:min(88%,660px);
    padding:12px 15px;border:1px solid #d0e0ef;border-radius:13px 13px 13px 3px;
    background:#fff;color:#1b3154;overflow-wrap:anywhere;
}
body.cls-bbp-unified .cls-nova-pm__bubble.is-mine {
    align-self:flex-end;background:#e7f4ff;border-color:#b7dbf5;
    border-radius:13px 13px 3px 13px;
}
body.cls-bbp-unified .cls-nova-pm__bubble.is-theirs {align-self:flex-start;}
body.cls-bbp-unified .cls-nova-pm__bubble-top {display:flex;gap:5px 12px;align-items:baseline;flex-wrap:wrap;margin-bottom:7px;}
body.cls-bbp-unified .cls-nova-pm__bubble-top strong {font-size:12px;color:#194c7d;}
body.cls-bbp-unified .cls-nova-pm__bubble-top time {font-size:11px;color:#697c93;}
body.cls-bbp-unified .cls-nova-pm__bubble .cls-nova-pm__body {font-size:14px;line-height:1.6;}
body.cls-bbp-unified .cls-nova-pm__bubble-actions {display:flex;justify-content:flex-end;margin-top:7px;}
body.cls-bbp-unified .cls-nova-pm__bubble-actions .cls-nova-pm__delete {min-height:27px;width:29px;padding:4px;font-size:12px;}
body.cls-bbp-unified .cls-nova-pm__reply-box {margin-top:16px;}
body.cls-bbp-unified .cls-nova-pm__reply-box h3 {margin:0 0 10px;font-size:17px;}
body.cls-bbp-unified .cls-nova-pm__form--inline {max-width:none;}
@media(max-width:600px) {
    body.cls-bbp-unified .cls-nova-pm__chat {max-height:55vh;min-height:150px;padding:10px;gap:9px;scrollbar-gutter:auto;}
    body.cls-bbp-unified .cls-nova-pm__bubble {max-width:94%;padding:10px 12px;}
}
