.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-ea9eb8e:#DE484A;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================================
   AREA PRIVATA – VBT Custom Styles (COMPLETO)
   Font: Roboto Condensed (titoli) / Roboto (testi)
   Accent: #de484a
   ============================================================ */

/* ---------- Import Fonts (se non già caricati dal tema) ---------- */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,300;0,400;0,700;1,400;1,700&family=Roboto:wght@300;400;500;700&display=swap');

/* ---------- CSS Variables ---------- */
:root {
  --vbt-red: #de484a;
  --vbt-red-dark: #c53d3f;
  --vbt-red-light: #fdeaea;
  --vbt-red-10: rgba(222, 72, 74, 0.10);
  --vbt-red-20: rgba(222, 72, 74, 0.20);
  --vbt-dark: #1d1d1f;
  --vbt-text: #333333;
  --vbt-text-light: #666666;
  --vbt-bg: #f5f5f7;
  --vbt-white: #ffffff;
  --vbt-border: #e5e5e7;
  --vbt-shadow: 0 2px 16px rgba(0, 0, 0, 0.06);
  --vbt-shadow-hover: 0 4px 24px rgba(0, 0, 0, 0.10);
  --vbt-radius: 14px;
  --vbt-radius-sm: 8px;
  --vbt-radius-xs: 6px;
  --vbt-transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ---------- Global overrides for the area privata page ---------- */
.page-id-1220 main.site-main,
.app-account-page main.site-main {
  font-family: 'Roboto', sans-serif;
  color: var(--vbt-text);
  background: var(--vbt-bg);
}

/* ---------- Global Links ---------- */
.page-id-1220 main.site-main a,
.app-account-page main.site-main a,
section.wpbase-account a,
.app-front-admin a {
  color: var(--vbt-red);
  text-decoration: none;
  transition: color var(--vbt-transition);
}

.page-id-1220 main.site-main a:hover,
.app-account-page main.site-main a:hover,
section.wpbase-account a:hover,
.app-front-admin a:hover {
  color: var(--vbt-red-dark);
  text-decoration: underline;
}

/* ---------- Section wrapper ---------- */
section.wpbase-account {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px 60px;
}

/* ---------- Header ---------- */
.wpbase-account__header {
  text-align: center;
  margin-bottom: 36px;
}

.wpbase-account__title {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 32px;
  color: var(--vbt-dark);
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.wpbase-account__subtitle {
  font-family: 'Roboto', sans-serif;
  font-size: 15px;
  color: var(--vbt-text-light);
  margin: 0;
  font-weight: 400;
}

/* ---------- Card container ---------- */
.wpbase-account__card {
  background: var(--vbt-white);
  border-radius: var(--vbt-radius);
  box-shadow: var(--vbt-shadow);
  padding: 0;
  overflow: hidden;
}

/* ==========================================================
   CUSTOMIZZAZIONI: Nascondere tab, campi readonly, crediti
   ========================================================== */

/* --- 1. Nascondere tab Pagamenti --- */
.wpbase-account .nav-tab-wrapper .nav-tab[href*="payment"],
.wpbase-account .nav-tab-wrapper .nav-tab[href*="app_tab_payments"],
.wpbase-account .nav-tab-wrapper a[href*="payment"],
.wpbase-account .nav-tab-wrapper a[href*="app_tab_payments"],
.app-front-admin .nav-tab-wrapper .nav-tab[href*="payment"],
.app-front-admin .nav-tab-wrapper .nav-tab[href*="app_tab_payments"],
.app-front-admin .nav-tab-wrapper a[href*="payment"],
.app-front-admin .nav-tab-wrapper a[href*="app_tab_payments"],
#app_tab_payments,
.app_tab_payments {
  display: none !important;
}

/* --- 2. Lingua preferita – nascondere completamente l'intera riga --- */
tr:has(select[name="app_user_lang"]) {
  display: none !important;
}
/* Fallback singoli elementi per browser senza :has() */
th:has(> label[for="app_user_lang"]),
td:has(> select[name="app_user_lang"]),
select[name="app_user_lang"],
label[for="app_user_lang"] {
  display: none !important;
}

/* --- 3. Numero tessera (app_address) – sola lettura --- */
input[name="app_address"] {
  pointer-events: none !important;
  opacity: 0.55;
  background-color: var(--vbt-bg) !important;
  cursor: not-allowed !important;
}

/* --- 3b. Nome Utente e Email – stile readonly coerente --- */
input[name="app_name"][readonly],
input[name="app_email"][readonly] {
  pointer-events: none !important;
  opacity: 0.55;
  background-color: var(--vbt-bg) !important;
  cursor: not-allowed !important;
  border-style: dashed;
}

/* Impedire focus ring sui campi readonly */
input[name="app_name"][readonly]:focus,
input[name="app_email"][readonly]:focus,
input[name="app_address"]:focus {
  border-color: var(--vbt-border) !important;
  box-shadow: none !important;
}

/* --- 4. Cronologia crediti – nascondere Print All, icona, Current credits, Display records, Search --- */

/* Print All link + icona stampante */
a.app-print[data-print_target="table.credit-history"],
a.app-print.app-ml10.app-b,
.dashicons-printer {
  display: none !important;
}

/* "Current credits: 0" */
div:has(> .app-current-credit) {
  display: none !important;
}

/* Fallback per browser senza :has() */
.app-current-credit {
  display: none !important;
}

/* "Display X records" (DataTables length) */
#DataTables_Table_0_length {
  display: none !important;
}

/* Search box nella tabella crediti */
#DataTables_Table_0_filter {
  display: none !important;
}

/* --- 5. Tabella prenotazioni (app_list_1) – nascondere colonne e controlli --- */

/* Nascondere colonne Status, Jitsi, Agora (colonne nth-child da adattare) */
/* Metodo robusto: nasconde header e celle che contengono il testo */
th:has(.DataTables_sort_wrapper:only-child),
td:nth-child(n) {
  /* placeholder – le regole specifiche sono sotto */
}

/* Colonna Status */
#app_list_1 th:has(.DataTables_sort_wrapper:-soup-contains("Status")),
table.app-list th:has(.DataTables_sort_wrapper:-soup-contains("Status")) {
  display: none !important;
}

/* Approccio nth-child per Status, Jitsi, Agora
   Adatta i numeri se le colonne sono in posizione diversa.
   Ispeziona la tabella e conta: es. Status=col7, Jitsi=col8, Agora=col9 */

/* -- Fallback generico: nascondi via CSS le colonne per indice -- */
/* Se le colonne sono le ultime 3, usa :nth-last-child */
#app_list_1 thead th:nth-last-child(-n+3),
#app_list_1 tbody td:nth-last-child(-n+3),
table.app-list thead th:nth-last-child(-n+3),
table.app-list tbody td:nth-last-child(-n+3) {
  display: none !important;
}

/* Print All nella sezione prenotazioni */
a.app-print-list[data-print_target],
a.app-print-list.app-ml10.app-b {
  display: none !important;
}

/* Display records */
#app_list_1_length {
  display: none !important;
}

/* Search box */
#app_list_1_filter {
  display: none !important;
}

/* ---------- Tab Navigation ---------- */
.wpbase-account .nav-tab-wrapper,
.app-front-admin .nav-tab-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-bottom: 2px solid var(--vbt-border);
  background: var(--vbt-white);
  padding: 0 12px;
  margin: 0;
  border-top-left-radius: var(--vbt-radius);
  border-top-right-radius: var(--vbt-radius);
}

.wpbase-account .nav-tab-wrapper .nav-tab,
.app-front-admin .nav-tab-wrapper .nav-tab {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  color: var(--vbt-text-light);
  background: transparent;
  border: none;
  border-bottom: 3px solid transparent;
  padding: 16px 16px 13px;
  margin: 0;
  cursor: pointer;
  transition: all var(--vbt-transition);
  text-decoration: none;
  white-space: nowrap;
  position: relative;
}

.wpbase-account .nav-tab-wrapper .nav-tab:hover,
.app-front-admin .nav-tab-wrapper .nav-tab:hover {
  color: var(--vbt-red);
  background: var(--vbt-red-10);
}

.wpbase-account .nav-tab-wrapper .nav-tab-active,
.wpbase-account .nav-tab-wrapper .nav-tab-active:hover,
.app-front-admin .nav-tab-wrapper .nav-tab-active,
.app-front-admin .nav-tab-wrapper .nav-tab-active:hover {
  color: var(--vbt-red);
  border-bottom-color: var(--vbt-red);
  background: transparent;
}

/* ---------- Content area ---------- */
.wpbase-account #poststuff,
.app-front-admin #poststuff {
  padding: 28px 28px 32px;
  margin: 0;
}

.wpbase-account .postbox,
.app-front-admin .postbox {
  border: none;
  box-shadow: none;
  background: transparent;
  margin: 0;
  padding: 0;
}

.wpbase-account .postbox .inside,
.app-front-admin .postbox .inside {
  padding: 0;
  margin: 0;
}

/* ---------- Table wrapper ---------- */
.wpbase-account .app-list-wrapper,
.app-front-admin .app-list-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* ---------- Print link ---------- */
.wpbase-account .app-print-list-wrap,
.app-front-admin .app-print-list-wrap {
  margin-bottom: 16px;
}

.wpbase-account .app-print-list-wrap a,
.app-front-admin .app-print-list-wrap a {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 13px;
  color: var(--vbt-red);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.wpbase-account .app-print-list-wrap a:hover,
.app-front-admin .app-print-list-wrap a:hover {
  color: var(--vbt-red-dark);
}

.wpbase-account .app-print-list-wrap .dashicons,
.app-front-admin .app-print-list-wrap .dashicons {
  color: var(--vbt-red);
  font-size: 16px;
}

/* ---------- Table "All Bookings" caption ---------- */
.wpbase-account table.app-list caption,
.app-front-admin table.app-list caption {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--vbt-red);
  caption-side: top;
  text-align: left;
  padding: 0 0 16px;
}

.wpbase-account table.app-list caption .app-title,
.app-front-admin table.app-list caption .app-title {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-style: italic;
  font-size: 20px;
  color: var(--vbt-red);
}

/* ---------- Booking Table ---------- */
.wpbase-account table.app-list,
.app-front-admin table.app-list {
  width: 100% !important;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius-sm);
  overflow: hidden;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
}

/* Table header */
.wpbase-account table.app-list thead tr,
.app-front-admin table.app-list thead tr {
  background: var(--vbt-red) !important;
}

.wpbase-account table.app-list thead th,
.app-front-admin table.app-list thead th {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--vbt-white) !important;
  background: var(--vbt-red) !important;
  border: none !important;
  padding: 14px 12px;
  white-space: nowrap;
}

.wpbase-account table.app-list thead th.ui-state-default,
.app-front-admin table.app-list thead th.ui-state-default {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border: none !important;
}

/* Table body */
.wpbase-account table.app-list tbody tr,
.app-front-admin table.app-list tbody tr {
  background: var(--vbt-white);
  transition: background var(--vbt-transition);
}

.wpbase-account table.app-list tbody tr:nth-child(even),
.app-front-admin table.app-list tbody tr:nth-child(even) {
  background: var(--vbt-bg);
}

.wpbase-account table.app-list tbody tr:hover,
.app-front-admin table.app-list tbody tr:hover {
  background: var(--vbt-red-light);
}

.wpbase-account table.app-list tbody td,
.app-front-admin table.app-list tbody td {
  padding: 12px;
  border-bottom: 1px solid var(--vbt-border);
  color: var(--vbt-text);
  font-size: 13px;
  vertical-align: middle;
}

.wpbase-account table.app-list tbody tr:last-child td,
.app-front-admin table.app-list tbody tr:last-child td {
  border-bottom: none;
}

/* Links in table */
.wpbase-account table.app-list tbody td a,
.app-front-admin table.app-list tbody td a {
  color: var(--vbt-red);
  text-decoration: none;
  font-weight: 500;
  transition: color var(--vbt-transition);
}

.wpbase-account table.app-list tbody td a:hover,
.app-front-admin table.app-list tbody td a:hover {
  color: var(--vbt-red-dark);
  text-decoration: underline;
}

/* ---------- Buttons in table (Cancel, Confirm, Edit) ---------- */
.wpbase-account table.app-list .ui-button,
.app-front-admin table.app-list .ui-button,
.wpbase-account .ui-button.ui-state-default,
.app-front-admin .ui-button.ui-state-default {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  padding: 7px 14px;
  border-radius: 20px;
  border: 2px solid var(--vbt-red);
  background: var(--vbt-white);
  color: var(--vbt-red);
  cursor: pointer;
  transition: all var(--vbt-transition);
  white-space: nowrap;
  line-height: 1.2;
}

.wpbase-account table.app-list .ui-button:hover,
.app-front-admin table.app-list .ui-button:hover,
.wpbase-account .ui-button.ui-state-default:hover,
.app-front-admin .ui-button.ui-state-default:hover {
  background: var(--vbt-red);
  color: var(--vbt-white);
  box-shadow: 0 2px 8px rgba(222, 72, 74, 0.3);
}

/* Disabled buttons */
.wpbase-account table.app-list .app-disabled-button,
.app-front-admin table.app-list .app-disabled-button,
.wpbase-account .ui-button.app-disabled-button,
.app-front-admin .ui-button.app-disabled-button {
  opacity: 0.4;
  border-color: var(--vbt-border);
  color: var(--vbt-text-light);
  cursor: not-allowed;
  background: var(--vbt-bg);
}

.wpbase-account table.app-list .app-disabled-button:hover,
.app-front-admin table.app-list .app-disabled-button:hover {
  background: var(--vbt-bg);
  color: var(--vbt-text-light);
  box-shadow: none;
}

/* ---------- DataTables overrides ---------- */
.wpbase-account .dataTables_wrapper,
.app-front-admin .dataTables_wrapper {
  font-family: 'Roboto', sans-serif;
}

.wpbase-account .dataTables_wrapper .dataTables_length,
.wpbase-account .dataTables_wrapper .dataTables_filter,
.app-front-admin .dataTables_wrapper .dataTables_length,
.app-front-admin .dataTables_wrapper .dataTables_filter {
  margin-bottom: 16px;
  font-size: 13px;
  color: var(--vbt-text-light);
}

.wpbase-account .dataTables_wrapper .dataTables_length select,
.app-front-admin .dataTables_wrapper .dataTables_length select {
  font-family: 'Roboto', sans-serif;
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius-xs);
  padding: 6px 10px;
  font-size: 13px;
  background: var(--vbt-white);
  color: var(--vbt-text);
  outline: none;
  transition: border-color var(--vbt-transition);
}

.wpbase-account .dataTables_wrapper .dataTables_length select:focus,
.app-front-admin .dataTables_wrapper .dataTables_length select:focus {
  border-color: var(--vbt-red);
}

.wpbase-account .dataTables_wrapper .dataTables_filter input,
.app-front-admin .dataTables_wrapper .dataTables_filter input {
  font-family: 'Roboto', sans-serif;
  border: 1px solid var(--vbt-border);
  border-radius: 20px;
  padding: 8px 16px;
  font-size: 13px;
  background: var(--vbt-white);
  color: var(--vbt-text);
  outline: none;
  transition: border-color var(--vbt-transition), box-shadow var(--vbt-transition);
  min-width: 200px;
}

.wpbase-account .dataTables_wrapper .dataTables_filter input:focus,
.app-front-admin .dataTables_wrapper .dataTables_filter input:focus {
  border-color: var(--vbt-red);
  box-shadow: 0 0 0 3px var(--vbt-red-10);
}

.wpbase-account .dataTables_wrapper .dataTables_info,
.app-front-admin .dataTables_wrapper .dataTables_info {
  font-size: 12px;
  color: var(--vbt-text-light);
  padding-top: 16px;
}

.wpbase-account .dataTables_wrapper .dataTables_paginate,
.app-front-admin .dataTables_wrapper .dataTables_paginate {
  padding-top: 16px;
}

.wpbase-account .dataTables_wrapper .dataTables_paginate .paginate_button,
.app-front-admin .dataTables_wrapper .dataTables_paginate .paginate_button {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 12px;
  padding: 6px 12px;
  border-radius: var(--vbt-radius-xs);
  border: 1px solid var(--vbt-border) !important;
  background: var(--vbt-white) !important;
  color: var(--vbt-text) !important;
  margin: 0 2px;
  cursor: pointer;
  transition: all var(--vbt-transition);
}

.wpbase-account .dataTables_wrapper .dataTables_paginate .paginate_button:hover,
.app-front-admin .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border-color: var(--vbt-red) !important;
}

.wpbase-account .dataTables_wrapper .dataTables_paginate .paginate_button.current,
.app-front-admin .dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border-color: var(--vbt-red) !important;
}

/* ---------- Status badges ---------- */
.wpbase-account .status-app-mng,
.app-front-admin .status-app-mng {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* ---------- Forms & Inputs ---------- */
.wpbase-account input[type="text"],
.wpbase-account input[type="email"],
.wpbase-account input[type="tel"],
.wpbase-account input[type="number"],
.wpbase-account input[type="password"],
.wpbase-account textarea,
.wpbase-account select,
.app-front-admin input[type="text"],
.app-front-admin input[type="email"],
.app-front-admin input[type="tel"],
.app-front-admin input[type="number"],
.app-front-admin input[type="password"],
.app-front-admin textarea,
.app-front-admin select {
  font-family: 'Roboto', sans-serif;
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius-sm);
  padding: 12px 16px;
  font-size: 14px;
  background: var(--vbt-white);
  color: var(--vbt-text);
  outline: none;
  transition: border-color var(--vbt-transition), box-shadow var(--vbt-transition);
  width: 100%;
  box-sizing: border-box;
}

.wpbase-account input[type="text"]:focus,
.wpbase-account input[type="email"]:focus,
.wpbase-account input[type="tel"]:focus,
.wpbase-account input[type="number"]:focus,
.wpbase-account input[type="password"]:focus,
.wpbase-account textarea:focus,
.wpbase-account select:focus,
.app-front-admin input[type="text"]:focus,
.app-front-admin input[type="email"]:focus,
.app-front-admin input[type="tel"]:focus,
.app-front-admin input[type="number"]:focus,
.app-front-admin input[type="password"]:focus,
.app-front-admin textarea:focus,
.app-front-admin select:focus {
  border-color: var(--vbt-red);
  box-shadow: 0 0 0 3px var(--vbt-red-10);
}

/* Labels */
.wpbase-account label,
.app-front-admin label {
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: var(--vbt-text-light);
  text-transform: uppercase;
  letter-spacing: 0.3px;
  margin-bottom: 4px;
  display: block;
}

/* ---------- Submit / Action buttons ---------- */
.wpbase-account .app-checkout-field button,
.wpbase-account input[type="submit"],
.wpbase-account button.app-book-now,
.app-front-admin .app-checkout-field button,
.app-front-admin input[type="submit"],
.app-front-admin button.app-book-now {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 1px;
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border: none;
  border-radius: 30px;
  padding: 14px 32px;
  cursor: pointer;
  transition: all var(--vbt-transition);
  box-shadow: 0 4px 12px rgba(222, 72, 74, 0.3);
}

.wpbase-account .app-checkout-field button:hover,
.wpbase-account input[type="submit"]:hover,
.wpbase-account button.app-book-now:hover,
.app-front-admin .app-checkout-field button:hover,
.app-front-admin input[type="submit"]:hover,
.app-front-admin button.app-book-now:hover {
  background: var(--vbt-red-dark) !important;
  box-shadow: 0 6px 20px rgba(222, 72, 74, 0.4);
  transform: translateY(-1px);
}

/* ---------- Calendar overrides ---------- */
.wpbase-account .app-monthly-container,
.app-front-admin .app-monthly-container {
  border-radius: var(--vbt-radius-sm);
  overflow: hidden;
  border: 1px solid var(--vbt-border);
}

.wpbase-account .app-monthly-container caption,
.app-front-admin .app-monthly-container caption {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 12px 16px;
}

.wpbase-account .app-monthly-container caption .app-flex,
.app-front-admin .app-monthly-container caption .app-flex {
  background: var(--vbt-red) !important;
}

.wpbase-account .app-monthly-container caption a,
.app-front-admin .app-monthly-container caption a {
  color: var(--vbt-white) !important;
}

.wpbase-account .app-monthly-container th,
.app-front-admin .app-monthly-container th {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  color: var(--vbt-text-light);
  padding: 10px 8px;
}

.wpbase-account .app-monthly-container td,
.app-front-admin .app-monthly-container td {
  border-radius: var(--vbt-radius-xs);
}

/* Free / Available days */
.wpbase-account td.free,
.wpbase-account div.free,
.app-front-admin td.free,
.app-front-admin div.free {
  background-color: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border-radius: var(--vbt-radius-xs);
}

/* ---------- Timetable slots ---------- */
.wpbase-account .app-timetable-cell,
.app-front-admin .app-timetable-cell {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  border-radius: 20px !important;
  padding: 8px 14px;
  margin: 3px;
  transition: all var(--vbt-transition);
}

.wpbase-account .app-timetable-cell.free,
.app-front-admin .app-timetable-cell.free {
  border: 2px solid var(--vbt-red) !important;
  color: var(--vbt-red) !important;
  background: var(--vbt-white) !important;
}

.wpbase-account .app-timetable-cell.free:hover,
.app-front-admin .app-timetable-cell.free:hover {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
}

.wpbase-account .app-timetable-cell.free.app-selected,
.app-front-admin .app-timetable-cell.free.app-selected {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border-color: var(--vbt-red) !important;
}

/* ---------- Riepilogo / Summary card ---------- */
.wpbase-account .app-confirmation-wrapper,
.app-front-admin .app-confirmation-wrapper {
  background: var(--vbt-white);
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius);
  padding: 24px;
  margin: 20px 0;
}

.wpbase-account .app-confirmation-wrapper table,
.app-front-admin .app-confirmation-wrapper table {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
}

.wpbase-account .app-confirmation-wrapper table td,
.app-front-admin .app-confirmation-wrapper table td {
  padding: 8px 12px;
  border-bottom: 1px solid var(--vbt-border);
}

/* ---------- Checkout section ---------- */
.wpbase-account .app-checkout,
.app-front-admin .app-checkout {
  font-family: 'Roboto', sans-serif;
}

/* Checkout title */
.wpbase-account .app-checkout-title,
.app-front-admin .app-checkout-title {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-style: italic;
  font-size: 20px;
  color: var(--vbt-red);
  text-transform: uppercase;
}

/* ---------- Gateway / Payment ---------- */
.wpbase-account .app-gateway-label,
.app-front-admin .app-gateway-label {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  color: var(--vbt-text);
}

.wpbase-account .app-gateway-wrapper,
.app-front-admin .app-gateway-wrapper {
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius-sm);
  padding: 16px;
  margin: 8px 0;
  transition: border-color var(--vbt-transition);
}

.wpbase-account .app-gateway-wrapper:hover,
.app-front-admin .app-gateway-wrapper:hover {
  border-color: var(--vbt-red);
}

/* ---------- Flex menu / slide navigation ---------- */
.wpbase-account .app-flex-menu.app-slide.with-caption .app-flex,
.wpbase-account .app-book-flex .app-flex,
.app-front-admin .app-flex-menu.app-slide.with-caption .app-flex,
.app-front-admin .app-book-flex .app-flex {
  background: var(--vbt-red) !important;
  border-radius: var(--vbt-radius-xs);
}

/* ---------- jQuery UI overrides ---------- */
.wpbase-account .ui-widget,
.app-front-admin .ui-widget {
  font-family: 'Roboto', sans-serif;
}

.wpbase-account .ui-widget-header,
.app-front-admin .ui-widget-header {
  background: var(--vbt-red);
  color: var(--vbt-white);
  border: none;
}

.wpbase-account .ui-state-highlight,
.app-front-admin .ui-state-highlight {
  background: var(--vbt-red-light);
  color: var(--vbt-red);
  border: 1px solid var(--vbt-red-20);
}

.wpbase-account .ui-state-active,
.app-front-admin .ui-state-active {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  border-color: var(--vbt-red) !important;
}

/* ---------- Tabs (jQuery UI tabs override) ---------- */
.wpbase-account .ui-tabs .ui-tabs-nav,
.app-front-admin .ui-tabs .ui-tabs-nav {
  background: transparent;
  border: none;
  padding: 0;
}

/* ---------- Logged-in message ---------- */
.elementor-login__logged-in-message {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  color: var(--vbt-text-light);
  text-align: center;
  padding: 20px;
}

.elementor-login__logged-in-message a {
  color: var(--vbt-red);
  text-decoration: none;
  font-weight: 500;
}

.elementor-login__logged-in-message a:hover {
  color: var(--vbt-red-dark);
  text-decoration: underline;
}

/* ---------- Schedules tab ---------- */
.wpbase-account .app-schedules-wrapper h3,
.wpbase-account .app-schedules-wrapper h4,
.app-front-admin .app-schedules-wrapper h3,
.app-front-admin .app-schedules-wrapper h4 {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  color: var(--vbt-dark);
}

/* ---------- Working Hours / Holidays table ---------- */
.wpbase-account table.app-wh-table,
.wpbase-account table.app-holidays-table,
.app-front-admin table.app-wh-table,
.app-front-admin table.app-holidays-table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--vbt-border);
  border-radius: var(--vbt-radius-sm);
  overflow: hidden;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
}

.wpbase-account table.app-wh-table thead th,
.wpbase-account table.app-holidays-table thead th,
.app-front-admin table.app-wh-table thead th,
.app-front-admin table.app-holidays-table thead th {
  background: var(--vbt-red) !important;
  color: var(--vbt-white) !important;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 12px;
  border: none !important;
}

/* ---------- Updating panel ---------- */
.app-updating-panel .app-updating {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--vbt-red);
}

/* ---------- Loading dots color ---------- */
.cssload-dot {
  background-color: var(--vbt-red) !important;
}

/* ---------- Scrollbar styling ---------- */
.wpbase-account ::-webkit-scrollbar,
.app-front-admin ::-webkit-scrollbar {
  height: 6px;
  width: 6px;
}

.wpbase-account ::-webkit-scrollbar-track,
.app-front-admin ::-webkit-scrollbar-track {
  background: var(--vbt-bg);
  border-radius: 3px;
}

.wpbase-account ::-webkit-scrollbar-thumb,
.app-front-admin ::-webkit-scrollbar-thumb {
  background: var(--vbt-red-20);
  border-radius: 3px;
}

.wpbase-account ::-webkit-scrollbar-thumb:hover,
.app-front-admin ::-webkit-scrollbar-thumb:hover {
  background: var(--vbt-red);
}

/* ---------- Responsive ---------- */
@media screen and (max-width: 768px) {
  section.wpbase-account {
    padding: 20px 12px 40px;
  }

  .wpbase-account__title {
    font-size: 26px;
  }

  .wpbase-account .nav-tab-wrapper,
  .app-front-admin .nav-tab-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap;
    padding: 0 8px;
  }

  .wpbase-account .nav-tab-wrapper .nav-tab,
  .app-front-admin .nav-tab-wrapper .nav-tab {
    font-size: 11px;
    padding: 12px 10px 9px;
  }

  .wpbase-account #poststuff,
  .app-front-admin #poststuff {
    padding: 16px 14px 20px;
  }

  .wpbase-account table.app-list thead th,
  .app-front-admin table.app-list thead th {
    font-size: 10px;
    padding: 10px 8px;
  }

  .wpbase-account table.app-list tbody td,
  .app-front-admin table.app-list tbody td {
    font-size: 12px;
    padding: 10px 8px;
  }

  .wpbase-account table.app-list .ui-button,
  .app-front-admin table.app-list .ui-button {
    font-size: 10px;
    padding: 5px 10px;
  }
}

@media screen and (max-width: 480px) {
  .wpbase-account__title {
    font-size: 22px;
  }

  .wpbase-account__subtitle {
    font-size: 13px;
  }

  .wpbase-account .nav-tab-wrapper .nav-tab,
  .app-front-admin .nav-tab-wrapper .nav-tab {
    font-size: 10px;
    padding: 10px 8px 7px;
  }
}


















































/* ============================================
   RESTYLING WP BASE PRO - Booking System
   Plugin: WP Base Pro v5.9.1
   Incollare in: Aspetto > Personalizza > CSS aggiuntivo
   ============================================ */

/* ------------------------------------------
   1. FONT - Roboto Condensed per titoli, Roboto per testi
   ------------------------------------------ */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,400;0,700;1,400;1,700&display=swap');

/* ------------------------------------------
   2. TITOLI SEZIONI - Stile corsivo rosso
   ------------------------------------------ */
.app-compact-book-wrapper .app-title,
.app-compact-book-wrapper .step-title span,
.app-booking-info > .app-title span,
.app-compact-book-wrapper .app-subtitle {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #D32F2F !important;
    font-weight: 700 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    font-size: 1.4rem !important;
    letter-spacing: 0.5px !important;
}

.app-compact-book-wrapper .app-subtitle {
    font-size: 1.15rem !important;
    margin-top: 15px !important;
    margin-bottom: 10px !important;
}

/* ------------------------------------------
   3. DROPDOWN SELECT (Seleziona servizio)
   ------------------------------------------ */
.app-compact-book-wrapper select.app_select_services {
    border: 1.5px solid #ccc !important;
    border-radius: 25px !important;
    padding: 10px 20px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 1rem !important;
    color: #000 !important;
    background-color: #fff !important;
    width: 100% !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 15px center !important;
    cursor: pointer;
}

/* ------------------------------------------
   4. CALENDARIO - Barra mese (gradient rosso, pill)
   ------------------------------------------ */
.minimal.app-monthly-container caption .app-flex {
    background: linear-gradient(135deg, #D32F2F, #B71C1C) !important;
    color: #fff !important;
    border-radius: 25px !important;
    padding: 10px 20px !important;
}

.minimal.app-monthly-container caption .app-flex .month-name {
    font-family: 'Roboto Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    letter-spacing: 1px !important;
}

.minimal.app-monthly-container caption .app-flex a,
.minimal.app-monthly-container caption .app-flex .app-icon {
    color: #fff !important;
}

/* ------------------------------------------
   5. CALENDARIO - Header giorni della settimana
   ------------------------------------------ */
.minimal.app-monthly-container .app-days-tr th {
    font-family: 'Roboto', sans-serif !important;
    color: #888 !important;
    font-weight: 600 !important;
    font-size: 0.85rem !important;
    padding: 12px 0 8px !important;
    border: none !important;
    background: transparent !important;
}

/* ------------------------------------------
   6. CALENDARIO - Giorni generali
   ------------------------------------------ */
.minimal.app-monthly-container td.app_day {
    font-family: 'Roboto', sans-serif !important;
    border: none !important;
    padding: 4px !important;
}

.minimal.app-monthly-container td.app_day p {
    width: 38px !important;
    height: 38px !important;
    line-height: 38px !important;
    text-align: center !important;
    margin: 0 auto !important;
    border-radius: 50% !important;
    font-size: 0.95rem !important;
    transition: all 0.2s ease !important;
}

/* ------------------------------------------
   7. CALENDARIO - Giorni disponibili (rosso grassetto)
   ------------------------------------------ */
.minimal.app-monthly-container td.free {
    color: #D32F2F !important;
    font-weight: 700 !important;
}

.minimal.app-monthly-container td.free p {
    background-color: transparent !important;
    color: #D32F2F !important;
    font-weight: 700 !important;
}

/* Giorni non disponibili (grigio chiaro) */
.minimal.app-monthly-container td.notpossible {
    color: #ccc !important;
    font-weight: 400 !important;
}

.minimal.app-monthly-container td.notpossible p {
    background-color: transparent !important;
    color: #ccc !important;
}

/* Mese precedente/successivo (ancora più chiaro) */
.minimal.app-monthly-container td.app-other-month p {
    color: #ddd !important;
}

/* ------------------------------------------
   8. CALENDARIO - Giorno selezionato (cerchio rosso pieno)
   ------------------------------------------ */
.minimal.app-monthly-container td.free.app-selected-day p,
.minimal.app-monthly-container td.app-selected-day p {
    background-color: #D32F2F !important;
    color: #fff !important;
    border-radius: 50% !important;
    font-weight: 700 !important;
}

/* Giorno oggi - puntino sotto il numero */
.minimal.app-monthly-container td.today p {
    position: relative !important;
}

.minimal.app-monthly-container td.today p::after {
    content: '' !important;
    display: block !important;
    width: 4px !important;
    height: 4px !important;
    background: #D32F2F !important;
    border-radius: 50% !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

/* Hover sui giorni disponibili */
.minimal.app-monthly-container td.free:hover p {
    background-color: rgba(211, 47, 47, 0.15) !important;
    cursor: pointer !important;
}

/* ------------------------------------------
   9. BOTTONI ORARI (pill-shaped)
   ------------------------------------------ */
.minimal.app-monthly-container .app-timetable-cell {
    border: 1.5px solid #ddd !important;
    border-radius: 25px !important;
    padding: 8px 16px !important;
    margin: 4px !important;
    background-color: #fff !important;
    color: #333 !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 0.9rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-block !important;
    text-align: center !important;
}

/* Orario disponibile */
.minimal.app-monthly-container .app-timetable-cell.free {
    border-color: #ddd !important;
    color: #333 !important;
    background-color: #fff !important;
}

/* Orario hover */
.minimal.app-monthly-container .app-timetable-cell.free:hover {
    border-color: #D32F2F !important;
    color: #D32F2F !important;
    border-width: 1.5px !important;
}

/* Orario selezionato (rosso pieno) */
.minimal.app-monthly-container .app-timetable-cell.free.app-selected-timetable,
.minimal.app-monthly-container .app-timetable-cell.free:active {
    background-color: #D32F2F !important;
    border-color: #D32F2F !important;
    color: #fff !important;
    font-weight: 600 !important;
}

/* Orario non disponibile */
.minimal.app-monthly-container .app-timetable-cell.notpossible,
.minimal.app-monthly-container .app-timetable-cell.busy {
    border-color: #eee !important;
    color: #ccc !important;
    background-color: #fafafa !important;
    cursor: default !important;
}

/* ------------------------------------------
   10. RIEPILOGO - Card con bordo rosso a sinistra
   ------------------------------------------ */
.app-booking-info {
    border: 1px solid #eee !important;
    border-left: 4px solid #D32F2F !important;
    border-radius: 8px !important;
    padding: 20px !important;
    background-color: #fff !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06) !important;
}

.app-booking-info .app-title {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #D32F2F !important;
    font-weight: 700 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
}

/* Titolo corso nel riepilogo */
.app-booking-info .app-headline .service,
.app-booking-info .app-headline-sub .service {
    font-family: 'Roboto Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-style: italic !important;
}

/* Data nel riepilogo */
.app-booking-info .app-headline-sub .start {
    color: #D32F2F !important;
    font-weight: 500 !important;
}

/* Righe info */
.app-booking-info .app-row {
    font-family: 'Roboto', sans-serif !important;
    padding: 3px 0 !important;
    font-size: 0.9rem !important;
}

/* Prezzo totale */
.app-booking-info .app-footer .app-row.amount {
    color: #D32F2F !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    border-top: 1px solid #eee !important;
    padding-top: 10px !important;
    margin-top: 10px !important;
}

/* ------------------------------------------
   11. CHECKOUT - Timer countdown
   ------------------------------------------ */
.app-conf-wrap-v2 .step-countdown {
    color: #D32F2F !important;
    font-family: 'Roboto', sans-serif !important;
}

.app-conf-wrap-v2 .app-conf-countdown,
.app-conf-wrap-v2 .app-conf-countdown * {
    color: #D32F2F !important;
    font-weight: 600 !important;
}

/* Titolo Checkout */
.app-conf-wrap-v2 .step-title .step-select-title {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #D32F2F !important;
    font-weight: 700 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    font-size: 1.4rem !important;
}

/* ------------------------------------------
   12. FORM CAMPI (Cognome, Email, Telefono, Note)
   ------------------------------------------ */
.app-client-info .app-cinfo {
    margin-bottom: 12px !important;
    border: 1px solid #ddd !important;
    border-radius: 8px !important;
    background-color: #fafafa !important;
    overflow: visible !important;
    transition: border-color 0.2s ease !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
}

.app-client-info .app-cinfo label {
    display: block !important;
    position: relative !important;
    z-index: 2 !important;
    margin: 0 !important;
    padding: 10px 14px 0 14px !important;
    float: none !important;
    width: auto !important;
    height: auto !important;
    border: none !important;
    background: transparent !important;
    line-height: normal !important;
}

.app-client-info .app-cinfo label .app-conf-title {
    font-family: 'Roboto', sans-serif !important;
    font-size: 0.72rem !important;
    color: #999 !important;
    display: block !important;
    line-height: 1.3 !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    position: relative !important;
}

.app-client-info .app-cinfo input[type="text"],
.app-client-info .app-cinfo textarea {
    border: none !important;
    border-top: none !important;
    border-radius: 0 !important;
    padding: 0 14px 10px 14px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 0.95rem !important;
    color: #000 !important;
    background-color: transparent !important;
    width: 100% !important;
    box-sizing: border-box !important;
    outline: none !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    display: block !important;
    position: relative !important;
    z-index: 1 !important;
    float: none !important;
    height: auto !important;
    min-height: 0 !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
}

/* Textarea specifica (Note) - label visibile e più spazio */
.app-client-info .app-cinfo.has-textarea label {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    position: relative !important;
    overflow: visible !important;
    padding: 10px 14px 0 14px !important;
}

.app-client-info .app-cinfo.has-textarea label .app-conf-title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    position: relative !important;
}

.app-client-info .app-cinfo.has-textarea textarea {
    min-height: 50px !important;
    resize: vertical !important;
    padding: 0 14px 10px 14px !important;
}

/* Focus state */
.app-client-info .app-cinfo:focus-within {
    border-color: #D32F2F !important;
    background-color: #fff !important;
    box-shadow: 0 0 0 2px rgba(211, 47, 47, 0.1) !important;
}

.app-client-info .app-cinfo input[type="text"]:focus,
.app-client-info .app-cinfo textarea:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* Rimuovi qualsiasi riga/bordo tra label e input */
.app-client-info .app-cinfo label + input,
.app-client-info .app-cinfo label + textarea {
    border-top: none !important;
    margin-top: 0 !important;
}

/* ------------------------------------------
   13. METODO DI PAGAMENTO
   ------------------------------------------ */
.app-payment-field .app-gateway-items {
    border: 1px solid #eee !important;
    border-radius: 12px !important;
    padding: 20px !important;
    margin-top: 10px !important;
    text-align: center !important;
}

.app-payment-field .app-payment-gateway-item span {
    font-family: 'Roboto', sans-serif !important;
}

.app-payment-field .app-credit-balance {
    font-family: 'Roboto', sans-serif !important;
    font-size: 0.85rem !important;
    color: #666 !important;
    margin-top: 8px !important;
}

.app-payment-field input[type="radio"]:checked {
    accent-color: #D32F2F !important;
}

/* ------------------------------------------
   14. BOTTONE CHECKOUT (rosso pieno, pill)
   ------------------------------------------ */
.app-checkout-field button.app-conf-button {
    background-color: #D32F2F !important;
    background: #D32F2F !important;
    color: #fff !important;
    border: none !important;
    border-radius: 25px !important;
    padding: 12px 35px !important;
    font-family: 'Roboto Condensed', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    box-shadow: 0 2px 6px rgba(211, 47, 47, 0.3) !important;
}

.app-checkout-field button.app-conf-button:hover {
    background-color: #B71C1C !important;
    background: #B71C1C !important;
}

/* ------------------------------------------
   15. LINK SECONDARI (Aggiungi slot, Svuota carrello)
   ------------------------------------------ */
.app-checkout-field a.app-cont-btn,
.app-checkout-field a.app-empty-cart {
    font-family: 'Roboto', sans-serif !important;
    color: #D32F2F !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
    font-style: italic !important;
    transition: color 0.2s ease !important;
}

.app-checkout-field a.app-cont-btn:hover,
.app-checkout-field a.app-empty-cart:hover {
    color: #B71C1C !important;
    text-decoration: underline !important;
}

/* ------------------------------------------
   16. ICONE RIMUOVI (cestino nel carrello)
   ------------------------------------------ */
.app-booking-info .dashicons-trash,
.app-booking-info .app-remove-item {
    color: #D32F2F !important;
    cursor: pointer !important;
}

/* ------------------------------------------
   17. FONT BASE GENERALE + COLORI TESTO
   ------------------------------------------ */
.app-compact-book-wrapper {
    font-family: 'Roboto', sans-serif !important;
    color: #000 !important;
}

.app-compact-book-wrapper .ui-widget {
    font-family: 'Roboto', sans-serif !important;
}

/* Testo generico nero */
.app-booking-info .app-content,
.app-booking-info .app-row,
.app-booking-info .app-headline,
.app-conf-wrap-v2 .app-client-info,
.app-conf-wrap-v2 .app-step-content {
    color: #000 !important;
}

/* Link nel riepilogo - rosso */
.app-booking-info a,
.app-booking-info .service a,
.app-booking-info .start a {
    color: #D32F2F !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

/* Testi conf generici (nomi servizio, dettagli) - nero */
.app-conf-text {
    color: #000 !important;
}

/* Testi conf nel riepilogo heading (nome corso) - nero grassetto */
.app-booking-info .app-headline .app-conf-text {
    color: #000 !important;
    font-weight: 700 !important;
}

/* Testi conf prezzo/totale - rosso */
.app-booking-info .app-footer .app-conf-text,
.app-booking-info .app-row.amount .app-conf-text {
    color: #D32F2F !important;
    font-weight: 700 !important;
}

/* Prezzo nel riepilogo */
.app-booking-info .app-row.price,
.app-booking-info .app-footer .amount {
    color: #D32F2F !important;
    font-weight: 700 !important;
}

/* ------------------------------------------
   18. RESPONSIVE
   ------------------------------------------ */
@media (max-width: 768px) {
    .app-booking-info {
        margin-top: 20px !important;
    }

    .app-checkout-field.has-cart {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 10px !important;
        align-items: center !important;
    }

    .app-checkout-field button.app-conf-button {
        order: 2 !important;
    }
}

/* ------------------------------------------
   19. NASCONDI TESTI CHF E RIGHE NON NECESSARIE
   ------------------------------------------ */

/* Nasconde "You have 980 credits worth of 980,00CHF" */
.app-credit-balance {
    display: none !important;
}

/* Nasconde righe prezzo/deposito/fee nel riepilogo */
.app-booking-info .app-row.price,
.app-booking-info .app-row.deposit,
.app-booking-info .app-row.fee {
    display: none !important;
}

/* Nasconde il footer del riepilogo (totale CHF) */
.app-booking-info .app-footer {
    display: none !important;
}

/* Nasconde riga "Provider: admin" */
.app-booking-info .app-row.worker {
    display: none !important;
}

/* Nasconde riga "Fine: data" */
.app-booking-info .app-row.end {
    display: none !important;
}/* End custom CSS */