
/*********************
* STILI AREA PRIVATA
**********************/
.elementor-widget-private_area_wpdm .custom-private-area-wrapper {
    display:flex;       
}
.elementor-widget-private_area_wpdm .sidebar {
    width:30%;
    margin-right: 20px;
}
.elementor-widget-private_area_wpdm .sidebar h1 {
    margin: 0 0 20px 0;
}
.elementor-widget-private_area_wpdm .sidebar .user-name {
    margin: 0 0 5px;
}
.elementor-widget-private_area_wpdm .sidebar .user-role {
    font-size: 14px; 
    color: #666; 
    margin-bottom: 5px;
}
.elementor-widget-private_area_wpdm .sidebar .elementor-widget-button {
    margin-top:20px;
}
.elementor-widget-private_area_wpdm .private-content {
    width:100%;
    max-width:900px;
}
.elementor-widget-private_area_wpdm .private-content .accordion-header {
    width: 100%;
    border: none;
    background: transparent;
    border-top: 1px solid var(--color-secondary);
    border-radius: 0;
    text-align: left;
    padding: 15px 0;
    cursor: pointer;
    display: block;
}
.elementor-widget-private_area_wpdm .private-content .accordion-header:hover,
.elementor-widget-private_area_wpdm .private-content .accordion-header.active {
    color: var(--color-secondary);
}
.elementor-widget-private_area_wpdm .private-content .accordion-item:last-child {
    border-bottom: 1px solid var(--color-secondary);
}
.elementor-widget-private_area_wpdm .private-content .accordion-content {
    display: none; /* Gestito via JS */
    padding: 10px 0 20px 0;
}
.elementor-widget-private_area_wpdm .private-content .accordion-header.active + .accordion-content {
    display: block;
}
.elementor-widget-private_area_wpdm .wpdm-shortcode-toolbar {
    display:none;
}
.elementor-widget-private_area_wpdm .w3eden .card {
    background: transparent;
    border-radius: 0;
    border: 0;
}
.elementor-widget-private_area_wpdm .w3eden .card-body {
    padding: 10px 0 20px 0;
}
.elementor-widget-private_area_wpdm .w3eden .media {
    flex-direction: column;
}
.elementor-widget-private_area_wpdm .w3eden .package-title {
    font-size: var(--font-base);
    font-weight: 600;
}
.elementor-widget-private_area_wpdm .accordion-content .alert-danger { 
    display: none !important; 
}
.package-title a {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: inherit;
}

/* PRIVATE LOGIN FORM */
.elementor-widget-private_area_wpdm .login-container-custom {
    width: 100%;
    max-width: 500px; 
    margin: 0 auto; 
}
.elementor-widget-private_area_wpdm #loginform-custom p { 
    margin: 0; 
}
.elementor-widget-private_area_wpdm #loginform-custom input[type="text"], 
.elementor-widget-private_area_wpdm #loginform-custom input[type="password"] {
    width: 100%; 
    padding: 0 0 10px 0; 
    border-bottom: 1px solid var(--color-secondary);
    background: none;;
}
.elementor-widget-private_area_wpdm #loginform-custom input[type="checkbox"]#rememberme {
    accent-color: var(--color-primary);
    cursor: pointer;
    width: 18px;
    height: 18px;
    vertical-align: middle;
}
#loginform-custom input[type="text"]:-webkit-autofill,
#loginform-custom input[type="password"]:-webkit-autofill,
#loginform-custom input[type="text"]:-webkit-autofill:hover, 
#loginform-custom input[type="text"]:-webkit-autofill:focus,
#loginform-custom input[type="password"]:-webkit-autofill:hover, 
#loginform-custom input[type="password"]:-webkit-autofill:focus {
    -webkit-transition: background-color 9999s ease-in-out 0s;
    transition: background-color 9999s ease-in-out 0s;
    -webkit-text-fill-color: #000 !important;
    box-shadow: 0 0 0px 1000px #ffffff inset !important;
    -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
}
.elementor-widget-private_area_wpdm #loginform-custom input:focus:-webkit-autofill {
    -webkit-text-fill-color: transparent !important;
}
.elementor-widget-private_area_wpdm .login-remember label {
    cursor: pointer;
}
.elementor-widget-private_area_wpdm #loginform-custom p.login-submit {
    margin-top: 20px;
}
.elementor-widget-private_area_wpdm .wpdm-results-wrapper div[class*="col-"]:has(.alert-danger),
.elementor-widget-private_area_wpdm .wpdm-results-wrapper .link-template-default:has(.alert-danger) {
    display: none !important;
}
.elementor-widget-private_area_wpdm .no-files {
    padding: 20px;
    text-align: center;
    color: var(--color-secondary);
    background-color: rgba(var(--color-secondary-rgb), 0.1);
}
.elementor-widget-private_area_wpdm .login-error {
    background-color: #fff0f0;
    color: #d93025;
    padding: 10px;
    border-left: 4px solid #d93025;
    margin-bottom: 20px;
    font-size: 14px;
    /* Usa il font globale che abbiamo impostato prima */
    font-family: inherit;
}

/*************************************************************
 * STILI PER CATEGORIE E SOTTOCATEGORIE
 *****************************************************/
.subcategories-group {
    padding-left: 15px;
    border-left: 1px solid var(--color-secondary);
    margin-bottom: 20px;
    background-color: rgba(var(--color-secondary-rgb), 0.02);
}
.subcat-title {
    margin: 0;
    padding: 10px 0;
    color: var(--color-primary);
    align-items: center;
    font-weight:600
}
/*.wpdm-results-wrapper.level-0 {
    margin-bottom: 20px;
}*/
.wpdm-results-wrapper.level-1,
.wpdm-results-wrapper.level-2 {
    margin-right: 20px;
}
.wpdm-results-wrapper.level-1:not(:last-child),
.wpdm-results-wrapper.level-2:not(:last-child) {
    border-bottom: 1px solid var(--color-secondary);
}
/* Rimuoviamo il bordo di default se presente */
.wpdm-results-wrapper {
    border-bottom: none !important;
}

/* Applica il bordo solo agli elementi che il JS identifica come "finali" o con file */
.wpdm-results-wrapper.needs-border-logic {
    border-bottom: 1px solid var(--color-secondary) !important;
}

/* Se è l'ultimo elemento assoluto del gruppo, togliamo il bordo */
.is-last-item,
/*.subcategories-group:last-child,*/
.wpdm-results-wrapper.is-last-item {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Se il JS ha deciso che non serve il bordo (categoria padre vuota) */
.no-border-logic {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Stile per i titoli delle sottocategorie per distanziarli bene */
.subcat-title {
    margin-top: 10px;
}
.wpdm-results-wrapper.level-0.needs-border-logic:last-child,
.wpdm-results-wrapper.level-1.needs-border-logic:last-child,
.wpdm-results-wrapper.level-2.needs-border-logic:last-child {
    border-bottom: none !important;
}
/************/


body .wpdmpro {
    padding: 40px;
    padding-top: 100px;
    background-color:#F2EDE6;
}
.elementor-widget-private_area_wpdm .w3eden .package-title,
.elementor-widget-private_area_wpdm .w3eden .text-muted {
    font-size: 16px;
    font-weight: 400;
}

/* Media Queries*/
@media (max-width: 1100px) {
    .elementor-widget-private_area_wpdm {
        display:block;;
    }
    .elementor-widget-private_area_wpdm .sidebar {
        width:100%;
        margin: 0 0 40px 0;
    }
}
@media (max-width: 768px) {
    .elementor-widget-private_area_wpdm .login-container-custom {
        margin: 0; 
    }
    .elementor-widget-private_area_wpdm .custom-private-area-wrapper {
        flex-direction: column;       
    }
}