/* ==========================================================================
   ERSEL — FormaLMS custom overrides
   --------------------------------------------------------------------------
   Sommario sezioni:
     :root ............. Variabili brand (colori, ombre, raggi, override core)
     §1 ................ Variabili brand Ersel  (commento legacy, vedi :root)
     §2 ................ Header & Navbar
     §3 ................ Header layout flex (logo | nav | azioni)
     §4 ................ Tab "Corsi" — slider-menu--tabs
     §5 ................ Filter Bar (forma-quick-search-form)
     §6 ................ Card corso (course-box)
     §7 ................ Pagina Login
     §8 ................ Course Detail — hero, menu, area lezioni (folderView)
     §9 ................ Percorsi Formativi (.ersel-page-coursepath)
     §10 ............... Bootstrap-Select — dropdown aperte
     §11 ............... Course Detail — forma-dropdown (fix selected/hover)
     §12 ............... Calendario eventi
     §13 ............... Pagella / Voti corso
     §14 ............... Micro UX — transizioni globali, hover, focus
   ========================================================================== */

:root {
    --ersel-blue:        #182a4b;
    --ersel-blue-hover:  #243d6b;
    --ersel-orange:      #e8650a;
    --ersel-orange-dark: #c4530a;
    --ersel-bg:          #f0f2f7;
    --ersel-white:       #ffffff;
    --ersel-text-dark:   #1a2e52;
    --ersel-text-mid:    #4a5568;
    --ersel-text-light:  #718096;
    --ersel-border:      #dde3ee;
    --ersel-shadow:      0 2px 10px rgba(var(--ersel-blue-rgb), 0.09);
    --ersel-shadow-hover:0 8px 28px rgba(var(--ersel-blue-rgb), 0.17);

    /* RGB helper per trasparenze coerenti */
    --ersel-blue-rgb:    26, 46, 82;
    --ersel-orange-rgb:  232, 101, 10;
    --ersel-white-rgb:   255, 255, 255;
    --ersel-green-rgb:   34, 197, 94;
    --ersel-shadow-rgb:  15, 23, 42;

    /* Variabili aggiunte perché non abbastanza vicine a quelle esistenti */
    --ersel-green:       #22c55e;
    --ersel-danger:      #ff3b1f;
    --ersel-text-strong: #111827;
    --ersel-bg-soft:     #f6f7fa;
    --ersel-bg-light:    #f8fafc;

    --ersel-radius:      12px;
    --ersel-radius-sm:   7px;
    --ersel-radius-pill: 100px;

    /* Colori extra non coperti dalla palette principale */
    --ersel-text-gray:        #6b7280;   /* grigio neutro (frecce, separatori) */
    --ersel-text-placeholder: #9aa3b2;   /* placeholder campi di ricerca */
    --ersel-black-rgb:        0, 0, 0;   /* per ombre neutre rgba(var(--ersel-black-rgb), X) */

    /* Sovrascrive le variabili FormaLMS usate nel core */
    --color-primary:      var(--ersel-orange);
    --color-primary-text: var(--ersel-white);
}

/* ==========================================================================
   1. Variabili brand Ersel
   ========================================================================== */

body .ersel-page-coursepath button,
.ersel-page-coursepath button {
  all: unset !important;
  display: inline-block;
  cursor: pointer;
  font: inherit;
}

html, body, #footer{
    background-color: var(--ersel-bg)!important;
}

.ico-wt-sprite span{
    text-decoration: none !important;
}

td.image a::before,

td.image a::after {

  content: none !important;

}

/* =========================================================
   ERSEL - Bootstrap tables global style
   ========================================================= */

.table-responsive {
  border: 0 !important;
  margin: 18px 0 !important;
  background: transparent !important;
}

.panel.panel-default:has(.table) {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--ersel-shadow) !important;
  overflow: hidden !important;
}

.panel.panel-default:has(.table) .panel-heading {
  padding: 18px 22px !important;
  background: var(--ersel-white) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-blue) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
}

.table {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 0 !important;
  background: var(--ersel-white) !important;
}

.table > thead > tr > th {
  padding: 14px 16px !important;
  background: var(--ersel-bg-soft) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-blue) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  vertical-align: middle !important;
}

.table > tbody > tr > td {
  padding: 13px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  vertical-align: middle !important;
}

.table > tbody > tr:hover > td {
  background: rgba(var(--ersel-orange-rgb), .04) !important;
}

.table > tbody > tr:last-child > td {
  border-bottom: 0 !important;
}

.table a {
  color: var(--ersel-blue) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.table a:hover {
  color: var(--ersel-orange) !important;
}

/* colonne icona/azioni legacy */
.table th.image,
.table td.image {
  width: 46px !important;
  min-width: 46px !important;
  text-align: center !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.table td.image a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(var(--ersel-orange-rgb), .45) !important;
  background: var(--ersel-white) !important;
}

.table td.image a:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  border-color: var(--ersel-orange) !important;
}

.table td.image img,
.table th.image img {
  width: 15px !important;
  height: 15px !important;
  object-fit: contain !important;
  opacity: .78 !important;
}


.yui-skin-docebo .table-container-over, .yui-skin-docebo .table-container-below{
    border-top: 0px !important;
    border-bottom: 0px !important;
}

/* =========================================================
   ERSEL - LINK → BUTTON (legacy normalization)
   ========================================================= */

/* base button */
a.subs_add,
a.ico-wt-sprite.subs_add,
a[href*="addmenuvoice"],
a[href*="editgroup"],
a[href*="add"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  height: 40px !important;
  padding: 0 18px !important;

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

  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;

  cursor: pointer !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
  transition: all .18s ease !important;
}

/* icona "+" automatica */
a.subs_add::before,
a[href*="addmenuvoice"]::before,
a[href*="editgroup"]::before {
  content: "+" !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

/* hover */
a.subs_add:hover,
a[href*="addmenuvoice"]:hover,
a[href*="editgroup"]:hover {
  background: #d95f00 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 24px rgba(var(--ersel-orange-rgb), .22) !important;
}

/* active */
a.subs_add:active,
a[href*="addmenuvoice"]:active,
a[href*="editgroup"]:active {
  transform: translateY(0) scale(.98) !important;
}

/* =========================================================
   BUTTON SECONDARIO (es: correggi errori)
   ========================================================= */

a[href*="fixmenuvoice"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;

  height: 36px !important;
  padding: 0 14px !important;

  border-radius: 7px !important;
  border: 1.5px solid var(--ersel-border) !important;

  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;

  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

a[href*="fixmenuvoice"]::before {
  content: "↺";
  font-size: 14px;
}

a[href*="fixmenuvoice"]:hover {
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

/* =========================================================
   ERSEL - legacy edit link button
   ========================================================= */

a.infomod {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  height: 38px !important;
  padding: 0 16px !important;
  border: 1.5px solid var(--ersel-border) !important;
  border-radius: 8px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

a.infomod:hover {
  border-color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
  color: var(--ersel-orange) !important;
}

a.infomod img {
  width: 15px !important;
  height: 15px !important;
  object-fit: contain !important;
  opacity: .75 !important;
}

/* =========================================================
   RESET immagini legacy dentro link
   ========================================================= */

a img {
  width: 16px !important;
  height: 16px !important;
  object-fit: contain !important;
}

/* nascondi sprite vecchi */
a.ico-wt-sprite::after {
  display: none !important;
}

header.header .row-fluid .navbar-header .navbar-brand img{
    width: auto !important;
    height: 50px !important;
}

/* =========================================================
   ERSEL - Form editor note / htmlfront
   ========================================================= */

.std_form#formnotes {
  max-width: 1100px !important;
  margin: 24px 0 !important;
  padding: 28px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.std_form#formnotes .form_elem {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

.std_form#formnotes .form_line_l {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.std_form#formnotes .form_line_l p {
  margin: 0 0 8px !important;
}

.std_form#formnotes label.floating {
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* TinyMCE */
.std_form#formnotes .tox.tox-tinymce {
  border: 1px solid var(--ersel-border) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.std_form#formnotes .tox .tox-editor-header,
.std_form#formnotes .tox .tox-menubar,
.std_form#formnotes .tox .tox-toolbar,
.std_form#formnotes .tox .tox-toolbar-overlord {
  background: var(--ersel-bg-soft) !important;
}

.std_form#formnotes .tox .tox-editor-header {
  border-bottom: 1px solid var(--ersel-border) !important;
}

.std_form#formnotes .tox .tox-mbtn,
.std_form#formnotes .tox .tox-tbtn {
  border-radius: 7px !important;
  color: var(--ersel-blue) !important;
}

.std_form#formnotes .tox .tox-mbtn:hover,
.std_form#formnotes .tox .tox-tbtn:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.std_form#formnotes .tox .tox-statusbar {
  border-top: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
}

/* bottoni finali */
.std_form#formnotes .form_elem_button {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin-top: 24px !important;
  padding-top: 22px !important;
  border-top: 1px solid var(--ersel-border) !important;
}

.std_form#formnotes #save,
.std_form#formnotes #undo {
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.std_form#formnotes #save {
  border: 0 !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .20) !important;
}

.std_form#formnotes #save:hover {
  background: var(--ersel-orange-dark) !important;
}

.std_form#formnotes #undo {
  border: 1.5px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
}

.std_form#formnotes #undo:hover {
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

/* =========================================================
   ERSEL - Form avviso
   ========================================================= */

.std_form#adviceform {
  max-width: 1100px !important;
  margin: 24px 0 !important;
  padding: 28px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.std_form#adviceform .form_elem {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

.std_form#adviceform .form_line_l {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.std_form#adviceform .form_line_l p {
  margin: 0 0 8px !important;
}

.std_form#adviceform label.floating,
.std_form#adviceform .label_normal {
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.std_form#adviceform .form-control,
.std_form#adviceform .textfield,
.std_form#adviceform select.form-control {
  width: 100% !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 9px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-dark) !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

.std_form#adviceform .form-control:focus,
.std_form#adviceform .textfield:focus,
.std_form#adviceform select.form-control:focus {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
  outline: 0 !important;
}

/* checkbox */
.std_form#adviceform input.check {
  accent-color: var(--ersel-orange);
  margin-right: 8px !important;
}

/* TinyMCE */
.std_form#adviceform .tox.tox-tinymce {
  border: 1px solid var(--ersel-border) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.std_form#adviceform .tox .tox-editor-header,
.std_form#adviceform .tox .tox-menubar,
.std_form#adviceform .tox .tox-toolbar,
.std_form#adviceform .tox .tox-toolbar-overlord {
  background: var(--ersel-bg-soft) !important;
}

.std_form#adviceform .tox .tox-editor-header {
  border-bottom: 1px solid var(--ersel-border) !important;
}

.std_form#adviceform .tox .tox-mbtn,
.std_form#adviceform .tox .tox-tbtn {
  border-radius: 7px !important;
  color: var(--ersel-blue) !important;
}

.std_form#adviceform .tox .tox-mbtn:hover,
.std_form#adviceform .tox .tox-tbtn:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.std_form#adviceform .tox .tox-statusbar {
  border-top: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
}

/* bottoni finali */
.std_form#adviceform .form_elem_button {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin-top: 24px !important;
  padding-top: 22px !important;
  border-top: 1px solid var(--ersel-border) !important;
}

.std_form#adviceform #addadvice,
.std_form#adviceform #undo {
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.std_form#adviceform #addadvice {
  border: 0 !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .20) !important;
}

.std_form#adviceform #addadvice:hover {
  background: var(--ersel-orange-dark) !important;
}

.std_form#adviceform #undo {
  border: 1.5px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
}

.std_form#adviceform #undo:hover {
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

/* ==========================================================================
   2. Header & Navbar — sfondo bianco, logo a sinistra, menu testo scuro
   ========================================================================== */

.layout_menu_over{
    background-color: var(--ersel-bg)!important;
}

header.header, #menu_over .header, .layout_menu_over .header{
    background-color: var(--ersel-white)!important;
    margin-top: 10px;
    border-top: 1px solid var(--ersel-border);
    border-bottom: 1px solid var(--ersel-border);
}

#devlo_fix_header{
    min-height: 15px;
    height: 15px;
    max-height: 15px;
    background-color: var(--ersel-bg)!important;
    position: fixed;
    top: 0px;
    left: 0px;
    min-width: 100%;
    width: 100%;
    max-width: 100%;
    z-index: 999;
}

@media (min-width: 768px) {
  header.header {
    padding: 0px 0px !important;
  }
}

/* ==========================================================================
   3. Header layout — logo sx | nav centro | green_menu+profile dx
   ========================================================================== */

@media (min-width: 768px) {
    /* Contenitore principale: flex a tre zone */
    #lms_menu_container {
        display: flex;
        align-items: center;
    }

    /* Logo rimane a sinistra (Bootstrap già lo gestisce con navbar-header) */
    #lms_menu_container .navbar-header {
        flex: 0 0 auto;
    }

    /* Collapse occupa il resto e diventa flex interno */
    #lms_menu_container #navbar {
        flex: 1 1 auto;
        display: flex !important;
        align-items: center;
        float: none !important;
        width: auto !important;
    }

    /* Menu principale: flex, centra le voci normali */
    .ersel-header-nav {
        flex: 1 1 auto;
        display: flex !important;
        align-items: center;
        justify-content: center;
        float: none !important;
        margin: 0 !important;
    }

    /* Il primo green_menu spinge tutto ciò che segue a destra */
    .ersel-header-nav > li.green_menu:first-of-type {
        margin-left: auto !important;
    }

    /* Cart + profile: si ancorano a destra */
    .ersel-header-right {
        flex: 0 0 auto;
        float: none !important;
        margin: 0 !important;
    }
}

#container{
    background-color: var(--ersel-bg)!important;
}

.row.lms-user-content-wrapper{
    margin-top: 15px;
    background-color: var(--ersel-bg)!important;
}

/* ==========================================================================
   4. Tab "Corsi" — stile bottone pill arancione come mockup
   ========================================================================== */

.slider-menu--tabs {
    border-bottom: none !important;
    display: flex !important;
    gap: 10px;
    flex-wrap: wrap;
    padding: 12px 0 !important;
    margin: 0 !important;
    list-style: none;
}

.slider-menu--tabs > li {
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer;
}

nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li > a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 6px !important;
    -webkit-border-radius: 6px !important;
    -moz-border-radius: 6px !important;
    border: 1.5px solid var(--ersel-border) !important;
    background-color: var(--ersel-white) !important;
    color: var(--ersel-text-mid) !important;
    width: auto;
    height: 36px;
    padding: 0 27px !important;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}

/* Icona ▶ cerchiata — stato default (grigia) */
/*#myCourseButton1::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    border-radius: 50%;
    border: 2px solid var(--ersel-text-light);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpolygon points='3,1.5 8.5,5 3,8.5' fill='%23718096'/%3E%3C/svg%3E");
    background-size: 50% 50%;
    background-repeat: no-repeat;
    background-position: 58% 50%;
}*/

/* Icona ▶ cerchiata — stato active/hover (bianca) */
.slider-menu--tabs > li.active #myCourseButton1::before,
.slider-menu--tabs > li #myCourseButton1:hover::before {
    border-color: var(--ersel-white);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpolygon points='3,1.5 8.5,5 3,8.5' fill='%23ffffff'/%3E%3C/svg%3E");
}

nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li > a:hover,
nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li > a:focus {
    background-color: var(--ersel-orange) !important;
    color: var(--ersel-white) !important;
    border-color: var(--ersel-orange) !important;
}

nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li.active > a,
nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li.active > a:hover,
nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li.active > a:focus {
    background-color: var(--ersel-orange) !important;
    color: var(--ersel-white) !important;
    border-color: var(--ersel-orange) !important;
    font-weight: 600;
    cursor: pointer !important;
}

nav.buttonsBar .nav.nav-tabs.slider-menu--tabs > li > a em {
    font-style: normal;
}

/* ================================
   FORMA LMS - FILTER BAR RESTYLE
   ================================ */

/* ================================
   FORMA LMS - FILTER BAR ERSEL STYLE
   RESET COMPLETO
================================ */

.forma-quick-search-form,
.forma-quick-search-form * {
  box-sizing: border-box;
}

/* CONTAINER PRINCIPALE */
.forma-quick-search-form.filterBar {
  width: 100% !important;
  max-width: 1320px !important;
  /*margin: 56px auto 72px !important;*/
  /*padding: 0 24px !important;*/
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  margin-bottom: 30px !important;
}

/* CARD BIANCA */
.forma-quick-search-form .filterBar__legacyContainer {
  width: 100% !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  padding: 34px 38px 34px !important;
  box-shadow: 0 18px 38px rgba(var(--ersel-shadow-rgb), 0.08) !important;
}

/* RESET BOOTSTRAP / FORMA */
.forma-quick-search-form .filterBar__advanced,
.forma-quick-search-form .simple_search_box,
.forma-quick-search-form .filterBar__mainsearch,
.forma-quick-search-form .navbar-form,
.forma-quick-search-form .form-group,
.forma-quick-search-form fieldset {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* RIGA FILTRI */
.forma-quick-search-form .filterBar__mainsearch {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  flex-wrap: nowrap !important;
}

/* FIELDSET SELECT */
.forma-quick-search-form fieldset {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex: 0 0 auto !important;
}

/* ACCESSIBILITY LABEL */
.forma-quick-search-form .screenreader {
  position: absolute !important;
  left: -9999px !important;
}

/* SELECT */
.forma-quick-search-form .bootstrap-select {
  width: 235px !important;
  height: 50px !important;
  margin: 0 !important;
}

.forma-quick-search-form .bootstrap-select > .dropdown-toggle {
  width: 100% !important;
  height: 50px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-light) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  padding: 0 18px !important;
  box-shadow: none !important;
}

.forma-quick-search-form .bootstrap-select .filter-option {
  line-height: 50px !important;
}

.forma-quick-search-form .bootstrap-select .caret {
  border-top-color: var(--ersel-orange) !important;
}

/* BOTTONI APPLICA / RESET */
.forma-quick-search-form .filterBar__searchAndReset {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.forma-quick-search-form .filterBar__search,
.forma-quick-search-form .filterBar__reset {
  height: 50px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border-radius: 6px !important;
}

.forma-quick-search-form .filterBar__search {
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  border: 1px solid var(--ersel-orange) !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.22) !important;
}

.forma-quick-search-form .filterBar__reset {
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  border: 1px solid var(--ersel-border) !important;
}

/* SEARCH A DESTRA */
.forma-quick-search-form .filterBar__searchInput {
  display: flex !important;
  align-items: center !important;
  width: 180px !important;
  height: 50px !important;
  gap: 25px !important;
  padding: 0 !important;
  flex: 0 0 180px !important;
  border: 0 !important;
  box-shadow: none !important;
}

.forma-quick-search-form .filterBar__searchInput .form-control {
  float: none !important;
  width: 40% !important;
  height: 50px !important;
  border: 1px solid var(--ersel-border) !important;
  border-right: 0 !important;
  border-radius: 999px 0 0 999px !important;
  background: var(--ersel-white) !important;
  box-shadow: none !important;
  padding: 0 20px !important;
  font-size: 14px !important;
  color: var(--ersel-text-light) !important;
}

.forma-quick-search-form .filterBar__searchInput .input-group-btn {
  display: flex !important;
  width: 52px !important;
  height: 50px !important;
}

.forma-quick-search-form .filterBar__searchInput .btn {
  width: 52px !important;
  height: 50px !important;
  border: 1px solid var(--ersel-border) !important;
  border-left: 0 !important;
  border-radius: 0 999px 999px 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  box-shadow: none !important;
}

/* TABS SOTTO */
.forma-quick-search-form .filterBar__buttons {
  margin-top: 30px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.forma-quick-search-form .filterBar.nav-pills {
  display: flex !important;
  align-items: center !important;
  gap: 0px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.forma-quick-search-form .filterBar__button {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.forma-quick-search-form .filterBar__buttonLink {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 185px !important;
  height: 48px !important;
  padding: 0 22px !important;
  border-radius: 6px !important;
  border: 1.5px solid var(--ersel-border) !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  
}

/* ICONE PULITE */
.forma-quick-search-form .filterBar__buttonLink::before,
.forma-quick-search-form .filterBar__buttonLink::after {
  display: none !important;
}

.forma-quick-search-form .icon--filter-all::before {
  content: "▶" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  margin-right: 10px !important;
  border: 2px solid currentColor !important;
  border-radius: 50% !important;
  font-size: 11px !important;
  display: none !important;
}

.forma-quick-search-form .icon--filter-1::before {
  content: "⌛" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  margin-right: 10px !important;
  border: 2px solid currentColor !important;
  border-radius: 50% !important;
  font-size: 13px !important;
  display: none !important;
}

/* TAB ATTIVO */
.forma-quick-search-form .filterBar__button.selected .filterBar__buttonLink {
    background-color: var(--ersel-orange) !important;
    color: var(--ersel-white) !important;
    border-color: var(--ersel-orange) !important;
    font-weight: 600;
    cursor: pointer !important;
    box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.14) !important;
    border-radius: 6px !important;
}

/* HOVER */
.forma-quick-search-form .filterBar__buttonLink:hover,
.forma-quick-search-form .filterBar__reset:hover {
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
}

/* MOBILE */
.forma-quick-search-form .filterBar__mobile {
  display: none !important;
}

@media (max-width: 1250px) {
  .forma-quick-search-form .filterBar__mainsearch {
    flex-wrap: wrap !important;
  }

  .forma-quick-search-form .filterBar__searchInput {
    width: 100% !important;
    flex: 1 1 100% !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 768px) {
  .forma-quick-search-form.filterBar {
    padding: 0 20px !important;
  }

  .forma-quick-search-form .filterBar__legacyContainer {
    padding: 24px !important;
  }

  .forma-quick-search-form fieldset,
  .forma-quick-search-form .filterBar__searchAndReset,
  .forma-quick-search-form .filterBar.nav-pills {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .forma-quick-search-form .bootstrap-select,
  .forma-quick-search-form .filterBar__search,
  .forma-quick-search-form .filterBar__reset,
  .forma-quick-search-form .filterBar__buttonLink {
    width: 100% !important;
  }
}

.forma-quick-search-form .input-group .input-group-btn{
    position: relative;
    top:20px;
}

/* =========================
   CARD CORSO - ERSEL STYLE
   ========================= */

.course-box {
  background: var(--ersel-white);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(var(--ersel-shadow-rgb), 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
}

/* hover */
.course-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(var(--ersel-shadow-rgb), 0.12);
}

/* =========================
   COVER IMAGE
   ========================= */

.course-box__cover {
  height: 160px;
  background-size: cover;
  background-position: center;
  position: relative;
}

/* =========================
   BADGE
   ========================= */

.ersel-badge-overlay {
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  display: flex;
  justify-content: space-between;
}

.ersel-badge {
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  background: var(--ersel-blue); /* blu */
  color: var(--ersel-white);
  text-transform: uppercase;
}

/* =========================
   BODY
   ========================= */

.course-box__header {
  display: none; /* non serve nello stile nuovo */
}

.course-box__category {
  display: none; /* ridondante */
}

/* contenuto */
.course-box__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--ersel-blue) !important;
  padding: 16px 18px 6px;
  line-height: 1.3;
  text-transform: uppercase;
}

.course-box__description {
  font-size: 14px;
  color: var(--ersel-text-light);
  padding: 0 18px 16px;
  line-height: 1.4;
}

/* =========================
   CTA
   ========================= */

.course-box__cta {
  margin-top: auto;
  padding: 0 18px 18px;
}

.course-box__cta__button {
  display: block;
  width: 100%;
  text-align: center;
  background: var(--ersel-blue) !important;
  color: var(--ersel-white) !important;
  border-radius: 10px;
  padding: 12px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
}

.course-box__cta__button:hover {
  background: var(--ersel-blue);
}

/* rimuove stile forma-button */
.forma-button.no-border {
  border: none !important;
  box-shadow: none !important;
}

/* =========================
   FIX BUTTON CTA CARD
   ========================= */

/* reset completo forma-button */
.course-box__cta__button.forma-button {
  all: unset;
}

/* bottone */
.course-box__cta__button {
  display: block !important;
  width: 100% !important;
  height: 44px !important;

  background: var(--ersel-blue) !important; /* blu come home */
  color: var(--ersel-white) !important;

  border-radius: 10px !important;
  text-align: center !important;

  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 44px !important;

  cursor: pointer;
  transition: all 0.2s ease;

  position: relative;
  overflow: hidden;
}

/* label */
.course-box__cta__button .forma-button__label {
  display: inline-block;
  line-height: normal;
  text-transform: uppercase;
}

/* hover */
.course-box__cta__button:hover {
  background: var(--ersel-blue) !important;
  transform: translateY(-1px);
}

/* elimina roba strana forma */
.course-box__cta__button::before,
.course-box__cta__button::after,
.forma-button::before,
.forma-button::after {
  display: none !important;
}

.forma-quick-search-form .filterBar__button{
    margin-right: 20px !important;
}

.forma-quick-search-form .filterBar__button.selected .filterBar__buttonLink {
  transition: all 0.2s ease;
}

/* hover sul bottone ATTIVO */
.forma-quick-search-form .filterBar__button.selected .filterBar__buttonLink:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(var(--ersel-orange-rgb), 0.22) !important;
}

/* active click (micro press) */
.forma-quick-search-form .filterBar__button.selected .filterBar__buttonLink:active {
  transform: translateY(0);
  box-shadow: 0 6px 12px rgba(var(--ersel-orange-rgb), 0.18) !important;
}

/* transizione base */
.forma-quick-search-form .filterBar__search {
  transition: all 0.2s ease;
}

:hover:is(#course_search_filter_reset), .filterBar__buttonLink:hover {
  text-decoration: none;
  background-color: var(--color-wrapper-text);
  color: var(--ersel-orange) !important;
}

/* hover elegante */
.forma-quick-search-form .filterBar__search:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(var(--ersel-orange-rgb), 0.22);
  background-color: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
}

/* click (micro feedback) */
.forma-quick-search-form .filterBar__search:active {
  transform: translateY(0);
  box-shadow: 0 6px 12px rgba(var(--ersel-orange-rgb), 0.18);
}

.filterBar__reset:hover{
    color: var(--ersel-orange) !important;
}

.ersel-section-title{
    display: none !important;
}

.layout_footer{
    border-top:0px !important;
}

/* =========================
   LOGIN PAGE - ERSEL STYLE
   ========================= */

body.homepage {
  min-height: 100vh;
  background:
    radial-gradient(circle at top left, rgba(var(--ersel-orange-rgb), 0.08), transparent 30%),
    var(--ersel-bg);
  font-family: Arial, Helvetica, sans-serif;
}

.homepage__content {
  max-width: 1120px;
  margin: 64px auto;
  background: var(--ersel-white);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 22px 50px rgba(var(--ersel-shadow-rgb), 0.12);
}

/* HEADER */
.homepage__row--header {
  min-height: 130px;
  padding: 36px 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--ersel-white);
}

.left_logo {
  width: auto !important;
  height: 50px !important;
}

.pull-left,
.pull-right {
  float: none !important;
}

.pull-right-size {
  display: flex;
  align-items: center;
}

.select-language,
.select-language a {
  color: var(--ersel-text-strong);
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
}

.select-language .hidden-xs {
  display: none !important;
}

.select-language .fa {
  margin-left: 8px;
  color: var(--ersel-orange);
}

/* LOGIN AREA */
.homepage__row--login {
  background: linear-gradient(180deg, var(--ersel-bg-light) 0%, var(--ersel-white) 100%) !important;
  padding: 56px 72px 52px !important;
}

.homepage__row--login .col-xs-12 {
  width: 100% !important;
  max-width: none;
  margin: 0 !important;
  float: none !important;
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 80px;
  align-items: center;
}

.homepage__row--login .col-xs-12::before {
  content: "Bentornato!\A Accedi alla tua piattaforma forma.lms";
  white-space: pre-line;
  display: block;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ersel-text-mid);
}

.homepage__row--login .col-xs-12::first-line {
  font-size: 28px;
  font-weight: 800;
  color: var(--ersel-text-strong);
}

/* FORM */
#login_confirm {
  width: 100%;
}

#login_confirm > div {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#login_confirm br {
  display: none;
}

#login_confirm .form-control {
  width: 100%;
  height: 56px;
  border: 1px solid var(--ersel-border);
  border-radius: 10px;
  background: var(--ersel-white);
  color: var(--ersel-text-strong);
  font-size: 15px;
  padding: 0 18px;
  box-shadow: none;
  transition: all 0.2s ease;
}

#login_confirm .form-control:focus {
  border-color: var(--ersel-orange);
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), 0.12);
  outline: none;
}

/* BUTTON LOGIN */
#login_confirm #login {
  width: 100%;
  height: 56px;
  margin-top: 8px;
  border: 0;
  border-radius: 10px;
  background: var(--ersel-orange);
  color: var(--ersel-white);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  box-shadow: 0 10px 22px rgba(var(--ersel-orange-rgb), 0.22);
  transition: all 0.2s ease;
}

#login_confirm #login:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(var(--ersel-orange-rgb), 0.28);
}

#login_confirm #login:active {
  transform: translateY(0);
}

/* LOGOUT MESSAGE */
.logout {
  display: block;
  width: 100%;
  margin-top: 22px;
  padding: 16px;
  border: 1px solid rgba(var(--ersel-orange-rgb), 0.45);
  border-radius: 10px;
  color: var(--ersel-danger);
  background: var(--ersel-white);
  text-align: center;
  font-size: 14px;
  text-transform: uppercase;
}

/* LOST PASSWORD */
.homepage__links {
  margin-top: 22px;
  text-align: center;
}

.homepage__links a {
  color: var(--ersel-text-strong);
  font-weight: 700;
  text-decoration: none;
}

.homepage__links a:hover {
  color: var(--ersel-orange);
}

/* NASCONDE TESTO OPEN SOURCE + LEGGI TUTTO */
.homepage__row:not(.homepage__row--header):not(.homepage__row--login):not(.homepage__row--footer) {
  display: none !important;
}

/* FOOTER */
.homepage__row--footer {
  border-top: 2px solid var(--ersel-orange);
  padding: 28px 48px 34px;
  background: var(--ersel-white);
}

.homepage__footer {
  text-align: center;
}

.powered_by {
  margin: 0;
  color: var(--ersel-text-light);
  font-size: 14px;
  line-height: 1.6;
}

.powered_by a {
  color: var(--ersel-text-light);
  text-decoration: none;
}

/* RESPONSIVE */
@media (max-width: 900px) {
  .homepage__content {
    margin: 24px;
  }

  .homepage__row--header {
    padding: 28px;
  }

  .homepage__row--login {
    padding: 36px 28px !important;
  }

  .homepage__row--login .col-xs-12 {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 600px) {
  .homepage__row--header {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
  }

  .left_logo {
    max-height: 56px;
  }
}

/* =========================
   LOGIN REFINEMENTS
   ========================= */

/* input + bottone stessa larghezza */
#login_confirm,
#login_confirm > div {
  width: 100%;
}

#login_confirm .form-control,
#login_confirm #login {
  width: 100% !important;
  max-width: 380px !important;
}

/* bottone login stile ACCEDI */
#login_confirm #login {
  height: 56px !important;
  border-radius: 6px !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  box-shadow: 0 10px 22px rgba(var(--ersel-orange-rgb), 0.22) !important;
}

/* evita bottone piccolo/centrato male */
#login_confirm > div {
  align-items: center;
}

/* messaggio "sei disconnesso" più elegante */
.logout {
  max-width: 380px;
  margin: 28px auto 0 !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(var(--ersel-orange-rgb), 0.45) !important;
  border-radius: 6px !important;
  background: rgba(var(--ersel-orange-rgb), 0.04) !important;
  color: var(--ersel-orange) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  text-align: center;
  text-transform: uppercase;
}

/* footer: una sola riga arancione */
.homepage__row--footer {
  border-top: 2px solid var(--ersel-orange) !important;
  padding-top: 34px !important;
}

/* elimina eventuale seconda riga/bordo generato */
.homepage__row--footer::before,
.homepage__row--footer::after {
  display: none !important;
  content: none !important;
}

/* se c'è una linea extra da altri blocchi */
.homepage__row--footer {
  box-shadow: none !important;
}

.homepage__row--footer .homepage__links {
  padding: 5px 0 0px !important;
  border-top: 0px !important;
}







/*##################*/

/* =========================
   COURSE DETAIL - ERSEL NEW
   ========================= */

/* pagina */
#lms_main_container {
  background: var(--ersel-bg);
  /*padding: 32px 32px 56px;*/
}

/* nasconde titolo legacy */
#yui-main-boot .page-header {
  display: none !important;
}

/* =========================
   HERO CORSO
   ========================= */

.section-coourse {
  background: transparent !important;
  margin: 0 0 0px !important;
}

.section-coourse__header {
  background: transparent !important;
  padding: 0 !important;
  margin-top: 30px !important;
}

.section-coourse__header .row-fluid {
  max-width: 1380px;
  margin: 0 auto;
  position: relative;
  min-height: 100px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--ersel-shadow-hover);
  background: var(--ersel-blue);
}

.section-coourse__header .col-sm-3 {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

.section-coourse__img {
  width: 100% !important;
  height: 180px !important;
  object-fit: cover !important;
  max-width: none !important;
  opacity: 0.72;
}

.section-coourse__header .col-sm-9 {
  position: absolute;
  left: 40px;
  right: 40px;
  bottom: 44px;
  width: auto !important;
  float: none !important;
  padding: 0 !important;
  color: var(--ersel-white);
}

.section-coourse__title {
  margin: 0 0 22px !important;
  color: var(--ersel-white) !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.section-coourse__progress-container {
  max-width: 100% !important;
}

.section-coourse__progress-container {
  border: 0px solid var(--color-grey) !important;
}

.section-coourse__progress {
  height: 8px !important;
  border-radius: var(--ersel-radius-pill) !important;
  border: 1px solid rgba(var(--ersel-white-rgb), 0.55) !important;
  background: rgba(var(--ersel-white-rgb), 0.22) !important;
  box-shadow: none !important;
  overflow: visible !important;
  margin: 0 !important;
  position: relative;
}

.section-coourse__progress::before {
  content: "Completamento";
  position: absolute;
  left: 0;
  bottom: 18px;
  color: var(--ersel-white);
  font-size: 15px;
  font-weight: 700;
}

.section-coourse__progress .progress-bar {
  background: var(--ersel-orange) !important;
  border-radius: var(--ersel-radius-pill) !important;
  box-shadow: none !important;
}

.section-coourse__progress .progress-bar span {
  position: absolute;
  right: 0;
  bottom: 18px;
  color: var(--ersel-white);
  font-size: 15px;
  font-weight: 700;
}

.section-coourse__progress .glyphicon-signal {
  display: none;
}

/* =========================
   MENU ORIZZONTALE
   ========================= */

.section-coourse__menu {
  max-width: 1380px;
  margin: 28px auto 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.section-coourse__dropdown {
  display: none !important;
}

.section-coourse__menu-horizontal {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

.slider-menu {
  display: flex !important;
  align-items: center;
  gap: 34px;
  border-bottom: 1px solid var(--ersel-border);
  padding: 0 0 18px !important;
  margin: 0 !important;
  background: transparent !important;
}

.slider-menu .slick-list,
.slider-menu .slick-track {
  width: auto !important;
  transform: none !important;
}

.slider-menu .slick-track {
  display: flex !important;
  gap: 34px;
}

.slider-menu .slick-slide {
  width: auto !important;
}

.slider-menu__item {
  display: inline-flex !important;
  width: auto !important;
}

.slider-menu__item a {
  color: var(--ersel-text-light) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  padding: 0 0 16px !important;
  position: relative;
}

.slider-menu__item.is-selected a {
  color: var(--ersel-orange) !important;
}

.slider-menu__item.is-selected a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -19px;
  width: 64px;
  height: 3px;
  border-radius: var(--ersel-radius-pill);
  background: var(--ersel-orange);
}

.slider-menu__arrow {
  display: none !important;
}

/* =========================
   AREA LEZIONI
   ========================= */

#yui-main-boot {
  max-width: 1380px;
  margin: 0 auto;
  padding: 0 !important;
  padding-right: 15px !important;
  padding-left: 15px !important;
}

.std_block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.folderTreeView {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.folderTreeContent {
  width: 100% !important;
  float: none !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.folderTreeContent::before {
  content: "Lezioni";
  display: block;
  margin: 0 0 22px;
  color: var(--ersel-orange);
  font-size: 20px;
  font-weight: 800;
}

.folderTree,
.folderTree__ul,
.folderTree__li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.folderTree__link {
  display: none !important;
}

.folderViewContent {
  width: 100% !important;
  float: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.folderView {
  background: transparent !important;
}

.folderView__ul {
  counter-reset: lesson;
  display: flex !important;
  flex-direction: column;
  gap: 16px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* card lezione */
.folderView__li {
  counter-increment: lesson;
  position: relative;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) auto auto auto !important;
  align-items: center;
  gap: 18px;
  min-height: 92px;
  padding: 22px 28px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius) !important;
  box-shadow: var(--ersel-shadow) !important;
}

/* stato sinistra */
.folderView__li::before {
  content: "✓";
  grid-column: 1;
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(var(--ersel-green-rgb), 0.14);
  color: var(--ersel-green);
  font-size: 20px;
  font-weight: 900;
}

/* riga con play */
.folderView__li:has(.fv-is-play) {
  border-color: rgba(var(--ersel-orange-rgb), 0.35) !important;
  box-shadow: 0 8px 22px rgba(var(--ersel-orange-rgb), 0.08) !important;
}

.folderView__li:has(.fv-is-play)::before {
  content: "•••";
  background: rgba(var(--ersel-orange-rgb), 0.08);
  color: var(--ersel-orange);
  font-size: 15px;
}

/* elemento lezione */
.folderView__el {
  grid-column: 2;
  display: flex !important;
  align-items: center;
  min-height: auto !important;
  background-image: none !important;
  padding: 0 !important;
  border: 0 !important;
}

.folderView__label {
  white-space: normal !important;
  max-width: none !important;
  color: var(--ersel-blue) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.folderView__label::before {
  content: counter(lesson) ". ";
}

/* azioni */
.actions-wrapper {
  position: static !important;
  z-index: auto !important;
}

.folderView__visibleActions,
.folderView__actions {
  position: static !important;
  display: contents !important;
}

/* tracking */
.folderView__action.fv-is-tracking {
  grid-column: 4;
  display: inline-flex !important;
  width: 46px !important;
  height: 46px !important;
  align-items: center;
  justify-content: center;
  border: 1.5px solid var(--ersel-orange);
  border-radius: 50%;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange);
  text-decoration: none !important;
}

.folderView__action.fv-is-tracking::before {
  content: "▥";
  font-size: 22px;
  line-height: 1;
}

/* stato completato */
.folderView__status.fv-is-completed {
  grid-column: 5;
  display: inline-flex !important;
  width: 38px !important;
  height: 38px !important;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  color: var(--ersel-green);
  text-decoration: none !important;
}

.folderView__status.fv-is-completed::before {
  content: "✓";
  font-size: 28px;
  font-weight: 400;
}

/* play / continua */
.folderView__action.fv-is-play {
  grid-column: 3;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  height: 44px;
  padding: 0 22px;
  border-radius: var(--ersel-radius-sm);
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.24) !important;
  transition: all 0.2s ease;
}

.folderView__action.fv-is-play::before {
  content: "▶  CONTINUA";
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.folderView__action.fv-is-play:hover {
  background: var(--ersel-orange-dark) !important;
  transform: translateY(-2px);
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 768px) {
  #lms_main_container {
    padding: 20px;
  }

  .section-coourse__header .row-fluid {
    min-height: 100px;
  }

  .section-coourse__img {
    height: 180px !important;
  }

  .section-coourse__header .col-sm-9 {
    left: 24px;
    right: 24px;
    bottom: 28px;
  }

  .section-coourse__title {
    font-size: 32px !important;
  }

  .folderView__li {
    grid-template-columns: 44px 1fr !important;
    padding: 18px !important;
  }

  .folderView__action.fv-is-play,
  .folderView__action.fv-is-tracking,
  .folderView__status.fv-is-completed {
    grid-column: 2;
    justify-self: start;
  }
}

.section-coourse__img {
  padding: 0px !important;
  border: 0px solid var(--color-grey-03) 4 !important; 
}

@media (min-width: 1024px) {
  .section-coourse__img {
    /*margin: 5px 25px 25px 0;*/
    margin: 0px !important;
  }
}

/* =========================
   COURSE PAGE - FIX MENU + LESSONS
   ========================= */

/* =========================
   MENU MATERIALI / INTRO / ECC.
   dentro box stile filtri
   ========================= */

.section-coourse__menu {
  max-width: 1380px !important;
  margin: 28px auto 44px !important;
  padding: 26px 34px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.section-coourse__menu .row-fluid {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
}

/* se vuoi mantenere visibile Area Studenti */
.section-coourse__dropdown {
  display: block !important;
  width: auto !important;
  min-width: 260px !important;
  padding: 0 !important;
  float: none !important;
}

.section-coourse__dropdown .row,
.section-coourse__dropdown .col-xs-12 {
  margin: 0 !important;
  padding: 0 !important;
}

.forma-dropdown {
  display: flex !important;
  width: 100% !important;
}

.forma-dropdown__selected {
  height: 52px !important;
  min-width: 220px !important;
  padding: 0 24px !important;
  border-radius: var(--ersel-radius-sm) 0 0 var(--ersel-radius-sm) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  border: 1px solid var(--ersel-border) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

.forma-dropdown__toggle {
  width: 52px !important;
  height: 52px !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-left: 0 !important;
  color: var(--ersel-blue) !important;
}

/* tabs */
.section-coourse__menu-horizontal {
  flex: 1 1 auto !important;
  width: auto !important;
  float: none !important;
  padding: 0 !important;
}

.slider-menu {
  border-bottom: 0 !important;
  padding: 0 !important;
  gap: 22px !important;
}

.slider-menu .slick-list {
  overflow: visible !important;
}

.slider-menu .slick-track {
  gap: 18px !important;
}

.slider-menu__item a {
  display: inline-flex !important;
  align-items: center !important;
  height: 52px !important;
  padding: 0 18px !important;
  border-radius: var(--ersel-radius-sm) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  background: transparent !important;
}

.slider-menu__item.is-selected a {
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), 0.08) !important;
}

.slider-menu__item.is-selected a::after {
  display: none !important;
}

/* separatore ">" più soft */
.slider-menu__item a::before {
  content: "›";
  margin-right: 10px;
  color: var(--ersel-text-light);
  font-weight: 800;
}

.slider-menu__item.is-selected a::before {
  display: none;
}

/* =========================
   AREA LEZIONI
   ========================= */

#yui-main-boot {
  max-width: 1380px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  padding-right: 15px !important;
  padding-left: 15px !important;
}

/* contenitore generale */
.folderTreeView {
  display: block !important;
  width: 100% !important;
  background: transparent !important;
  padding: 0 !important;
}

/* titolo Lezioni */
.folderTreeContent {
  display: block !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 0 28px !important;
  background: transparent !important;
}

.folderTreeContent::before {
  content: "Lezioni";
  display: block;
  color: var(--ersel-orange);
  font-size: 22px;
  font-weight: 800;
  margin: 0;
}

/* nasconde albero legacy */
.folderTree {
  display: none !important;
}

/* contenitore lista */
.folderViewContent,
.folderViewContent--two-third {
  display: block !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

.folderView {
  width: 100% !important;
  background: transparent !important;
  padding: 0 !important;
}

.folderView__ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  counter-reset: lesson;
}

/* riga lezione */
.folderView__li {
  counter-increment: lesson;
  position: relative !important;
  display: grid !important;
  grid-template-columns: 54px 1fr 150px 52px 40px !important;
  align-items: center !important;
  column-gap: 22px !important;

  min-height: 96px !important;
  width: 100% !important;
  padding: 22px 32px !important;

  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius) !important;
  box-shadow: var(--ersel-shadow) !important;
}

/* riga attiva/continua */
.folderView__li:has(.fv-is-play) {
  border-color: rgba(var(--ersel-orange-rgb), 0.35) !important;
  box-shadow: 0 8px 24px rgba(var(--ersel-orange-rgb), 0.10) !important;
}

/* pallino stato sinistra */
.folderView__li::before {
  content: "✓";
  grid-column: 1 !important;
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: rgba(var(--ersel-green-rgb), 0.14) !important;
  color: var(--ersel-green) !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.folderView__li:has(.fv-is-play)::before {
  content: "•••";
  background: rgba(var(--ersel-orange-rgb), 0.10) !important;
  color: var(--ersel-orange) !important;
  font-size: 15px !important;
}

/* titolo lezione */
.folderView__el {
  grid-column: 2 !important;
  display: block !important;
  width: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background-image: none !important;
  border: 0 !important;
}

.folderView__label {
  display: block !important;
  color: var(--ersel-blue) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  white-space: normal !important;
  max-width: none !important;
}

.folderView__label::before {
  content: counter(lesson) ". ";
}

/* reset wrapper azioni */
.actions-wrapper {
  position: static !important;
  z-index: auto !important;
  display: contents !important;
}

.folderView__visibleActions,
.folderView__actions {
  position: static !important;
  display: contents !important;
}

/* bottone continua */
.folderView__action.fv-is-play {
  grid-column: 3 !important;
  justify-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 150px !important;
  height: 44px !important;
  padding: 0 18px !important;

  border-radius: var(--ersel-radius-sm) !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.24) !important;
  transition: all 0.2s ease !important;
}

.folderView__action.fv-is-play::before {
  content: "▶  CONTINUA";
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.folderView__action.fv-is-play:hover {
  background: var(--ersel-orange-dark) !important;
  transform: translateY(-2px);
}

/* tracking */
.folderView__action.fv-is-tracking {
  grid-column: 4 !important;
  justify-self: center !important;

  display: inline-flex !important;
  width: 46px !important;
  height: 46px !important;
  align-items: center !important;
  justify-content: center !important;

  border: 1.5px solid var(--ersel-orange) !important;
  border-radius: 50% !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  text-decoration: none !important;
}

.folderView__action.fv-is-tracking::before {
  content: "▥";
  font-size: 22px;
  line-height: 1;
}

/* completato */
.folderView__status.fv-is-completed {
  grid-column: 5 !important;
  justify-self: center !important;

  display: inline-flex !important;
  width: 38px !important;
  height: 38px !important;
  align-items: center !important;
  justify-content: center !important;

  background: transparent !important;
  color: var(--ersel-green) !important;
  text-decoration: none !important;
}

.folderView__status.fv-is-completed::before {
  content: "✓";
  font-size: 28px;
  font-weight: 400;
}

/* responsive */
@media (max-width: 900px) {
  .section-coourse__menu .row-fluid {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .section-coourse__dropdown {
    width: 100% !important;
  }

  .slider-menu,
  .slider-menu .slick-track {
    flex-wrap: wrap !important;
  }

  .folderView__li {
    grid-template-columns: 46px 1fr !important;
    row-gap: 16px !important;
  }

  .folderView__action.fv-is-play,
  .folderView__action.fv-is-tracking,
  .folderView__status.fv-is-completed {
    grid-column: 2 !important;
    justify-self: start !important;
  }
}

/* =========================
   FIX MENU FRECCE + LESSON CTA
   ========================= */

/* elimina frecce duplicate / alte del menu */
.slider-menu__item a::before,
.slider-menu__item a::after {
  display: none !important;
  content: none !important;
}

.slider-menu__item:not(:first-child)::before {
  content: "›";
  display: inline-flex;
  align-items: center;
  margin-right: 18px;
  color: var(--ersel-text-light);
  font-weight: 800;
  transform: translateY(1px);
}

.slider-menu__item {
  display: inline-flex !important;
  align-items: center !important;
}

.slider-menu__item a {
  height: 46px !important;
  padding: 0 16px !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* box lezione: riallinea tutto */
.folderView__li {
  grid-template-columns: 54px 1fr 150px 52px 40px !important;
  align-items: center !important;
  padding: 22px 28px !important;
}

/* bottone continua dentro la riga, non sotto */
.folderView__action.fv-is-play {
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
}

/* icona tracking centrata */
.folderView__action.fv-is-tracking {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 !important;
}

.folderView__action.fv-is-tracking::before {
  display: block !important;
  line-height: 1 !important;
  transform: translateY(0);
}

/* evita che azioni legacy assolute spingano fuori layout */
.folderView__visibleActions,
.folderView__actions,
.actions-wrapper {
  position: static !important;
  inset: auto !important;
  transform: none !important;
}

/* =========================
   FIX FRECCE MENU + LEZIONI
   ========================= */

/* frecce menu: centrate verticalmente */
.slider-menu__item:not(:first-child)::before {
  align-self: center !important;
  transform: translateY(0) !important;
  line-height: 1 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* lista lezioni: griglia più stabile */
.folderView__li {
  grid-template-columns: 54px minmax(0, 1fr) 170px 56px 44px !important;
  align-items: center !important;
  min-height: 96px !important;
  padding: 22px 30px !important;
}

/* contenuto lezione */
.folderView__el {
  grid-column: 2 !important;
}

.folderView__label {
  display: block !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

/* bottone dentro la riga */
.folderView__action.fv-is-play {
  grid-column: 3 !important;
  grid-row: 1 !important;
  position: static !important;
  align-self: center !important;
  justify-self: end !important;
  margin: 0 !important;
}

/* icona tracking */
.folderView__action.fv-is-tracking {
  grid-column: 4 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
}

/* check finale */
.folderView__status.fv-is-completed {
  grid-column: 5 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
}

/* wrapper legacy: non devono influenzare il layout */
.actions-wrapper,
.folderView__visibleActions,
.folderView__actions {
  display: contents !important;
  position: static !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
}


/* =========================
   FINAL POLISH COURSE PAGE
   ========================= */

/* menu: elimina frecce strane e usa separatore coerente */
.slider-menu__item::before {
  display: none !important;
  content: none !important;
}

.slider-menu__item:not(:last-child)::after {
  content: "›";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 14px;
  color: var(--ersel-text-light);
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
}

.slider-menu .slick-track {
  align-items: center !important;
  gap: 0 !important;
}

.slider-menu__item {
  align-items: center !important;
}

.slider-menu__item a {
  height: 46px !important;
  padding: 0 16px !important;
}

/* lezione: layout più equilibrato */
.folderView__li {
  grid-template-columns: 54px minmax(0, 1fr) 170px 64px 50px !important;
  column-gap: 26px !important;
  padding: 24px 34px !important;
}

/* titolo più leggibile */
.folderView__label {
  font-size: 17px !important;
  letter-spacing: -0.01em;
}

/* bottone continua più centrato e con spazio */
.folderView__action.fv-is-play {
  justify-self: end !important;
  width: 150px !important;
  height: 42px !important;
  margin-right: 4px !important;
}

/* tracking più centrato */
.folderView__action.fv-is-tracking {
  width: 44px !important;
  height: 44px !important;
  justify-self: center !important;
}

.folderView__action.fv-is-tracking::before {
  transform: translateY(-1px);
}

/* check più puliti e distanziati */
.folderView__status.fv-is-completed {
  width: 42px !important;
  height: 42px !important;
  justify-self: center !important;
}

.folderView__status.fv-is-completed::before {
  font-size: 26px !important;
}

/* pallino sinistra un filo più soft */
.folderView__li::before {
  width: 40px !important;
  height: 40px !important;
}

/* riga leggermente più premium */
.folderView__li {
  box-shadow: 0 8px 24px rgba(var(--ersel-blue-rgb), 0.07) !important;
}

.folderView__li:has(.fv-is-play) {
  border-color: rgba(var(--ersel-orange-rgb), 0.32) !important;
}

/* =========================
   COURSE LESSON ROW - CLEANER
   ========================= */

.folderView__li {
  grid-template-columns: 46px minmax(0, 1fr) 180px 58px 58px !important;
  column-gap: 28px !important;
  min-height: 104px !important;
  padding: 26px 34px !important;
}

/* titolo leggermente più staccato dal pallino */
.folderView__el {
  padding-left: 4px !important;
}

.folderView__label {
  font-size: 17px !important;
  font-weight: 600 !important;
}

/* bottone meglio centrato nella riga */
.folderView__action.fv-is-play {
  width: 160px !important;
  height: 44px !important;
  justify-self: end !important;
  margin-right: 10px !important;
}

/* icona tracking più separata */
.folderView__action.fv-is-tracking {
  width: 46px !important;
  height: 46px !important;
  justify-self: center !important;
  margin-left: 4px !important;
}

/* check finale più ordinato */
.folderView__status.fv-is-completed {
  width: 46px !important;
  height: 46px !important;
  justify-self: center !important;
}

.folderView__status.fv-is-completed::before {
  font-size: 24px !important;
}

/* elimina doppio check/artefatti se arrivano da background legacy */
.folderView__status.fv-is-completed {
  background-image: none !important;
}

.folderView__action,
.folderView__status {
  background-size: 0 !important;
}

/* menu box: un filo più compatto e coerente */
.section-coourse__menu {
  padding: 8px 32px !important;
  padding-top: 0px !important;
}

.slider-menu__item a {
  font-size: 14px !important;
  height: 44px !important;
}

/* hero: distanzia meglio dal menu */
.section-coourse__menu {
  margin-top: 34px !important;
}

/* =========================
   FIX ACTIONS LEZIONE
   ========================= */

/* CONTINUA */
.folderView__action.fv-is-play {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  width: 150px !important;
  height: 42px !important;
  padding: 0 18px !important;

  line-height: 1 !important;
  text-indent: 0 !important;
  font-size: 0 !important;

  background-image: none !important;
  overflow: hidden !important;
}

.folderView__action.fv-is-play::before {
  content: "▶ CONTINUA" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
}

/* TRACKING */
.folderView__action.fv-is-tracking {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;

  line-height: 1 !important;
  text-indent: 0 !important;
  background-image: none !important;
  overflow: hidden !important;
}

.folderView__action.fv-is-tracking::before {
  content: "▥" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 100% !important;

  font-size: 21px !important;
  line-height: 1 !important;
  transform: none !important;
}

/* COMPLETED: elimina doppia icona legacy */
.folderView__status.fv-is-completed {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  background-image: none !important;
  color: var(--ersel-green) !important;

  font-size: 0 !important;
  line-height: 1 !important;
  text-indent: 0 !important;
  overflow: hidden !important;
}

.folderView__status.fv-is-completed::before {
  content: "✓" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 100% !important;

  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

/* se Forma usa anche ::after per l'icona */
.folderView__status.fv-is-completed::after,
.folderView__action.fv-is-tracking::after,
.folderView__action.fv-is-play::after {
  display: none !important;
  content: none !important;
}


/*#################*/


/* ==========================================================================
   SOLO PAGINA PERCORSI FORMATIVI
   Scope: .ersel-page-coursepath
   ========================================================================== */

.ersel-page-coursepath {
  max-width: 1600px;
  /*margin: 0 auto;*/
  margin-top: 8px !important;
  margin-right: -15px !important;
  margin-left: -15px !important;
}

/* Tabs superiori: Corsi / Percorsi */
.ersel-page-coursepath .buttonsBar.tabs-wrapper {
  margin: 24px 0 20px !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs {
  display: flex !important;
  gap: 14px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs > li > a {
  min-width: 170px !important;
  height: 48px !important;
  border-radius: var(--ersel-radius-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs > li.active > a {
  background: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
}

/* Barra filtri */
.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form {
  max-width: none !important;
  background: var(--ersel-blue) !important;
  border-radius: 18px !important;
  padding: 28px 32px !important;
  margin: 0 0 48px !important;
  box-shadow: var(--ersel-shadow-hover) !important;
}

.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form > .navbar {
  min-height: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 32px !important;
}

/* Stato: Tutti / Nuovo / In itinere / Completato */
.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills {
  order: 1;
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  flex: 1 1 auto;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li:first-child {
  display: none !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li {
  margin: 0 !important;
  padding: 0 !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a {
  display: inline-flex !important;
  align-items: center !important;
  height: 42px !important;
  padding: 0 0 6px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--ersel-white) !important;
  opacity: 0.78;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li.selected > a {
  opacity: 1;
  border-bottom: 2px solid var(--ersel-white) !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a::before,
.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a::after {
  display: none !important;
  content: none !important;
}

/* Search */
.ersel-page-coursepath .forma-quick-search-form > .navbar > #filter-container {
  order: 2;
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options,
.ersel-page-coursepath #coursepath_search_simple_filter_options .navbar-form {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
  display: flex !important;
  width: 320px !important;
}

.ersel-page-coursepath #coursepath_search_filter_text {
  height: 48px !important;
  border: 1px solid var(--ersel-border) !important;
  border-right: 0 !important;
  border-radius: var(--ersel-radius-sm) 0 0 var(--ersel-radius-sm) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-mid) !important;
  box-shadow: none !important;
  padding: 0 18px !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group-btn {
  position: static !important;
  top: auto !important;
  display: flex !important;
  width: 52px !important;
  height: 48px !important;
}

.ersel-page-coursepath #coursepath_search_filter_set2 {
  width: 52px !important;
  height: 48px !important;
  border: 1px solid var(--ersel-border) !important;
  border-left: 0 !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  box-shadow: none !important;
}

/* Card percorso */
.ersel-page-coursepath #div_course {
  padding: 0 !important;
}

.ersel-page-coursepath #coursepath-main-container {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
  overflow: hidden !important;
  margin-bottom: 28px !important;
}

.ersel-page-coursepath .coursepath-main-description-and-percentage {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 48px !important;
  align-items: center !important;
  padding: 38px 40px !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.ersel-page-coursepath .coursepath-child-description,
.ersel-page-coursepath .coursepath-child-percentage {
  width: auto !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ersel-page-coursepath #path_course_title {
  color: var(--ersel-blue) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  margin: 0 0 18px !important;
}

.ersel-page-coursepath #path_course_title::before {
  content: "PERCORSO MASS";
  display: table;
  margin-bottom: 22px;
  padding: 7px 16px;
  border-radius: var(--ersel-radius-sm);
  background: var(--ersel-blue-hover);
  color: var(--ersel-white);
  font-size: 12px;
  font-weight: 800;
}

.ersel-page-coursepath #path_course_description {
  color: var(--ersel-text-mid) !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

.ersel-page-coursepath .coursepath_percentage_title {
  display: block !important;
  color: var(--ersel-blue) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  text-align: center !important;
  margin-bottom: 18px !important;
}

.ersel-page-coursepath #path_courses_progress_background {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.ersel-page-coursepath .path_courses-progress-bar {
  width: 160px !important;
  height: 160px !important;
}

/* Riga espandi / attività corrente */
.ersel-page-coursepath .coursepath-collapse-container {
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
  padding: 24px 40px !important;
  background: var(--ersel-white) !important;
}

.ersel-page-coursepath .coursepath_action {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

.ersel-page-coursepath .coursepath_action strong {
  color: var(--ersel-orange) !important;
  font-size: 15px !important;
}

.ersel-page-coursepath .coursepath_action img {
  display: none !important;
}

.ersel-page-coursepath .coursepath_action .std_link {
  color: var(--ersel-blue-hover) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.ersel-page-coursepath .padding_current_activity {
  margin-right: 8px;
}

/* Dettagli corsi espansi */
.ersel-page-coursepath .coursepath_details {
  margin: 0 0 32px !important;
}

.ersel-page-coursepath .coursepath_details table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 14px !important;
}

.ersel-page-coursepath .coursepath_details tr {
  background: var(--ersel-white) !important;
  box-shadow: var(--ersel-shadow) !important;
}

.ersel-page-coursepath .coursepath_details td {
  padding: 20px 22px !important;
  border-top: 1px solid var(--ersel-border) !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  vertical-align: middle !important;
  background: var(--ersel-white) !important;
}

.ersel-page-coursepath .coursepath_details td:first-child {
  width: 64px;
  border-left: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius-sm) 0 0 var(--ersel-radius-sm) !important;
}

.ersel-page-coursepath .coursepath_details td:last-child {
  border-right: 1px solid var(--ersel-border) !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
}

.ersel-page-coursepath .coursepath_details td:last-child {
  border-right: 0 !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
  position: relative;
}

/* freccia */
.ersel-page-coursepath .coursepath_details td:last-child::after {
  content: "›";
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  color: var(--ersel-text-gray); /* grigio elegante */
  pointer-events: none;
}

.ersel-page-coursepath .course_type {
  width: 130px !important;
  font-size: 0 !important;
}

.ersel-page-coursepath .course_type::before {
  content: "e-learning";
  display: inline-flex;
  padding: 6px 14px;
  border-radius: var(--ersel-radius-pill);
  background: var(--ersel-orange);
  color: var(--ersel-white);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase !important;
}

.ersel-page-coursepath .coursepath_details .std_link {
  color: var(--ersel-blue-hover) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.ersel-page-coursepath #div_course .separator {
  border: 0 !important;
  height: 0px !important;
  background: var(--ersel-orange) !important;
  opacity: 0.45;
  margin: 32px 0 !important;
}

/* Responsive */
@media (max-width: 900px) {
  .ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form > .navbar,
  .ersel-page-coursepath .coursepath-main-description-and-percentage,
  .ersel-page-coursepath .coursepath-collapse-container {
    display: block !important;
  }

  .ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills {
    flex-wrap: wrap !important;
    margin-bottom: 22px !important;
  }

  .ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
    width: 100% !important;
  }
}

/* ==========================================================================
   SOLO PAGINA PERCORSI FORMATIVI
   Scope: .ersel-page-coursepath
   ========================================================================== */

.ersel-page-coursepath {
  max-width: 1380px;
  margin: 0 auto;
}

/* =========================
   TAB CORSI / PERCORSI
   ========================= */

.ersel-page-coursepath .buttonsBar.tabs-wrapper {
  margin: 24px 0 20px !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs {
  display: flex !important;
  gap: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs > li > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 38px !important;
  min-width: 130px !important;
  padding: 0 22px !important;
  border-radius: 6px !important;
  border: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .buttonsBar.tabs-wrapper .slider-menu--tabs > li.active > a {
  min-width: 170px !important;
  background: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.16) !important;
}

.ersel-page-coursepath #myCourseButton1::before {
  width: 20px !important;
  height: 20px !important;
  margin-right: 8px !important;
}

/* =========================
   QUICK SEARCH — BOX STILE MATERIALI
   ========================= */

.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form {
  max-width: none !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  padding: 28px 32px !important;
  margin: 0 0 44px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form > .navbar {
  min-height: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
}

/* filtri stato */
.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills {
  order: 1;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  flex: 1 1 auto;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li:first-child {
  display: none !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  padding: 0 18px !important;
  border-radius: var(--ersel-radius-sm) !important;
  color: var(--ersel-text-mid) !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li.selected > a {
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), 0.08) !important;
}

.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a::before,
.ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills > li > a::after {
  display: none !important;
  content: none !important;
}

/* search */
.ersel-page-coursepath .forma-quick-search-form > .navbar > #filter-container {
  order: 2;
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options,
.ersel-page-coursepath #coursepath_search_simple_filter_options .navbar-form {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
  display: flex !important;
  width: 280px !important;
}

.ersel-page-coursepath #coursepath_search_filter_text {
  height: 44px !important;
  border: 1px solid var(--ersel-border) !important;
  border-right: 0 !important;
  border-radius: var(--ersel-radius-sm) 0 0 var(--ersel-radius-sm) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-mid) !important;
  box-shadow: none !important;
  padding: 0 16px !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group-btn {
  position: static !important;
  top: auto !important;
  display: flex !important;
  width: 48px !important;
  height: 44px !important;
}

.ersel-page-coursepath #coursepath_search_filter_set2 {
  width: 48px !important;
  height: 44px !important;
  border: 1px solid var(--ersel-border) !important;
  border-left: 0 !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  box-shadow: none !important;
}

/* =========================
   CARD PERCORSO
   ========================= */

.ersel-page-coursepath #div_course {
  padding: 0 !important;
}

.ersel-page-coursepath #coursepath-main-container {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
  overflow: hidden !important;
  margin-bottom: 26px !important;
}

.ersel-page-coursepath .coursepath-main-description-and-percentage {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 48px !important;
  align-items: center !important;
  padding: 38px 40px !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.ersel-page-coursepath .coursepath-child-description,
.ersel-page-coursepath .coursepath-child-percentage {
  width: auto !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ersel-page-coursepath .textof {
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius-sm) !important;
  padding: 28px 30px !important;
  background: var(--ersel-white) !important;
}

.ersel-page-coursepath #path_course_title {
  color: var(--ersel-blue) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  margin: 0 0 18px !important;
}

.ersel-page-coursepath #path_course_title::before {
  content: "PERCORSO MASS";
  display: table;
  margin-bottom: 22px;
  padding: 7px 16px;
  border-radius: var(--ersel-radius-sm);
  background: var(--ersel-blue-hover);
  color: var(--ersel-white);
  font-size: 12px;
  font-weight: 800;
}

.ersel-page-coursepath #path_course_description {
  color: var(--ersel-text-mid) !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* percentuale */
.ersel-page-coursepath .coursepath-child-percentage .yui-u {
  width: 100% !important;
  float: none !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius-sm) !important;
  padding: 24px !important;
}

.ersel-page-coursepath .coursepath_percentage_title {
  display: block !important;
  color: var(--ersel-blue) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  text-align: center !important;
  margin-bottom: 18px !important;
}

.ersel-page-coursepath #path_courses_progress_background {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.ersel-page-coursepath .path_courses-progress-bar {
  width: 150px !important;
  height: 150px !important;
}

/* =========================
   COURSEPATH COLLAPSE — STILE BOX MATERIALI
   ========================= */

.ersel-page-coursepath .coursepath-collapse-container {
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  padding: 24px 40px !important;
  background: var(--ersel-white) !important;
}

.ersel-page-coursepath .coursepath_action {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

.ersel-page-coursepath .coursepath_action a,
.ersel-page-coursepath .coursepath_action span {
  display: inline-flex !important;
  align-items: center !important;
  height: 44px !important;
  text-decoration: none !important;
}

.ersel-page-coursepath .coursepath_action strong {
  color: var(--ersel-orange) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.ersel-page-coursepath .coursepath_action img {
  display: none !important;
}

.ersel-page-coursepath .coursepath_action .std_link {
  color: var(--ersel-blue-hover) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.ersel-page-coursepath .padding_current_activity {
  margin-right: 8px;
}

/* =========================
   DETTAGLI CORSI — STILE LEZIONI
   ========================= */

.ersel-page-coursepath .coursepath_details {
  margin: 0 0 32px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.ersel-page-coursepath .coursepath_details table,
.ersel-page-coursepath .coursepath_details tbody {
  display: block !important;
  width: 100% !important;
}

.ersel-page-coursepath .coursepath_details tr {
  display: grid !important;
  grid-template-columns: 48px 120px 1fr !important;
  align-items: center !important;
  gap: 24px !important;
  min-height: 76px !important;
  margin-bottom: 14px !important;
  padding: 0 24px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius) !important;
  box-shadow: var(--ersel-shadow) !important;
}

.ersel-page-coursepath .coursepath_details td {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  vertical-align: middle !important;
}

.ersel-page-coursepath .coursepath_details td:first-child {
  width: auto !important;
}

.ersel-page-coursepath .ico-sprite {
  display: inline-flex !important;
  width: 26px !important;
  height: 26px !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--ersel-orange) !important;
  border-radius: var(--ersel-radius-sm) !important;
  color: var(--ersel-white) !important;
}

.ersel-page-coursepath .ico-sprite::before {
  content: "✓";
  font-size: 16px;
  font-weight: 800;
}

.ersel-page-coursepath .ico-sprite span {
  display: none !important;
}

.ersel-page-coursepath .course_type {
  font-size: 0 !important;
  width: auto !important;
}

.ersel-page-coursepath .course_type::before {
  content: "e-learning";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  padding: 0 14px;
  border-radius: var(--ersel-radius-pill);
  background: var(--ersel-orange);
  color: var(--ersel-white);
  font-size: 12px;
  font-weight: 800;
  text-transform: lowercase;
}

.ersel-page-coursepath .coursepath_details .std_link {
  color: var(--ersel-blue-hover) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.ersel-page-coursepath #div_course .separator {
  border: 0 !important;
  height: 0px !important;
  background: var(--ersel-orange) !important;
  opacity: 0.45;
  margin: 32px 0 !important;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 900px) {
  .ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form > .navbar,
  .ersel-page-coursepath .coursepath-main-description-and-percentage,
  .ersel-page-coursepath .coursepath-collapse-container {
    display: block !important;
  }

  .ersel-page-coursepath .forma-quick-search-form > .navbar > .nav-pills {
    flex-wrap: wrap !important;
    margin-bottom: 22px !important;
  }

  .ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
    width: 100% !important;
  }

  .ersel-page-coursepath .coursepath_details tr {
    grid-template-columns: 36px 1fr !important;
    gap: 14px !important;
    padding: 18px !important;
  }

  .ersel-page-coursepath .course_type {
    grid-column: 2 !important;
  }
}

/* =========================================
   QUICK SEARCH - VERSIONE BLU (fix mirato)
   ========================================= */

.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form {
  background: var(--ersel-blue) !important;
  border: none !important;
  box-shadow: var(--ersel-shadow) !important;
}

/* container interno */
.ersel-page-coursepath > .col-md-12 > #middlearea > .forma-quick-search-form > .navbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0px !important;
}

/* =========================
   FILTRI (Tutti / Nuovo ...)
   ========================= */

.ersel-page-coursepath .forma-quick-search-form .nav-pills {
  background: transparent !important;
  border: none !important;
}

.ersel-page-coursepath .forma-quick-search-form .nav-pills > li > a {
  color: rgba(var(--ersel-white-rgb), 0.75) !important;
  font-weight: 700 !important;
}

.ersel-page-coursepath .forma-quick-search-form .nav-pills > li.selected > a {
  color: var(--ersel-white) !important;
  background: rgba(var(--ersel-white-rgb), 0.08) !important;
  border-radius: var(--ersel-radius-sm) !important;
}

/* rimuove icone strane */
.ersel-page-coursepath .forma-quick-search-form .nav-pills > li > a::before,
.ersel-page-coursepath .forma-quick-search-form .nav-pills > li > a::after {
  display: none !important;
}

/* =========================
   SEARCH BOX (bianca)
   ========================= */

.ersel-page-coursepath #coursepath_search_filter_text {
  background: var(--ersel-white) !important;
  border: none !important;
  color: var(--ersel-text-mid) !important;
}

.ersel-page-coursepath #coursepath_search_filter_set2 {
  background: var(--ersel-white) !important;
  border: none !important;
  color: var(--ersel-orange) !important;
}

/* bordo unico */
.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
  border-radius: var(--ersel-radius-sm) !important;
  overflow: hidden !important;
}

/* =========================================
   COURSEPATH MAIN CONTAINER - GRADIENT STYLE
   ========================================= */

.ersel-page-coursepath #coursepath-main-container {
  background: linear-gradient(
    90deg,
    rgba(var(--ersel-blue-rgb), 0.05) 0%,
    rgba(var(--ersel-blue-rgb), 0.02) 40%,
    var(--ersel-white) 100%
  ) !important;

  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius) !important;

  box-shadow: var(--ersel-shadow) !important;

  padding: 28px 32px !important;
}

/* =========================
   BLOCCO INTERNO (titolo)
   ========================= */

.ersel-page-coursepath #path_course_title {
  font-size: 26px !important;
  font-weight: 600 !important;
  color: var(--ersel-text-dark) !important;
  letter-spacing: 0.3px;
}

.ersel-page-coursepath #path_course_description {
  color: var(--ersel-text-light) !important;
  margin-top: 6px;
}

/* =========================
   BOX PERCENTUALE DESTRA
   ========================= */

.ersel-page-coursepath .coursepath-child-percentage {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius-sm) !important;

  padding: 20px !important;

  box-shadow: 0 2px 8px rgba(var(--ersel-black-rgb), 0.04) !important;
}

/* titolo "Completati" */
.ersel-page-coursepath .coursepath_percentage_title {
  display: block;
  font-weight: 700;
  color: var(--ersel-text-dark);
  margin-bottom: 10px;
}

/* =========================
   SEZIONE ATTIVITÀ CORRENTE
   ========================= */

.ersel-page-coursepath .coursepath-collapse-container {
  margin-top: 20px;
  padding-top: 16px;

  border-top: 1px solid var(--ersel-border);

  display: flex;
  align-items: center;
  gap: 24px;
}

/* label arancione */
.ersel-page-coursepath .padding_current_activity {
  color: var(--ersel-orange) !important;
}

/* link attività */
.ersel-page-coursepath .coursepath-collapse-container a.std_link {
  color: var(--ersel-blue) !important;
  font-weight: 600;
}

/* hover */
.ersel-page-coursepath .coursepath-collapse-container a.std_link:hover {
  color: var(--ersel-orange) !important;
}

/* =========================================
   COURSEPATH CARD - COMPACT GRADIENT FIX
   ========================================= */

.ersel-page-coursepath #coursepath-main-container {
  padding: 0 !important;
  overflow: hidden !important;
  background: linear-gradient(
    100deg,
    rgba(var(--ersel-blue-rgb), 0.055) 0%,
    rgba(var(--ersel-blue-rgb), 0.025) 42%,
    rgba(var(--ersel-orange-rgb), 0.045) 100%
  ) !important;
}

/* riduce drasticamente altezza blocco */
.ersel-page-coursepath .coursepath-main-description-and-percentage {
  min-height: 0 !important;
  padding: 5px 34px !important;
  grid-template-columns: 1fr 220px !important;
  gap: 28px !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

/* elimina box bianco/bordo descrizione */
.ersel-page-coursepath .textof,
.ersel-page-coursepath .coursepath-child-description {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* titolo più compatto */
.ersel-page-coursepath #path_course_title {
  font-size: 24px !important;
  margin-bottom: 10px !important;
}

.ersel-page-coursepath #path_course_title::before {
  margin-bottom: 14px !important;
}

/* descrizione compatta */
.ersel-page-coursepath #path_course_description {
  font-size: 15px !important;
}

/* elimina box/bordi percentuale */
.ersel-page-coursepath .coursepath-child-percentage,
.ersel-page-coursepath .coursepath-child-percentage .yui-u,
.ersel-page-coursepath #path_courses_progress_background {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* percentuale più piccola */
.ersel-page-coursepath .coursepath_percentage_title {
  font-size: 18px !important;
  margin-bottom: 8px !important;
}

.ersel-page-coursepath .path_courses-progress-bar {
  width: 115px !important;
  height: 115px !important;
}

/* riga attività corrente più compatta */
.ersel-page-coursepath .coursepath-collapse-container {
  padding: 16px 34px !important;
  background: transparent !important;
}

/* Nasconde etichetta tipo "PERCORSO MASS" */
.ersel-page-coursepath #path_course_title::before,
.ersel-page-coursepath .coursepath-child-description .textof span:first-child {
  display: none !important;
}

/* =========================================
   FILTRI NEL BOX BLU - VISIBILITÀ
   ========================================= */

.ersel-page-coursepath .forma-quick-search-form .nav-pills > li > a {
  color: rgba(var(--ersel-white-rgb), 0.65) !important;
  font-weight: 600 !important;
  transition: all 0.2s ease;
}

/* hover */
.ersel-page-coursepath .forma-quick-search-form .nav-pills > li > a:hover {
  color: var(--ersel-white) !important;
}

/* attivo (IMPORTANTISSIMO) */
.ersel-page-coursepath .forma-quick-search-form .nav-pills > li.selected > a {
  color: var(--ersel-white) !important;
  background: transparent !important;
  position: relative;
}

/* underline stile moderno (come Materiali) */
.ersel-page-coursepath .forma-quick-search-form .nav-pills > li.selected > a::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--ersel-orange);
  border-radius: 3px;
}

/* =========================================
   FIX FORZATO LINK FILTRI (VISIBILITÀ)
   ========================================= */

.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li > a,
.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li.selected > a,
.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li.active > a {
  color: var(--ersel-white) !important;
  opacity: 1 !important;
}

/* hover */
.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li > a:hover {
  color: var(--ersel-white) !important;
  opacity: 1 !important;
}

/* rimuove qualsiasi grigio/disabled */
.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li {
  opacity: 1 !important;
}

/* underline attivo */
.ersel-page-coursepath .forma-quick-search-form .nav.nav-pills > li.selected > a::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--ersel-orange);
  border-radius: 3px;
}


/* ==========================================================================
   FIX: BOTTONI CORSI / PERCORSI (uniformati alla home)
   ========================================================================== */

.ersel-page-coursepath .buttonsBar.tabs-wrapper {
  margin-bottom: 20px;
}

.ersel-page-coursepath .slider-menu--tabs {
  display: flex;
  gap: 12px;
  border: none !important;
}

.ersel-page-coursepath .slider-menu--tabs > li {
  float: none !important;
}

.ersel-page-coursepath .slider-menu--tabs > li > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 18px !important;
  border-radius: 8px !important;

  background-color: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;

  border: 1px solid var(--ersel-border) !important;

  font-weight: 700 !important;
  box-shadow: none !important;
}

/* HOVER */
.ersel-page-coursepath .slider-menu--tabs > li > a:hover {
  color: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
  background-color: var(--ersel-white) !important;
  transform: translateY(-1px);
}

/* ACTIVE (quello arancione) */
.ersel-page-coursepath .slider-menu--tabs > li.active > a {
  background-color: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  border-color: var(--ersel-orange) !important;

  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), 0.22) !important;
}

/* rimuove stili bootstrap che rompono tutto */
.ersel-page-coursepath .slider-menu--tabs > li > a em {
  font-style: normal !important;
}

.ersel-page-coursepath #myCourseButton1,
.ersel-page-coursepath #myCourseButton2{
    font-size: 1rem !important;
    font-weight: 500 !important;
    min-width: auto !important;
    width: auto !important;
    max-width: auto !important;
    height: 36px !important;
    padding: 0 27px !important;
}

.ersel-page-coursepath .slider-menu--tabs > li.active #myCourseButton1,
.ersel-page-coursepath .slider-menu--tabs > li.active #myCourseButton2 {
    font-weight: 600 !important;
}





/* =========================================================
   COURSEPATH - FILTER BAR fix finale come immagine (3).png
   ========================================================= */

.ersel-page-coursepath .quick_search_form.forma-quick-search-form {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 30px !important;
  padding: 16px 24px !important;
  background: var(--ersel-blue) !important;
  border-radius: 16px !important;
  border: 0 !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .quick_search_form > .navbar {
  display: grid !important;
  grid-template-columns: 1fr 250px !important;
  align-items: center !important;
  gap: 24px !important;
  min-height: 43px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

/* nasconde toggle mobile */
.ersel-page-coursepath .quick_search_form .navbar-header {
  display: none !important;
}

/* menu filtri a sinistra, senza spazio iniziale */
.ersel-page-coursepath .quick_search_form .nav.nav-pills {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 43px !important;
  background: transparent !important;
  border: 0 !important;
}

.ersel-page-coursepath .quick_search_form .nav.nav-pills > li {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  list-style: none !important;
}

/* primo li vuoto FormaLMS */
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li:first-child {
  display: none !important;
}

.ersel-page-coursepath .quick_search_form .nav.nav-pills > li > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 36px !important;
  padding: 0 22px !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: rgba(var(--ersel-white-rgb), 0.65) !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

/* active: nel tuo HTML la classe selected può stare sul li vuoto.
   Questo forza "Tutti" come active quando è il primo filtro visibile */
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li:nth-child(2) > a,
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li.selected > a,
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li > a:hover {
  background: rgba(var(--ersel-white-rgb), 0.12) !important;
  color: var(--ersel-white) !important;
  font-weight: 700 !important;
}

/* search a destra */
.ersel-page-coursepath .quick_search_form #filter-container {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  width: 250px !important;
  height: 43px !important;
  visibility: visible !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ersel-page-coursepath .quick_search_form .simple_search_box,
.ersel-page-coursepath .quick_search_form .navbar-form,
.ersel-page-coursepath .quick_search_form .form-group {
  display: block !important;
  width: 250px !important;
  height: 43px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .quick_search_form .input-group {
  display: flex !important;
  align-items: stretch !important;
  width: 250px !important;
  height: 43px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-collapse: separate !important;
}

/* input */
.ersel-page-coursepath .quick_search_form .input-group .form-control {
  display: block !important;
  flex: 1 1 auto !important;
  width: calc(100% - 44px) !important;
  height: 43px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-radius: 9px 0 0 9px !important;
  border: 1px solid rgba(var(--ersel-white-rgb), 0.18) !important;
  border-right: 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .quick_search_form .input-group .form-control::placeholder {
  color: var(--ersel-text-placeholder) !important;
}

/* bottone search: non assoluto, così non rompe il campo */
.ersel-page-coursepath .quick_search_form .input-group-btn {
  position: static !important;
  display: flex !important;
  width: 44px !important;
  height: 43px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.ersel-page-coursepath .quick_search_form .input-group-btn .btn {
  all: unset !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 43px !important;
  border-radius: 0 9px 9px 0 !important;
  background: var(--ersel-white) !important;
  border: 1px solid rgba(var(--ersel-white-rgb), 0.18) !important;
  border-left: 0 !important;
  color: var(--ersel-text-placeholder) !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

.ersel-page-coursepath .quick_search_form .glyphicon-search {
  font-size: 15px !important;
  color: var(--ersel-text-placeholder) !important;
}

/* mobile */
@media (max-width: 768px) {
  .ersel-page-coursepath .quick_search_form > .navbar {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .ersel-page-coursepath .quick_search_form #filter-container,
  .ersel-page-coursepath .quick_search_form .simple_search_box,
  .ersel-page-coursepath .quick_search_form .navbar-form,
  .ersel-page-coursepath .quick_search_form .form-group,
  .ersel-page-coursepath .quick_search_form .input-group {
    grid-column: 1 !important;
    width: 100% !important;
  }

  .ersel-page-coursepath .quick_search_form .nav.nav-pills {
    flex-wrap: wrap !important;
  }
}



/* =========================================================
   FIX COURSEPATH FILTER BAR - ACTIVE + SEARCH
   ========================================================= */

/* container */
.ersel-page-coursepath .quick_search_form.forma-quick-search-form {
  padding: 16px 24px !important;
}

/* evita spazio iniziale */
.ersel-page-coursepath .quick_search_form .nav.nav-pills {
  gap: 8px !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* reset active precedente */
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li > a {
  background: transparent !important;
  color: rgba(var(--ersel-white-rgb), .65) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* nasconde li vuoto */
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li:first-child {
  display: none !important;
}

/* active reale */
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li.selected:not(:first-child) > a,
.ersel-page-coursepath .quick_search_form .nav.nav-pills > li > a:hover {
  background: rgba(var(--ersel-white-rgb), .12) !important;
  color: var(--ersel-white) !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
}

/* Tutti active SOLO quando nessun altro filtro è selected */
.ersel-page-coursepath .quick_search_form .nav.nav-pills:not(:has(> li:not(:first-child).selected)) > li:nth-child(2) > a {
  background: rgba(var(--ersel-white-rgb), .12) !important;
  color: var(--ersel-white) !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
}

/* SEARCH: campo unico, icona dentro a destra */
.ersel-page-coursepath .quick_search_form .input-group {
  position: relative !important;
  display: block !important;
  width: 250px !important;
  height: 40px !important;
}

.ersel-page-coursepath .quick_search_form .input-group .form-control {
  display: block !important;
  width: 100% !important;
  height: 40px !important;
  padding: 0 44px 0 16px !important;
  border-radius: 7px !important;
  border: 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .quick_search_form .input-group-btn {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 44px !important;
  height: 40px !important;
  transform: none !important;
  z-index: 5 !important;
}

.ersel-page-coursepath .quick_search_form .input-group-btn .btn {
  all: unset !important;
  width: 44px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  cursor: pointer !important;
}

.ersel-page-coursepath .quick_search_form .glyphicon-search {
  color: var(--ersel-text-placeholder) !important;
  font-size: 14px !important;
}


/* =========================================================
   COURSEPATH FILTER BAR - OVERRIDE DEFINITIVO
   ========================================================= */

/* layout box */
.ersel-page-coursepath .quick_search_form.forma-quick-search-form {
  background: var(--ersel-blue) !important;
  border-radius: 16px !important;
  padding: 16px 24px !important;
  margin-bottom: 30px !important;
  box-shadow: none !important;
}

.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 43px !important;
  background: transparent !important;
  border: 0 !important;
}

/* filtri */
.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills > li:first-child {
  display: none !important;
}

/* reset TUTTI gli stati */
.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills > li > a,
.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills > li:nth-child(2) > a {
  height: 36px !important;
  padding: 0 20px !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: rgba(var(--ersel-white-rgb), .65) !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* active vero */
.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills > li.selected:not(:first-child) > a,
.ersel-page-coursepath .quick_search_form.forma-quick-search-form > .navbar > .nav-pills > li > a:hover {
  background: rgba(var(--ersel-white-rgb), .12) !important;
  color: var(--ersel-white) !important;
  font-weight: 600 !important;
}

/* SEARCH */
.ersel-page-coursepath #filter-container {
  display: block !important;
  width: 250px !important;
  height: 40px !important;
  flex: 0 0 250px !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  overflow: visible !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options,
.ersel-page-coursepath #coursepath_search_simple_filter_options .navbar-form,
.ersel-page-coursepath #coursepath_search_simple_filter_options .form-group {
  width: 250px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group {
  position: relative !important;
  display: block !important;
  width: 250px !important;
  height: 40px !important;
}

/* input intero */
.ersel-page-coursepath #coursepath_search_filter_text {
  width: 100% !important;
  height: 40px !important;
  padding: 0 42px 0 15px !important;
  border: 0 !important;
  border-radius: 7px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  box-shadow: none !important;
}

/* bottone lente sopra l'input, non a fianco */
.ersel-page-coursepath #coursepath_search_simple_filter_options .input-group-btn {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  z-index: 10 !important;
}

.ersel-page-coursepath #coursepath_search_filter_set2 {
  all: unset !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  cursor: pointer !important;
}

.ersel-page-coursepath #coursepath_search_filter_set2 .glyphicon-search {
  color: var(--ersel-text-placeholder) !important;
  font-size: 14px !important;
}

/* nasconde toggle mobile */
.ersel-page-coursepath .quick_search_form .navbar-header {
  display: none !important;
}

/* =========================================================
   BOOTSTRAP SELECT - dropdown aperte Ersel
   ========================================================= */

.forma-quick-search-form .bootstrap-select.open {
  z-index: 50 !important;
}

.forma-quick-search-form .bootstrap-select.open > .dropdown-toggle {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
}

.forma-quick-search-form .bootstrap-select > .dropdown-menu.open {
  margin-top: 10px !important;
  padding: 8px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 14px !important;
  background: var(--ersel-white) !important;
  box-shadow: 0 18px 40px rgba(var(--ersel-shadow-rgb), .14) !important;
  overflow: hidden !important;
}

.forma-quick-search-form .bootstrap-select .dropdown-menu.inner {
  padding: 4px !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.forma-quick-search-form .bootstrap-select .dropdown-menu.inner > li {
  margin: 2px 0 !important;
}

.forma-quick-search-form .bootstrap-select .dropdown-menu.inner > li > a {
  min-height: 42px !important;
  padding: 11px 42px 11px 14px !important;
  border-radius: 10px !important;
  color: var(--ersel-blue) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  background: transparent !important;
  outline: 0 !important;
  text-transform: uppercase !important;
}

.forma-quick-search-form .bootstrap-select .dropdown-menu.inner > li > a:hover,
.forma-quick-search-form .bootstrap-select .dropdown-menu.inner > li > a:focus {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.forma-quick-search-form .bootstrap-select .dropdown-menu.inner > li.selected > a {
  background: rgba(var(--ersel-orange-rgb), .12) !important;
  color: var(--ersel-orange) !important;
  font-weight: 600 !important;
}

.forma-quick-search-form .bootstrap-select .check-mark {
  right: 14px !important;
  margin-top: 0 !important;
  color: var(--ersel-orange) !important;
  font-size: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* box Select All / Deselect All */
.forma-quick-search-form .bootstrap-select .bs-actionsbox {
  padding: 6px 4px 10px !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  margin-bottom: 6px !important;
}

.forma-quick-search-form .bootstrap-select .bs-actionsbox .btn-group {
  display: flex !important;
  gap: 8px !important;
}

.forma-quick-search-form .bootstrap-select .bs-actionsbox .actions-btn {
  all: unset !important;
  flex: 1 1 0 !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 8px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

.forma-quick-search-form .bootstrap-select .bs-actionsbox .actions-btn:hover {
  background: rgba(var(--ersel-orange-rgb), .10) !important;
  color: var(--ersel-orange) !important;
}

/* evita highlight nero/grigio del browser/plugin */
.forma-quick-search-form .bootstrap-select .dropdown-menu li.active > a,
.forma-quick-search-form .bootstrap-select .dropdown-menu li.active > a:hover,
.forma-quick-search-form .bootstrap-select .dropdown-menu li.active > a:focus {
  background: rgba(var(--ersel-orange-rgb), .12) !important;
  color: var(--ersel-orange) !important;
}


/* =========================================================
   COURSE DETAIL - forma-dropdown fix selected / hover / border
   ========================================================= */

.section-coourse__menu .forma-dropdown {
  position: relative !important;
  display: inline-flex !important;
  align-items: stretch !important;
  min-width: 300px !important;
  height: 52px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: var(--ersel-radius-sm) !important;
  background: var(--ersel-white) !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* stato open/focus: un solo bordo coerente */
.section-coourse__menu .forma-dropdown.open,
.section-coourse__menu .forma-dropdown:focus-within {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
}

/* bottone testo selezionato */
.section-coourse__menu .forma-dropdown__selected {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 50px !important;
  padding: 0 18px 0 22px !important;
  border: 0 !important;
  border-radius: var(--ersel-radius-sm) 0 0 var(--ersel-radius-sm) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-align: left !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* bottone freccia */
.section-coourse__menu .forma-dropdown__toggle {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 50px !important;
  border: 0 !important;
  border-left: 1px solid var(--ersel-border) !important;
  border-radius: 0 var(--ersel-radius-sm) var(--ersel-radius-sm) 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  box-shadow: none !important;
}

/* hover/active: NON far sparire il testo */
.section-coourse__menu .forma-dropdown__selected:hover,
.section-coourse__menu .forma-dropdown__selected:focus,
.section-coourse__menu .forma-dropdown__selected:active,
.section-coourse__menu .forma-dropdown.open .forma-dropdown__selected,
.section-coourse__menu .forma-dropdown.open .forma-dropdown__selected:hover,
.section-coourse__menu .forma-dropdown.open .forma-dropdown__selected:focus,
.section-coourse__menu .forma-dropdown.open .forma-dropdown__selected:active {
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  text-indent: 0 !important;
}

/* hover/active toggle */
.section-coourse__menu .forma-dropdown__toggle:hover,
.section-coourse__menu .forma-dropdown__toggle:focus,
.section-coourse__menu .forma-dropdown__toggle:active,
.section-coourse__menu .forma-dropdown.open .forma-dropdown__toggle {
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;
  border-left: 1px solid var(--ersel-border) !important;
  box-shadow: none !important;
}

/* icona freccia */
.section-coourse__menu .forma-dropdown__toggle .glyphicon {
  color: var(--ersel-orange) !important;
  font-size: 13px !important;
  transition: transform .18s ease !important;
}

.section-coourse__menu .forma-dropdown.open .forma-dropdown__toggle .glyphicon {
  transform: rotate(180deg) !important;
}

/* menu aperto */
.section-coourse__menu .forma-dropdown > .dropdown-menu {
  width: 100% !important;
  min-width: 100% !important;
  margin: 8px 0 0 !important;
  padding: 8px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 12px !important;
  background: var(--ersel-white) !important;
  box-shadow: 0 16px 34px rgba(var(--ersel-shadow-rgb), .16) !important;
  overflow: hidden !important;
}

.section-coourse__menu .forma-dropdown > .dropdown-menu > li {
  margin: 2px 0 !important;
}

.section-coourse__menu .forma-dropdown > .dropdown-menu > li > a {
  display: flex !important;
  align-items: center !important;
  gap: 34px !important;
  min-height: 42px !important;
  padding: 10px 14px !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--ersel-text-strong) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.section-coourse__menu .forma-dropdown > .dropdown-menu > li > a:hover,
.section-coourse__menu .forma-dropdown > .dropdown-menu > li > a:focus {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

/* evita effetti legacy sulle icone che alterano testo/bordi */
.section-coourse__menu .forma-dropdown .forma-button::before,
.section-coourse__menu .forma-dropdown .forma-button::after {
  display: none !important;
  content: none !important;
}

/* =========================================================
   ERSEL - CALENDARIO EVENTI
   ========================================================= */

#displayCalendar {
  width: 100% !important;
  max-width: 100% !important;
  clear: both !important;
  margin: 28px 0 !important;
}

#displayCalendar .calendar {
  width: 100% !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
  padding: 24px !important;
  overflow: hidden !important;
}

#displayCalendar .calendar table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

#displayCalendar .calendar .title {
  padding: 0 0 22px !important;
  color: var(--ersel-blue) !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  text-align: left !important;
  text-transform: uppercase !important;
  border: 0 !important;
  background: transparent !important;
}


#displayCalendar .calendar .headrow td {
  height: 42px !important;
  padding: 0 6px 18px !important;
  padding-top: 20px !important;
  border: 0 !important;
  background: transparent !important;
}

#displayCalendar .calendar .button div {
  height: 38px !important;
  min-width: 42px !important;
  padding: 0 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 8px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

#displayCalendar .calendar .button div:hover {
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
}

#displayCalendar .calendar .button:not(.nav) div {
  background: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
}

#displayCalendar .calendar .daynames td {
  height: 44px !important;
  padding: 12px 10px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  border: 0 !important;
}

#displayCalendar .calendar .daynames td:first-child {
  border-radius: 10px 0 0 10px !important;
}

#displayCalendar .calendar .daynames td:last-child {
  border-radius: 0 10px 10px 0 !important;
}

#displayCalendar .calendar tbody td {
  position: relative !important;
  width: 14.285% !important;
  height: 92px !important;
  padding: 14px !important;
  vertical-align: top !important;
  text-align: left !important;
  border: 1px solid var(--ersel-border) !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}

#displayCalendar .calendar tbody tr td:last-child {
  border-right: 1px solid var(--ersel-border) !important;
}

#displayCalendar .calendar tbody tr:last-child td {
  border-bottom: 1px solid var(--ersel-border) !important;
}

#displayCalendar .calendar tbody td.emptycell {
  background: var(--ersel-bg-soft) !important;
  color: transparent !important;
}

#displayCalendar .calendar tbody td.weekend {
  background: rgba(var(--ersel-orange-rgb), .035) !important;
}

#displayCalendar .calendar tbody td.today,
#displayCalendar .calendar tbody td.selected {
  background: rgba(var(--ersel-orange-rgb), .10) !important;
  color: var(--ersel-orange) !important;
  box-shadow: inset 0 0 0 2px var(--ersel-orange) !important;
}

#displayCalendar .calendar .addEvent {
  position: absolute !important;
  right: 10px !important;
  top: 10px !important;
  visibility: visible !important;
}

#displayCalendar .calendar .addEventLink {
  width: 24px !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: rgba(var(--ersel-orange-rgb), .10) !important;
  color: var(--ersel-orange) !important;
  text-decoration: none !important;
  font-size: 0 !important;
}

#displayCalendar .calendar .addEventLink::before {
  content: "+" !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

#displayCalendar .calendar .addEventLink:hover {
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
}

#displayCalendar .calendar .addEventLink span {
  display: none !important;
}

#displayCalendar .calendar .footrow,
#displayCalendar .calendar .ttip {
  display: none !important;
}

#displayCalendar .calendar .combo {
  display: none !important;
}

@media (max-width: 768px) {
  #displayCalendar .calendar {
    padding: 16px !important;
    overflow-x: auto !important;
  }

  #displayCalendar .calendar table {
    min-width: 720px !important;
  }

  #displayCalendar .calendar .title {
    font-size: 22px !important;
  }
}

/* =========================================================
   ERSEL - PAGELLA / VOTI CORSO
   ========================================================= */

#table_pagella {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: var(--ersel-white) !important;
  border: 0 !important;
}

#table_pagella_wrapper,
#table_pagella,
#table_pagella * {
  box-sizing: border-box !important;
}

#table_pagella.closest,
#table_pagella .closest {
  border: 0 !important;
}

#table_pagella {
  overflow: hidden !important;
}

.std_block:has(#table_pagella) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.std_block:has(#table_pagella) .table-responsive {
  width: 100% !important;
  margin: 28px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.std_block:has(#table_pagella) .panel.panel-default {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
  overflow: hidden !important;
}

.std_block:has(#table_pagella) .panel-heading {
  padding: 24px 28px !important;
  background: var(--ersel-white) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-blue) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

#table_pagella thead tr {
  background: var(--ersel-bg-soft) !important;
}

#table_pagella thead th {
  padding: 18px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  vertical-align: middle !important;
}

#table_pagella thead th:first-child {
  padding-left: 28px !important;
}

#table_pagella thead th:last-child {
  padding-right: 28px !important;
}

#table_pagella tbody td {
  padding: 18px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  vertical-align: middle !important;
  background: var(--ersel-white) !important;
}

#table_pagella tbody tr:hover td {
  background: rgba(var(--ersel-orange-rgb), .035) !important;
}

#table_pagella .align_center,
#table_pagella th.align_center,
#table_pagella td.align_center {
  text-align: center !important;
}

#table_pagella tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* stato tabella vuota */
#table_pagella tbody:empty::after {
  content: "Non sono ancora presenti voti per questo corso.";
  display: block;
  padding: 28px;
  color: var(--ersel-text-light);
  font-size: 15px;
  font-weight: 600;
}

/* responsive */
@media (max-width: 768px) {
  .std_block:has(#table_pagella) .table-responsive {
    overflow-x: auto !important;
  }

  #table_pagella {
    min-width: 900px !important;
  }

  .std_block:has(#table_pagella) .panel-heading {
    padding: 20px !important;
    font-size: 16px !important;
  }
}


/* =========================================================
   ERSEL - GLOBAL POLISH / MICRO UX
   Da aggiungere in fondo a custom.css
   ========================================================= */

/* Transizioni morbide sui componenti principali */
a,
button,
.forma-button,
.course-box,
.course-box__cta__button,
.folderView__li,
.folderView__action,
.folderView__status,
.forma-dropdown,
.forma-dropdown__selected,
.forma-dropdown__toggle,
.bootstrap-select > .dropdown-toggle,
.filterBar__buttonLink,
.filterBar__search,
.filterBar__reset,
#displayCalendar .calendar tbody td.day,
#table_pagella tbody td {
  transition: all .18s ease !important;
}

/* Focus accessibile e coerente */
a:focus-visible,
button:focus-visible,
.forma-button:focus-visible,
.form-control:focus-visible,
.forma-dropdown__selected:focus-visible,
.forma-dropdown__toggle:focus-visible,
.bootstrap-select > .dropdown-toggle:focus-visible {
  outline: 2px solid var(--ersel-orange) !important;
  outline-offset: 3px !important;
}

/* =========================================================
   COURSE CARD - miglior hover
   ========================================================= */

.course-box:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 18px 36px rgba(var(--ersel-shadow-rgb), .14) !important;
}

.course-box__cta__button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px rgba(var(--ersel-blue-rgb), .18) !important;
}

/* =========================================================
   COURSE LESSON ROW - miglior interazione
   ========================================================= */

.folderView__li:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 30px rgba(var(--ersel-blue-rgb), .10) !important;
}

.folderView__action.fv-is-play:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 26px rgba(var(--ersel-orange-rgb), .24) !important;
}

/* =========================================================
   COURSE TABS - active più premium
   ========================================================= */

.slider-menu__item a:hover {
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

.slider-menu__item.is-selected a {
  background: rgba(var(--ersel-orange-rgb), .10) !important;
  color: var(--ersel-orange) !important;
}

/* =========================================================
   CALENDARIO - hover + stato oggi
   ========================================================= */

#displayCalendar .calendar tbody td.day {
  cursor: pointer !important;
}

#displayCalendar .calendar tbody td.day:hover {
  background: rgba(var(--ersel-orange-rgb), .06) !important;
  transform: scale(1.015) !important;
  z-index: 2 !important;
  box-shadow: inset 0 0 0 1px rgba(var(--ersel-orange-rgb), .35) !important;
}

#displayCalendar .calendar tbody td.today,
#displayCalendar .calendar tbody td.selected {
  background: rgba(var(--ersel-orange-rgb), .11) !important;
  color: var(--ersel-orange) !important;
  box-shadow:
    inset 0 0 0 2px var(--ersel-orange),
    0 8px 18px rgba(var(--ersel-orange-rgb), .10) !important;
}

/* =========================================================
   TABELLA PAGELLA - zebra + hover
   ========================================================= */

#table_pagella tbody tr:nth-child(even) td {
  background: rgba(var(--ersel-blue-rgb), .018) !important;
}

#table_pagella tbody tr:hover td {
  background: rgba(var(--ersel-orange-rgb), .055) !important;
}

#table_pagella td.align_center {
  font-weight: 600 !important;
  color: var(--ersel-blue) !important;
}

/* =========================================================
   DROPDOWN / SELECT - hover coerente
   ========================================================= */

.forma-dropdown > .dropdown-menu > li > a:hover,
.forma-dropdown > .dropdown-menu > li > a:focus,
.bootstrap-select .dropdown-menu.inner > li > a:hover,
.bootstrap-select .dropdown-menu.inner > li > a:focus {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.forma-dropdown.open,
.bootstrap-select.open > .dropdown-toggle {
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
}

/* =========================================================
   BOTTONI - feedback click
   ========================================================= */

.forma-button:active,
.filterBar__search:active,
.filterBar__reset:active,
.course-box__cta__button:active,
.folderView__action.fv-is-play:active {
  transform: translateY(0) scale(.99) !important;
}

/* FIX DEFINITIVO SEARCH INPUT */
.forma-quick-search-form .filterBar__searchInput.input-group {
  position: relative !important;
  display: block !important;
  width: 270px !important;
  height: 50px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1.5px solid var(--ersel-border) !important;
  border-radius: 999px !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: none !important;
  margin-left: 26px !important;
}

.forma-quick-search-form .filterBar__searchInput.input-group:hover,
.forma-quick-search-form .filterBar__searchInput.input-group:focus-within {
  border-color: var(--ersel-orange) !important;
}

.forma-quick-search-form #course_search_filter_text {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 56px 38px 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.forma-quick-search-form .filterBar__searchInput .input-group-btn {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 52px !important;
  height: 100% !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
}

.forma-quick-search-form #course_search_filter_set2 {
  all: unset !important;
  width: 52px !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  color: var(--ersel-orange) !important;
}

.forma-quick-search-form #course_search_filter_set2 .glyphicon-search {
  color: var(--ersel-orange) !important;
  font-size: 17px !important;
}

/* rende cliccabile la lente */
.forma-quick-search-form .filterBar__searchInput .input-group-btn {
  z-index: 2 !important;
}

.forma-quick-search-form #course_search_filter_text {
  position: relative;
  z-index: 1;
}





/* =========================================================
   TEACHER AREA - FolderView / gestione oggetti corso
   Scope: .teacher-area
   ========================================================= */

/* contenitore lista */
.teacher-area .folderView {
  width: 100% !important;
  background: transparent !important;
  padding: 0 !important;
}

.teacher-area .folderView__ul {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  counter-reset: teacherLesson !important;
}

/* card riga */
.teacher-area .folderView__li {
  counter-increment: teacherLesson !important;
  position: relative !important;

  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  column-gap: 22px !important;

  min-height: 92px !important;
  width: 100% !important;
  padding: 22px 28px !important;

  background: var(--ersel-white) !important;
  border: 1px solid rgba(var(--ersel-orange-rgb), .30) !important;
  border-radius: var(--ersel-radius) !important;
  box-shadow: 0 8px 24px rgba(var(--ersel-blue-rgb), .07) !important;
  overflow: visible !important;
}

/* stato/icona sinistra */
.teacher-area .folderView__li::before {
  content: "•••" !important;
  grid-column: 1 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 40px !important;
  height: 40px !important;

  border-radius: 50% !important;
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;

  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

/* titolo */
.teacher-area .folderView__el {
  grid-column: 2 !important;
  display: flex !important;
  align-items: center !important;

  width: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;

  background-image: none !important;
  border: 0 !important;
}

.teacher-area .folderView__label {
  display: block !important;
  color: var(--ersel-blue) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  max-width: none !important;
}

.teacher-area .folderView__label::before {
  content: counter(teacherLesson) ". " !important;
}

/* reset wrapper SOLO in teacher area */
.teacher-area .actions-wrapper {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  z-index: auto !important;
}

/* primo wrapper: completed */
.teacher-area .folderView__li > .actions-wrapper:first-of-type {
  grid-column: 4 !important;
  grid-row: 1 !important;
}

/* secondo wrapper: actions */
.teacher-area .folderView__li > .actions-wrapper:last-of-type {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

/* azioni visibili */
.teacher-area .folderView__visibleActions {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  transform: none !important;
}

/* contenitore bottoni */
.teacher-area .folderView__buttons {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* drawer azioni: sempre in riga, non sotto */
.teacher-area .folderView__actions {
  position: static !important;
  inset: auto !important;
  transform: none !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* base icone */
.teacher-area .folderView__action,
.teacher-area .folderView__button,
.teacher-area .folderView__status {
  all: unset !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 42px !important;
  height: 42px !important;

  border-radius: 50% !important;
  border: 1.5px solid rgba(var(--ersel-orange-rgb), .55) !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-orange) !important;

  cursor: pointer !important;
  text-decoration: none !important;
  box-sizing: border-box !important;

  font-size: 0 !important;
  line-height: 1 !important;

  transition: all .18s ease !important;
}

/* bottone continua più largo */
.teacher-area .folderView__action.fv-is-play {
  width: 150px !important;
  height: 42px !important;

  border-radius: var(--ersel-radius-sm) !important;
  border-color: var(--ersel-orange) !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;

  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .24) !important;
}

.teacher-area .folderView__action.fv-is-play::before {
  content: "▶ CONTINUA" !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
}

/* icone azioni */
.teacher-area .folderView__action.fv-is-edit::before {
  content: "✎" !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

.teacher-area .folderView__action.fv-is-properties::before {
  content: "⚙" !important;
  font-size: 17px !important;
}

.teacher-area .folderView__action.fv-is-access::before {
  content: "♙" !important;
  font-size: 18px !important;
}

.teacher-area .folderView__action.fv-is-categorize::before {
  content: "▤" !important;
  font-size: 17px !important;
}

.teacher-area .folderView__button.fv-is-copy::before {
  content: "□" !important;
  font-size: 19px !important;
  transform: translate(2px, -1px);
  box-shadow: -4px 4px 0 0 currentColor;
}

.teacher-area .folderView__action.fv-is-delete::before {
  content: "×" !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.teacher-area .folderView__button.fv-is-menu-open::before {
  content: "•••" !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
}

.teacher-area .folderView__action.fv-is-menu-close::before {
  content: "×" !important;
  font-size: 23px !important;
}

/* completato */
.teacher-area .folderView__status.fv-is-completed {
  border: 0 !important;
  background: transparent !important;
  color: var(--ersel-green) !important;
  width: 34px !important;
  height: 34px !important;
}

.teacher-area .folderView__status.fv-is-completed::before {
  content: "✓" !important;
  font-size: 28px !important;
  font-weight: 600 !important;
}

/* elimina pseudo legacy globali */
.teacher-area .folderView__action::after,
.teacher-area .folderView__button::after,
.teacher-area .folderView__status::after {
  display: none !important;
  content: none !important;
}

/* hover */
.teacher-area .folderView__li:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 30px rgba(var(--ersel-blue-rgb), .10) !important;
}

.teacher-area .folderView__action:hover,
.teacher-area .folderView__button:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
}

.teacher-area .folderView__action.fv-is-play:hover {
  background: var(--ersel-orange-dark) !important;
  color: var(--ersel-white) !important;
  transform: translateY(-2px) !important;
}

/* delete più chiaro */
.teacher-area .folderView__action.fv-is-delete:hover,
.teacher-area .folderView__action.fv-is-menu-close:hover {
  border-color: var(--ersel-danger) !important;
  background: rgba(255, 59, 31, .08) !important;
  color: var(--ersel-danger) !important;
}

/* responsive */
@media (max-width: 1100px) {
  .teacher-area .folderView__li {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    row-gap: 18px !important;
  }

  .teacher-area .folderView__li > .actions-wrapper:last-of-type,
  .teacher-area .folderView__li > .actions-wrapper:first-of-type {
    grid-column: 2 !important;
    grid-row: auto !important;
    justify-content: flex-start !important;
  }

  .teacher-area .folderView__actions {
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
  }
}

/* =========================
   TEACHER AREA - FIX LAYOUT ROW
   ========================= */

/* griglia più intelligente */
.teacher-area .folderView__li {
  grid-template-columns: 46px minmax(300px, 1fr) auto !important;
  column-gap: 28px !important;
}

/* titolo: più spazio + no wrapping aggressivo */
.teacher-area .folderView__label {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* blocco azioni = UNA RIGA SOLA */
.teacher-area .folderView__li > .actions-wrapper:last-of-type {
  grid-column: 3 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;

  gap: 10px !important;
  flex-wrap: nowrap !important;     /* 🔴 NO WRAP */
  white-space: nowrap !important;   /* 🔴 NO WRAP */
}

/* tutte le icone non devono mai andare a capo */
.teacher-area .folderView__actions {
  display: flex !important;
  flex-wrap: nowrap !important;     /* 🔴 CRITICO */
  gap: 10px !important;
}

/* bottone continua non deve restringersi */
.teacher-area .folderView__action.fv-is-play {
  flex: 0 0 auto !important;
}

/* icone tutte con dimensione fissa */
.teacher-area .folderView__action,
.teacher-area .folderView__button {
  flex: 0 0 auto !important;
}

/* blocco stato a destra allineato */
.teacher-area .folderView__li > .actions-wrapper:first-of-type {
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* spazio per non sovrapporre */
.teacher-area .folderView__li {
  padding-right: 90px !important;
}

/* =========================================================
   TEACHER AREA - COMPACT MODE
   ========================================================= */

/* card più compatta */
.teacher-area .folderView__li {
  min-height: 48px !important;
  padding: 4px 22px !important;
  padding-right: 80px !important; /* spazio per status */
}

/* titolo più piccolo */
.teacher-area .folderView__label {
  font-size: 15px !important;
  font-weight: 700 !important;
}

/* pallino sinistro */
.teacher-area .folderView__li::before {
  width: 34px !important;
  height: 34px !important;
  font-size: 13px !important;
}

/* bottone CONTINUA più piccolo */
.teacher-area .folderView__action.fv-is-play {
  height: 36px !important;
  width: 130px !important;
  font-size: 11px !important;
}

/* icone più piccole */
.teacher-area .folderView__action,
.teacher-area .folderView__button {
  width: 34px !important;
  height: 34px !important;
}

/* icone interne */
.teacher-area .folderView__action::before,
.teacher-area .folderView__button::before {
  font-size: 14px !important;
}

/* spacing più stretto */
.teacher-area .folderView__actions {
  gap: 8px !important;
}

/* =========================================================
   FIX STATUS (check verde fuori)
   ========================================================= */

/* togli positioning rotto */
.teacher-area .folderView__li > .actions-wrapper:first-of-type {
  position: static !important;
  transform: none !important;
}

/* riallinea a destra dentro la riga */
.teacher-area .folderView__visibleActions {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* check più piccolo */
.teacher-area .folderView__status.fv-is-completed::before {
  font-size: 22px !important;
}

/* =========================================================
   TEACHER AREA - Create object dropdown (GENERIC)
   ========================================================= */

/* bottone */
.teacher-area .create-object-button {
  height: 42px !important;
  min-width: 190px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 7px !important;
  background: #b7d646 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 42px !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.08) !important;
}

.teacher-area .create-object-button .caret {
  margin-left: 8px !important;
  border-top-color: #fff !important;
}

/* dropdown GENERICO */
.teacher-area .dropdown-menu {
  width: 260px !important;
  min-width: 260px !important;
  max-height: 320px !important;
  overflow-y: auto !important;
  padding: 6px !important;
  margin-top: 8px !important;

  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  box-shadow: 0 14px 32px rgba(var(--ersel-shadow-rgb), .14) !important;
}

/* item */
.teacher-area .dropdown-menu .folderView__li.itemType {
  display: block !important;
  margin: 2px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
}

/* reset roba lezioni */
.teacher-area .dropdown-menu .folderView__li::before {
  display: none !important;
}

/* riga */
.teacher-area .dropdown-menu .folderView__el {
  display: flex !important;
  align-items: center !important;
  min-height: 34px !important;
}

/* icona */
.teacher-area .dropdown-menu .folderView__el::before {
  content: "•••" !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 24px !important;
  height: 24px !important;
  margin: 0 8px 0 6px !important;

  border-radius: 50% !important;
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;

  font-size: 10px !important;
  font-weight: 900 !important;
}

/* testo */
.teacher-area .dropdown-menu .folderView__label {
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--ersel-blue) !important;
}

/* hover */
.teacher-area .dropdown-menu .folderView__li:hover {
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

.teacher-area .dropdown-menu .folderView__li:hover .folderView__label {
  color: var(--ersel-orange) !important;
}

.teacher-area .tab-content.fv-is-teacher-area{
    background-color: transparent !important;
    border: 0px !important;
    box-shadow: none !important;
}


/* =========================================================
   ERSEL - Form newsletter / TinyMCE
   ========================================================= */

.std_form#newsletter_form {
  max-width: 1100px !important;
  margin: 24px 0 !important;
  padding: 28px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.std_form#newsletter_form .form_elem {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

.std_form#newsletter_form .form_line_l {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.std_form#newsletter_form .form_line_l p {
  margin: 0 0 7px !important;
}

.std_form#newsletter_form label.floating,
.std_form#newsletter_form .label_normal {
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.std_form#newsletter_form .form-control,
.std_form#newsletter_form .textfield,
.std_form#newsletter_form select.form-control {
  width: 100% !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 9px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-dark) !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

.std_form#newsletter_form .form-control:focus,
.std_form#newsletter_form .textfield:focus,
.std_form#newsletter_form select.form-control:focus {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
  outline: 0 !important;
}

/* TinyMCE */
.std_form#newsletter_form .tox.tox-tinymce {
  border: 1px solid var(--ersel-border) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.std_form#newsletter_form .tox .tox-editor-header {
  background: var(--ersel-bg-soft) !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.std_form#newsletter_form .tox .tox-menubar,
.std_form#newsletter_form .tox .tox-toolbar,
.std_form#newsletter_form .tox .tox-toolbar-overlord {
  background: var(--ersel-bg-soft) !important;
}

.std_form#newsletter_form .tox .tox-mbtn,
.std_form#newsletter_form .tox .tox-tbtn {
  border-radius: 7px !important;
  color: var(--ersel-blue) !important;
}

.std_form#newsletter_form .tox .tox-mbtn:hover,
.std_form#newsletter_form .tox .tox-tbtn:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.std_form#newsletter_form .tox .tox-statusbar {
  border-top: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
}

/* file upload */
.std_form#newsletter_form input[type="file"] {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1px dashed var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
}

.std_form#newsletter_form #rem_span,
.std_form#newsletter_form #add_span {
  display: inline-flex !important;
  align-items: center !important;
  height: 34px !important;
  margin-top: 10px !important;
  padding: 0 13px !important;
  border-radius: 7px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.std_form#newsletter_form #add_span::before {
  content: "+";
  margin-right: 6px;
  color: var(--ersel-orange);
  font-weight: 900;
}

.std_form#newsletter_form #rem_span:hover,
.std_form#newsletter_form #add_span:hover {
  color: var(--ersel-orange) !important;
}

/* radio */
.std_form#newsletter_form input.radio {
  accent-color: var(--ersel-orange);
  margin-right: 8px !important;
}

/* submit */
.std_form#newsletter_form .form_elem_button {
  margin-top: 24px !important;
  padding-top: 22px !important;
  border-top: 1px solid var(--ersel-border) !important;
  text-align: right !important;
}

.std_form#newsletter_form #send {
  height: 42px !important;
  padding: 0 26px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .20) !important;
}

.std_form#newsletter_form #send:hover {
  background: var(--ersel-orange-dark) !important;
  transform: translateY(-1px) !important;
}

/* =========================================================
   COURSE REPORT - DataTables / Overview / Details
   ========================================================= */

#overview .dataTables_wrapper,
#details .table-responsive {
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--ersel-shadow) !important;
  padding: 18px !important;
  overflow: auto !important;
}

#table-overview,
#table-details {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  background: var(--ersel-white) !important;
}

#table-overview thead th,
#table-overview thead td,
#table-details thead th {
  padding: 11px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  vertical-align: middle !important;
}

#table-overview thead tr:first-child th,
#table-details thead tr:first-child th {
  background: rgba(var(--ersel-orange-rgb), .06) !important;
  color: var(--ersel-orange) !important;
  text-align: center !important;
}

#table-overview tbody td,
#table-details tbody td {
  padding: 12px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

#table-overview tbody tr:hover td,
#table-details tbody tr:hover td {
  background: rgba(var(--ersel-orange-rgb), .04) !important;
}

#table-overview .dataTables_empty {
  padding: 32px !important;
  color: var(--ersel-text-light) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

/* controlli DataTables */
#table-overview_wrapper .dataTables_length label,
#table-overview_wrapper .dataTables_filter label {
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#table-overview_wrapper .dataTables_length select,
#table-overview_wrapper .dataTables_filter input {
  height: 36px !important;
  padding: 0 12px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 8px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  box-shadow: none !important;
}

#table-overview_wrapper .dataTables_filter input {
  margin-left: 8px !important;
}

#table-overview_wrapper .dataTables_length select:focus,
#table-overview_wrapper .dataTables_filter input:focus {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
  outline: 0 !important;
}

/* bottone Nuova attività */
.button--add {
  position: relative !important;
  display: inline-flex !important;
  margin: 18px 0 !important;
}

.button--add > span {
  display: inline-flex !important;
  align-items: center !important;
  height: 40px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
}

.button--add > span::before {
  content: "+" !important;
  margin-right: 8px !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

/* dropdown Nuova attività */
.button--add .dropdown {
  width: 240px !important;
  min-width: 240px !important;
  padding: 6px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  box-shadow: 0 14px 32px rgba(var(--ersel-shadow-rgb), .14) !important;
}

.button--add .dropdown li {
  list-style: none !important;
  margin: 2px 0 !important;
}

.button--add .dropdown a {
  display: flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.button--add .dropdown a:hover {
  background: rgba(var(--ersel-orange-rgb), .07) !important;
  color: var(--ersel-orange) !important;
}


/* =========================================================
   COURSE REPORT - FIX larghezza tabella + button add
   ========================================================= */

#overview .table-responsive,
#overview .dataTables_wrapper,
#table-overview_wrapper {
  width: 100% !important;
  max-width: 100% !important;
}

#table-overview_wrapper {
  padding: 18px 22px !important;
  overflow-x: auto !important;
}

#table-overview {
  width: 100% !important;
  min-width: 100% !important;
  table-layout: auto !important;
}

/* forza DataTables a non mantenere width inline errata */
#table-overview[style] {
  width: 100% !important;
}

/* header controlli */
#table-overview_wrapper > .row:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 0 16px !important;
}

#table-overview_wrapper > .row:first-child > [class*="col-"] {
  width: auto !important;
  float: none !important;
}

/* empty state più pulito */
#table-overview .dataTables_empty {
  height: 96px !important;
  padding: 36px !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

/* info footer */
#table-overview_wrapper .dataTables_info {
  padding-top: 14px !important;
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* =========================================================
   Nuova attività - button corretto
   ========================================================= */

.button--add {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  border-radius: 8px !important;
  overflow: visible !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
}

.button--add > span {
  height: 42px !important;
  min-width: 170px !important;
  padding: 0 18px !important;
  border-radius: 8px 0 0 8px !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
}

.button--add > span::before {
  content: "+" !important;
  margin-right: 8px !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

/* parte verde freccia */
.button--add::after {
  content: "⌄" !important;
  width: 42px !important;
  height: 42px !important;
  border-left: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 0 8px 8px 0 !important;
  background: #9bb72f !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  pointer-events: none !important;
}

/* dropdown del bottone */
.button--add .dropdown {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 0 !important;
  z-index: 50 !important;
  width: 260px !important;
  min-width: 260px !important;
  padding: 6px !important;
  margin: 0 !important;
  list-style: none !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  box-shadow: 0 14px 32px rgba(var(--ersel-shadow-rgb), .14) !important;
}

.button--add .dropdown li {
  margin: 2px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.button--add .dropdown a {
  min-height: 36px !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
  color: var(--ersel-blue) !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
}

.button--add .dropdown a:hover {
  background: rgba(var(--ersel-orange-rgb), .07) !important;
  color: var(--ersel-orange) !important;
}


/* =========================================================
   ERSEL - Lista Avvisi
   ========================================================= */

.yui-content .table-container-over,
.yui-content .table-container-below {
  display: flex !important;
  justify-content: flex-end !important;
  margin: 18px 0 !important;
  padding: 0 !important;
}

.yui-content .list_block {
  position: relative !important;
  margin: 14px 0 !important;
  padding: 22px 26px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--ersel-shadow) !important;
}

.yui-content .list_block.highlight {
  background: rgba(var(--ersel-orange-rgb), .06) !important;
  border-color: rgba(var(--ersel-orange-rgb), .35) !important;
}

.yui-content .list_block .heading {
  margin: 0 0 8px !important;
  color: var(--ersel-blue) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

.yui-content .list_block.highlight .heading {
  color: var(--ersel-orange) !important;
}

.yui-content .list_block .heading img {
  width: 18px !important;
  height: 18px !important;
  margin-right: 8px !important;
  vertical-align: -2px !important;
}

.yui-content .list_block .content {
  color: var(--ersel-text-mid) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.yui-content .list_block .publish-date {
  display: inline-flex !important;
  margin: 0 10px 0 0 !important;
  color: var(--ersel-text-light) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.yui-content .list_block .actions {
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--ersel-border) !important;
}

.yui-content .list_block .link_list_inline {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.yui-content .list_block .link_list_inline li {
  margin: 0 !important;
  padding: 0 !important;
}

.yui-content .list_block .link_list_inline a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  height: 34px !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.yui-content .list_block .link_list_inline a:hover {
  background: rgba(var(--ersel-orange-rgb), .08) !important;
  color: var(--ersel-orange) !important;
}

.yui-content .list_block .link_list_inline a img {
  width: 15px !important;
  height: 15px !important;
  object-fit: contain !important;
}

/* nasconde sprite legacy rotti */
.yui-content .list_block .ico-wt-sprite::before,
.yui-content .list_block .ico-wt-sprite::after {
  display: none !important;
  content: none !important;
}

/* bottone add già coerente, ma riallineato */
.yui-content .subs_add {
  min-width: 170px !important;
}

.tab_block .yui-content{
 background-color: transparent !important;
}

.yui-skin-sam .yui-navset .yui-content, .yui-skin-sam .yui-navset .yui-navset-top .yui-content{
    border: 0px !important;
}


/* =========================================================
   ERSEL - User Panel (slide right)
   ========================================================= */

#c-menu--slide-right {
  width: 360px !important;
  background: var(--ersel-white) !important;
  box-shadow: -6px 0 24px rgba(0,0,0,.08) !important;
  border-left: 1px solid var(--ersel-border) !important;
  padding: 22px !important;
}

/* header (profilo / logout) */
#c-menu--slide-right .row:first-child {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 18px !important;
}

#c-menu--slide-right a {
  color: var(--ersel-blue) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

#c-menu--slide-right a:hover {
  color: var(--ersel-orange) !important;
}

/* icone glyphicon -> pulizia */
#c-menu--slide-right .glyphicon {
  margin-right: 6px !important;
}

/* tab */
#c-menu--slide-right .tabnav__label {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--ersel-blue) !important;
  padding: 6px 0 !important;
  border-bottom: 2px solid transparent !important;
}

#c-menu--slide-right .tabnav__label.selected {
  color: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
}

/* profilo */
#c-menu--slide-right .profile {
  margin: 16px 0 !important;
}

#c-menu--slide-right .profile .boxed {
  width: 70px !important;
  height: 70px !important;
  border-radius: 50% !important;
  background: var(--ersel-bg-soft) !important;
  background-size: cover !important;
  background-position: center !important;
  border: 1px solid var(--ersel-border) !important;
}

#c-menu--slide-right .profile b {
  font-size: 15px !important;
  color: var(--ersel-blue) !important;
}

#c-menu--slide-right .profile a[href^="mailto"] {
  font-size: 13px !important;
  color: var(--ersel-text-mid) !important;
}

/* bottoni (certificati / messaggi) */
#c-menu--slide-right .comunication .btn {
  width: 100% !important;
  height: 36px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border: 1px solid var(--ersel-border) !important;
  background: var(--ersel-white) !important;
}

#c-menu--slide-right .comunication .btn:hover {
  border-color: var(--ersel-orange) !important;
  color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .05) !important;
}

/* carriera */
#c-menu--slide-right .career h2 {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ersel-blue) !important;
  margin: 16px 0 10px !important;
}

#c-menu--slide-right .list-group-item {
  border: 0px solid var(--ersel-border) !important;
  border-radius: 8px !important;
  margin-bottom: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

#c-menu--slide-right .badge {
  background: var(--ersel-orange) !important;
  font-weight: 700 !important;
}

/* codice iscrizione */
#c-menu--slide-right .course-subscription {
  margin: 18px 0 !important;
}

#c-menu--slide-right .input-group {
  display: flex !important;
}

#c-menu--slide-right #course_autoregistration_code {
  height: 40px !important;
  border-radius: 8px 0 0 8px !important;
  border: 1px solid var(--ersel-border) !important;
}

#c-menu--slide-right #subscribe_info {
  height: 40px !important;
  border-radius: 0 8px 8px 0 !important;
  border: 0 !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-weight: 700 !important;
}

#c-menu--slide-right #subscribe_info:hover {
  background: var(--ersel-orange-dark) !important;
}

/* news */
#c-menu--slide-right .news .heading {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ersel-blue) !important;
  margin: 14px 0 !important;
}

/* lingua */
#c-menu--slide-right .lang {
  margin-top: 20px !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--ersel-border) !important;
}

#c-menu--slide-right .lang p {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--ersel-text-mid) !important;
}

#c-menu--slide-right .lang .list-inline {
  display: flex !important;
  gap: 8px !important;
  justify-content: flex-end !important;
}

#c-menu--slide-right .lang a {
  display: inline-block !important;
  width: 28px !important;
  height: 20px !important;
  border-radius: 4px !important;
  border: 1px solid var(--ersel-border) !important;
  opacity: 0.6;
}

#c-menu--slide-right .lang a.current {
  opacity: 1 !important;
  border-color: var(--ersel-orange) !important;
}

/* =========================================================
   ERSEL - User Panel refinements
   ========================================================= */

/* tab selezionata */
#c-menu--slide-right .tabnav__label.selected {
  color: var(--ersel-orange) !important;
  border-color: var(--ersel-orange) !important;
  background: rgba(var(--ersel-orange-rgb), .06) !important;
}

/* bottoni Certificati / Messaggi */
#c-menu--slide-right .comunication {
  margin: 22px 0 !important;
}

#c-menu--slide-right .comunication .col-xs-4 {
  width: 50% !important;
  padding: 0 6px !important;
}

#c-menu--slide-right .comunication .btn {
  height: 42px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
  padding-top: 8px !important;
}

#c-menu--slide-right .comunication .btn:hover {
  background: var(--ersel-orange-dark) !important;
  color: var(--ersel-white) !important;
}

/* carriera */
#c-menu--slide-right .career .list-group {
  margin: 0 !important;
}

#c-menu--slide-right .career .list-group-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 0px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  margin-bottom: 8px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
}

#c-menu--slide-right .career .badge {
  min-width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

#c-menu--slide-right .career .badge a {
  color: var(--ersel-white) !important;
}

/* iscrizione con codice */
#c-menu--slide-right .course-subscription {
  margin: 24px 0 !important;
  padding: 16px !important;
  background: var(--ersel-bg-soft) !important;
  border-radius: 14px !important;
}

#c-menu--slide-right .course-subscription .input-group,
#c-menu--slide-right #course_autoregistration,
#c-menu--slide-right #course_autoregistration > div {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

#c-menu--slide-right #course_autoregistration_code {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--ersel-border) !important;
  border-right: 0 !important;
  border-radius: 10px 0 0 10px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 14px !important;
  box-shadow: none !important;
}

#c-menu--slide-right #course_autoregistration .input-group-btn {
  width: auto !important;
  height: 44px !important;
  display: flex !important;
  position: static !important;
}

#c-menu--slide-right #subscribe_info {
  width: auto !important;
  height: 44px !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 0 10px 10px 0 !important;
  background: var(--ersel-orange) !important;
  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

#c-menu--slide-right #subscribe_info:hover {
  background: var(--ersel-orange-dark) !important;
}

/* =========================================================
   ERSEL - HTML front content
   ========================================================= */

.htmlfront_container {
  margin: 24px 0 !important;
  padding: 28px !important;
  background: var(--ersel-white) !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--ersel-shadow) !important;

  color: var(--ersel-text-mid) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.65 !important;
}

.htmlfront_container h1,
.htmlfront_container h2,
.htmlfront_container h3 {
  color: var(--ersel-blue) !important;
  font-weight: 800 !important;
}

.htmlfront_container a {
  color: var(--ersel-orange) !important;
  font-weight: 700 !important;
}

/* =========================
   BUTTON NUOVA ATTIVITÀ
   ========================= */

.button--add {
  display: inline-flex;
  align-items: center;
  background: #f26a00 !important; /* arancione uniforme */
  color: #fff !important;
  border-radius: 14px !important;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  cursor: pointer;
}

/* testo */
.button--add > span {
  padding: 14px 22px;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 0.3px;
}

/* lato freccia (verde brutto → arancione soft) */
.button--add::after {
  content: "▾";
  display: flex;
  align-items: center;
  justify-content: center;
  background: #d95e00 !important; /* arancione leggermente più scuro */
  padding: 0 16px;
  font-size: 14px;
}

/* hover */
.button--add:hover {
  background: #e65f00 !important;
}

/*
.button--add:hover::after {
  background: #c95500 !important;
}*/

/* =========================
   DROPDOWN
   ========================= */

.button--add .dropdown {
  position: absolute;
  margin-top: 12px;
  padding: 8px;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.12);
  list-style: none;
  min-width: 260px;
}

/* rimuove qualsiasi gradient legacy */
.button--add .dropdown,
.button--add .dropdown li,
.button--add .dropdown a {
  background-image: none !important;
}

/* items */
.button--add .dropdown li {
  margin: 4px 0;
}

/* link */
.button--add .dropdown a {
  display: block;
  padding: 10px 14px;
  font-size: 13px; /* 👈 più piccolo */
  font-weight: 600;
  color: #2f3e5b;
  border-radius: 8px;
  transition: all 0.2s ease;
}

/* hover item */
.button--add .dropdown a:hover {
  background: #f5f7fa;
  color: #f26a00;
}

/* =========================================================
   FIX FINALE - Nuova attività
   ========================================================= */

.button--add {
  width: auto !important;
  min-width: 260px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: stretch !important;
  border-radius: 12px !important;
  background: var(--ersel-orange) !important;
  background-image: none !important;
  overflow: visible !important;
}

/* label non tagliata */
.button--add > span {
  flex: 1 1 auto !important;
  min-width: 210px !important;
  height: 48px !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--ersel-orange) !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  border-radius: 12px !important;
}

/* freccia stesso arancione */
.button--add::after {
  content: "∨" !important;
  flex: 0 0 48px !important;
  width: 48px !important;
  height: 48px !important;
  background: var(--ersel-orange) !important;
  background-image: none !important;
  color: #fff !important;
  border-left: 0px solid rgba(255,255,255,.35) !important;
  border-radius: 0 12px 12px 0 !important;
}

/* dropdown senza gradient */
.button--add .dropdown {
  top: calc(100% + 8px) !important;
  left: 0 !important;
  width: 250px !important;
  min-width: 250px !important;
  padding: 6px !important;
  border-radius: 12px !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: 0 12px 28px rgba(var(--ersel-shadow-rgb), .14) !important;
}

.button--add .dropdown,
.button--add .dropdown *,
.button--add .dropdown li,
.button--add .dropdown a {
  background-image: none !important;
  filter: none !important;
}

/* testo dropdown più piccolo */
.button--add .dropdown a {
  min-height: 32px !important;
  padding: 0 12px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--ersel-blue) !important;
}

.button--add .dropdown a:hover {
  background: rgba(var(--ersel-orange-rgb), .07) !important;
  color: var(--ersel-orange) !important;
}

.tab-content{
  background-color: transparent !important;
  border: 0px !important;
}

/* =========================================================
   FIX TABLE OVERVIEW - DataTables width
   ========================================================= */

#overview .table-responsive,
#overview #table-overview_wrapper,
#overview .dataTables_wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
}

#overview #table-overview,
#overview #table-overview.dataTable,
#overview #table-overview[style] {
  width: 100% !important;
  min-width: 100% !important;
  table-layout: fixed !important;
}

#overview #table-overview colgroup col {
  width: auto !important;
}

#overview #table-overview thead th,
#overview #table-overview thead td,
#overview #table-overview tbody td,
#overview #table-overview tfoot th {
  width: auto !important;
  white-space: normal !important;
}

/* colonne piccole */
#overview #table-overview thead th.transparent,
#overview #table-overview thead td.details-control,
#overview #table-overview tbody td.details-control {
  width: 34px !important;
}

/* testo header più compatto */
#overview #table-overview thead th,
#overview #table-overview thead td {
  font-size: 10px !important;
  padding: 10px 7px !important;
  line-height: 1.15 !important;
}

/* empty state */
#overview #table-overview .dataTables_empty {
  text-align: center !important;
  padding: 34px !important;
}

/* =========================================================
   DATATABLES - table overview full width definitivo
   ========================================================= */

#table-overview_wrapper,
#table-overview_wrapper .row,
#table-overview_wrapper .col-sm-12,
#table-overview_wrapper .table-responsive {
  width: 100% !important;
  max-width: 100% !important;
}

table#table-overview,
table#table-overview.dataTable,
table#table-overview.table,
table#table-overview[style] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  table-layout: fixed !important;
}

/* neutralizza il colgroup che forza larghezze */
table#table-overview colgroup {
  display: none !important;
}

table#table-overview colgroup col {
  width: auto !important;
}

/* neutralizza width inline su celle/head */
table#table-overview th[style],
table#table-overview td[style] {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}

/* celle compatte */
table#table-overview th,
table#table-overview td {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

/* header più leggibile/compatto */
table#table-overview thead th,
table#table-overview thead td {
  padding: 10px 6px !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
}

/* empty row */
table#table-overview .dataTables_empty {
  width: 100% !important;
  padding: 36px !important;
  text-align: center !important;
}

/* =========================================================
   BUTTON CSV - stile moderno (coerente con altri)
   ========================================================= */

a.subs_csv {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;

  padding: 10px 16px !important;

  background: var(--ersel-orange) !important;
  background-image: none !important;

  color: #fff !important;
  font-weight: 600 !important;
  font-size: 13px !important;

  border-radius: 10px !important;
  text-decoration: none !important;

  box-shadow: 0 6px 14px rgba(var(--ersel-shadow-rgb), .15);
  transition: all 0.2s ease;
}

/* rimuove sprite legacy */
a.subs_csv::before,
a.subs_csv::after {
  content: none !important;
  display: none !important;
}

/* icona CSV (emoji semplice → puoi sostituire con svg se vuoi) */
a.subs_csv span::before {
  content: "⬇" !important;
  font-size: 14px;
  margin-right: 6px;
}

/* hover */
a.subs_csv:hover {
  background: #e65f00 !important;
  transform: translateY(-1px);
}

/* focus */
a.subs_csv:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .25);
}


/* =========================================================
   SEARCH DATATABLES - stile moderno
   ========================================================= */

.dataTables_filter {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 12px;
}

/* label "Cerca" */
.dataTables_filter label {
  display: flex !important;
  align-items: center;
  gap: 10px;
  font-size: 12px !important;
  font-weight: 700;
  color: var(--ersel-blue);
  margin: 0 !important;
}

/* input */
.dataTables_filter input {
  height: 38px !important;
  padding: 0 14px !important;

  border-radius: 10px !important;
  border: 1px solid var(--ersel-border) !important;
  background: #fff !important;

  font-size: 13px !important;
  font-weight: 500;

  transition: all 0.2s ease;
}

/* focus */
.dataTables_filter input:focus {
  outline: none !important;
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), 0.15);
}

/* placeholder */
.dataTables_filter input::placeholder {
  color: #9aa6b2;
}

/* =========================================================
   ERSEL - DataTables scroll table
   ========================================================= */

.dataTables_scroll {
  width: 100% !important;
  margin-top: 16px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 16px !important;
  background: var(--ersel-white) !important;
  box-shadow: var(--ersel-shadow) !important;
  overflow: hidden !important;
}

.dataTables_scrollHead {
  background: var(--ersel-white) !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.dataTables_scrollHead table,
.dataTables_scrollBody table {
  margin: 0 !important;
  border: 0 !important;
  background: var(--ersel-white) !important;
}

.dataTables_scrollHead thead tr:first-child th {
  padding: 18px 22px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-blue) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  text-align: left !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.dataTables_scrollHead thead tr:nth-child(2) th {
  padding: 13px 18px !important;
  background: var(--ersel-bg-soft) !important;
  color: var(--ersel-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
}

.dataTables_scrollBody {
  border: 0 !important;
  background: var(--ersel-white) !important;
}

.dataTables_scrollBody tbody td {
  padding: 14px 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ersel-border) !important;
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.dataTables_scrollBody tbody tr:last-child td {
  border-bottom: 0 !important;
}

.dataTables_scrollBody tbody tr:hover td {
  background: rgba(var(--ersel-orange-rgb), .04) !important;
}

.dataTables_scrollBody tbody td a {
  color: var(--ersel-blue) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.dataTables_scrollBody tbody td a:hover {
  color: var(--ersel-orange) !important;
}

/* nasconde header duplicato dentro scrollBody */
.dataTables_scrollBody thead {
  visibility: collapse !important;
}




/* =========================================================
   ERSEL - form_line_l legacy input/select
   HTML non modificabile
   ========================================================= */

.form_line_l {
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.form_line_l p {
  margin: 0 0 7px !important;
}

.form_line_l label.floating {
  display: block !important;
  color: var(--ersel-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .035em !important;
}

.form_line_l input.form-control,
.form_line_l input.textfield,
.form_line_l select.form-control,
.form_line_l select.dropdown {
  width: 100% !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-dark) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.form_line_l input.form-control:focus,
.form_line_l input.textfield:focus,
.form_line_l select.form-control:focus,
.form_line_l select.dropdown:focus {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
  outline: 0 !important;
}

.form_line_l input.check,
.form_line_l input.radio {
  accent-color: var(--ersel-orange);
  margin-right: 8px !important;
}

.form_line_l .label_normal {
  color: var(--ersel-text-mid) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* =========================================================
   BUTTON XLS - stile moderno coerente
   ========================================================= */

a.subs_xls {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;

  padding: 10px 16px !important;

  background: var(--ersel-orange) !important;
  background-image: none !important;

  color: #fff !important;
  font-weight: 700 !important;
  font-size: 13px !important;

  border-radius: 10px !important;
  text-decoration: none !important;

  box-shadow: 0 6px 14px rgba(var(--ersel-shadow-rgb), .15);
  transition: all 0.2s ease;
}

/* rimuove sprite vecchio */
a.subs_xls::before,
a.subs_xls::after {
  content: none !important;
  display: none !important;
}

/* icona */
a.subs_xls span::before {
  content: "📊";
  font-size: 14px;
  margin-right: 6px;
}

/* hover */
a.subs_xls:hover {
  background: #e65f00 !important;
  transform: translateY(-1px);
}

/* focus */
a.subs_xls:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .25);
}

/* =========================================================
   BUTTON CERCA - stile moderno
   ========================================================= */

#gofilter {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  height: 42px;
  padding: 0 18px !important;

  background: var(--ersel-orange) !important;
  background-image: none !important;

  color: #fff !important;
  font-weight: 600 !important;
  font-size: 13px !important;

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

  box-shadow: 0 6px 14px rgba(var(--ersel-shadow-rgb), .15);
  transition: all 0.2s ease;

  cursor: pointer;
  margin-bottom: 20px !important;
}

/* hover */
#gofilter:hover {
  background: #e65f00 !important;
  transform: translateY(-1px);
}

/* active */
#gofilter:active {
  transform: translateY(0);
  box-shadow: 0 3px 8px rgba(var(--ersel-shadow-rgb), .12);
}

/* focus */
#gofilter:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .25);
}

/* rimuove stile bootstrap */
#gofilter.btn-default {
  border: none !important;
  background-image: none !important;
}


/* =========================================================
   ERSEL - Quick search coerente template
   ========================================================= */

.quick_search_form:not(.forma-quick-search-form) {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 10px !important;
  align-items: end !important;

  max-width: 560px !important;
  margin: 18px 0 !important;
  padding: 18px !important;

  background: transparent !important;
  border: 0px solid var(--ersel-border) !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  padding-top: 10px !important;
}

.quick_search_form:not(.forma-quick-search-form) label {
  grid-column: 1 / -1 !important;
  margin: 0 0 -2px !important;

  color: var(--ersel-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .035em !important;
  display: none !important;
}

.quick_search_form:not(.forma-quick-search-form) input.search_t {
  width: 100% !important;
  height: 42px !important;
  padding: 0 14px !important;

  border: 1px solid var(--ersel-border) !important;
  border-radius: 10px !important;
  background: var(--ersel-white) !important;
  color: var(--ersel-text-dark) !important;

  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.quick_search_form:not(.forma-quick-search-form) input.search_t:focus {
  border-color: var(--ersel-orange) !important;
  box-shadow: 0 0 0 3px rgba(var(--ersel-orange-rgb), .10) !important;
  outline: 0 !important;
}

.quick_search_form:not(.forma-quick-search-form) input.search_b {
  height: 42px !important;
  padding: 0 18px 0 40px !important;

  border: 0 !important;
  border-radius: 10px !important;
  background-color: var(--ersel-orange) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.293 14.293l4.707 4.707 1.414-1.414-4.707-4.707A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: 16px center !important;
  background-size: 15px !important;

  color: var(--ersel-white) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  box-shadow: 0 8px 18px rgba(var(--ersel-orange-rgb), .18) !important;
  cursor: pointer !important;
}

.quick_search_form:not(.forma-quick-search-form) input.search_b:hover {
  background-color: var(--ersel-orange-dark) !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 600px) {
  .quick_search_form:not(.forma-quick-search-form) {
    grid-template-columns: 1fr !important;
  }

  .quick_search_form:not(.forma-quick-search-form) input.search_b {
    width: 100% !important;
  }
}