/* Copia di prova — solo grafica. 2026-11-02.
   Scelta da caricare nel CMS: Bosco, spazio comodo, angoli netti.
   Da caricare DOPO css/cms-modern.css.
   Non cambia nomi dei campi, azioni, permessi o stampa. */
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap");

@media screen {
  :root {
    --cms-ink: #1e2d21;
    --cms-muted: #4c5d4f;
    --cms-blue: #225a39;
    --cms-line: #d0dbd0;
    --cms-bg: #edf4ed;
    --cms-soft: #dbeede;
    --cms-radius: 7px;
    --cms-control: 42px;
  }

  body {
    background: var(--cms-bg);
    color: var(--cms-ink);
    font-family: "Outfit", "Segoe UI", Arial, sans-serif;
    font-size: 15px;
    letter-spacing: -0.011em;
  }

  .sl-logo,
  .sl-header,
  .sl-sideleft,
  .sl-pagebody .card,
  .login-wrapper,
  .modal-content {
    border-color: var(--cms-line);
    box-shadow: 0 10px 32px rgba(20, 32, 54, 0.05);
  }

  .sl-sideleft {
    background: #3a5646 !important;
    color: #e7f2ea;
    border-right: 0;
  }

  .sl-sideleft .sidebar-label,
  .sl-sideleft .sl-menu-link,
  .sl-sideleft .menu-item-label,
  .sl-sideleft .colore_blu,
  .sl-sideleft .colore_nero {
    color: #e7f2ea !important;
  }

  .sl-sideleft {
    display: flex !important;
    flex-direction: column !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .sl-sideleft > .sl-sideleft-menu,
  .sl-sideleft > a,
  .sl-sideleft > ul {
    order: 1 !important;
    flex: 0 0 auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .sl-sideleft > .sidebar-label {
    order: 2 !important;
    flex: 0 0 auto !important;
    margin: auto 0 0 !important;
    padding: 12px 14px 14px !important;
    border-bottom: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.16) !important;
    position: sticky;
    bottom: 0;
    z-index: 2;
    background: #3a5646 !important;
  }

  .sl-sideleft .sidebar-label .colore_blu,
  .sl-sideleft .sidebar-label br:nth-of-type(n + 3) {
    display: none !important;
  }

  .sl-sideleft .sl-menu-item {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px;
    padding: 0 12px !important;
    min-height: 44px;
  }

  .sl-sideleft .menu-item-icon,
  .sl-sideleft .sl-menu-item > i,
  .sl-sideleft .sl-menu-item > .fa {
    position: static !important;
    top: auto !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px !important;
    margin: 0 !important;
    font-size: 20px !important;
  }

  .sl-sideleft .menu-item-arrow {
    margin-left: auto !important;
  }

  .sl-sideleft button.dv-menu-entry {
    display: flex !important;
    align-items: center;
    width: 100% !important;
    margin: 0 0 4px !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #e7f2ea !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    min-height: 44px;
    cursor: pointer;
  }

  .sl-sideleft button.dv-menu-entry::before {
    content: "";
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    margin-right: 10px;
    background: currentColor;
    -webkit-mask: var(--cms-icon) center / contain no-repeat;
    mask: var(--cms-icon) center / contain no-repeat;
  }

  .sl-sideleft button.dv-menu-entry:first-of-type {
    --cms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M4 12h16M4 17h10'/%3E%3C/svg%3E");
  }

  .sl-sideleft button.dv-menu-entry:nth-of-type(2) {
    --cms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 10c0 5-7 12-7 12S5 15 5 10a7 7 0 0 1 14 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
  }

  .sl-sideleft button.dv-menu-entry:hover,
  .sl-sideleft button.dv-menu-entry:focus {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
  }

  @media (min-width: 992px) {
    .collapsed-menu .sl-sideleft .sl-menu-link,
    .collapsed-menu .sl-sideleft button.dv-menu-entry {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 44px !important;
      min-height: 44px !important;
      height: 44px !important;
      margin: 2px auto !important;
      padding: 0 !important;
    }

    .collapsed-menu .sl-sideleft .sl-menu-item {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 44px !important;
      height: 44px !important;
      padding: 0 !important;
    }

    .collapsed-menu .sl-sideleft .menu-item-label,
    .collapsed-menu .sl-sideleft .menu-item-arrow,
    .collapsed-menu .sl-sideleft button.dv-menu-entry {
      font-size: 0 !important;
    }

    .collapsed-menu .sl-sideleft .menu-item-icon,
    .collapsed-menu .sl-sideleft .sl-menu-item > .fa,
    .collapsed-menu .sl-sideleft .sl-menu-item > i {
      position: static !important;
      top: 0 !important;
      transform: none !important;
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      width: 22px !important;
      height: 22px !important;
      margin: 0 !important;
      flex: 0 0 22px !important;
      font-size: 20px !important;
    }

    .collapsed-menu .sl-sideleft button.dv-menu-entry::before {
      margin: 0 !important;
      width: 22px !important;
      height: 22px !important;
      flex: 0 0 22px !important;
    }
  }

  .sl-sideleft .sl-menu-link:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #fff !important;
  }

  .sl-sideleft .sl-menu-link.active {
    background: #4f6f5e !important;
    color: #fff !important;
  }

  .sl-sideleft .sl-menu-sub {
    background: transparent !important;
    padding: 2px 0 6px !important;
  }

  .sl-sideleft .sl-menu-sub .nav-link {
    display: flex !important;
    align-items: center !important;
    gap: 10px;
    margin: 2px 0 !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #1e2d21 !important;
    font-weight: 600 !important;
  }

  .sl-sideleft .sl-menu-sub .nav-link .fa,
  .sl-sideleft .sl-menu-sub .nav-link i {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 22px !important;
    flex: 0 0 22px !important;
    margin: 0 !important;
    color: #225a39 !important;
    font-size: 16px !important;
  }

  .sl-sideleft .sl-menu-sub .nav-link:hover,
  .sl-sideleft .sl-menu-sub .nav-link.active {
    background: #dbeede !important;
    color: #1e2d21 !important;
  }

  .font_viola_no_bold_important {
    color: #225a39 !important;
  }

  .sl-header {
    background: #fff;
  }

  .sl-pagebody .card,
  .sl-mainpanel .panel,
  .sl-mainpanel .well,
  .cms-form-section {
    border-radius: var(--cms-radius);
    border-color: var(--cms-line);
  }

  .sl-mainpanel .btn,
  .modal .btn,
  .login-wrapper .btn,
  .cms-page-actions a,
  .cms-page-actions button {
    min-height: 42px;
    border-radius: 5px;
    font-weight: 600;
    box-shadow: none;
    text-shadow: none;
  }

  .btn-default-blue-inverse,
  .btn-primary {
    background: var(--cms-blue);
    border-color: var(--cms-blue);
    color: #fff;
  }

  .sl-mainpanel .form-control,
  .modal .form-control,
  .login-wrapper .form-control {
    min-height: var(--cms-control);
    border-radius: 5px;
    border-color: #b7cbb7;
    box-shadow: none;
  }

  .sl-mainpanel .nav-tabs,
  body .sl-mainpanel #tab_gen.drive-contract-tabs {
    background: #dbeede;
    border-radius: 7px;
    padding: 5px;
    border: 0;
  }

  .sl-mainpanel .nav-tabs > li.active > a,
  body .sl-mainpanel #tab_gen.drive-contract-tabs > li.active > a {
    background: var(--cms-blue) !important;
    color: #fff !important;
  }

  .login-wrapper {
    border-radius: 7px !important;
    padding: 28px 26px !important;
  }

  @media (max-width: 991px) {
    .sl-mainpanel .form-control,
    .modal .form-control,
    .login-wrapper .form-control,
    .sl-mainpanel .btn,
    .modal .btn {
      min-height: 44px;
      font-size: 16px;
    }
  }

  /* La Home scrive il blu dopo il foglio CSS: qui lo ricopre. */
  .cms-dashboard .cms-dashboard-heading h1 {
    color: var(--cms-ink) !important;
  }

  .cms-dashboard .cms-dashboard-heading p {
    color: var(--cms-muted) !important;
  }

  .cms-dashboard #cms-overview-panel .cms-home-quick-card {
    border-color: #b7cbb7 !important;
    border-radius: var(--cms-radius) !important;
    color: var(--cms-blue) !important;
    background: #fff !important;
  }

  .cms-dashboard #cms-overview-panel .cms-home-quick-card:hover {
    background: var(--cms-soft) !important;
    border-color: var(--cms-blue) !important;
  }

  .cms-dashboard #cms-overview-panel .cms-home-quick-card small {
    color: var(--cms-muted) !important;
  }

  body .sl-mainpanel .table > thead > tr > th,
  body main .panel table th {
    background: #f3f5f7 !important;
    color: #5c6b7a !important;
    border-bottom-color: #e4e9ee !important;
  }

  body .sl-mainpanel .card-body-title,
  body .sl-mainpanel .cms-section-heading h2 {
    background: transparent !important;
    border-left: 0 !important;
    border-radius: 0 !important;
    color: var(--cms-ink) !important;
    padding: 0 !important;
  }

  .cms-dashboard h6.card-body-title {
    background: #fff !important;
    border: 1px solid var(--cms-line) !important;
    border-bottom: 0 !important;
    border-radius: 16px 16px 0 0 !important;
    margin: 8px 0 0 !important;
    padding: 14px 16px 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
  }

  .cms-dashboard .card,
  .cms-dashboard .row,
  .cms-dashboard [class*="col-"] {
    min-width: 0;
    max-width: 100%;
  }

  @media (min-width: 768px) {
    .cms-dashboard #tbRisultato.table-responsive {
      display: block !important;
      width: 100% !important;
      max-width: 100% !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      -webkit-overflow-scrolling: touch;
      border: 1px solid var(--cms-line) !important;
      border-radius: 0 0 16px 16px !important;
      background: #fff !important;
    }

    .cms-dashboard #tbRisultato > table {
      width: max-content !important;
      min-width: 100% !important;
      max-width: none !important;
      margin-bottom: 0 !important;
      border-collapse: collapse !important;
    }

    .cms-dashboard #tbRisultato th,
    .cms-dashboard #tbRisultato td {
      padding: 6px 7px !important;
      white-space: nowrap;
      border-width: 0 0 1px !important;
      border-style: solid !important;
      border-color: #e3ebe4 !important;
    }

    .cms-dashboard #tbRisultato th:nth-child(10),
    .cms-dashboard #tbRisultato td:nth-child(10),
    .cms-dashboard #tbRisultato th:nth-child(11),
    .cms-dashboard #tbRisultato td:nth-child(11),
    .cms-dashboard #tbRisultato th:nth-child(12),
    .cms-dashboard #tbRisultato td:nth-child(12),
    .cms-dashboard #tbRisultato th:nth-child(13),
    .cms-dashboard #tbRisultato td:nth-child(13) {
      white-space: normal !important;
      max-width: 168px;
      width: 148px;
    }
  }

  .cms-dashboard #tbRisultato th,
  .cms-dashboard #tbRisultato td {
    white-space: nowrap;
  }

  .cms-dashboard #tbRisultato tbody tr:hover {
    background: #f3faf5 !important;
  }

  .cms-dashboard #tbRisultato .cms-delivery-contract .btn {
    background: #f4f7f5 !important;
    color: #225a39 !important;
    border-color: #d5e4da !important;
  }

  body .cms-dashboard #tbRisultato .cms-note-button,
  body .cms-dashboard #tbRisultato .cms-workshop-button {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 8px !important;
    border: 0 !important;
  }

  body .cms-dashboard #tbRisultato .cms-note-present,
  body .cms-dashboard #tbRisultato .cms-workshop-pending {
    background: #dc2626 !important;
    color: #fff !important;
  }

  body .cms-dashboard #tbRisultato .cms-note-empty {
    background: #ffed00 !important;
    color: #0055bb !important;
  }

  body .cms-dashboard #tbRisultato .cms-workshop-ready {
    background: #047857 !important;
    color: #fff !important;
  }

  body .cms-dashboard #tbRisultato td.cms-delivery-plate > div {
    display: inline-flex !important;
    align-items: center;
    height: 32px;
    margin: 0;
    padding: 0 8px 0 18px !important;
    border: 1px solid #1c2a44 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #1c2a44 !important;
    font-weight: 700;
    letter-spacing: 0.06em;
    position: relative;
  }

  body .cms-dashboard #tbRisultato td.cms-delivery-plate > div::before {
    content: "I";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2457c5;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0;
    border-radius: 5px 0 0 5px;
  }

  .sl-header marquee {
    display: block;
    overflow: hidden;
  }

  .sl-header marquee h2 {
    display: inline-block !important;
    width: max-content !important;
    max-width: none !important;
    white-space: nowrap !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    color: var(--cms-muted) !important;
  }

  /* Telefono: logo al centro, in alto. Il roller non si vede. */
  @media (max-width: 991px) {
    .sl-header {
      height: 60px !important;
      min-height: 60px;
      flex-wrap: nowrap !important;
    }

    .sl-header marquee,
    .sl-header > marquee {
      display: none !important;
    }

    .sl-mainpanel {
      margin-top: 60px !important;
    }

    .cms-home-logo-mobile {
      display: flex !important;
      position: fixed !important;
      top: 8px !important;
      left: 50% !important;
      right: auto !important;
      transform: translateX(-50%) !important;
      width: 142px !important;
      height: 44px !important;
      z-index: 1031 !important;
      align-items: center;
      justify-content: center;
      background: #fff !important;
    }

    .cms-home-logo-mobile img {
      width: 126px !important;
      max-height: 42px !important;
      height: auto !important;
    }

    .cms-dashboard .cms-dashboard-heading {
      padding-left: 0 !important;
    }

    .sl-pagebody {
      padding-bottom: calc(28px + env(safe-area-inset-bottom)) !important;
    }
  }

  /* Archivio veicoli: il blu è in cms-veicoli-ricerca.css, caricato dopo. */
  body.cms-stock-page #stock-filters .stock-views button {
    border-color: #b7cbb7 !important;
    background: #f3faf5 !important;
    color: #225a39 !important;
    border-radius: 7px !important;
  }

  body.cms-stock-page #stock-filters .stock-views button[aria-pressed="true"] {
    background: #225a39 !important;
    border-color: #225a39 !important;
    color: #fff !important;
  }

  .btn-outline-primary {
    color: #225a39 !important;
    border-color: #225a39 !important;
    background: #fff !important;
  }

  .btn-outline-primary:hover {
    background: #dbeede !important;
    color: #225a39 !important;
  }

  .cms-page-tools__crumbs a,
  .cms-page-tools__back {
    color: #225a39 !important;
  }

  .cms-page-tools__back {
    border-color: #b7cbb7 !important;
    background: #f3faf5 !important;
  }

  /* Icone ancora Font Awesome: stesso tratto delle altre, su tutte le pagine. */
  .fa-calendar-check-o { --cms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M7 3v4m10-4v4M3 10h18M8 15l2 2 5-5'/%3E%3C/svg%3E"); }
  .fa-list-alt { --cms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h.01M8 12h.01M8 16h.01M11 8h5M11 12h5M11 16h5'/%3E%3C/svg%3E"); }
  .fa-folder-open-o,
  .fa-folder-open { --cms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7V5a1 1 0 0 1 1-1h5l2 3h9a1 1 0 0 1 1 1v2'/%3E%3Cpath d='M3 10h18l-2 9H5Z'/%3E%3C/svg%3E"); }

  .fa-calendar-check-o::before,
  .fa-list-alt::before,
  .fa-folder-open-o::before,
  .fa-folder-open::before {
    content: "" !important;
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.12em;
    background-color: currentColor;
    -webkit-mask: var(--cms-icon) center / contain no-repeat;
    mask: var(--cms-icon) center / contain no-repeat;
  }

  .sl-mainpanel .panel > .panel-heading {
    background: #f3faf5 !important;
    color: #1e2d21 !important;
    border-bottom-color: #d0dbd0 !important;
  }

  .pagination > li > a,
  .pagination > li > span {
    color: #225a39 !important;
    border-color: #d0dbd0 !important;
  }

  .pagination > .active > a,
  .pagination > .active > span {
    background: #225a39 !important;
    border-color: #225a39 !important;
    color: #fff !important;
  }

  body.cms-stock-page #stock-filters summary,
  body.cms-stock-page .stock-sales summary {
    color: #225a39 !important;
  }

  body.cms-stock-page .stock-sales,
  body.cms-stock-page #tbRisultato .stock-table {
    border-color: #d0dbd0 !important;
  }

  body.cms-stock-page #tbRisultato a.stock-plate,
  body.cms-stock-page #tbRisultato a.stock-plate:hover {
    color: #225a39 !important;
  }

  body.cms-stock-page .stock-pagination button {
    color: #225a39 !important;
    border-color: #b7cbb7 !important;
    background: #fff !important;
  }

  body.cms-stock-page .stock-sales button {
    background: #225a39 !important;
    color: #fff !important;
  }

  @media (max-width: 700px) {
    body.cms-stock-page #tbRisultato .stock-table tr {
      border-color: #d0dbd0 !important;
      border-left-color: #225a39 !important;
    }
  }

  @media (max-width: 991px) {
    #vc-actions {
      width: auto !important;
      max-width: 100%;
      box-sizing: border-box;
    }

    #vc-actions #btn_op_auto_tab1,
    #vc-actions .btn {
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      height: auto !important;
      white-space: normal !important;
      line-height: 1.3 !important;
    }
  }
}
