 * PINKBLCK · TEMA GLOBALE

/*
 * ============================================================
 * PINKBLCK · TEMA GLOBALE
 * ============================================================
 *
 * Il CSS originale delle pagine resta intatto.
 * Questo file viene caricato per ultimo e applica soltanto
 * le differenze necessarie ai temi Sistema / Scuro / Ecology.
 *
 * Colore brand invariato: #FF3399
 */

:root {
    color-scheme: dark;

    --pb-accent: #FF3399;
    --pb-accent-hover: #ff66b3;

    --pb-bg: #000000;
    --pb-surface: #0a0a0a;
    --pb-surface-2: #111111;
    --pb-surface-3: #151515;
    --pb-overlay: rgba(0,0,0,.96);

    --pb-text: #ffffff;
    --pb-text-soft: #dddddd;
    --pb-muted: #999999;
    --pb-muted-2: #777777;

    --pb-border: #222222;
    --pb-border-soft: #1b1b1b;

    --pb-shadow: 0 14px 40px rgba(0,0,0,.34);
    --pb-scroll-track: #111111;
}

html[data-theme="light"] {
    color-scheme: light;

    --pb-bg: #f5f5f7;
    --pb-surface: #ffffff;
    --pb-surface-2: #f1f1f4;
    --pb-surface-3: #e9e9ee;
    --pb-overlay: rgba(255,255,255,.96);

    --pb-text: #111114;
    --pb-text-soft: #303038;
    --pb-muted: #62626c;
    --pb-muted-2: #7a7a84;

    --pb-border: #dedee4;
    --pb-border-soft: #e8e8ec;

    --pb-shadow: 0 14px 38px rgba(20,20,30,.10);
    --pb-scroll-track: #ececf0;
}

/* Transizione breve: niente animazione al primo caricamento. */
html.pb-theme-ready body,
html.pb-theme-ready .panel,
html.pb-theme-ready .social-topbar,
html.pb-theme-ready input,
html.pb-theme-ready textarea,
html.pb-theme-ready select,
html.pb-theme-ready button,
html.pb-theme-ready .modal,
html.pb-theme-ready .modal-content {
    transition:
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}

/* ============================================================
   BASE
   ============================================================ */

html[data-theme="light"],
html[data-theme="light"] body {
    background: var(--pb-bg) !important;
    color: var(--pb-text) !important;
}

html[data-theme="light"] .social-home {
    background: var(--pb-bg) !important;
}

html[data-theme="light"] a {
    color: inherit;
}

/* Testi secondari comuni */
html[data-theme="light"] .manifesto,
html[data-theme="light"] .nav-link,
html[data-theme="light"] .composer-action,
html[data-theme="light"] .composer-input,
html[data-theme="light"] .account-type,
html[data-theme="light"] .welcome-card p,
html[data-theme="light"] .nota-trasparenza,
html[data-theme="light"] small,
html[data-theme="light"] .muted {
    color: var(--pb-muted) !important;
}

/* ============================================================
   SUPERFICI / CARD / PANNELLI
   ============================================================ */

html[data-theme="light"] .panel,
html[data-theme="light"] .composer,
html[data-theme="light"] .sidebar,
html[data-theme="light"] .feed-card,
html[data-theme="light"] .post-card,
html[data-theme="light"] .experience-card,
html[data-theme="light"] .right-card,
html[data-theme="light"] .modal-content,
html[data-theme="light"] .notification-card,
html[data-theme="light"] .comment-item,
html[data-theme="light"] .node-card,
html[data-theme="light"] .dropdown-menu,
html[data-theme="light"] .search-results,
html[data-theme="light"] .global-search-results {
    background-color: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
    box-shadow: var(--pb-shadow);
}

html[data-theme="light"] .welcome-card {
    background: linear-gradient(135deg,#ffffff,#fff1f8) !important;
    border-color: var(--pb-border) !important;
}

html[data-theme="light"] .nota-trasparenza {
    background: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
}

/* ============================================================
   TOPBAR / NAVIGAZIONE
   ============================================================ */

html[data-theme="light"] .social-topbar {
    background: var(--pb-overlay) !important;
    border-bottom-color: var(--pb-border) !important;
    box-shadow: 0 3px 18px rgba(20,20,30,.05);
}

html[data-theme="light"] .icon-btn,
html[data-theme="light"] .nav-link:hover,
html[data-theme="light"] .nav-link.active {
    background: var(--pb-surface-2) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
}

html[data-theme="light"] .logout-link,
html[data-theme="light"] .side-profile,
html[data-theme="light"] .composer-actions {
    border-color: var(--pb-border-soft) !important;
}

/* Mantiene il bordo del badge leggibile su entrambi i temi. */
html[data-theme="light"] .avatar-verified-badge {
    border-color: var(--pb-surface) !important;
}

/* ============================================================
   INPUT / TEXTAREA / SELECT / AUTOCOMPLETE
   ============================================================ */

html[data-theme="light"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="light"] textarea,
html[data-theme="light"] select,
html[data-theme="light"] .search-box input,
html[data-theme="light"] .composer-input,
html[data-theme="light"] .pb-custom-select-trigger {
    background: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder {
    color: #85858f !important;
    opacity: 1;
}

html[data-theme="light"] .results,
html[data-theme="light"] .result,
html[data-theme="light"] .mention-autocomplete-results,
html[data-theme="light"] .location-autocomplete-results,
html[data-theme="light"] .edit-subject-results,
html[data-theme="light"] .pb-custom-select-menu {
    background: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
}

html[data-theme="light"] .result:hover,
html[data-theme="light"] .mention-result:hover,
html[data-theme="light"] .location-autocomplete-item:hover,
html[data-theme="light"] .edit-subject-result:hover {
    background: var(--pb-surface-2) !important;
}

/* ============================================================
   MODALI / OVERLAY
   ============================================================ */

html[data-theme="light"] .modal,
html[data-theme="light"] .modal-overlay,
html[data-theme="light"] .overlay,
html[data-theme="light"] .lightbox {
    --pb-modal-overlay: rgba(15,15,20,.50);
}

html[data-theme="light"] .modal-content,
html[data-theme="light"] .popup-content,
html[data-theme="light"] .dialog-content {
    background: var(--pb-surface) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

/* ============================================================
   BOTTONI SECONDARI
   ============================================================ */

html[data-theme="light"] .btn-azienda {
    background: #111114 !important;
    color: #ffffff !important;
}

html[data-theme="light"] button:not(.submit):not(.btn-cittadino):not(.pink-btn):not(.pb-custom-select-option) {
    border-color: var(--pb-border);
}

/* Il rosa PINKBLCK rimane invariato */
html[data-theme="light"] .slogan,
html[data-theme="light"] .nav-link.active i,
html[data-theme="light"] .composer-action i,
html[data-theme="light"] .icon-btn:hover {
    color: var(--pb-accent) !important;
}

/* ============================================================
   MENU TEMA GLOBALE
   ============================================================ */

#pb-theme-control {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    z-index: 10060;
}

#pb-theme-control.pb-theme-fixed {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 10060;
}

.pb-theme-button {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 1px solid var(--pb-border) !important;
    background: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    cursor: pointer;
    font: inherit;
    box-shadow: 0 8px 24px rgba(0,0,0,.16);
    -webkit-tap-highlight-color: transparent;
}

.pb-theme-button:hover,
.pb-theme-button:focus-visible {
    color: var(--pb-accent) !important;
    border-color: var(--pb-accent) !important;
    outline: none;
}

.pb-theme-button i {
    pointer-events: none;
}

.pb-theme-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 190px;
    display: none;
    padding: 6px;
    border: 1px solid var(--pb-border);
    border-radius: 12px;
    background: var(--pb-surface);
    color: var(--pb-text);
    box-shadow: var(--pb-shadow);
    z-index: 10070;
}

.pb-theme-fixed .pb-theme-menu {
    top: auto;
    bottom: calc(100% + 8px);
}

#pb-theme-control.open .pb-theme-menu {
    display: block;
}

.pb-theme-option {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border: 0 !important;
    border-radius: 8px;
    background: transparent !important;
    color: var(--pb-text) !important;
    cursor: pointer;
    text-align: left;
    font: inherit;
    font-size: .88rem;
}

.pb-theme-option i {
    width: 18px;
    text-align: center;
    color: var(--pb-muted);
}

.pb-theme-option:hover {
    background: var(--pb-surface-2) !important;
}

.pb-theme-option.active {
    background: rgba(255,51,153,.12) !important;
    color: var(--pb-accent) !important;
    font-weight: 800;
}

.pb-theme-option.active i {
    color: var(--pb-accent);
}

/* ============================================================
   SCROLLBAR GLOBALE
   Mantiene il thumb rosa già utilizzato da PINKBLCK.
   ============================================================ */

html,
body,
* {
    scrollbar-width: thin !important;
    scrollbar-color: var(--pb-accent) var(--pb-scroll-track) !important;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
    width: 8px !important;
    height: 8px !important;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
*::-webkit-scrollbar-track {
    background: var(--pb-scroll-track) !important;
    border-radius: 999px !important;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb {
    background: var(--pb-accent) !important;
    border-radius: 999px !important;
    border: 2px solid var(--pb-scroll-track) !important;
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
*::-webkit-scrollbar-thumb:hover {
    background: var(--pb-accent-hover) !important;
}

html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner,
*::-webkit-scrollbar-corner {
    background: var(--pb-scroll-track) !important;
}

@media (max-width: 760px) {
    #pb-theme-control.pb-theme-fixed {
        right: 14px;
        bottom: calc(14px + env(safe-area-inset-bottom));
    }

    .pb-theme-menu {
        width: 180px;
    }
}


/* ============================================================
   PINKBLCK · OVERRIDE DEFINITIVO HOME / TEMA V7
   ============================================================ */

/* ------------------------------------------------------------
   SWITCH TEMA
   SEMPRE FISSO IN ALTO A DESTRA.
   ------------------------------------------------------------ */
#pb-theme-control.pb-theme-top-fixed {
    position: fixed !important;
    top: calc(10px + env(safe-area-inset-top)) !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;

    width: 44px !important;
    height: 44px !important;

    display: block !important;
    z-index: 2147483000 !important;

    pointer-events: auto !important;
    overflow: visible !important;
    isolation: isolate !important;
}

#pb-theme-control.pb-theme-top-fixed .pb-theme-button {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;

    display: grid !important;
    place-items: center !important;

    border-radius: 50% !important;
    border: 1px solid #3a3a40 !important;

    background: #101012 !important;
    color: #ffffff !important;

    font: 900 21px/1 Arial,sans-serif !important;
    cursor: pointer !important;
    pointer-events: auto !important;

    box-shadow: 0 8px 26px rgba(0,0,0,.34) !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
}

html[data-theme="light"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
    background: #ffffff !important;
    color: #17171c !important;
    border-color: #c8c8d0 !important;
    box-shadow: 0 8px 26px rgba(20,20,30,.18) !important;
}

#pb-theme-control.pb-theme-top-fixed .pb-theme-button:hover,
#pb-theme-control.pb-theme-top-fixed .pb-theme-button:focus-visible {
    color: #FF3399 !important;
    border-color: #FF3399 !important;
    outline: none !important;
}

#pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
    display: none !important;
    position: absolute !important;

    top: 52px !important;
    right: 0 !important;
    bottom: auto !important;
    left: auto !important;

    width: 200px !important;
    padding: 7px !important;

    border-radius: 14px !important;
    border: 1px solid #36363c !important;

    background: #0d0d0f !important;
    color: #ffffff !important;

    box-shadow: 0 20px 55px rgba(0,0,0,.48) !important;

    z-index: 2147483001 !important;
    pointer-events: auto !important;
}

html[data-theme="light"] #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
    background: #ffffff !important;
    color: #17171c !important;
    border-color: #c8c8d0 !important;
    box-shadow: 0 20px 50px rgba(20,20,30,.20) !important;
}

#pb-theme-control.pb-theme-top-fixed.open .pb-theme-menu {
    display: block !important;
}

#pb-theme-control .pb-theme-option {
    width: 100% !important;
    min-height: 46px !important;

    display: grid !important;
    grid-template-columns: 26px 1fr 24px !important;
    align-items: center !important;
    gap: 10px !important;

    padding: 9px 11px !important;
    margin: 0 !important;

    border: 0 !important;
    border-radius: 10px !important;

    background: transparent !important;
    color: #ededf2 !important;

    font: 800 .92rem/1.2 Arial,sans-serif !important;
    text-align: left !important;

    cursor: pointer !important;
    pointer-events: auto !important;
}

html[data-theme="light"] #pb-theme-control .pb-theme-option {
    color: #202027 !important;
}

#pb-theme-control .pb-theme-option:hover {
    background: #1a1a1e !important;
}

html[data-theme="light"] #pb-theme-control .pb-theme-option:hover {
    background: #f0f0f3 !important;
}

#pb-theme-control .pb-theme-option.active,
html[data-theme="light"] #pb-theme-control .pb-theme-option.active {
    background: #FF3399 !important;
    color: #ffffff !important;
}

#pb-theme-control .pb-theme-option-icon,
#pb-theme-control .pb-theme-option-label {
    color: inherit !important;
}

#pb-theme-control .pb-theme-option-icon {
    text-align: center !important;
    font-size: 19px !important;
}

#pb-theme-control .pb-theme-option-check {
    width: 21px !important;
    height: 21px !important;
    display: grid !important;
    place-items: center !important;

    border-radius: 50% !important;
    background: transparent !important;
    color: transparent !important;

    font-size: 13px !important;
    font-weight: 950 !important;
}

#pb-theme-control .pb-theme-option.active .pb-theme-option-check {
    background: #ffffff !important;
    color: #FF3399 !important;
}


/* ------------------------------------------------------------
   TEMA CHIARO · STRUTTURA PRINCIPALE
   ------------------------------------------------------------ */
html[data-theme="light"],
html[data-theme="light"] body,
html[data-theme="light"] .social-home {
    background: #f5f5f7 !important;
    color: #16161b !important;
}

html[data-theme="light"] .social-topbar {
    background: rgba(255,255,255,.97) !important;
    border-bottom-color: #dedee5 !important;
    box-shadow: 0 4px 18px rgba(20,20,30,.06) !important;
}

html[data-theme="light"] .brand,
html[data-theme="light"] .brand span,
html[data-theme="light"] .top-actions,
html[data-theme="light"] .top-actions a {
    color: #16161b !important;
}

html[data-theme="light"] .panel,
html[data-theme="light"] .sidebar,
html[data-theme="light"] .composer,
html[data-theme="light"] .experience-post,
html[data-theme="light"] .right-panel,
html[data-theme="light"] .mobile-discover,
html[data-theme="light"] .mobile-live-explore .panel,
html[data-theme="light"] .mobile-dynamic-explore .panel,
html[data-theme="light"] .mobile-summary-three .panel {
    background: #ffffff !important;
    color: #16161b !important;
    border-color: #dedee5 !important;
    box-shadow: 0 10px 28px rgba(20,20,30,.06) !important;
}


/* ------------------------------------------------------------
   TESTI PRINCIPALI
   ------------------------------------------------------------ */
html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] h4,
html[data-theme="light"] .side-profile strong,
html[data-theme="light"] .feed-heading,
html[data-theme="light"] .feed-heading h3,
html[data-theme="light"] .post-author,
html[data-theme="light"] .post-author-link,
html[data-theme="light"] .node-title,
html[data-theme="light"] .node-title-link,
html[data-theme="light"] .right-live-name,
html[data-theme="light"] .mobile-live-card-title,
html[data-theme="light"] .mobile-summary-card-title,
html[data-theme="light"] .comment-author,
html[data-theme="light"] .comment-author-link,
html[data-theme="light"] .guest-author,
html[data-theme="light"] .attach-node-picker-item strong,
html[data-theme="light"] .experience-dialog-head h2 {
    color: #16161b !important;
}

html[data-theme="light"] .post-text,
html[data-theme="light"] .guest-text,
html[data-theme="light"] .manifesto,
html[data-theme="light"] .comment-text,
html[data-theme="light"] .comment-body {
    color: #34343c !important;
}


/* ------------------------------------------------------------
   TESTI SECONDARI
   ------------------------------------------------------------ */
html[data-theme="light"] .account-type,
html[data-theme="light"] .welcome-card p,
html[data-theme="light"] .post-meta,
html[data-theme="light"] .post-location,
html[data-theme="light"] .right-live-title,
html[data-theme="light"] .right-live-meta,
html[data-theme="light"] .right-live-empty,
html[data-theme="light"] .mobile-live-title,
html[data-theme="light"] .mobile-live-card-meta,
html[data-theme="light"] .mobile-summary-card-head,
html[data-theme="light"] .mobile-summary-card-meta,
html[data-theme="light"] .comment-meta,
html[data-theme="light"] .comment-char-row,
html[data-theme="light"] .guest-date,
html[data-theme="light"] .guest-place,
html[data-theme="light"] .manual-tags-note,
html[data-theme="light"] .node-subject-help,
html[data-theme="light"] .media-selected-meta,
html[data-theme="light"] .report-note {
    color: #686872 !important;
}


/* ------------------------------------------------------------
   NODI: il problema principale segnalato
   ------------------------------------------------------------ */
html[data-theme="light"] .post-node-row,
html[data-theme="light"] .selected-node,
html[data-theme="light"] .node-subject-panel {
    background: #f2f2f5 !important;
    border-color: #d9d9e0 !important;
    color: #16161b !important;
}

html[data-theme="light"] .node-title,
html[data-theme="light"] .node-title-link {
    color: #16161b !important;
}

html[data-theme="light"] .node-title-link:hover {
    color: #FF3399 !important;
}

html[data-theme="light"] .node-tag {
    color: #d91f7f !important;
}

html[data-theme="light"] .vote-pink {
    background: #FF3399 !important;
    color: #ffffff !important;
}

html[data-theme="light"] .vote-black {
    background: #000000 !important;
    color: #ffffff !important;
    border-color: #555 !important;
}


/* ------------------------------------------------------------
   FEED / AZIONI / MENU POST
   ------------------------------------------------------------ */
html[data-theme="light"] .post-actions {
    border-top-color: #e1e1e7 !important;
}

html[data-theme="light"] .post-action {
    color: #61616b !important;
}

html[data-theme="light"] .post-action:hover,
html[data-theme="light"] .post-action.active,
html[data-theme="light"] .post-action.share-success {
    color: #FF3399 !important;
}

html[data-theme="light"] .post-action .share-count,
html[data-theme="light"] .experience-like-count,
html[data-theme="light"] .comment-count {
    color: #666670 !important;
}

html[data-theme="light"] .post-menu-btn {
    background: #eeeeF2 !important;
    color: #5f5f69 !important;
}

html[data-theme="light"] .post-menu-btn:hover {
    background: #e5e5ea !important;
    color: #16161b !important;
}

html[data-theme="light"] .post-menu {
    background: #ffffff !important;
    color: #202027 !important;
    border-color: #d8d8df !important;
    box-shadow: 0 16px 40px rgba(20,20,30,.15) !important;
}

html[data-theme="light"] .post-menu a,
html[data-theme="light"] .post-menu button {
    color: #202027 !important;
}

html[data-theme="light"] .post-menu a:hover,
html[data-theme="light"] .post-menu button:hover {
    background: #f0f0f3 !important;
}

html[data-theme="light"] .post-menu .danger {
    color: #c62f3c !important;
}


/* ------------------------------------------------------------
   COMMENTI
   ------------------------------------------------------------ */
html[data-theme="light"] .comments-panel {
    background: #f7f7f9 !important;
    border-top-color: #dedee5 !important;
    color: #202027 !important;
}

html[data-theme="light"] .comment-textarea {
    background: #ffffff !important;
    color: #16161b !important;
    border-color: #d5d5dc !important;
}

html[data-theme="light"] .comment-card,
html[data-theme="light"] .comment-bubble,
html[data-theme="light"] .comment-content {
    color: #303038 !important;
}

html[data-theme="light"] .comment-menu,
html[data-theme="light"] .comment-mention-results {
    background: #ffffff !important;
    color: #202027 !important;
    border-color: #d8d8df !important;
}


/* ------------------------------------------------------------
   ESPLORA DESKTOP E MOBILE
   ------------------------------------------------------------ */
html[data-theme="light"] .right-live-item,
html[data-theme="light"] .mobile-live-card,
html[data-theme="light"] .mobile-summary-card,
html[data-theme="light"] .mobile-discover-card {
    background: #f5f5f7 !important;
    border-color: #dcdce3 !important;
    color: #202027 !important;
}

html[data-theme="light"] .right-live-item:hover,
html[data-theme="light"] .mobile-live-card:hover,
html[data-theme="light"] .mobile-summary-card:hover {
    background: #eeeeF2 !important;
    border-color: #FF3399 !important;
}

html[data-theme="light"] .right-live-icon {
    background: #ececf0 !important;
    color: #FF3399 !important;
}

html[data-theme="light"] .right-live-name,
html[data-theme="light"] .mobile-live-card-title,
html[data-theme="light"] .mobile-summary-card-title {
    color: #16161b !important;
}

html[data-theme="light"] .right-live-meta,
html[data-theme="light"] .mobile-live-card-meta,
html[data-theme="light"] .mobile-summary-card-meta,
html[data-theme="light"] .mobile-summary-card-head {
    color: #666670 !important;
}

html[data-theme="light"] .mobile-live-card-score.black,
html[data-theme="light"] .mobile-summary-card-score.black,
html[data-theme="light"] .right-live-score.black {
    color: #44444c !important;
}


/* ------------------------------------------------------------
   BOTTOM NAV MOBILE: deve rimanere SEMPRE visibile
   ------------------------------------------------------------ */
@media (max-width: 720px) {
    .mobile-nav {
        display: grid !important;
        grid-template-columns: repeat(5,1fr) !important;

        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;

        visibility: visible !important;
        opacity: 1 !important;
        transform: none !important;

        z-index: 1100 !important;
    }

    html[data-theme="light"] .mobile-nav {
        background: rgba(255,255,255,.98) !important;
        border-top: 1px solid #d9d9e0 !important;
        box-shadow: 0 -8px 24px rgba(20,20,30,.09) !important;
    }

    html[data-theme="light"] .mobile-nav a {
        color: #5f5f69 !important;
        opacity: 1 !important;
    }

    html[data-theme="light"] .mobile-nav a i,
    html[data-theme="light"] .mobile-nav a span {
        color: inherit !important;
    }

    html[data-theme="light"] .mobile-nav a.active,
    html[data-theme="light"] .mobile-nav a.active i,
    html[data-theme="light"] .mobile-nav a.active span,
    html[data-theme="light"] .mobile-nav a.has-unread-messages {
        color: #FF3399 !important;
    }
}


/* ------------------------------------------------------------
   INPUT / MODALI / PICKER
   ------------------------------------------------------------ */
html[data-theme="light"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="light"] textarea,
html[data-theme="light"] select,
html[data-theme="light"] .search-box input,
html[data-theme="light"] .composer-input,
html[data-theme="light"] .pb-custom-select-trigger {
    background: #f1f1f4 !important;
    color: #16161b !important;
    border-color: #d5d5dc !important;
}

html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder {
    color: #81818b !important;
    opacity: 1 !important;
}

html[data-theme="light"] .global-search-results,
html[data-theme="light"] .node-results,
html[data-theme="light"] .node-subject-results,
html[data-theme="light"] .results,
html[data-theme="light"] .mention-autocomplete-results,
html[data-theme="light"] .location-autocomplete-results,
html[data-theme="light"] .pb-custom-select-menu {
    background: #ffffff !important;
    color: #202027 !important;
    border-color: #d8d8df !important;
}

html[data-theme="light"] .result,
html[data-theme="light"] .node-result,
html[data-theme="light"] .node-subject-result,
html[data-theme="light"] .mention-result,
html[data-theme="light"] .location-autocomplete-item,
html[data-theme="light"] .pb-custom-select-option {
    color: #202027 !important;
}

html[data-theme="light"] .result:hover,
html[data-theme="light"] .node-result:hover,
html[data-theme="light"] .node-subject-result:hover,
html[data-theme="light"] .mention-result:hover,
html[data-theme="light"] .location-autocomplete-item:hover,
html[data-theme="light"] .pb-custom-select-option:hover {
    background: #f0f0f3 !important;
}

html[data-theme="light"] .experience-dialog,
html[data-theme="light"] .report-dialog,
html[data-theme="light"] .attach-node-picker-dialog {
    background: #ffffff !important;
    color: #16161b !important;
    border-color: #d8d8df !important;
    box-shadow: 0 24px 70px rgba(20,20,30,.18) !important;
}

html[data-theme="light"] .experience-dialog-head,
html[data-theme="light"] .report-head,
html[data-theme="light"] .attach-node-picker-head {
    border-color: #e1e1e7 !important;
}

html[data-theme="light"] .attach-node-picker-item {
    background: #f2f2f5 !important;
    color: #16161b !important;
    border-color: #d8d8df !important;
}

html[data-theme="light"] .attach-node-picker-close,
html[data-theme="light"] .report-close,
html[data-theme="light"] .modal-close {
    background: #eeeeF2 !important;
    color: #555560 !important;
}


/* ------------------------------------------------------------
   HOME OSPITE
   ------------------------------------------------------------ */
html[data-theme="light"] .guest-post,
html[data-theme="light"] .guest-lock-box {
    background: #ffffff !important;
    color: #202027 !important;
    border-color: #d8d8df !important;
}

html[data-theme="light"] .guest-text,
html[data-theme="light"] .guest-author {
    color: #202027 !important;
}

html[data-theme="light"] .guest-date,
html[data-theme="light"] .guest-place,
html[data-theme="light"] .guest-lock-box p {
    color: #686872 !important;
}

html[data-theme="light"] .guest-node {
    border-color: #cfcfd7 !important;
    color: #303038 !important;
}

html[data-theme="light"] .guest-node.black .guest-vote {
    color: #34343c !important;
}

html[data-theme="light"] .guest-actions {
    border-top-color: #dedee5 !important;
}

html[data-theme="light"] .guest-actions button {
    color: #61616b !important;
}


/* ------------------------------------------------------------
   Colori intenzionali da NON convertire
   ------------------------------------------------------------ */
html[data-theme="light"] .publish-btn,
html[data-theme="light"] .btn-cittadino,
html[data-theme="light"] .comment-submit,
html[data-theme="light"] .vote-pink,
html[data-theme="light"] .notification-badge,
html[data-theme="light"] .mobile-notification-badge {
    color: #ffffff !important;
}

@media (max-width:760px) {
    #pb-theme-control.pb-theme-top-fixed {
        top: calc(8px + env(safe-area-inset-top)) !important;
        right: 8px !important;
    }

    #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
        width: 186px !important;
    }
}

/* ============================================================
   PINKBLCK · FOOTER · TEMA CHIARO
   ============================================================ */

html[data-theme="light"] footer,
html[data-theme="light"] .footer,
html[data-theme="light"] .site-footer {
    background: #ffffff !important;
    color: #44444d !important;
    border-top-color: #dedee5 !important;
}

/* TITOLI DEL FOOTER */
html[data-theme="light"] footer h1,
html[data-theme="light"] footer h2,
html[data-theme="light"] footer h3,
html[data-theme="light"] footer h4,
html[data-theme="light"] footer h5,
html[data-theme="light"] footer h6,
html[data-theme="light"] .footer h1,
html[data-theme="light"] .footer h2,
html[data-theme="light"] .footer h3,
html[data-theme="light"] .footer h4,
html[data-theme="light"] .site-footer h1,
html[data-theme="light"] .site-footer h2,
html[data-theme="light"] .site-footer h3,
html[data-theme="light"] .site-footer h4 {
    color: #16161b !important;
    opacity: 1 !important;
}

/* TESTO NORMALE */
html[data-theme="light"] footer p,
html[data-theme="light"] footer span,
html[data-theme="light"] footer li,
html[data-theme="light"] .footer p,
html[data-theme="light"] .footer span,
html[data-theme="light"] .footer li,
html[data-theme="light"] .site-footer p,
html[data-theme="light"] .site-footer span,
html[data-theme="light"] .site-footer li {
    color: #5f5f69 !important;
}

/* LINK */
html[data-theme="light"] footer a,
html[data-theme="light"] .footer a,
html[data-theme="light"] .site-footer a {
    color: #4f4f59 !important;
    opacity: 1 !important;
}

/* HOVER LINK */
html[data-theme="light"] footer a:hover,
html[data-theme="light"] .footer a:hover,
html[data-theme="light"] .site-footer a:hover {
    color: #FF3399 !important;
}

/* EVENTUALI TITOLI REALIZZATI CON STRONG */
html[data-theme="light"] footer strong,
html[data-theme="light"] footer b,
html[data-theme="light"] .footer strong,
html[data-theme="light"] .footer b,
html[data-theme="light"] .site-footer strong,
html[data-theme="light"] .site-footer b {
    color: #16161b !important;
    opacity: 1 !important;
}

/* SEPARATORI */
html[data-theme="light"] footer hr,
html[data-theme="light"] .footer hr,
html[data-theme="light"] .site-footer hr {
    border-color: #dedee5 !important;
}

/* COPYRIGHT / TESTI SECONDARI */
html[data-theme="light"] .footer-bottom,
html[data-theme="light"] .footer-copy,
html[data-theme="light"] .footer-copyright,
html[data-theme="light"] footer small {
    color: #73737d !important;
}


/* ============================================================
   PINKBLCK · CORREZIONI UX TEMA CHIARO V8
   Ricerca globale · Avatar area riservata · Badge tema mobile
   ============================================================ */

/* ------------------------------------------------------------
   1. RICERCA GLOBALE
   Nel tema chiaro l'hover NON deve tornare scuro.
   ------------------------------------------------------------ */

html[data-theme="light"] .global-search-results {
    background:#ffffff !important;
    border-color:#d8d8df !important;
    color:#16161b !important;
}

html[data-theme="light"] .global-search-section + .global-search-section {
    border-top-color:#e3e3e8 !important;
}

html[data-theme="light"] .global-search-label {
    color:#6d6d77 !important;
}

html[data-theme="light"] .global-search-item {
    background:#ffffff !important;
    color:#202027 !important;
}

html[data-theme="light"] .global-search-item:hover,
html[data-theme="light"] .global-search-item.active {
    background:#f0f0f3 !important;
    color:#111116 !important;
}

html[data-theme="light"] .global-search-item:hover .global-search-title,
html[data-theme="light"] .global-search-item.active .global-search-title {
    color:#111116 !important;
}

html[data-theme="light"] .global-search-item:hover .global-search-meta,
html[data-theme="light"] .global-search-item.active .global-search-meta {
    color:#5f5f69 !important;
}

html[data-theme="light"] .global-search-title {
    color:#202027 !important;
}

html[data-theme="light"] .global-search-meta,
html[data-theme="light"] .global-search-empty,
html[data-theme="light"] .global-search-loading {
    color:#6d6d77 !important;
}

html[data-theme="light"] .global-search-icon {
    background:#ececf0 !important;
    color:#FF3399 !important;
}


/* ------------------------------------------------------------
   2. AVATAR AREA RISERVATA
   - bordo uguale al tema Sistema (#222)
   - hover evidente
   - immagine segue correttamente il cerchio
   ------------------------------------------------------------ */

.avatar-mini {
    border:1px solid #222 !important;
    box-sizing:border-box !important;
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease !important;
}

html[data-theme="light"] .avatar-mini {
    /*
     * Manteniamo intenzionalmente lo stesso anello
     * del tema originale PINKBLCK.
     */
    border-color:#222 !important;
}

.avatar-mini:hover,
.avatar-mini:focus-visible {
    border-color:#FF3399 !important;
    box-shadow:
        0 0 0 3px rgba(255,51,153,.18),
        0 6px 18px rgba(0,0,0,.18) !important;
    transform:translateY(-1px) !important;
    outline:none !important;
}

html[data-theme="light"] .avatar-mini:hover,
html[data-theme="light"] .avatar-mini:focus-visible {
    border-color:#FF3399 !important;
    box-shadow:
        0 0 0 3px rgba(255,51,153,.16),
        0 6px 18px rgba(20,20,30,.12) !important;
}

.avatar-mini img {
    width:100% !important;
    height:100% !important;
    border-radius:50% !important;
    object-fit:cover !important;
    display:block !important;
}


/* ------------------------------------------------------------
   3. BADGE DI VERIFICA AVATAR
   Il bordo segue il fondo della topbar, non quello del tema-switch.
   ------------------------------------------------------------ */

html[data-theme="dark"] .avatar-verified-badge,
html:not([data-theme="light"]):not([data-theme="ecology"]) .avatar-verified-badge {
    border-color:#000000 !important;
}

html[data-theme="light"] .avatar-verified-badge {
    border-color:#ffffff !important;
}


/* ------------------------------------------------------------
   4. SWITCH TEMA SU MOBILE
   Resta fisso in alto ma viene spostato a sinistra dell'area
   notifiche/avatar, quindi NON sovrappone più l'avatar.
   ------------------------------------------------------------ */

@media (max-width:720px) {
    #pb-theme-control.pb-theme-top-fixed {
        top:calc(8px + env(safe-area-inset-top)) !important;
        right:112px !important;
        bottom:auto !important;
        left:auto !important;
    }

    #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
        top:52px !important;
        right:0 !important;
        left:auto !important;
        width:186px !important;
    }
}

@media (max-width:390px) {
    #pb-theme-control.pb-theme-top-fixed {
        right:108px !important;
    }
}


/* ============================================================
   PINKBLCK · FOOTER REALE · TEMA CHIARO
   Classi basate su includes/footer.php
   ============================================================ */

html[data-theme="light"] .pb-footer {
    background: #ffffff !important;
    color: #55555c !important;
    border-top-color: #dedee5 !important;
}

/* Primo titolo PINKBLCK */
html[data-theme="light"] .pb-footer .pb-footer-brand {
    color: #16161b !important;
    opacity: 1 !important;
}

/* Titoli colonne */
html[data-theme="light"] .pb-footer h3 {
    color: #16161b !important;
    opacity: 1 !important;
}

/* Descrizione */
html[data-theme="light"] .pb-footer p {
    color: #55555c !important;
}

/* Link footer */
html[data-theme="light"] .pb-footer a {
    color: #55555c !important;
}

html[data-theme="light"] .pb-footer a:hover {
    color: #FF3399 !important;
}

/* Barra inferiore */
html[data-theme="light"] .pb-footer-bottom {
    border-top-color: #dedee5 !important;
    color: #55555c !important;
}

html[data-theme="light"] .pb-footer-bottom strong {
    color: #16161b !important;
}

/* Lingue */
html[data-theme="light"] .pb-footer-langs span {
    color: #55555c !important;
}

html[data-theme="light"] .pb-footer-langs a {
    color: #55555c !important;
}

html[data-theme="light"] .pb-footer-langs a.active {
    color: #FF3399 !important;
    font-weight: 900 !important;
}


/* ============================================================
   PINKBLCK · TOPBAR MOBILE · ORDINE AZIONI
   Campanella → Avatar → Badge tema
   ============================================================ */

@media (max-width:720px) {

    /*
     * Il badge tema viene posizionato DOPO l'avatar,
     * mantenendo una distanza uniforme tra i tre controlli.
     */
    #pb-theme-control.pb-theme-top-fixed {
        top: calc(8px + env(safe-area-inset-top)) !important;
        right: 8px !important;
        bottom: auto !important;
        left: auto !important;
    }

    /*
     * Riserviamo alla topbar lo spazio occupato dal badge,
     * evitando sovrapposizioni.
     */
    .social-topbar .top-actions {
        padding-right: 52px !important;
        gap: 8px !important;
    }

    /*
     * Campanella e avatar mantengono una spaziatura coerente.
     */
    .social-topbar .top-actions > a,
    .social-topbar .top-actions > button,
    .social-topbar .top-actions .icon-btn {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*
     * Badge tema: stessa presenza visiva dei controlli topbar.
     */
    #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }

    #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
        top: 50px !important;
        right: 0 !important;
        left: auto !important;
        width: 186px !important;
    }
}

@media (max-width:390px) {
    #pb-theme-control.pb-theme-top-fixed {
        right: 6px !important;
    }

    .social-topbar .top-actions {
        padding-right: 50px !important;
        gap: 7px !important;
    }
}


/* ============================================================
   PINKBLCK · TOPBAR MOBILE · ALLINEAMENTO VERTICALE V10
   Campanella · Avatar · Badge tema
   ============================================================ */

@media (max-width:720px) {

    /*
     * La topbar mobile è alta 58px.
     * Controlli da 42px => (58 - 42) / 2 = 8px.
     * Tutti e tre risultano quindi centrati sulla stessa linea.
     */
    .social-topbar .top-actions {
        height: 58px !important;
        min-height: 58px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        padding-right: 52px !important;
        gap: 8px !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }

    .social-topbar .top-actions .icon-btn,
    .social-topbar .top-actions > a.icon-btn,
    .social-topbar .top-actions > button.icon-btn,
    .social-topbar .top-actions .avatar-mini {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        box-sizing: border-box !important;
        align-self: center !important;
    }

    /*
     * Badge tema centrato verticalmente nella stessa topbar:
     * 8px sopra + 42px controllo + 8px sotto = 58px.
     */
    #pb-theme-control.pb-theme-top-fixed {
        top: calc(8px + env(safe-area-inset-top)) !important;
        right: 8px !important;
        bottom: auto !important;
        left: auto !important;
        width: 42px !important;
        height: 42px !important;
    }

    #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
        top: 50px !important;
        right: 0 !important;
    }
}

@media (max-width:390px) {
    .social-topbar .top-actions {
        padding-right: 50px !important;
        gap: 7px !important;
    }

    #pb-theme-control.pb-theme-top-fixed {
        right: 6px !important;
    }
}


/* ============================================================
   PINKBLCK · COPERTURA GLOBALE PAGINE V11
   Pagine istituzionali, accesso, verifica, profili e contenuti
   che non usano la struttura .social-home.
   ============================================================ */

html[data-theme="light"] body,
html[data-theme="light"] main,
html[data-theme="light"] .wrap,
html[data-theme="light"] .legal-wrap,
html[data-theme="light"] .container {
    color:#17171c !important;
}

html[data-theme="light"] .wrap,
html[data-theme="light"] .legal-wrap {
    background:transparent !important;
}

html[data-theme="light"] .hero,
html[data-theme="light"] .section,
html[data-theme="light"] .notice-box,
html[data-theme="light"] .result-box,
html[data-theme="light"] .notice,
html[data-theme="light"] .faq details,
html[data-theme="light"] .contact,
html[data-theme="light"] .profile-card,
html[data-theme="light"] .card,
html[data-theme="light"] .box {
    background:#ffffff !important;
    color:#202027 !important;
    border-color:#dedee5 !important;
}

html[data-theme="light"] .hero h1,
html[data-theme="light"] .hero h2,
html[data-theme="light"] .section h1,
html[data-theme="light"] .section h2,
html[data-theme="light"] .section h3,
html[data-theme="light"] .notice-box h1,
html[data-theme="light"] .notice-box h2,
html[data-theme="light"] .faq summary,
html[data-theme="light"] .contact strong,
html[data-theme="light"] .top .brand,
html[data-theme="light"] .brand {
    color:#17171c !important;
}

html[data-theme="light"] .lead,
html[data-theme="light"] .intro,
html[data-theme="light"] .updated,
html[data-theme="light"] .message,
html[data-theme="light"] .spam-warning,
html[data-theme="light"] .section p,
html[data-theme="light"] .faq p,
html[data-theme="light"] .contact span,
html[data-theme="light"] .details,
html[data-theme="light"] .meta,
html[data-theme="light"] .date,
html[data-theme="light"] .place {
    color:#5f5f69 !important;
}

html[data-theme="light"] .spam-warning,
html[data-theme="light"] .updated,
html[data-theme="light"] .notice {
    background:#f2f2f5 !important;
    border-color:#dedee5 !important;
}

html[data-theme="light"] .langs,
html[data-theme="light"] .legal-links {
    color:#55555f !important;
}

html[data-theme="light"] .langs a,
html[data-theme="light"] .legal-links a {
    color:#55555f !important;
    border-color:#d8d8df !important;
}

html[data-theme="light"] .langs a.active,
html[data-theme="light"] .legal-links a:hover {
    color:#FF3399 !important;
}

html[data-theme="light"] .btn-home,
html[data-theme="light"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn) {
    background:#f1f1f4 !important;
    color:#202027 !important;
    border-color:#d8d8df !important;
}

html[data-theme="light"] .btn-home:hover,
html[data-theme="light"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn):hover {
    color:#FF3399 !important;
    border-color:#FF3399 !important;
    background:#ffffff !important;
}

/* Pagine di avviso e verifica account */
html[data-theme="light"] .btn-action.btn-fucsia {
    background:#FF3399 !important;
    color:#FFFFFF !important;
    border-color:#FF3399 !important;
}

html[data-theme="light"] .btn-action.btn-fucsia:hover {
    background:#ff1a8c !important;
    color:#FFFFFF !important;
    border-color:#ff1a8c !important;
}

html[data-theme="light"] .btn-action.btn-dark {
    background:#17171c !important;
    color:#FFFFFF !important;
    border-color:#17171c !important;
}

html[data-theme="light"] .btn-action.btn-dark:hover {
    background:#FF3399 !important;
    color:#FFFFFF !important;
    border-color:#FF3399 !important;
}

/* Footer reale */
html[data-theme="light"] .pb-footer {
    background:#ffffff !important;
    color:#55555c !important;
    border-top-color:#dedee5 !important;
}
html[data-theme="light"] .pb-footer .pb-footer-brand,
html[data-theme="light"] .pb-footer h3,
html[data-theme="light"] .pb-footer-bottom strong {
    color:#16161b !important;
}
html[data-theme="light"] .pb-footer p,
html[data-theme="light"] .pb-footer a,
html[data-theme="light"] .pb-footer-bottom,
html[data-theme="light"] .pb-footer-langs span {
    color:#55555c !important;
}
html[data-theme="light"] .pb-footer a:hover,
html[data-theme="light"] .pb-footer-langs a.active {
    color:#FF3399 !important;
}
html[data-theme="light"] .pb-footer-bottom {
    border-top-color:#dedee5 !important;
}


/* ============================================================
   PINKBLCK · BADGE TEMA COMPATTO V12
   Solo icona, ingombro ridotto su tutte le pagine.
   ============================================================ */
#pb-theme-control.pb-theme-top-fixed{
    top:calc(12px + env(safe-area-inset-top))!important;
    right:12px!important;
    bottom:auto!important;
    left:auto!important;
    width:34px!important;
    height:34px!important;
    margin:0!important;
}

#pb-theme-control.pb-theme-top-fixed .pb-theme-button{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:16px!important;
    line-height:1!important;
}

#pb-theme-control.pb-theme-top-fixed .pb-theme-menu{
    top:42px!important;
    right:0!important;
    width:180px!important;
}

/* Anche eventuali vecchie varianti fixed ereditano l'ingombro compatto. */
#pb-theme-control.pb-theme-fixed{
    width:34px!important;
    height:34px!important;
}
#pb-theme-control.pb-theme-fixed .pb-theme-button{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:0!important;
    font-size:16px!important;
}

/* Mobile: ancora più discreto, senza invadere Home/avatar/campanella. */
@media(max-width:760px){
    #pb-theme-control.pb-theme-top-fixed{
        top:calc(9px + env(safe-area-inset-top))!important;
        right:8px!important;
        width:30px!important;
        height:30px!important;
    }
    #pb-theme-control.pb-theme-top-fixed .pb-theme-button{
        width:30px!important;
        height:30px!important;
        min-width:30px!important;
        min-height:30px!important;
        font-size:14px!important;
    }
    #pb-theme-control.pb-theme-top-fixed .pb-theme-menu{
        top:38px!important;
        right:0!important;
        width:174px!important;
    }
}

/* ============================================================
   PINKBLCK · TEMA SCURO · BORDI PINK GLOBALI V13
   Evidenzia soltanto schede/pannelli principali.
   Input, separatori e piccoli controlli mantengono i bordi neutri.
   ============================================================ */
html[data-theme="dark"] .panel,
html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .composer,
html[data-theme="dark"] .feed-card,
html[data-theme="dark"] .post-card,
html[data-theme="dark"] .experience-card,
html[data-theme="dark"] .experience-post,
html[data-theme="dark"] .right-card,
html[data-theme="dark"] .right-panel,
html[data-theme="dark"] .notification-card,
html[data-theme="dark"] .node-card,
html[data-theme="dark"] .profile-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .box,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .notice-box,
html[data-theme="dark"] .faq details,
html[data-theme="dark"] .contact,
html[data-theme="dark"] .guest-post,
html[data-theme="dark"] .guest-lock-box,
html[data-theme="dark"] .mobile-discover,
html[data-theme="dark"] .mobile-live-card,
html[data-theme="dark"] .mobile-summary-card,
html[data-theme="dark"] .mobile-discover-card,
html[data-theme="dark"] .mobile-live-explore .panel,
html[data-theme="dark"] .mobile-dynamic-explore .panel,
html[data-theme="dark"] .mobile-summary-three .panel {
    border-color: var(--pb-accent) !important;
}

/* Compatibilità con pagine che usano il tema scuro come default
   senza valorizzare esplicitamente data-theme="dark". */
html:not([data-theme="light"]):not([data-theme="ecology"]) .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .sidebar,
html:not([data-theme="light"]):not([data-theme="ecology"]) .composer,
html:not([data-theme="light"]):not([data-theme="ecology"]) .feed-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .post-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .experience-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .experience-post,
html:not([data-theme="light"]):not([data-theme="ecology"]) .right-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .right-panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .notification-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .node-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .profile-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .hero,
html:not([data-theme="light"]):not([data-theme="ecology"]) .notice-box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .faq details,
html:not([data-theme="light"]):not([data-theme="ecology"]) .contact,
html:not([data-theme="light"]):not([data-theme="ecology"]) .guest-post,
html:not([data-theme="light"]):not([data-theme="ecology"]) .guest-lock-box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-discover,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-live-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-summary-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-discover-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-live-explore .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-dynamic-explore .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-summary-three .panel {
    border-color: var(--pb-accent) !important;
}

/* ============================================================
   PINKBLCK · TEMA SCURO GLOBALE · BORDI STRUTTURALI PINK V14
   Regola definitiva caricata per ultima.
   Vale su Home, Esplora, Nodo, Esperienza, profili e pagine comuni.
   ============================================================ */
html[data-theme="dark"],
html:not([data-theme="light"]):not([data-theme="ecology"]) {
    --pb-dark-card-border:#FF3399;
}

/* Schede/pannelli principali e contenitori strutturali */
html[data-theme="dark"] :is(
    .panel,.card,.box,.sidebar,.composer,.feed-card,.post-card,.experience-card,
    .experience-post,.right-card,.right-panel,.notification-card,.node-card,
    .profile-card,.hero,.section,.notice-box,.notice,.contact,.guest-post,
    .guest-lock-box,.mobile-discover,.mobile-live-card,.mobile-summary-card,
    .mobile-discover-card,.experience-dialog,.report-dialog,.attach-node-picker-dialog,
    .node-shell,.node-panel,.profile-panel,.profile-box,.content-card,.legal-card,
    .faq details
),
html:not([data-theme="light"]):not([data-theme="ecology"]) :is(
    .panel,.card,.box,.sidebar,.composer,.feed-card,.post-card,.experience-card,
    .experience-post,.right-card,.right-panel,.notification-card,.node-card,
    .profile-card,.hero,.section,.notice-box,.notice,.contact,.guest-post,
    .guest-lock-box,.mobile-discover,.mobile-live-card,.mobile-summary-card,
    .mobile-discover-card,.experience-dialog,.report-dialog,.attach-node-picker-dialog,
    .node-shell,.node-panel,.profile-panel,.profile-box,.content-card,.legal-card,
    .faq details
) {
    border-color:#FF3399 !important;
}

/* Se una pagina usa direttamente border: ... #222/#333 sul contenitore,
   questa regola finale forza comunque il solo colore del bordo. */
html[data-theme="dark"] main :is(
    article, section[class], div[class*="card"], div[class*="panel"]
),
html:not([data-theme="light"]):not([data-theme="ecology"]) main :is(
    article, section[class], div[class*="card"], div[class*="panel"]
) {
    border-color:#FF3399 !important;
}

/* ============================================================
   PINKBLCK · TEMA SCURO · BORDI PINK GLOBALI V15
   ============================================================ */
html[data-theme="dark"] {
    --pb-border: rgba(255,51,153,.78);
    --pb-border-soft: rgba(255,51,153,.34);
}

/* Schede e pannelli principali */
html[data-theme="dark"] .panel,
html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .composer,
html[data-theme="dark"] .feed-card,
html[data-theme="dark"] .post-card,
html[data-theme="dark"] .experience-card,
html[data-theme="dark"] .experience-post,
html[data-theme="dark"] .right-card,
html[data-theme="dark"] .right-panel,
html[data-theme="dark"] .notification-card,
html[data-theme="dark"] .node-card,
html[data-theme="dark"] .profile-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .box,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .section,
html[data-theme="dark"] .notice-box,
html[data-theme="dark"] .contact,
html[data-theme="dark"] .guest-post,
html[data-theme="dark"] .guest-lock-box,
html[data-theme="dark"] .mobile-discover,
html[data-theme="dark"] .mobile-live-card,
html[data-theme="dark"] .mobile-summary-card,
html[data-theme="dark"] .mobile-discover-card,
html[data-theme="dark"] .experience-dialog,
html[data-theme="dark"] .report-dialog,
html[data-theme="dark"] .attach-node-picker-dialog,
html[data-theme="dark"] .faq details {
    border:1px solid rgba(255,51,153,.78) !important;
    box-shadow:
        0 0 0 1px rgba(255,51,153,.08),
        0 10px 26px rgba(0,0,0,.30) !important;
}

/* Elementi interni: rosa più tenue, così non diventa tutto "neon". */
html[data-theme="dark"] .post-node-row,
html[data-theme="dark"] .selected-node,
html[data-theme="dark"] .node-subject-panel,
html[data-theme="dark"] .comments-panel,
html[data-theme="dark"] .comment-textarea,
html[data-theme="dark"] .global-search-results,
html[data-theme="dark"] .node-search-live-results,
html[data-theme="dark"] .search-live-results,
html[data-theme="dark"] .pb-custom-select-menu {
    border-color:rgba(255,51,153,.34) !important;
}

/* Hover più netto */
html[data-theme="dark"] .panel:hover,
html[data-theme="dark"] .experience-post:hover,
html[data-theme="dark"] .node-card:hover,
html[data-theme="dark"] .profile-card:hover,
html[data-theme="dark"] .card:hover {
    border-color:#FF3399 !important;
}

/* ============================================================
   PINKBLCK · WRAPPER DI SEZIONE SENZA BORDI V16
   I contenitori esterni che raggruppano titolo/contatore + card
   NON sono card: niente bordo, niente riquadro, niente ombra.
   Le singole card interne mantengono invece il bordo del tema.
   ============================================================ */

/* Wrapper/sezioni generiche */
html[data-theme="dark"] .section,
html[data-theme="dark"] .section-wrap,
html[data-theme="dark"] .section-wrapper,
html[data-theme="dark"] .cards-section,
html[data-theme="dark"] .content-section,
html[data-theme="dark"] .results-section,
html[data-theme="dark"] .list-section,
html[data-theme="light"] .section,
html[data-theme="light"] .section-wrap,
html[data-theme="light"] .section-wrapper,
html[data-theme="light"] .cards-section,
html[data-theme="light"] .content-section,
html[data-theme="light"] .results-section,
html[data-theme="light"] .list-section {
    border:0 !important;
    border-color:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}

/* Wrapper riconosciuti dalla struttura:
   titolo/intestazione + griglia/lista di card. */
html[data-theme="dark"] section:has(> .section-head),
html[data-theme="dark"] section:has(> .grid),
html[data-theme="dark"] section:has(.grid > .card),
html[data-theme="dark"] section:has(.grid > .profile-card-click),
html[data-theme="dark"] section:has(.node-card),
html[data-theme="dark"] section:has(.experience-card),
html[data-theme="dark"] section:has(.exp-card),
html[data-theme="light"] section:has(> .section-head),
html[data-theme="light"] section:has(> .grid),
html[data-theme="light"] section:has(.grid > .card),
html[data-theme="light"] section:has(.grid > .profile-card-click),
html[data-theme="light"] section:has(.node-card),
html[data-theme="light"] section:has(.experience-card),
html[data-theme="light"] section:has(.exp-card) {
    border:0 !important;
    border-color:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}

/* Il bordo rimane soltanto sugli elementi realmente cliccabili/contenutistici. */
html[data-theme="dark"] :is(
    .card,
    .profile-card,
    .profile-card-click,
    .node-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .feed-card,
    .post-card,
    .notification-card,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card
) {
    border:1px solid rgba(255,51,153,.78) !important;
    border-radius:13px;
}

/* Nessun bordo deve riapparire all'hover sul wrapper esterno. */
html[data-theme="dark"] :is(
    .section,
    .section-wrap,
    .section-wrapper,
    .cards-section,
    .content-section,
    .results-section,
    .list-section
):hover {
    border:0 !important;
    border-color:transparent !important;
    box-shadow:none !important;
}

/* ============================================================
   PINKBLCK · HERO / INTESTAZIONI PAGINA SENZA BORDO
   ============================================================ */

html[data-theme="dark"] .hero,
html[data-theme="light"] .hero {
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* ============================================================
   PINKBLCK · TEMA ECOLOGY V18
   Naturale, chiaro e morbido.
   Il rosa #FF3399 resta il colore identitario del brand.
   ============================================================ */

html[data-theme="ecology"] {
    color-scheme: light;

    --pb-accent: #FF3399;
    --pb-accent-hover: #ff66b3;

    --pb-eco: #3F7D4A;
    --pb-eco-hover: #32663C;
    --pb-eco-soft: #DCE8D8;

    --pb-bg: #F2F5EE;
    --pb-surface: #FFFFFF;
    --pb-surface-2: #E7EDE1;
    --pb-surface-3: #DCE5D6;
    --pb-overlay: rgba(242,245,238,.97);

    --pb-text: #172019;
    --pb-text-soft: #334036;
    --pb-muted: #647064;
    --pb-muted-2: #788478;

    --pb-border: #CBD7C5;
    --pb-border-soft: #DCE5D7;

    --pb-shadow: 0 14px 38px rgba(45,70,48,.10);
    --pb-scroll-track: #E1E9DC;
}

/* ------------------------------------------------------------
   BASE
   ------------------------------------------------------------ */
html[data-theme="ecology"],
html[data-theme="ecology"] body,
html[data-theme="ecology"] .social-home {
    background: var(--pb-bg) !important;
    color: var(--pb-text) !important;
}

html[data-theme="ecology"] a {
    color: inherit;
}

/* ------------------------------------------------------------
   TESTI
   ------------------------------------------------------------ */
html[data-theme="ecology"] h1,
html[data-theme="ecology"] h2,
html[data-theme="ecology"] h3,
html[data-theme="ecology"] h4,
html[data-theme="ecology"] .name,
html[data-theme="ecology"] .node-title,
html[data-theme="ecology"] .post-author,
html[data-theme="ecology"] .post-author-link,
html[data-theme="ecology"] .comment-author,
html[data-theme="ecology"] .comment-author-link,
html[data-theme="ecology"] .right-live-name,
html[data-theme="ecology"] .mobile-live-card-title,
html[data-theme="ecology"] .mobile-summary-card-title,
html[data-theme="ecology"] .guest-author,
html[data-theme="ecology"] .side-profile strong {
    color: var(--pb-text) !important;
}

html[data-theme="ecology"] .manifesto,
html[data-theme="ecology"] .nav-link,
html[data-theme="ecology"] .composer-action,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .account-type,
html[data-theme="ecology"] .welcome-card p,
html[data-theme="ecology"] .nota-trasparenza,
html[data-theme="ecology"] .post-meta,
html[data-theme="ecology"] .post-location,
html[data-theme="ecology"] .right-live-title,
html[data-theme="ecology"] .right-live-meta,
html[data-theme="ecology"] .right-live-empty,
html[data-theme="ecology"] .mobile-live-title,
html[data-theme="ecology"] .mobile-live-card-meta,
html[data-theme="ecology"] .mobile-summary-card-meta,
html[data-theme="ecology"] .comment-meta,
html[data-theme="ecology"] .comment-char-row,
html[data-theme="ecology"] .guest-date,
html[data-theme="ecology"] .guest-place,
html[data-theme="ecology"] .manual-tags-note,
html[data-theme="ecology"] .node-subject-help,
html[data-theme="ecology"] .media-selected-meta,
html[data-theme="ecology"] .report-note,
html[data-theme="ecology"] small,
html[data-theme="ecology"] .muted,
html[data-theme="ecology"] .meta,
html[data-theme="ecology"] .bio,
html[data-theme="ecology"] .count,
html[data-theme="ecology"] .place,
html[data-theme="ecology"] .subtitle {
    color: var(--pb-muted) !important;
}

/* ------------------------------------------------------------
   TOPBAR / NAVIGAZIONE
   ------------------------------------------------------------ */
html[data-theme="ecology"] .social-topbar,
html[data-theme="ecology"] .top {
    background: rgba(242,245,238,.97) !important;
    border-bottom-color: var(--pb-border) !important;
    box-shadow: 0 4px 18px rgba(45,70,48,.06) !important;
}

html[data-theme="ecology"] .brand,
html[data-theme="ecology"] .top-actions,
html[data-theme="ecology"] .top-actions a {
    color: var(--pb-text) !important;
}

/* PINKBLCK resta rosa */
html[data-theme="ecology"] .brand span,
html[data-theme="ecology"] .slogan,
html[data-theme="ecology"] .nav-link.active i,
html[data-theme="ecology"] .composer-action i,
html[data-theme="ecology"] .icon-btn:hover,
html[data-theme="ecology"] .node-tag,
html[data-theme="ecology"] .tag,
html[data-theme="ecology"] .pink {
    color: #FF3399 !important;
}

/* ------------------------------------------------------------
   CARD / PANNELLI / SUPERFICI
   ------------------------------------------------------------ */
html[data-theme="ecology"] :is(
    .panel,
    .composer,
    .sidebar,
    .feed-card,
    .post-card,
    .experience-card,
    .experience-post,
    .right-card,
    .right-panel,
    .notification-card,
    .comment-item,
    .node-card,
    .profile-card,
    .card,
    .guest-post,
    .guest-lock-box,
    .mobile-discover,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card,
    .modal-content,
    .popup-content,
    .dialog-content,
    .experience-dialog,
    .report-dialog,
    .attach-node-picker-dialog,
    .faq details
) {
    background: var(--pb-surface) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
    box-shadow: var(--pb-shadow);
}

/* Le card reali hanno un bordo verde tenue. */
html[data-theme="ecology"] :is(
    .card,
    .profile-card,
    .profile-card-click,
    .node-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .feed-card,
    .post-card,
    .notification-card,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card
) {
    background: #FFFFFF !important;
    border: 1px solid #BFCFBA !important;
}

/* Hover delle card: verde Ecology. */
html[data-theme="ecology"] :is(
    .card,
    .profile-card,
    .profile-card-click,
    .node-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .feed-card,
    .post-card,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card
):hover {
    border-color: var(--pb-eco) !important;
}

/* ------------------------------------------------------------
   WRAPPER STRUTTURALI: SEMPRE SENZA BORDO
   ------------------------------------------------------------ */
html[data-theme="ecology"] :is(
    .section,
    .section-wrap,
    .section-wrapper,
    .cards-section,
    .content-section,
    .results-section,
    .list-section,
    .hero
) {
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

html[data-theme="ecology"] section:has(> .section-head),
html[data-theme="ecology"] section:has(> .grid),
html[data-theme="ecology"] section:has(.grid > .card),
html[data-theme="ecology"] section:has(.grid > .profile-card-click),
html[data-theme="ecology"] section:has(.node-card),
html[data-theme="ecology"] section:has(.experience-card),
html[data-theme="ecology"] section:has(.exp-card) {
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* ------------------------------------------------------------
   COMPOSER / NODI / CONTENITORI SECONDARI
   ------------------------------------------------------------ */
html[data-theme="ecology"] :is(
    .post-node-row,
    .selected-node,
    .node-subject-panel,
    .comments-panel,
    .attach-node-picker-item,
    .right-live-item,
    .discover
) {
    background: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

html[data-theme="ecology"] .node-title-link:hover {
    color: var(--pb-eco) !important;
}

/* ------------------------------------------------------------
   INPUT / TEXTAREA / SELECT / RICERCA
   ------------------------------------------------------------ */
html[data-theme="ecology"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="ecology"] textarea,
html[data-theme="ecology"] select,
html[data-theme="ecology"] .search-box input,
html[data-theme="ecology"] .search input,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .comment-textarea,
html[data-theme="ecology"] .pb-custom-select-trigger {
    background: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: #C5D2C0 !important;
}

html[data-theme="ecology"] input::placeholder,
html[data-theme="ecology"] textarea::placeholder {
    color: #788478 !important;
    opacity: 1 !important;
}

html[data-theme="ecology"] input:focus,
html[data-theme="ecology"] textarea:focus,
html[data-theme="ecology"] select:focus,
html[data-theme="ecology"] .search input:focus,
html[data-theme="ecology"] .pb-custom-select-trigger:focus {
    border-color: var(--pb-eco) !important;
    outline: none !important;
}

/* Risultati ricerca/autocomplete. */
html[data-theme="ecology"] :is(
    .global-search-results,
    .search-live-results,
    .node-search-live-results,
    .node-results,
    .node-subject-results,
    .results,
    .mention-autocomplete-results,
    .location-autocomplete-results,
    .edit-subject-results,
    .pb-custom-select-menu,
    .dropdown-menu,
    .search-results,
    .post-menu,
    .comment-menu,
    .comment-mention-results,
    .exp-menu-list
) {
    background: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
    box-shadow: 0 16px 42px rgba(45,70,48,.14) !important;
}

html[data-theme="ecology"] :is(
    .global-search-item,
    .search-live-item,
    .result,
    .node-result,
    .node-subject-result,
    .mention-result,
    .location-autocomplete-item,
    .edit-subject-result,
    .pb-custom-select-option
) {
    color: var(--pb-text) !important;
}

html[data-theme="ecology"] :is(
    .global-search-item,
    .search-live-item,
    .result,
    .node-result,
    .node-subject-result,
    .mention-result,
    .location-autocomplete-item,
    .edit-subject-result,
    .pb-custom-select-option
):hover,
html[data-theme="ecology"] .global-search-item.active,
html[data-theme="ecology"] .search-live-item.active {
    background: #E8EFE4 !important;
    color: #172019 !important;
}

/* ------------------------------------------------------------
   TABS / CHIP / SELEZIONI
   ------------------------------------------------------------ */
html[data-theme="ecology"] .tabs {
    background: #E5ECE0 !important;
    border-color: #CDD8C8 !important;
}

html[data-theme="ecology"] .tab,
html[data-theme="ecology"] .tabs button {
    color: #5D6B5E !important;
}

html[data-theme="ecology"] .tab.active,
html[data-theme="ecology"] .tabs button.active {
    color: var(--pb-eco) !important;
    border-color: var(--pb-eco) !important;
}

html[data-theme="ecology"] .chip {
    background: #E7EDE1 !important;
    color: #4F5E50 !important;
    border-color: #C7D4C1 !important;
}

html[data-theme="ecology"] .chip:hover,
html[data-theme="ecology"] .chip.active {
    background: #FFFFFF !important;
    color: var(--pb-eco) !important;
    border-color: var(--pb-eco) !important;
}

/* ------------------------------------------------------------
   AZIONI / PULSANTI
   Il rosa resta il CTA primario PINKBLCK.
   ------------------------------------------------------------ */
html[data-theme="ecology"] :is(
    .publish-btn,
    .btn-cittadino,
    .comment-submit,
    .vote-pink,
    .notification-badge,
    .mobile-notification-badge
) {
    color: #FFFFFF !important;
}

html[data-theme="ecology"] .vote-pink {
    background: #FF3399 !important;
}

html[data-theme="ecology"] .vote-black {
    background: #000000 !important;
    color: #FFFFFF !important;
    border-color: #444 !important;
}

/* Azioni secondarie Ecology. */
html[data-theme="ecology"] .post-action {
    color: #5F6C60 !important;
}

html[data-theme="ecology"] .post-action:hover {
    color: var(--pb-eco) !important;
}

html[data-theme="ecology"] .post-action.active,
html[data-theme="ecology"] .post-action.share-success {
    color: #FF3399 !important;
}

/* ------------------------------------------------------------
   MENU TEMA
   ------------------------------------------------------------ */
html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
    background: #FFFFFF !important;
    color: var(--pb-eco) !important;
    border-color: #AFC4A8 !important;
    box-shadow: 0 8px 26px rgba(45,70,48,.16) !important;
}

html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button:hover,
html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button:focus-visible {
    color: #FF3399 !important;
    border-color: #FF3399 !important;
}

html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
    background: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: #BFCFBA !important;
    box-shadow: 0 20px 50px rgba(45,70,48,.18) !important;
}

html[data-theme="ecology"] #pb-theme-control .pb-theme-option {
    color: #273229 !important;
}

html[data-theme="ecology"] #pb-theme-control .pb-theme-option:hover {
    background: #E7EDE1 !important;
}

/* Nel menu il tema selezionato mantiene il rosa PINKBLCK. */
html[data-theme="ecology"] #pb-theme-control .pb-theme-option.active {
    background: #FF3399 !important;
    color: #FFFFFF !important;
}

/* ------------------------------------------------------------
   MOBILE NAV
   ------------------------------------------------------------ */
@media (max-width: 720px) {
    html[data-theme="ecology"] .mobile-nav {
        background: rgba(242,245,238,.98) !important;
        border-top: 1px solid #C9D5C4 !important;
        box-shadow: 0 -8px 24px rgba(45,70,48,.09) !important;
    }

    html[data-theme="ecology"] .mobile-nav a {
        color: #5D695E !important;
        opacity: 1 !important;
    }

    html[data-theme="ecology"] .mobile-nav a.active,
    html[data-theme="ecology"] .mobile-nav a.active i,
    html[data-theme="ecology"] .mobile-nav a.active span,
    html[data-theme="ecology"] .mobile-nav a.has-unread-messages {
        color: #FF3399 !important;
    }
}

/* ------------------------------------------------------------
   FOOTER
   ------------------------------------------------------------ */
html[data-theme="ecology"] footer,
html[data-theme="ecology"] .footer,
html[data-theme="ecology"] .site-footer,
html[data-theme="ecology"] .pb-footer {
    background: #E9EFE5 !important;
    color: #536054 !important;
    border-top-color: #CBD7C5 !important;
}

html[data-theme="ecology"] footer :is(h1,h2,h3,h4,h5,h6,strong,b),
html[data-theme="ecology"] .footer :is(h1,h2,h3,h4,h5,h6,strong,b),
html[data-theme="ecology"] .site-footer :is(h1,h2,h3,h4,h5,h6,strong,b),
html[data-theme="ecology"] .pb-footer :is(h1,h2,h3,h4,h5,h6,strong,b),
html[data-theme="ecology"] .pb-footer .pb-footer-brand {
    color: #172019 !important;
}

html[data-theme="ecology"] footer a,
html[data-theme="ecology"] .footer a,
html[data-theme="ecology"] .site-footer a,
html[data-theme="ecology"] .pb-footer a {
    color: #536054 !important;
}

html[data-theme="ecology"] footer a:hover,
html[data-theme="ecology"] .footer a:hover,
html[data-theme="ecology"] .site-footer a:hover,
html[data-theme="ecology"] .pb-footer a:hover,
html[data-theme="ecology"] .pb-footer-langs a.active {
    color: #FF3399 !important;
}

/* ------------------------------------------------------------
   SCROLLBAR ECOLOGY
   Thumb verde, brand PINKBLCK invariato altrove.
   ------------------------------------------------------------ */
html[data-theme="ecology"],
html[data-theme="ecology"] body,
html[data-theme="ecology"] * {
    scrollbar-color: var(--pb-eco) var(--pb-scroll-track) !important;
}

html[data-theme="ecology"]::-webkit-scrollbar-track,
html[data-theme="ecology"] body::-webkit-scrollbar-track,
html[data-theme="ecology"] *::-webkit-scrollbar-track {
    background: var(--pb-scroll-track) !important;
}

html[data-theme="ecology"]::-webkit-scrollbar-thumb,
html[data-theme="ecology"] body::-webkit-scrollbar-thumb,
html[data-theme="ecology"] *::-webkit-scrollbar-thumb {
    background: var(--pb-eco) !important;
    border-color: var(--pb-scroll-track) !important;
}

html[data-theme="ecology"]::-webkit-scrollbar-thumb:hover,
html[data-theme="ecology"] body::-webkit-scrollbar-thumb:hover,
html[data-theme="ecology"] *::-webkit-scrollbar-thumb:hover {
    background: var(--pb-eco-hover) !important;
}

/* ------------------------------------------------------------
   AVATAR / BADGE VERIFICATO
   ------------------------------------------------------------ */
html[data-theme="ecology"] .avatar-mini {
    border-color: #AFC0AA !important;
}

html[data-theme="ecology"] .avatar-mini:hover,
html[data-theme="ecology"] .avatar-mini:focus-visible {
    border-color: #FF3399 !important;
    box-shadow:
        0 0 0 3px rgba(255,51,153,.14),
        0 6px 18px rgba(45,70,48,.10) !important;
}

html[data-theme="ecology"] .avatar-verified-badge {
    border-color: #F2F5EE !important;
}

/* ============================================================
   PINKBLCK · ECOLOGY · COPERTURA DEFINITIVA V20
   Corregge le superfici rimaste scure nelle pagine che usano
   classi proprie o colori scuri dichiarati nel CSS locale.
   Sistema e Scuro NON vengono modificati.
   ============================================================ */

/* Pagina e contenitori principali */
html[data-theme="ecology"] body,
html[data-theme="ecology"] main,
html[data-theme="ecology"] .page,
html[data-theme="ecology"] .wrap,
html[data-theme="ecology"] .legal-wrap,
html[data-theme="ecology"] .container,
html[data-theme="ecology"] .social-home {
    background-color: var(--pb-bg) !important;
    color: var(--pb-text) !important;
}

/* Superfici contenutistiche reali */
html[data-theme="ecology"] :is(
    .panel,
    .box,
    .card,
    .profile-card,
    .profile-box,
    .profile-panel,
    .profile-card-click,
    .person,
    .company-card,
    .business-card,
    .node-card,
    .node-shell,
    .node-panel,
    .content-card,
    .legal-card,
    .feed-card,
    .post-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .right-card,
    .right-panel,
    .sidebar,
    .composer,
    .notification-card,
    .comment-card,
    .comment-bubble,
    .comment-content,
    .guest-post,
    .guest-lock-box,
    .notice-box,
    .contact,
    .mobile-discover,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card,
    .mobile-live-explore .panel,
    .mobile-dynamic-explore .panel,
    .mobile-summary-three .panel,
    .faq details
) {
    background-color: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: #BFCFBA !important;
}

/* Superfici secondarie */
html[data-theme="ecology"] :is(
    .notice,
    .spam-warning,
    .updated,
    .post-node-row,
    .selected-node,
    .node-subject-panel,
    .comments-panel,
    .right-live-item,
    .discover,
    .attach-node-picker-item,
    .post-menu-btn
) {
    background-color: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

/* Menu, popup, modali, dropdown e risultati */
html[data-theme="ecology"] :is(
    .modal-content,
    .popup-content,
    .dialog-content,
    .experience-dialog,
    .report-dialog,
    .attach-node-picker-dialog,
    .dropdown-menu,
    .post-menu,
    .comment-menu,
    .exp-menu-list,
    .global-search-results,
    .search-results,
    .search-live-results,
    .node-search-live-results,
    .node-results,
    .node-subject-results,
    .results,
    .mention-autocomplete-results,
    .location-autocomplete-results,
    .edit-subject-results,
    .pb-custom-select-menu,
    .comment-mention-results
) {
    background-color: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

/* Elementi di menu e risultati */
html[data-theme="ecology"] :is(
    .global-search-item,
    .search-live-item,
    .result,
    .node-result,
    .node-subject-result,
    .mention-result,
    .location-autocomplete-item,
    .edit-subject-result,
    .pb-custom-select-option,
    .post-menu a,
    .post-menu button,
    .comment-menu a,
    .comment-menu button
) {
    background-color: transparent !important;
    color: var(--pb-text) !important;
}

html[data-theme="ecology"] :is(
    .global-search-item,
    .search-live-item,
    .result,
    .node-result,
    .node-subject-result,
    .mention-result,
    .location-autocomplete-item,
    .edit-subject-result,
    .pb-custom-select-option,
    .post-menu a,
    .post-menu button,
    .comment-menu a,
    .comment-menu button
):hover,
html[data-theme="ecology"] .global-search-item.active,
html[data-theme="ecology"] .search-live-item.active {
    background-color: #E7EDE1 !important;
    color: #172019 !important;
}

/* Input e controlli di compilazione */
html[data-theme="ecology"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="ecology"] textarea,
html[data-theme="ecology"] select,
html[data-theme="ecology"] .search-box input,
html[data-theme="ecology"] .search input,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .comment-textarea,
html[data-theme="ecology"] .pb-custom-select-trigger {
    background-color: #FFFFFF !important;
    color: var(--pb-text) !important;
    border-color: #C5D2C0 !important;
}

/* Testi che nei CSS locali possono essere ancora bianchi */
html[data-theme="ecology"] :is(
    .hero h1,
    .hero h2,
    .section h1,
    .section h2,
    .section h3,
    .section-title,
    .section-head,
    .name,
    .title,
    .node-title,
    .node-title-link,
    .post-author,
    .post-author-link,
    .comment-author,
    .comment-author-link,
    .right-live-name,
    .mobile-live-card-title,
    .mobile-summary-card-title,
    .guest-author,
    .side-profile strong,
    .faq summary,
    .contact strong
) {
    color: var(--pb-text) !important;
}

/* Testi secondari */
html[data-theme="ecology"] :is(
    .lead,
    .intro,
    .message,
    .details,
    .meta,
    .date,
    .place,
    .subtitle,
    .count,
    .bio,
    .account-type,
    .post-meta,
    .post-location,
    .right-live-title,
    .right-live-meta,
    .right-live-empty,
    .mobile-live-title,
    .mobile-live-card-meta,
    .mobile-summary-card-meta,
    .comment-meta,
    .guest-date,
    .guest-place,
    .manual-tags-note,
    .node-subject-help,
    .media-selected-meta,
    .report-note
) {
    color: var(--pb-muted) !important;
}

/* Pulsanti secondari: niente rettangoli scuri nel tema Ecology */
html[data-theme="ecology"] .btn-home,
html[data-theme="ecology"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn),
html[data-theme="ecology"] .icon-btn {
    background-color: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}

html[data-theme="ecology"] .btn-home:hover,
html[data-theme="ecology"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn):hover,
html[data-theme="ecology"] .icon-btn:hover {
    background-color: #FFFFFF !important;
    color: var(--pb-eco) !important;
    border-color: var(--pb-eco) !important;
}

/* Wrapper strutturali: NON diventano card */
html[data-theme="ecology"] :is(
    .hero,
    .section,
    .section-wrap,
    .section-wrapper,
    .cards-section,
    .content-section,
    .results-section,
    .list-section
) {
    background: transparent !important;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Card vere: bordo Ecology, non il bordo pink del tema Scuro */
html[data-theme="ecology"] :is(
    .card,
    .profile-card,
    .profile-card-click,
    .person,
    .company-card,
    .business-card,
    .node-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .feed-card,
    .post-card,
    .notification-card,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card
) {
    border: 1px solid #BFCFBA !important;
    border-radius: 13px;
    box-shadow: 0 10px 28px rgba(45,70,48,.07) !important;
}

html[data-theme="ecology"] :is(
    .card,
    .profile-card,
    .profile-card-click,
    .person,
    .company-card,
    .business-card,
    .node-card,
    .experience-card,
    .experience-post,
    .exp-card,
    .feed-card,
    .post-card,
    .notification-card,
    .mobile-live-card,
    .mobile-summary-card,
    .mobile-discover-card
):hover {
    border-color: var(--pb-eco) !important;
}

/* Il nero resta intenzionale soltanto per BLACK */
html[data-theme="ecology"] .vote-black,
html[data-theme="ecology"] .black {
    color: #FFFFFF !important;
}

html[data-theme="ecology"] .vote-black {
    background:#000000 !important;
    border-color:#444444 !important;
}

/* Footer */
html[data-theme="ecology"] .pb-footer {
    background:#E9EFE5 !important;
    color:#536054 !important;
    border-top-color:#CBD7C5 !important;
}

html[data-theme="ecology"] .pb-footer .pb-footer-brand,
html[data-theme="ecology"] .pb-footer h3,
html[data-theme="ecology"] .pb-footer-bottom strong {
    color:#172019 !important;
}

html[data-theme="ecology"] .pb-footer p,
html[data-theme="ecology"] .pb-footer a,
html[data-theme="ecology"] .pb-footer-bottom,
html[data-theme="ecology"] .pb-footer-langs span {
    color:#536054 !important;
}

html[data-theme="ecology"] .pb-footer a:hover,
html[data-theme="ecology"] .pb-footer-langs a.active {
    color:#FF3399 !important;
}


/* V20: conformazione locale completata nelle pagine e negli include condivisi. */


/* ============================================================
   PINKBLCK · ECOLOGY V21 · MIRROR COMPLETO DEL TEMA SISTEMA
   Tutte le regole specifiche del tema Light vengono replicate
   per Ecology con la palette naturale. Questo blocco è in fondo
   al file, quindi prevale sulle vecchie compatibilità scure.
   ============================================================ */
html[data-theme="ecology"] {
    color-scheme: light;

    --pb-bg: #F2F5EE;
    --pb-surface: #FFFFFF;
    --pb-surface-2: #E7EDE1;
    --pb-surface-3: #DCE5D6;
    --pb-overlay: rgba(255,255,255,.96);

    --pb-text: #172019;
    --pb-text-soft: #334036;
    --pb-muted: #647064;
    --pb-muted-2: #788478;

    --pb-border: #CBD7C5;
    --pb-border-soft: #e8e8ec;

    --pb-shadow: 0 14px 38px rgba(45,70,48,.10);
    --pb-scroll-track: #E7EDE1;
}
html[data-theme="ecology"],
html[data-theme="ecology"] body {
    background: var(--pb-bg) !important;
    color: var(--pb-text) !important;
}
html[data-theme="ecology"] .social-home {
    background: var(--pb-bg) !important;
}
html[data-theme="ecology"] a {
    color: inherit;
}
html[data-theme="ecology"] .manifesto,
html[data-theme="ecology"] .nav-link,
html[data-theme="ecology"] .composer-action,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .account-type,
html[data-theme="ecology"] .welcome-card p,
html[data-theme="ecology"] .nota-trasparenza,
html[data-theme="ecology"] small,
html[data-theme="ecology"] .muted {
    color: var(--pb-muted) !important;
}
html[data-theme="ecology"] .panel,
html[data-theme="ecology"] .composer,
html[data-theme="ecology"] .sidebar,
html[data-theme="ecology"] .feed-card,
html[data-theme="ecology"] .post-card,
html[data-theme="ecology"] .experience-card,
html[data-theme="ecology"] .right-card,
html[data-theme="ecology"] .modal-content,
html[data-theme="ecology"] .notification-card,
html[data-theme="ecology"] .comment-item,
html[data-theme="ecology"] .node-card,
html[data-theme="ecology"] .dropdown-menu,
html[data-theme="ecology"] .search-results,
html[data-theme="ecology"] .global-search-results {
    background-color: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
    box-shadow: var(--pb-shadow);
}
html[data-theme="ecology"] .welcome-card {
    background: linear-gradient(135deg,#FFFFFF,#fff1f8) !important;
    border-color: var(--pb-border) !important;
}
html[data-theme="ecology"] .nota-trasparenza {
    background: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
}
html[data-theme="ecology"] .social-topbar {
    background: var(--pb-overlay) !important;
    border-bottom-color: var(--pb-border) !important;
    box-shadow: 0 3px 18px rgba(45,70,48,.05);
}
html[data-theme="ecology"] .icon-btn,
html[data-theme="ecology"] .nav-link:hover,
html[data-theme="ecology"] .nav-link.active {
    background: var(--pb-surface-2) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
}
html[data-theme="ecology"] .logout-link,
html[data-theme="ecology"] .side-profile,
html[data-theme="ecology"] .composer-actions {
    border-color: var(--pb-border-soft) !important;
}
html[data-theme="ecology"] .avatar-verified-badge {
    border-color: var(--pb-surface) !important;
}
html[data-theme="ecology"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="ecology"] textarea,
html[data-theme="ecology"] select,
html[data-theme="ecology"] .search-box input,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .pb-custom-select-trigger {
    background: var(--pb-surface-2) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}
html[data-theme="ecology"] input::placeholder,
html[data-theme="ecology"] textarea::placeholder {
    color: #788478 !important;
    opacity: 1;
}
html[data-theme="ecology"] .results,
html[data-theme="ecology"] .result,
html[data-theme="ecology"] .mention-autocomplete-results,
html[data-theme="ecology"] .location-autocomplete-results,
html[data-theme="ecology"] .edit-subject-results,
html[data-theme="ecology"] .pb-custom-select-menu {
    background: var(--pb-surface) !important;
    border-color: var(--pb-border) !important;
    color: var(--pb-text) !important;
}
html[data-theme="ecology"] .result:hover,
html[data-theme="ecology"] .mention-result:hover,
html[data-theme="ecology"] .location-autocomplete-item:hover,
html[data-theme="ecology"] .edit-subject-result:hover {
    background: var(--pb-surface-2) !important;
}
html[data-theme="ecology"] .modal,
html[data-theme="ecology"] .modal-overlay,
html[data-theme="ecology"] .overlay,
html[data-theme="ecology"] .lightbox {
    --pb-modal-overlay: rgba(15,15,20,.50);
}
html[data-theme="ecology"] .modal-content,
html[data-theme="ecology"] .popup-content,
html[data-theme="ecology"] .dialog-content {
    background: var(--pb-surface) !important;
    color: var(--pb-text) !important;
    border-color: var(--pb-border) !important;
}
html[data-theme="ecology"] .btn-azienda {
    background: #172019 !important;
    color: #FFFFFF !important;
}
html[data-theme="ecology"] button:not(.submit):not(.btn-cittadino):not(.pink-btn):not(.pb-custom-select-option) {
    border-color: var(--pb-border);
}
html[data-theme="ecology"] .slogan,
html[data-theme="ecology"] .nav-link.active i,
html[data-theme="ecology"] .composer-action i,
html[data-theme="ecology"] .icon-btn:hover {
    color: var(--pb-accent) !important;
}
html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
    background: #FFFFFF !important;
    color: #172019 !important;
    border-color: #BFCFBA !important;
    box-shadow: 0 8px 26px rgba(45,70,48,.18) !important;
}
html[data-theme="ecology"] #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
    background: #FFFFFF !important;
    color: #172019 !important;
    border-color: #BFCFBA !important;
    box-shadow: 0 20px 50px rgba(45,70,48,.20) !important;
}
html[data-theme="ecology"] #pb-theme-control .pb-theme-option {
    color: #334036 !important;
}
html[data-theme="ecology"] #pb-theme-control .pb-theme-option:hover {
    background: #E7EDE1 !important;
}
#pb-theme-control .pb-theme-option.active,
html[data-theme="ecology"] #pb-theme-control .pb-theme-option.active {
    background: #FF3399 !important;
    color: #FFFFFF !important;
}
html[data-theme="ecology"],
html[data-theme="ecology"] body,
html[data-theme="ecology"] .social-home {
    background: #F2F5EE !important;
    color: #172019 !important;
}
html[data-theme="ecology"] .social-topbar {
    background: rgba(255,255,255,.97) !important;
    border-bottom-color: #CBD7C5 !important;
    box-shadow: 0 4px 18px rgba(45,70,48,.06) !important;
}
html[data-theme="ecology"] .brand,
html[data-theme="ecology"] .brand span,
html[data-theme="ecology"] .top-actions,
html[data-theme="ecology"] .top-actions a {
    color: #172019 !important;
}
html[data-theme="ecology"] .panel,
html[data-theme="ecology"] .sidebar,
html[data-theme="ecology"] .composer,
html[data-theme="ecology"] .experience-post,
html[data-theme="ecology"] .right-panel,
html[data-theme="ecology"] .mobile-discover,
html[data-theme="ecology"] .mobile-live-explore .panel,
html[data-theme="ecology"] .mobile-dynamic-explore .panel,
html[data-theme="ecology"] .mobile-summary-three .panel {
    background: #FFFFFF !important;
    color: #172019 !important;
    border-color: #CBD7C5 !important;
    box-shadow: 0 10px 28px rgba(45,70,48,.06) !important;
}
html[data-theme="ecology"] h1,
html[data-theme="ecology"] h2,
html[data-theme="ecology"] h3,
html[data-theme="ecology"] h4,
html[data-theme="ecology"] .side-profile strong,
html[data-theme="ecology"] .feed-heading,
html[data-theme="ecology"] .feed-heading h3,
html[data-theme="ecology"] .post-author,
html[data-theme="ecology"] .post-author-link,
html[data-theme="ecology"] .node-title,
html[data-theme="ecology"] .node-title-link,
html[data-theme="ecology"] .right-live-name,
html[data-theme="ecology"] .mobile-live-card-title,
html[data-theme="ecology"] .mobile-summary-card-title,
html[data-theme="ecology"] .comment-author,
html[data-theme="ecology"] .comment-author-link,
html[data-theme="ecology"] .guest-author,
html[data-theme="ecology"] .attach-node-picker-item strong,
html[data-theme="ecology"] .experience-dialog-head h2 {
    color: #172019 !important;
}
html[data-theme="ecology"] .post-text,
html[data-theme="ecology"] .guest-text,
html[data-theme="ecology"] .manifesto,
html[data-theme="ecology"] .comment-text,
html[data-theme="ecology"] .comment-body {
    color: #334036 !important;
}
html[data-theme="ecology"] .account-type,
html[data-theme="ecology"] .welcome-card p,
html[data-theme="ecology"] .post-meta,
html[data-theme="ecology"] .post-location,
html[data-theme="ecology"] .right-live-title,
html[data-theme="ecology"] .right-live-meta,
html[data-theme="ecology"] .right-live-empty,
html[data-theme="ecology"] .mobile-live-title,
html[data-theme="ecology"] .mobile-live-card-meta,
html[data-theme="ecology"] .mobile-summary-card-head,
html[data-theme="ecology"] .mobile-summary-card-meta,
html[data-theme="ecology"] .comment-meta,
html[data-theme="ecology"] .comment-char-row,
html[data-theme="ecology"] .guest-date,
html[data-theme="ecology"] .guest-place,
html[data-theme="ecology"] .manual-tags-note,
html[data-theme="ecology"] .node-subject-help,
html[data-theme="ecology"] .media-selected-meta,
html[data-theme="ecology"] .report-note {
    color: #647064 !important;
}
html[data-theme="ecology"] .post-node-row,
html[data-theme="ecology"] .selected-node,
html[data-theme="ecology"] .node-subject-panel {
    background: #E7EDE1 !important;
    border-color: #CBD7C5 !important;
    color: #172019 !important;
}
html[data-theme="ecology"] .node-title,
html[data-theme="ecology"] .node-title-link {
    color: #172019 !important;
}
html[data-theme="ecology"] .node-title-link:hover {
    color: #FF3399 !important;
}
html[data-theme="ecology"] .node-tag {
    color: #d91f7f !important;
}
html[data-theme="ecology"] .vote-pink {
    background: #FF3399 !important;
    color: #FFFFFF !important;
}
html[data-theme="ecology"] .vote-black {
    background: #000000 !important;
    color: #FFFFFF !important;
    border-color: #555 !important;
}
html[data-theme="ecology"] .post-actions {
    border-top-color: #DCE5D7 !important;
}
html[data-theme="ecology"] .post-action {
    color: #647064 !important;
}
html[data-theme="ecology"] .post-action:hover,
html[data-theme="ecology"] .post-action.active,
html[data-theme="ecology"] .post-action.share-success {
    color: #FF3399 !important;
}
html[data-theme="ecology"] .post-action .share-count,
html[data-theme="ecology"] .experience-like-count,
html[data-theme="ecology"] .comment-count {
    color: #647064 !important;
}
html[data-theme="ecology"] .post-menu-btn {
    background: #E7EDE1 !important;
    color: #647064 !important;
}
html[data-theme="ecology"] .post-menu-btn:hover {
    background: #e5e5ea !important;
    color: #172019 !important;
}
html[data-theme="ecology"] .post-menu {
    background: #FFFFFF !important;
    color: #334036 !important;
    border-color: #CBD7C5 !important;
    box-shadow: 0 16px 40px rgba(45,70,48,.15) !important;
}
html[data-theme="ecology"] .post-menu a,
html[data-theme="ecology"] .post-menu button {
    color: #334036 !important;
}
html[data-theme="ecology"] .post-menu a:hover,
html[data-theme="ecology"] .post-menu button:hover {
    background: #E7EDE1 !important;
}
html[data-theme="ecology"] .post-menu .danger {
    color: #c62f3c !important;
}
html[data-theme="ecology"] .comments-panel {
    background: #F2F5EE !important;
    border-top-color: #CBD7C5 !important;
    color: #334036 !important;
}
html[data-theme="ecology"] .comment-textarea {
    background: #FFFFFF !important;
    color: #172019 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .comment-card,
html[data-theme="ecology"] .comment-bubble,
html[data-theme="ecology"] .comment-content {
    color: #334036 !important;
}
html[data-theme="ecology"] .comment-menu,
html[data-theme="ecology"] .comment-mention-results {
    background: #FFFFFF !important;
    color: #334036 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .right-live-item,
html[data-theme="ecology"] .mobile-live-card,
html[data-theme="ecology"] .mobile-summary-card,
html[data-theme="ecology"] .mobile-discover-card {
    background: #F2F5EE !important;
    border-color: #CBD7C5 !important;
    color: #334036 !important;
}
html[data-theme="ecology"] .right-live-item:hover,
html[data-theme="ecology"] .mobile-live-card:hover,
html[data-theme="ecology"] .mobile-summary-card:hover {
    background: #E7EDE1 !important;
    border-color: #FF3399 !important;
}
html[data-theme="ecology"] .right-live-icon {
    background: #E7EDE1 !important;
    color: #FF3399 !important;
}
html[data-theme="ecology"] .right-live-name,
html[data-theme="ecology"] .mobile-live-card-title,
html[data-theme="ecology"] .mobile-summary-card-title {
    color: #172019 !important;
}
html[data-theme="ecology"] .right-live-meta,
html[data-theme="ecology"] .mobile-live-card-meta,
html[data-theme="ecology"] .mobile-summary-card-meta,
html[data-theme="ecology"] .mobile-summary-card-head {
    color: #647064 !important;
}
html[data-theme="ecology"] .mobile-live-card-score.black,
html[data-theme="ecology"] .mobile-summary-card-score.black,
html[data-theme="ecology"] .right-live-score.black {
    color: #536054 !important;
}
@media (max-width: 720px) {html[data-theme="ecology"] .mobile-nav {
        background: rgba(255,255,255,.98) !important;
        border-top: 1px solid #CBD7C5 !important;
        box-shadow: 0 -8px 24px rgba(45,70,48,.09) !important;
    }
html[data-theme="ecology"] .mobile-nav a {
        color: #647064 !important;
        opacity: 1 !important;
    }
html[data-theme="ecology"] .mobile-nav a i,
    html[data-theme="ecology"] .mobile-nav a span {
        color: inherit !important;
    }
html[data-theme="ecology"] .mobile-nav a.active,
    html[data-theme="ecology"] .mobile-nav a.active i,
    html[data-theme="ecology"] .mobile-nav a.active span,
    html[data-theme="ecology"] .mobile-nav a.has-unread-messages {
        color: #FF3399 !important;
    }}
html[data-theme="ecology"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="ecology"] textarea,
html[data-theme="ecology"] select,
html[data-theme="ecology"] .search-box input,
html[data-theme="ecology"] .composer-input,
html[data-theme="ecology"] .pb-custom-select-trigger {
    background: #E7EDE1 !important;
    color: #172019 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] input::placeholder,
html[data-theme="ecology"] textarea::placeholder {
    color: #788478 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] .global-search-results,
html[data-theme="ecology"] .node-results,
html[data-theme="ecology"] .node-subject-results,
html[data-theme="ecology"] .results,
html[data-theme="ecology"] .mention-autocomplete-results,
html[data-theme="ecology"] .location-autocomplete-results,
html[data-theme="ecology"] .pb-custom-select-menu {
    background: #FFFFFF !important;
    color: #334036 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .result,
html[data-theme="ecology"] .node-result,
html[data-theme="ecology"] .node-subject-result,
html[data-theme="ecology"] .mention-result,
html[data-theme="ecology"] .location-autocomplete-item,
html[data-theme="ecology"] .pb-custom-select-option {
    color: #334036 !important;
}
html[data-theme="ecology"] .result:hover,
html[data-theme="ecology"] .node-result:hover,
html[data-theme="ecology"] .node-subject-result:hover,
html[data-theme="ecology"] .mention-result:hover,
html[data-theme="ecology"] .location-autocomplete-item:hover,
html[data-theme="ecology"] .pb-custom-select-option:hover {
    background: #E7EDE1 !important;
}
html[data-theme="ecology"] .experience-dialog,
html[data-theme="ecology"] .report-dialog,
html[data-theme="ecology"] .attach-node-picker-dialog {
    background: #FFFFFF !important;
    color: #172019 !important;
    border-color: #CBD7C5 !important;
    box-shadow: 0 24px 70px rgba(45,70,48,.18) !important;
}
html[data-theme="ecology"] .experience-dialog-head,
html[data-theme="ecology"] .report-head,
html[data-theme="ecology"] .attach-node-picker-head {
    border-color: #DCE5D7 !important;
}
html[data-theme="ecology"] .attach-node-picker-item {
    background: #E7EDE1 !important;
    color: #172019 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .attach-node-picker-close,
html[data-theme="ecology"] .report-close,
html[data-theme="ecology"] .modal-close {
    background: #E7EDE1 !important;
    color: #536054 !important;
}
html[data-theme="ecology"] .guest-post,
html[data-theme="ecology"] .guest-lock-box {
    background: #FFFFFF !important;
    color: #334036 !important;
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .guest-text,
html[data-theme="ecology"] .guest-author {
    color: #334036 !important;
}
html[data-theme="ecology"] .guest-date,
html[data-theme="ecology"] .guest-place,
html[data-theme="ecology"] .guest-lock-box p {
    color: #647064 !important;
}
html[data-theme="ecology"] .guest-node {
    border-color: #BFCFBA !important;
    color: #334036 !important;
}
html[data-theme="ecology"] .guest-node.black .guest-vote {
    color: #334036 !important;
}
html[data-theme="ecology"] .guest-actions {
    border-top-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .guest-actions button {
    color: #647064 !important;
}
html[data-theme="ecology"] .publish-btn,
html[data-theme="ecology"] .btn-cittadino,
html[data-theme="ecology"] .comment-submit,
html[data-theme="ecology"] .vote-pink,
html[data-theme="ecology"] .notification-badge,
html[data-theme="ecology"] .mobile-notification-badge {
    color: #FFFFFF !important;
}
html[data-theme="ecology"] footer,
html[data-theme="ecology"] .footer,
html[data-theme="ecology"] .site-footer {
    background: #FFFFFF !important;
    color: #536054 !important;
    border-top-color: #CBD7C5 !important;
}
html[data-theme="ecology"] footer h1,
html[data-theme="ecology"] footer h2,
html[data-theme="ecology"] footer h3,
html[data-theme="ecology"] footer h4,
html[data-theme="ecology"] footer h5,
html[data-theme="ecology"] footer h6,
html[data-theme="ecology"] .footer h1,
html[data-theme="ecology"] .footer h2,
html[data-theme="ecology"] .footer h3,
html[data-theme="ecology"] .footer h4,
html[data-theme="ecology"] .site-footer h1,
html[data-theme="ecology"] .site-footer h2,
html[data-theme="ecology"] .site-footer h3,
html[data-theme="ecology"] .site-footer h4 {
    color: #172019 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] footer p,
html[data-theme="ecology"] footer span,
html[data-theme="ecology"] footer li,
html[data-theme="ecology"] .footer p,
html[data-theme="ecology"] .footer span,
html[data-theme="ecology"] .footer li,
html[data-theme="ecology"] .site-footer p,
html[data-theme="ecology"] .site-footer span,
html[data-theme="ecology"] .site-footer li {
    color: #647064 !important;
}
html[data-theme="ecology"] footer a,
html[data-theme="ecology"] .footer a,
html[data-theme="ecology"] .site-footer a {
    color: #536054 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] footer a:hover,
html[data-theme="ecology"] .footer a:hover,
html[data-theme="ecology"] .site-footer a:hover {
    color: #FF3399 !important;
}
html[data-theme="ecology"] footer strong,
html[data-theme="ecology"] footer b,
html[data-theme="ecology"] .footer strong,
html[data-theme="ecology"] .footer b,
html[data-theme="ecology"] .site-footer strong,
html[data-theme="ecology"] .site-footer b {
    color: #172019 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] footer hr,
html[data-theme="ecology"] .footer hr,
html[data-theme="ecology"] .site-footer hr {
    border-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .footer-bottom,
html[data-theme="ecology"] .footer-copy,
html[data-theme="ecology"] .footer-copyright,
html[data-theme="ecology"] footer small {
    color: #647064 !important;
}
html[data-theme="ecology"] .global-search-results {
    background:#FFFFFF !important;
    border-color:#CBD7C5 !important;
    color:#172019 !important;
}
html[data-theme="ecology"] .global-search-section + .global-search-section {
    border-top-color:#DCE5D7 !important;
}
html[data-theme="ecology"] .global-search-label {
    color:#647064 !important;
}
html[data-theme="ecology"] .global-search-item {
    background:#FFFFFF !important;
    color:#334036 !important;
}
html[data-theme="ecology"] .global-search-item:hover,
html[data-theme="ecology"] .global-search-item.active {
    background:#E7EDE1 !important;
    color:#172019 !important;
}
html[data-theme="ecology"] .global-search-item:hover .global-search-title,
html[data-theme="ecology"] .global-search-item.active .global-search-title {
    color:#172019 !important;
}
html[data-theme="ecology"] .global-search-item:hover .global-search-meta,
html[data-theme="ecology"] .global-search-item.active .global-search-meta {
    color:#647064 !important;
}
html[data-theme="ecology"] .global-search-title {
    color:#334036 !important;
}
html[data-theme="ecology"] .global-search-meta,
html[data-theme="ecology"] .global-search-empty,
html[data-theme="ecology"] .global-search-loading {
    color:#647064 !important;
}
html[data-theme="ecology"] .global-search-icon {
    background:#E7EDE1 !important;
    color:#FF3399 !important;
}
html[data-theme="ecology"] .avatar-mini {
    /*
     * Manteniamo intenzionalmente lo stesso anello
     * del tema originale PINKBLCK.
     */
    border-color:#222 !important;
}
html[data-theme="ecology"] .avatar-mini:hover,
html[data-theme="ecology"] .avatar-mini:focus-visible {
    border-color:#FF3399 !important;
    box-shadow:
        0 0 0 3px rgba(255,51,153,.16),
        0 6px 18px rgba(45,70,48,.12) !important;
}
html[data-theme="dark"] .avatar-verified-badge,
html:not([data-theme="light"]):not([data-theme="ecology"]) .avatar-verified-badge {
    border-color:#000000 !important;
}
html[data-theme="ecology"] .avatar-verified-badge {
    border-color:#FFFFFF !important;
}
html[data-theme="ecology"] .pb-footer {
    background: #FFFFFF !important;
    color: #536054 !important;
    border-top-color: #CBD7C5 !important;
}
html[data-theme="ecology"] .pb-footer .pb-footer-brand {
    color: #172019 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] .pb-footer h3 {
    color: #172019 !important;
    opacity: 1 !important;
}
html[data-theme="ecology"] .pb-footer p {
    color: #536054 !important;
}
html[data-theme="ecology"] .pb-footer a {
    color: #536054 !important;
}
html[data-theme="ecology"] .pb-footer a:hover {
    color: #FF3399 !important;
}
html[data-theme="ecology"] .pb-footer-bottom {
    border-top-color: #CBD7C5 !important;
    color: #536054 !important;
}
html[data-theme="ecology"] .pb-footer-bottom strong {
    color: #172019 !important;
}
html[data-theme="ecology"] .pb-footer-langs span {
    color: #536054 !important;
}
html[data-theme="ecology"] .pb-footer-langs a {
    color: #536054 !important;
}
html[data-theme="ecology"] .pb-footer-langs a.active {
    color: #FF3399 !important;
    font-weight: 900 !important;
}
html[data-theme="ecology"] body,
html[data-theme="ecology"] main,
html[data-theme="ecology"] .wrap,
html[data-theme="ecology"] .legal-wrap,
html[data-theme="ecology"] .container {
    color:#172019 !important;
}
html[data-theme="ecology"] .wrap,
html[data-theme="ecology"] .legal-wrap {
    background:transparent !important;
}
html[data-theme="ecology"] .hero,
html[data-theme="ecology"] .section,
html[data-theme="ecology"] .notice-box,
html[data-theme="ecology"] .result-box,
html[data-theme="ecology"] .notice,
html[data-theme="ecology"] .faq details,
html[data-theme="ecology"] .contact,
html[data-theme="ecology"] .profile-card,
html[data-theme="ecology"] .card,
html[data-theme="ecology"] .box {
    background:#FFFFFF !important;
    color:#334036 !important;
    border-color:#CBD7C5 !important;
}
html[data-theme="ecology"] .hero h1,
html[data-theme="ecology"] .hero h2,
html[data-theme="ecology"] .section h1,
html[data-theme="ecology"] .section h2,
html[data-theme="ecology"] .section h3,
html[data-theme="ecology"] .notice-box h1,
html[data-theme="ecology"] .notice-box h2,
html[data-theme="ecology"] .faq summary,
html[data-theme="ecology"] .contact strong,
html[data-theme="ecology"] .top .brand,
html[data-theme="ecology"] .brand {
    color:#172019 !important;
}
html[data-theme="ecology"] .lead,
html[data-theme="ecology"] .intro,
html[data-theme="ecology"] .updated,
html[data-theme="ecology"] .message,
html[data-theme="ecology"] .spam-warning,
html[data-theme="ecology"] .section p,
html[data-theme="ecology"] .faq p,
html[data-theme="ecology"] .contact span,
html[data-theme="ecology"] .details,
html[data-theme="ecology"] .meta,
html[data-theme="ecology"] .date,
html[data-theme="ecology"] .place {
    color:#647064 !important;
}
html[data-theme="ecology"] .spam-warning,
html[data-theme="ecology"] .updated,
html[data-theme="ecology"] .notice {
    background:#E7EDE1 !important;
    border-color:#CBD7C5 !important;
}
html[data-theme="ecology"] .langs,
html[data-theme="ecology"] .legal-links {
    color:#536054 !important;
}
html[data-theme="ecology"] .langs a,
html[data-theme="ecology"] .legal-links a {
    color:#536054 !important;
    border-color:#CBD7C5 !important;
}
html[data-theme="ecology"] .langs a.active,
html[data-theme="ecology"] .legal-links a:hover {
    color:#FF3399 !important;
}
html[data-theme="ecology"] .btn-home,
html[data-theme="ecology"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn) {
    background:#E7EDE1 !important;
    color:#334036 !important;
    border-color:#CBD7C5 !important;
}
html[data-theme="ecology"] .btn-home:hover,
html[data-theme="ecology"] .btn:not(.primary):not(.btn-cittadino):not(.publish-btn):hover {
    color:#FF3399 !important;
    border-color:#FF3399 !important;
    background:#FFFFFF !important;
}

/* Pagine di avviso e verifica account */
html[data-theme="ecology"] .btn-action.btn-fucsia {
    background:#FF3399 !important;
    color:#FFFFFF !important;
    border-color:#FF3399 !important;
}

html[data-theme="ecology"] .btn-action.btn-fucsia:hover {
    background:#ff1a8c !important;
    color:#FFFFFF !important;
    border-color:#ff1a8c !important;
}

html[data-theme="ecology"] .btn-action.btn-dark {
    background:#315B3A !important;
    color:#FFFFFF !important;
    border-color:#315B3A !important;
}

html[data-theme="ecology"] .btn-action.btn-dark:hover {
    background:#26492E !important;
    color:#FFFFFF !important;
    border-color:#26492E !important;
}
html[data-theme="ecology"] .pb-footer {
    background:#FFFFFF !important;
    color:#536054 !important;
    border-top-color:#CBD7C5 !important;
}
html[data-theme="ecology"] .pb-footer .pb-footer-brand,
html[data-theme="ecology"] .pb-footer h3,
html[data-theme="ecology"] .pb-footer-bottom strong {
    color:#172019 !important;
}
html[data-theme="ecology"] .pb-footer p,
html[data-theme="ecology"] .pb-footer a,
html[data-theme="ecology"] .pb-footer-bottom,
html[data-theme="ecology"] .pb-footer-langs span {
    color:#536054 !important;
}
html[data-theme="ecology"] .pb-footer a:hover,
html[data-theme="ecology"] .pb-footer-langs a.active {
    color:#FF3399 !important;
}
html[data-theme="ecology"] .pb-footer-bottom {
    border-top-color:#CBD7C5 !important;
}
html:not([data-theme="light"]):not([data-theme="ecology"]) .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .sidebar,
html:not([data-theme="light"]):not([data-theme="ecology"]) .composer,
html:not([data-theme="light"]):not([data-theme="ecology"]) .feed-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .post-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .experience-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .experience-post,
html:not([data-theme="light"]):not([data-theme="ecology"]) .right-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .right-panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .notification-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .node-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .profile-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .hero,
html:not([data-theme="light"]):not([data-theme="ecology"]) .notice-box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .faq details,
html:not([data-theme="light"]):not([data-theme="ecology"]) .contact,
html:not([data-theme="light"]):not([data-theme="ecology"]) .guest-post,
html:not([data-theme="light"]):not([data-theme="ecology"]) .guest-lock-box,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-discover,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-live-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-summary-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-discover-card,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-live-explore .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-dynamic-explore .panel,
html:not([data-theme="light"]):not([data-theme="ecology"]) .mobile-summary-three .panel {
    border-color: var(--pb-accent) !important;
}
html[data-theme="dark"],
html:not([data-theme="light"]):not([data-theme="ecology"]) {
    --pb-dark-card-border:#FF3399;
}
html[data-theme="dark"] :is(
    .panel,.card,.box,.sidebar,.composer,.feed-card,.post-card,.experience-card,
    .experience-post,.right-card,.right-panel,.notification-card,.node-card,
    .profile-card,.hero,.section,.notice-box,.notice,.contact,.guest-post,
    .guest-lock-box,.mobile-discover,.mobile-live-card,.mobile-summary-card,
    .mobile-discover-card,.experience-dialog,.report-dialog,.attach-node-picker-dialog,
    .node-shell,.node-panel,.profile-panel,.profile-box,.content-card,.legal-card,
    .faq details
),
html:not([data-theme="light"]):not([data-theme="ecology"]) :is(
    .panel,.card,.box,.sidebar,.composer,.feed-card,.post-card,.experience-card,
    .experience-post,.right-card,.right-panel,.notification-card,.node-card,
    .profile-card,.hero,.section,.notice-box,.notice,.contact,.guest-post,
    .guest-lock-box,.mobile-discover,.mobile-live-card,.mobile-summary-card,
    .mobile-discover-card,.experience-dialog,.report-dialog,.attach-node-picker-dialog,
    .node-shell,.node-panel,.profile-panel,.profile-box,.content-card,.legal-card,
    .faq details
) {
    border-color:#FF3399 !important;
}
html[data-theme="dark"] main :is(
    article, section[class], div[class*="card"], div[class*="panel"]
),
html:not([data-theme="light"]):not([data-theme="ecology"]) main :is(
    article, section[class], div[class*="card"], div[class*="panel"]
) {
    border-color:#FF3399 !important;
}
html[data-theme="dark"] .section,
html[data-theme="dark"] .section-wrap,
html[data-theme="dark"] .section-wrapper,
html[data-theme="dark"] .cards-section,
html[data-theme="dark"] .content-section,
html[data-theme="dark"] .results-section,
html[data-theme="dark"] .list-section,
html[data-theme="ecology"] .section,
html[data-theme="ecology"] .section-wrap,
html[data-theme="ecology"] .section-wrapper,
html[data-theme="ecology"] .cards-section,
html[data-theme="ecology"] .content-section,
html[data-theme="ecology"] .results-section,
html[data-theme="ecology"] .list-section {
    border:0 !important;
    border-color:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}
html[data-theme="dark"] section:has(> .section-head),
html[data-theme="dark"] section:has(> .grid),
html[data-theme="dark"] section:has(.grid > .card),
html[data-theme="dark"] section:has(.grid > .profile-card-click),
html[data-theme="dark"] section:has(.node-card),
html[data-theme="dark"] section:has(.experience-card),
html[data-theme="dark"] section:has(.exp-card),
html[data-theme="ecology"] section:has(> .section-head),
html[data-theme="ecology"] section:has(> .grid),
html[data-theme="ecology"] section:has(.grid > .card),
html[data-theme="ecology"] section:has(.grid > .profile-card-click),
html[data-theme="ecology"] section:has(.node-card),
html[data-theme="ecology"] section:has(.experience-card),
html[data-theme="ecology"] section:has(.exp-card) {
    border:0 !important;
    border-color:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}
html[data-theme="dark"] .hero,
html[data-theme="ecology"] .hero {
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* ============================================================
   PINKBLCK · ECOLOGY V21 · SAFETY NET LEGGIBILITÀ
   Ultimo livello: elimina le superfici scure residue nelle UI.
   Non modifica media, immagini/video né il pulsante BLACK.
   ============================================================ */

html[data-theme="ecology"] {
    color-scheme: light;
}

html[data-theme="ecology"] body {
    background:#F2F5EE !important;
    color:#172019 !important;
}

/* Contenitori UI che ricorrono nelle pagine PINKBLCK */
html[data-theme="ecology"] :is(
    .settings-card,.settings-box,.settings-panel,.settings-section,
    .account-card,.account-box,.account-panel,.account-section,
    .profile-info,.profile-info-box,.profile-section,.profile-content,
    .info-card,.info-box,.info-panel,.info-section,
    .form-card,.form-box,.form-panel,.form-section,
    .content-box,.content-panel,.content-section,
    .list-box,.list-panel,.list-card,
    .stat-card,.stats-card,.stats-box,.stats-panel,
    .action-card,.actions-card,.actions-box,.actions-panel,
    .privacy-card,.privacy-box,.privacy-panel,
    .security-card,.security-box,.security-panel,
    .password-card,.password-box,.password-panel,
    .message-card,.message-box,.message-panel,
    .conversation-card,.conversation-box,.conversation-panel,
    .notification-box,.notification-panel,
    .node-info,.node-box,.node-content,
    .experience-box,.experience-panel,.experience-content,
    .search-panel,.search-box,.search-container,
    .filter-box,.filter-panel,.filters,
    .menu-box,.menu-panel,
    .dialog,.dialog-box,.popup,.popup-box,
    .sheet,.sheet-content,
    details
){
    background:#FFFFFF !important;
    color:#172019 !important;
    border-color:#CBD7C5 !important;
}

/* Barre, righe e blocchi secondari */
html[data-theme="ecology"] :is(
    .toolbar,.controls,.control-row,.action-row,.settings-row,
    .profile-row,.info-row,.meta-row,.field-row,
    .item-row,.list-item,.menu-item,.dropdown-item,
    .search-item,.result-item,.notification-item,
    .conversation-item,.message-item,
    .empty-state,.empty-box,.helper-box,.hint-box
){
    color:#334036 !important;
    border-color:#DCE5D7 !important;
}

/* Controlli: nessun input nero con testo scuro o viceversa */
html[data-theme="ecology"] input:not([type="radio"]):not([type="checkbox"]):not([type="range"]),
html[data-theme="ecology"] textarea,
html[data-theme="ecology"] select,
html[data-theme="ecology"] [contenteditable="true"]{
    background:#FFFFFF !important;
    color:#172019 !important;
    border-color:#CBD7C5 !important;
}

html[data-theme="ecology"] input::placeholder,
html[data-theme="ecology"] textarea::placeholder{
    color:#788478 !important;
    opacity:1 !important;
}

html[data-theme="ecology"] input:focus,
html[data-theme="ecology"] textarea:focus,
html[data-theme="ecology"] select:focus,
html[data-theme="ecology"] [contenteditable="true"]:focus{
    border-color:#3F7D4A !important;
    box-shadow:0 0 0 3px rgba(63,125,74,.12) !important;
    outline:none !important;
}

/* Menu e pannelli flottanti */
html[data-theme="ecology"] :is(
    [role="dialog"],[role="menu"],[role="listbox"],
    .modal-content,.popup-content,.dialog-content,
    .dropdown-menu,.context-menu,.autocomplete,
    .suggestions,.suggestion-list,.results,.search-results
){
    background-color:#FFFFFF !important;
    color:#172019 !important;
    border-color:#CBD7C5 !important;
}

/* Testi generici frequentemente hardcoded bianchi nei componenti scuri */
html[data-theme="ecology"] :is(
    .label,.field-label,.form-label,.setting-label,
    .heading,.card-title,.panel-title,.box-title,
    .username,.author-name,.profile-name
){
    color:#172019 !important;
}

html[data-theme="ecology"] :is(
    .description,.help,.helper,.hint,.note,
    .secondary,.caption,.timestamp,.time,.status-text
){
    color:#647064 !important;
}

/* Elementi volutamente scuri: BLACK e media restano intatti */
html[data-theme="ecology"] :is(
    .vote-black,.black-button,.btn-black
){
    background:#000000 !important;
    color:#FFFFFF !important;
    border-color:#444444 !important;
}

/* Il brand e le CTA PINK restano PINKBLCK */
html[data-theme="ecology"] :is(
    .pink-btn,.btn-cittadino,.publish-btn,.btn-submit,
    .comment-submit,.vote-pink
){
    color:#FFFFFF !important;
}\n\n/* ============================================================\n   PINKBLCK · TEMA SCURO SOFT V24\n   Alleggerisce il nero assoluto mantenendo il carattere dark.\n   Sistema ed Ecology restano invariati.\n   ============================================================ */\n\nhtml[data-theme=\"dark\"]{\n    color-scheme:dark;\n    --pb-bg:#111214;\n    --pb-surface:#18191c;\n    --pb-surface-2:#202226;\n    --pb-surface-3:#27292e;\n    --pb-overlay:rgba(20,21,24,.97);\n    --pb-text:#f5f5f6;\n    --pb-text-soft:#d7d7da;\n    --pb-muted:#aaaab2;\n    --pb-muted-2:#85858e;\n    --pb-border:#303238;\n    --pb-border-soft:#292b30;\n    --pb-shadow:0 14px 40px rgba(0,0,0,.22);\n    --pb-scroll-track:#202226;\n}\n\nhtml[data-theme=\"dark\"],\nhtml[data-theme=\"dark\"] body,\nhtml[data-theme=\"dark\"] .social-home{\n    background:#111214!important;\n    color:#f5f5f6!important;\n}\n\nhtml[data-theme=\"dark\"] .social-topbar,\nhtml[data-theme=\"dark\"] .topbar,\nhtml[data-theme=\"dark\"] .top{\n    background:rgba(20,21,24,.97)!important;\n    border-color:#2b2d32!important;\n    box-shadow:0 4px 18px rgba(0,0,0,.16)!important;\n}\n\nhtml[data-theme=\"dark\"] .panel,\nhtml[data-theme=\"dark\"] .sidebar,\nhtml[data-theme=\"dark\"] .composer,\nhtml[data-theme=\"dark\"] .experience-post,\nhtml[data-theme=\"dark\"] .post,\nhtml[data-theme=\"dark\"] .post-card,\nhtml[data-theme=\"dark\"] .feed-card,\nhtml[data-theme=\"dark\"] .right-panel,\nhtml[data-theme=\"dark\"] .right-card,\nhtml[data-theme=\"dark\"] .hero,\nhtml[data-theme=\"dark\"] .node-hero,\nhtml[data-theme=\"dark\"] .notification-card,\nhtml[data-theme=\"dark\"] .comment-item,\nhtml[data-theme=\"dark\"] .comment-card,\nhtml[data-theme=\"dark\"] .guest-post,\nhtml[data-theme=\"dark\"] .guest-lock-box,\nhtml[data-theme=\"dark\"] .mobile-discover,\nhtml[data-theme=\"dark\"] .mobile-live-explore .panel,\nhtml[data-theme=\"dark\"] .mobile-dynamic-explore .panel,\nhtml[data-theme=\"dark\"] .mobile-summary-three .panel{\n    background:#18191c!important;\n    border-color:#303238!important;\n    color:#f5f5f6!important;\n    box-shadow:0 10px 28px rgba(0,0,0,.16)!important;\n}\n\nhtml[data-theme=\"dark\"] .post-node-row,\nhtml[data-theme=\"dark\"] .selected-node,\nhtml[data-theme=\"dark\"] .node-subject-panel,\nhtml[data-theme=\"dark\"] .right-live-item,\nhtml[data-theme=\"dark\"] .mobile-live-card,\nhtml[data-theme=\"dark\"] .mobile-summary-card,\nhtml[data-theme=\"dark\"] .mobile-discover-card,\nhtml[data-theme=\"dark\"] .stat,\nhtml[data-theme=\"dark\"] .perspective-summary,\nhtml[data-theme=\"dark\"] .perspective-chip{\n    background:#202226!important;\n    border-color:#34363c!important;\n}\n\nhtml[data-theme=\"dark\"] input:not([type=\"radio\"]):not([type=\"checkbox\"]),\nhtml[data-theme=\"dark\"] textarea,\nhtml[data-theme=\"dark\"] select,\nhtml[data-theme=\"dark\"] .search-box input,\nhtml[data-theme=\"dark\"] .composer-input,\nhtml[data-theme=\"dark\"] .pb-custom-select-trigger,\nhtml[data-theme=\"dark\"] .comment-textarea,\nhtml[data-theme=\"dark\"] .node-global-search input{\n    background:#202226!important;\n    color:#f5f5f6!important;\n    border-color:#36383f!important;\n}\n\nhtml[data-theme=\"dark\"] input::placeholder,\nhtml[data-theme=\"dark\"] textarea::placeholder{\n    color:#8f9099!important;\n    opacity:1!important;\n}\n\nhtml[data-theme=\"dark\"] .global-search-results,\nhtml[data-theme=\"dark\"] .node-results,\nhtml[data-theme=\"dark\"] .node-subject-results,\nhtml[data-theme=\"dark\"] .results,\nhtml[data-theme=\"dark\"] .mention-autocomplete-results,\nhtml[data-theme=\"dark\"] .location-autocomplete-results,\nhtml[data-theme=\"dark\"] .pb-custom-select-menu,\nhtml[data-theme=\"dark\"] .post-menu,\nhtml[data-theme=\"dark\"] .comment-menu,\nhtml[data-theme=\"dark\"] .comment-mention-results,\nhtml[data-theme=\"dark\"] .node-search-live-results{\n    background:#1d1f22!important;\n    color:#f5f5f6!important;\n    border-color:#34363c!important;\n    box-shadow:0 16px 40px rgba(0,0,0,.24)!important;\n}\n\nhtml[data-theme=\"dark\"] .global-search-item:hover,\nhtml[data-theme=\"dark\"] .global-search-item.active,\nhtml[data-theme=\"dark\"] .result:hover,\nhtml[data-theme=\"dark\"] .node-result:hover,\nhtml[data-theme=\"dark\"] .node-subject-result:hover,\nhtml[data-theme=\"dark\"] .mention-result:hover,\nhtml[data-theme=\"dark\"] .location-autocomplete-item:hover,\nhtml[data-theme=\"dark\"] .pb-custom-select-option:hover,\nhtml[data-theme=\"dark\"] .post-menu a:hover,\nhtml[data-theme=\"dark\"] .post-menu button:hover{\n    background:#292b30!important;\n}\n\nhtml[data-theme=\"dark\"] .modal-content,\nhtml[data-theme=\"dark\"] .popup-content,\nhtml[data-theme=\"dark\"] .dialog-content,\nhtml[data-theme=\"dark\"] .experience-dialog,\nhtml[data-theme=\"dark\"] .report-dialog,\nhtml[data-theme=\"dark\"] .attach-node-picker-dialog,\nhtml[data-theme=\"dark\"] .report-exp-dialog{\n    background:#1a1b1f!important;\n    color:#f5f5f6!important;\n    border-color:#34363c!important;\n    box-shadow:0 24px 70px rgba(0,0,0,.30)!important;\n}\n\nhtml[data-theme=\"dark\"] .comments-panel{\n    background:#151619!important;\n    border-color:#2c2e33!important;\n}\n\nhtml[data-theme=\"dark\"] footer,\nhtml[data-theme=\"dark\"] .footer,\nhtml[data-theme=\"dark\"] .site-footer,\nhtml[data-theme=\"dark\"] .pb-footer{\n    background:#151619!important;\n    border-color:#2c2e33!important;\n}\n\n@media(max-width:720px){\n    html[data-theme=\"dark\"] .mobile-nav{\n        background:rgba(21,22,25,.98)!important;\n        border-top-color:#303238!important;\n        box-shadow:0 -8px 24px rgba(0,0,0,.18)!important;\n    }\n}\n\nhtml[data-theme=\"dark\"] .icon-btn,\nhtml[data-theme=\"dark\"] .post-menu-btn,\nhtml[data-theme=\"dark\"] .report-exp-close,\nhtml[data-theme=\"dark\"] .modal-close,\nhtml[data-theme=\"dark\"] .attach-node-picker-close{\n    background:#24262a!important;\n    border-color:#34363c!important;\n    color:#c8c8ce!important;\n}\n\nhtml[data-theme=\"dark\"] .icon-btn:hover,\nhtml[data-theme=\"dark\"] .post-menu-btn:hover,\nhtml[data-theme=\"dark\"] .report-exp-close:hover,\nhtml[data-theme=\"dark\"] .modal-close:hover,\nhtml[data-theme=\"dark\"] .attach-node-picker-close:hover{\n    background:#2d2f35!important;\n    color:#FF3399!important;\n}\n\nhtml[data-theme=\"dark\"] .avatar-verified-badge,\nhtml[data-theme=\"dark\"] .post-avatar-verified,\nhtml[data-theme=\"dark\"] .guest-avatar-verified,\nhtml[data-theme=\"dark\"] .profile-avatar-verified,\nhtml[data-theme=\"dark\"] .explore-avatar-verified,\nhtml[data-theme=\"dark\"] .node-avatar-verified,\nhtml[data-theme=\"dark\"] .pb-mobile-verified-badge{\n    border-color:#18191c!important;\n}\n\nhtml[data-theme=\"dark\"] .vote-black,\nhtml[data-theme=\"dark\"] .vote.black,\nhtml[data-theme=\"dark\"] .guest-node.black .guest-vote{\n    background:#050506!important;\n    color:#fff!important;\n    border-color:#55585f!important;\n}\n

/* ============================================================
   PINKBLCK · TEMA SCURO SOFT V1
   Nero più morbido / grigio antracite per maggiore eleganza.
   Il rosa brand #FF3399 resta invariato.
   ============================================================ */
html[data-theme="dark"] {
    color-scheme: dark;
    --pb-bg: #18181b;
    --pb-surface: #222226;
    --pb-surface-2: #2a2a2f;
    --pb-surface-3: #313138;
    --pb-overlay: rgba(24,24,27,.96);
    --pb-text: #f5f5f7;
    --pb-text-soft: #dddde3;
    --pb-muted: #aaaab2;
    --pb-muted-2: #85858f;
    --pb-border: #3a3a42;
    --pb-border-soft: #303038;
    --pb-shadow: 0 14px 38px rgba(0,0,0,.24);
    --pb-scroll-track: #242429;
}
html[data-theme="dark"],
html[data-theme="dark"] body,
html[data-theme="dark"] .social-home,
html[data-theme="dark"] main,
html[data-theme="dark"] .page {
    background: #18181b !important;
    color: #f5f5f7 !important;
}
html[data-theme="dark"] .social-topbar {
    background: rgba(28,28,32,.97) !important;
    border-bottom-color: #35353c !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.16) !important;
}
html[data-theme="dark"] .panel,
html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .composer,
html[data-theme="dark"] .experience-post,
html[data-theme="dark"] .right-panel,
html[data-theme="dark"] .profile-card,
html[data-theme="dark"] .connections-card,
html[data-theme="dark"] .account-management-card,
html[data-theme="dark"] .youtube-channel-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .box,
html[data-theme="dark"] .section,
html[data-theme="dark"] .guest-post,
html[data-theme="dark"] .guest-lock-box,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .popup-content,
html[data-theme="dark"] .dialog-content,
html[data-theme="dark"] .experience-dialog,
html[data-theme="dark"] .report-dialog,
html[data-theme="dark"] .attach-node-picker-dialog {
    background: #222226 !important;
    color: #f5f5f7 !important;
    border-color: #3a3a42 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.18) !important;
}
html[data-theme="dark"] .info-item,
html[data-theme="dark"] .connection-box,
html[data-theme="dark"] .account-row,
html[data-theme="dark"] .post-node-row,
html[data-theme="dark"] .selected-node,
html[data-theme="dark"] .node-subject-panel,
html[data-theme="dark"] .right-live-item,
html[data-theme="dark"] .mobile-live-card,
html[data-theme="dark"] .mobile-summary-card,
html[data-theme="dark"] .mobile-discover-card,
html[data-theme="dark"] .comments-panel,
html[data-theme="dark"] .attach-node-picker-item {
    background: #2a2a2f !important;
    border-color: #3c3c44 !important;
    color: #f1f1f4 !important;
}
html[data-theme="dark"] input:not([type="radio"]):not([type="checkbox"]),
html[data-theme="dark"] textarea,
html[data-theme="dark"] select,
html[data-theme="dark"] .search-box input,
html[data-theme="dark"] .composer-input,
html[data-theme="dark"] .pb-custom-select-trigger {
    background: #2a2a2f !important;
    color: #f5f5f7 !important;
    border-color: #414149 !important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color:#96969f !important; opacity:1 !important; }
html[data-theme="dark"] .global-search-results,
html[data-theme="dark"] .post-menu,
html[data-theme="dark"] .comment-menu,
html[data-theme="dark"] .comment-mention-results,
html[data-theme="dark"] .node-results,
html[data-theme="dark"] .node-subject-results,
html[data-theme="dark"] .results,
html[data-theme="dark"] .mention-autocomplete-results,
html[data-theme="dark"] .location-autocomplete-results,
html[data-theme="dark"] .pb-custom-select-menu,
html[data-theme="dark"] #pb-theme-control.pb-theme-top-fixed .pb-theme-menu {
    background: #242429 !important;
    color: #f3f3f6 !important;
    border-color: #3d3d45 !important;
    box-shadow: 0 18px 45px rgba(0,0,0,.28) !important;
}
html[data-theme="dark"] .global-search-item:hover,
html[data-theme="dark"] .global-search-item.active,
html[data-theme="dark"] .result:hover,
html[data-theme="dark"] .node-result:hover,
html[data-theme="dark"] .node-subject-result:hover,
html[data-theme="dark"] .mention-result:hover,
html[data-theme="dark"] .location-autocomplete-item:hover,
html[data-theme="dark"] .pb-custom-select-option:hover,
html[data-theme="dark"] .post-menu a:hover,
html[data-theme="dark"] .post-menu button:hover { background:#303036 !important; }
html[data-theme="dark"] .welcome,
html[data-theme="dark"] .account-type,
html[data-theme="dark"] .post-meta,
html[data-theme="dark"] .post-location,
html[data-theme="dark"] .right-live-meta,
html[data-theme="dark"] .mobile-live-card-meta,
html[data-theme="dark"] .mobile-summary-card-meta,
html[data-theme="dark"] .guest-date,
html[data-theme="dark"] .guest-place,
html[data-theme="dark"] .info-label,
html[data-theme="dark"] .connection-label,
html[data-theme="dark"] .youtube-channel-status,
html[data-theme="dark"] .account-row-desc { color:#a6a6af !important; }
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .btn-account,
html[data-theme="dark"] .youtube-channel-link.secondary {
    background:#2a2a2f !important; color:#f3f3f6 !important; border-color:#42424a !important;
}
html[data-theme="dark"] .btn-secondary:hover,
html[data-theme="dark"] .btn-account:hover,
html[data-theme="dark"] .youtube-channel-link.secondary:hover { border-color:#FF3399 !important; color:#FF3399 !important; }
@media (max-width:720px){
    html[data-theme="dark"] .mobile-nav { background:rgba(31,31,35,.98) !important; border-top-color:#383840 !important; box-shadow:0 -8px 24px rgba(0,0,0,.18) !important; }
    html[data-theme="dark"] .mobile-nav a { color:#aaaab2 !important; }
}
html[data-theme="dark"] footer,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .pb-footer { background:#202024 !important; color:#aaaab2 !important; border-top-color:#36363d !important; }
html[data-theme="dark"] .avatar-verified-badge { border-color:#1c1c20 !important; }
html[data-theme="dark"] #pb-theme-control.pb-theme-top-fixed .pb-theme-button {
    background:#29292e !important; color:#f5f5f7 !important; border-color:#44444c !important; box-shadow:0 8px 24px rgba(0,0,0,.22) !important;
}

