/* TECH14IT — Sistema responsive globale Tenute Dioro
   Livello finale e conservativo: corregge layout e viewport senza cambiare la logica applicativa. */
:root{
  --td-viewport-height:100dvh;
  --td-page-gutter:clamp(12px,2.2vw,28px);
  --td-section-gap:clamp(12px,1.8vw,22px);
  --td-content-max:1120px;
  --td-admin-max:1440px;
  --td-touch-target:44px;
}
html{width:100%;max-width:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%;overflow-x:clip!important;}
body{width:100%;max-width:100%;min-height:var(--td-viewport-height);overflow-x:clip!important;}
img,svg,video,canvas,iframe{max-width:100%;}
img,video{height:auto;}
button,input,select,textarea{max-width:100%;font:inherit;}
input,select,textarea{min-width:0;}
:is(.td-store-shell,.td-profile-shell,.td-admin-shell,.td-card,.td-spa-view,.td-profile-spa-view),
:is(.td-store-shell,.td-profile-shell,.td-admin-shell,.td-card,.td-spa-view,.td-profile-spa-view) *{min-width:0;}
:is(h1,h2,h3,h4,p,strong,span,a,button,label,td,th){overflow-wrap:anywhere;}
[hidden]{display:none!important;}

/* Contenitori principali: si adattano in tempo reale alla larghezza della finestra. */
.td-store-shell{
  width:min(var(--td-content-max),calc(100% - (var(--td-page-gutter) * 2)))!important;
  max-width:100%!important;
  margin-inline:auto!important;
  padding-top:clamp(14px,2.4vw,30px)!important;
  padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))!important;
}
.td-profile-shell{
  width:min(var(--td-content-max),calc(100% - (var(--td-page-gutter) * 2)))!important;
  max-width:100%!important;
  margin-inline:auto!important;
}
.td-admin-shell{
  width:min(var(--td-admin-max),calc(100% - (var(--td-page-gutter) * 2)))!important;
  max-width:100%!important;
  padding-inline:0!important;
}
.td-spa-view,.td-profile-spa-view{width:100%!important;max-width:100%!important;}

/* Griglie generiche: le colonne possono restringersi senza produrre overflow. */
:is(.td-profile-grid,.td-lower-grid,.td-cart-layout,.td-product-detail-card,.td-product-detail-shell,
.td-admin-access-navigation,.td-admin-order-search-row,.td-admin-filter-fields,.td-admin-stats,
.td-admin-event-kpis,.td-admin-event-stats,.td-admin-events-layout,.td-admin-event-search-drawer,
.td-admin-catalog-order-line,.td-admin-edit-grid,.td-admin-edit-line,.td-ticket-featured-grid,
.td-ticket-advanced-filters,.td-ticket-info-grid,.td-points-reward-grid){max-width:100%!important;}

/* Modali e pannelli: altezza basata sulla viewport reale, anche con finestra ridimensionata. */
.td-modal,.td-admin-modal{
  width:100%!important;
  height:var(--td-viewport-height)!important;
  max-height:var(--td-viewport-height)!important;
  padding:max(12px,env(safe-area-inset-top,0px)) var(--td-page-gutter) max(12px,env(safe-area-inset-bottom,0px))!important;
  overflow:hidden!important;
}
.td-modal-card,.td-admin-modal-card{
  width:min(920px,100%)!important;
  max-width:100%!important;
  max-height:calc(var(--td-viewport-height) - max(24px,env(safe-area-inset-top,0px)) - max(24px,env(safe-area-inset-bottom,0px)))!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.td-admin-modal-card:has(#tdAdminProductForm){width:min(1180px,100%)!important;}

/* Tabelle e contenuti amministrativi larghi: scroll locale controllato, mai dell'intera pagina. */
:is(.td-admin-table-wrap,.td-admin-orders-table-wrap,.td-admin-history-table-wrap,.td-admin-table-scroll,
.td-admin-event-participants,.td-admin-customer-results,.td-admin-order-items-wrap){
  max-width:100%!important;
  overflow-x:auto!important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
:is(.td-admin-table-wrap,.td-admin-orders-table-wrap,.td-admin-history-table-wrap) table{min-width:720px;}

/* Barra menu inferiore elastica. */
.td-ios-tabbar{
  width:min(560px,calc(100% - max(20px,var(--td-page-gutter) * 2)))!important;
  max-width:calc(100% - 20px)!important;
}
.td-ios-tabbar .td-ios-tab{min-width:0!important;}
.td-ios-tabbar .td-ios-tab>span:not(.td-ios-tab-icon){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}

/* Accesso: mantiene il contenuto visibile anche con viewport bassa o tastiera virtuale. */
.td-access{
  min-height:var(--td-viewport-height)!important;
  padding:clamp(10px,2.4vw,28px)!important;
  align-items:center;
}
.td-card{
  width:min(760px,100%)!important;
  max-width:100%!important;
  min-height:min(860px,calc(var(--td-viewport-height) - clamp(20px,4.8vw,56px)))!important;
  max-height:calc(var(--td-viewport-height) - clamp(20px,4.8vw,56px));
}
.td-flow{max-width:100%!important;}
.td-form{max-width:100%!important;}

/* Desktop medio e finestre affiancate. */
@media (max-width:1100px){
  :root{--td-page-gutter:clamp(14px,2vw,22px);}
  .td-admin-access-navigation{grid-template-columns:1fr!important;}
  .td-admin-access-navigation .td-admin-rolebar{justify-content:stretch!important;}
  .td-admin-access-navigation .td-admin-tabs{justify-content:stretch!important;}
  .td-admin-order-search-row{grid-template-columns:minmax(0,1fr) auto!important;}
  .td-admin-catalog-order-line{grid-template-columns:minmax(190px,1.4fr) minmax(180px,1fr) 82px 96px 38px!important;}
  .td-product-detail-page .td-product-detail-shell::before{display:none!important;}
}

/* Tablet e finestre desktop strette. */
@media (max-width:860px){
  .td-profile-grid,.td-lower-grid,.td-cart-layout,.td-product-detail-card,.td-product-detail-shell,
  .td-admin-events-layout,.td-admin-event-manage-card{grid-template-columns:1fr!important;}
  .td-admin-tabs{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;width:100%!important;}
  .td-admin-tabs button{width:100%!important;min-height:var(--td-touch-target)!important;}
  .td-admin-catalog-order-line{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:end!important;}
  .td-admin-catalog-order-line>[data-edit-remove-line]{grid-column:2!important;justify-self:end!important;}
  .td-ticket-featured-grid,.td-ticket-advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .td-product-detail-preview{width:100%!important;}
}

/* Smartphone e finestre molto strette. */
@media (max-width:620px){
  :root{--td-page-gutter:10px;--td-section-gap:12px;}
  body{font-size:15px;}
  .td-store-shell{width:calc(100% - 20px)!important;padding-top:10px!important;}
  .td-profile-shell,.td-admin-shell{width:calc(100% - 20px)!important;}
  :is(.td-store-hero,.td-catalog-header,.td-cart-panel,.td-cart-summary-card,.td-product-detail-card,
  .td-member-card,.td-panel,.td-admin-order,.td-admin-empty,.td-admin-rolebar,.td-admin-account-card){
    border-radius:clamp(20px,6vw,26px)!important;
  }
  :is(.td-store-hero,.td-catalog-header,.td-cart-panel,.td-cart-summary-card,.td-product-detail-card,
  .td-member-card,.td-panel,.td-admin-order,.td-admin-empty){padding:clamp(15px,4.5vw,22px)!important;}
  .td-admin-header h1{font-size:clamp(30px,10vw,44px)!important;}
  .td-admin-header p{font-size:13px!important;}
  .td-admin-order-search-row,.td-admin-filter-fields,.td-admin-stats,.td-admin-event-kpis,
  .td-admin-event-stats,.td-admin-event-search-drawer,.td-admin-edit-grid,.td-admin-edit-line,
  .td-admin-catalog-order-line,.td-ticket-featured-grid,.td-ticket-advanced-filters,.td-ticket-info-grid,
  .td-points-reward-grid{grid-template-columns:1fr!important;}
  .td-admin-order-search-row>*{width:100%!important;}
  .td-admin-catalog-order-line>[data-edit-remove-line]{grid-column:1!important;}
  .td-admin-modal-actions,.td-admin-edit-items-head{display:grid!important;grid-template-columns:1fr!important;}
  .td-admin-modal-actions button,.td-admin-edit-items-head button{width:100%!important;}
  .td-admin-account-card{grid-template-columns:48px minmax(0,1fr) auto!important;}
  .td-admin-account-card>img{width:48px!important;height:48px!important;}
  .td-admin-account-card .td-admin-role-badge{grid-column:1/-1!important;}
  .td-admin-rolebar .td-admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .td-ios-tabbar{width:calc(100% - 16px)!important;max-width:none!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;}
  .td-ios-tabbar .td-ios-tab{height:54px!important;}
  .td-ios-tabbar .td-ios-tab>span:not(.td-ios-tab-icon){font-size:clamp(7px,2.4vw,9px)!important;}
  .td-modal,.td-admin-modal{padding:8px!important;padding-top:max(8px,env(safe-area-inset-top,0px))!important;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))!important;align-items:flex-end!important;}
  .td-modal-card,.td-admin-modal-card{width:100%!important;max-height:calc(var(--td-viewport-height) - max(16px,env(safe-area-inset-top,0px)))!important;border-radius:24px 24px 18px 18px!important;padding:clamp(18px,5vw,24px)!important;}
  .td-form input,.td-form select,.td-form textarea,input,select,textarea{font-size:16px;}
}

/* Telefoni molto piccoli. */
@media (max-width:390px){
  :root{--td-page-gutter:7px;}
  .td-store-shell,.td-profile-shell,.td-admin-shell{width:calc(100% - 14px)!important;}
  .td-admin-rolebar .td-admin-tabs{grid-template-columns:1fr!important;}
  .td-ios-tabbar{width:calc(100% - 10px)!important;padding:5px!important;gap:1px!important;}
  .td-ios-tabbar .td-ios-tab{height:52px!important;padding-inline:1px!important;}
  .td-ios-tabbar .td-ios-tab-icon{width:20px!important;height:20px!important;}
  .td-ios-tabbar .td-ios-tab svg{width:19px!important;height:19px!important;}
  .td-card{padding-inline:14px!important;}
  .td-form{padding-inline:16px!important;}
}

/* Finestre basse, landscape mobile e tastiera aperta. */
@media (max-height:700px){
  .td-access{align-items:start!important;overflow-y:auto!important;}
  .td-card{min-height:calc(var(--td-viewport-height) - 20px)!important;max-height:none!important;align-content:start!important;padding-top:24px!important;padding-bottom:24px!important;overflow:visible!important;}
  .td-flow{position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;margin-top:8px!important;}
  .td-flow.is-active{transform:none!important;}
  .td-choice.is-leaving{position:absolute!important;inset:auto 0!important;}
  .td-form{max-height:none!important;overflow:visible!important;}
  .td-logo{max-height:110px!important;width:auto!important;}
  .td-separator{margin-bottom:12px!important;height:28px!important;}
}

@media (orientation:landscape) and (max-height:520px){
  .td-ios-tabbar{min-height:58px!important;padding:5px!important;bottom:4px!important;}
  .td-ios-tabbar .td-ios-tab{height:46px!important;grid-template-columns:auto auto!important;display:grid!important;gap:5px!important;}
  .td-ios-tabbar .td-ios-tab-icon{width:19px!important;height:19px!important;}
  .td-ios-tabbar .td-ios-tab svg{width:18px!important;height:18px!important;}
  .td-store-shell{padding-bottom:82px!important;}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}

/* TECH14IU — Rifiniture responsive profilo e modali
   Mantiene la densità utile su smartphone e impedisce overflow nelle viewport intermedie. */

/* Il contenitore Profilo mantiene la stessa finitura arrotondata di Catalogo e Cestino. */
.td-profile-shell{
  border-radius:clamp(24px,3vw,34px)!important;
  overflow:visible!important;
}
.td-profile-shell:before{
  border-radius:calc(clamp(24px,3vw,34px) - 10px)!important;
}

/* I livelli passano allo scorrimento orizzontale prima che le schede possano uscire dal pannello. */
@media (max-width:1180px){
  .td-levels-track{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(104px,104px))!important;
    justify-content:start!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 2px 12px!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:thin!important;
    scrollbar-color:rgba(139,106,46,.55) rgba(184,148,83,.10)!important;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .td-levels-track::-webkit-scrollbar{height:7px!important;}
  .td-levels-track::-webkit-scrollbar-track{background:rgba(184,148,83,.10)!important;border-radius:999px!important;}
  .td-levels-track::-webkit-scrollbar-thumb{background:rgba(139,106,46,.55)!important;border-radius:999px!important;}
  .td-level-card{
    width:104px!important;
    min-width:104px!important;
    max-width:104px!important;
    scroll-snap-align:start!important;
  }
}

/* Progressione badge: 6 desktop, 5 nelle larghezze intermedie, 4 su smartphone. */
@media (min-width:981px){
  .td-badges{grid-template-columns:repeat(6,minmax(0,1fr))!important;}
}
@media (min-width:621px) and (max-width:980px){
  .td-badges{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;}
}

/* Tutti i popup con backdrop restano centrati nel display, anche su smartphone. */
.td-modal,.td-admin-modal{
  display:grid!important;
  place-items:center!important;
  align-items:center!important;
  justify-items:center!important;
}
.td-modal-card,.td-admin-modal-card{
  margin:auto!important;
  transform-origin:center center!important;
}

@media (max-width:620px){
  /* Quattro scorciatoie profilo in una griglia 2 × 2. */
  .td-tools-row,
  .td-profile-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .td-tool-box,
  .td-tool-card-action,
  .td-profile-action{
    min-height:116px!important;
    padding:14px 8px!important;
  }
  .td-tool-card-action .td-action-icon,
  .td-tool-box .td-action-icon{
    width:56px!important;
    height:56px!important;
  }
  .td-tool-card-action .td-action-icon svg,
  .td-tool-box .td-action-icon svg{
    width:34px!important;
    height:34px!important;
  }
  .td-tool-card-label,
  .td-profile-action strong{
    font-size:clamp(12px,3.6vw,16px)!important;
    line-height:1.15!important;
    letter-spacing:.02em!important;
  }

  /* Quattro badge per riga su smartphone, senza dipendere dall'auto-fill. */
  .td-badges{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .td-badge-card{
    width:min(100%,66px)!important;
    height:auto!important;
    aspect-ratio:1!important;
    justify-self:center!important;
  }
  .td-badge-card-icon{width:calc(100% - 12px)!important;height:calc(100% - 12px)!important;}
  .td-badge-img{width:100%!important;height:100%!important;max-width:48px!important;max-height:48px!important;}

  /* Annulla il comportamento bottom-sheet introdotto in TECH14IT. */
  .td-modal,.td-admin-modal{
    align-items:center!important;
    justify-items:center!important;
    padding:max(10px,env(safe-area-inset-top,0px)) 10px max(10px,env(safe-area-inset-bottom,0px))!important;
  }
  .td-modal-card,.td-admin-modal-card{
    width:min(100%,920px)!important;
    max-height:calc(var(--td-viewport-height) - max(20px,env(safe-area-inset-top,0px)) - max(20px,env(safe-area-inset-bottom,0px)))!important;
    border-radius:24px!important;
    margin:auto!important;
  }

  .td-profile-shell{
    border-radius:26px!important;
    overflow:visible!important;
  }
  .td-profile-shell:before{border-radius:18px!important;}
}

@media (max-width:390px){
  .td-tools-row,.td-profile-actions{gap:8px!important;}
  .td-tool-box,.td-tool-card-action,.td-profile-action{min-height:108px!important;padding:12px 6px!important;}
  .td-tool-card-action .td-action-icon,.td-tool-box .td-action-icon{width:50px!important;height:50px!important;}
  .td-tool-card-action .td-action-icon svg,.td-tool-box .td-action-icon svg{width:30px!important;height:30px!important;}
  .td-tool-card-label,.td-profile-action strong{font-size:12px!important;}
  .td-badges{gap:6px!important;}
  .td-badge-card{width:min(100%,60px)!important;}
}

/* TECH14IX — Correzioni mirate Profilo
   Nessuna variazione grafica: si interviene solo su disposizione, larghezza e scorrimento. */

/* 1. Livelli: identica conformazione a ogni viewport.
   Le schede non vengono ridimensionate; quando non entrano, scorre la riga. */
.td-levels-track{
  display:grid!important;
  grid-template-columns:repeat(6,104px)!important;
  grid-auto-columns:104px!important;
  justify-content:start!important;
  align-items:stretch!important;
  gap:8px!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding-bottom:8px!important;
  scroll-snap-type:x proximity!important;
  overscroll-behavior-inline:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:thin!important;
}
.td-level-card{
  width:104px!important;
  min-width:104px!important;
  max-width:104px!important;
  min-height:104px!important;
  scroll-snap-align:start!important;
}

/* 2. Badge: 6 per riga, 5 nelle viewport ridotte, 4 solo quando indispensabile. */
.td-badges{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}
@media (max-width:1040px){
  .td-badges{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .td-badge-card{
    width:min(100%,74px)!important;
    height:auto!important;
    aspect-ratio:1!important;
    justify-self:center!important;
  }
  .td-badge-card-icon{
    width:78%!important;
    height:78%!important;
  }
  .td-badge-img{
    max-width:100%!important;
    max-height:100%!important;
  }
}
@media (max-width:430px){
  .td-badges{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .td-badge-card{
    width:min(100%,66px)!important;
  }
}

/* 3. Le quattro scorciatoie restano sempre 2 × 2.
   Non si sovrascrivono font, colori, pesi, icone o decorazioni originali. */
.td-tools-row,
.td-profile-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media (max-width:620px){
  .td-tools-row,
  .td-profile-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .td-tool-box,
  .td-tool-card-action,
  .td-profile-action{
    min-width:0!important;
    width:100%!important;
  }
}

/* TECH14IX — Ripristino conformazioni originali TECH14IS
   Intervento limitato a livelli, badge e quattro scorciatoie del Profilo. */

/* 1. LIVELLI — comportamento originale TECH14IS.
   Desktop: sei colonne fluide con conformazione originale.
   Sotto 980 px: schede originali da 104 px e scorrimento orizzontale. */
.td-levels-track{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(86px,1fr))!important;
  grid-auto-columns:initial!important;
  gap:8px!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  max-width:100%!important;
  overflow:visible!important;
  padding-bottom:0!important;
  scroll-snap-type:none!important;
  scrollbar-width:auto!important;
}
.td-level-card{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:104px!important;
  padding:10px 6px!important;
  border-radius:16px!important;
  grid-template-rows:34px auto auto!important;
  gap:4px!important;
  scroll-snap-align:none!important;
}
.td-level-icon,
.td-level-icon svg{
  width:34px!important;
  height:34px!important;
}
.td-level-card strong{
  font-size:10.5px!important;
  line-height:1.12!important;
  min-height:24px!important;
}
.td-level-card em{
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
}
@media(max-width:980px){
  .td-levels-track{
    grid-template-columns:repeat(6,104px)!important;
    justify-content:start!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding-bottom:8px!important;
    scrollbar-width:thin!important;
    scroll-snap-type:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .td-level-card{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
  .td-levels-track::-webkit-scrollbar{height:7px!important;}
  .td-levels-track::-webkit-scrollbar-thumb{background:rgba(139,106,46,.55)!important;border-radius:999px!important;}
}

/* 2. BADGE — sei colonne finché entrano in modo compatto;
   cinque soltanto quando necessario e quattro solo su viewport estreme. */
.td-badges{
  grid-template-columns:repeat(6,minmax(0,88px))!important;
  justify-content:center!important;
  gap:clamp(6px,1vw,14px)!important;
}
@media(max-width:680px){
  .td-badges{
    grid-template-columns:repeat(5,minmax(0,88px))!important;
    gap:clamp(6px,1.6vw,10px)!important;
  }
}
@media(max-width:430px){
  .td-badges{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
  }
}

/* 3. QUATTRO SCORCIATOIE — sempre 2 × 2 e identità grafica invariata.
   Nessuna variazione di font, peso, colore, icone o spessore tra breakpoint. */
.td-tools-row,
.td-profile-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.td-tool-card-label{
  font-family:Inter,Arial,sans-serif!important;
  text-transform:uppercase!important;
  letter-spacing:.22em!important;
  color:var(--gold)!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.35!important;
}
.td-tool-card-action .td-action-icon,
.td-tool-box .td-action-icon{
  width:76px!important;
  height:76px!important;
}
.td-tool-card-action .td-action-icon svg,
.td-tool-box .td-action-icon svg{
  width:46px!important;
  height:46px!important;
}
.td-tool-box,
.td-tool-card-action,
.td-profile-action{
  min-width:0!important;
}
@media(max-width:720px){
  .td-tools-row,
  .td-profile-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
  .td-tool-box,
  .td-tool-card-action,
  .td-profile-action{
    width:100%!important;
    min-height:138px!important;
    padding:24px 16px!important;
  }
  .td-tool-card-label{
    font-size:11px!important;
    font-weight:800!important;
    letter-spacing:.22em!important;
  }
  .td-tool-card-action .td-action-icon,
  .td-tool-box .td-action-icon{
    width:76px!important;
    height:76px!important;
  }
  .td-tool-card-action .td-action-icon svg,
  .td-tool-box .td-action-icon svg{
    width:46px!important;
    height:46px!important;
  }
}
@media(max-width:390px){
  .td-tools-row,.td-profile-actions{gap:8px!important;}
  .td-tool-box,.td-tool-card-action,.td-profile-action{
    min-height:138px!important;
    padding:24px 10px!important;
  }
  .td-tool-card-label{
    font-size:11px!important;
    font-weight:800!important;
    letter-spacing:.22em!important;
  }
}

/* TECH14IY — Livelli a dimensione invariabile con scorrimento automatico.
   Nessun breakpoint modifica più larghezza, altezza, font, icone o spazi interni. */
.td-levels-track{
  display:grid!important;
  grid-template-columns:repeat(6,104px)!important;
  grid-auto-columns:104px!important;
  gap:8px!important;
  align-items:stretch!important;
  justify-content:safe center!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding-bottom:8px!important;
  scrollbar-width:thin!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-inline:contain!important;
}
.td-level-card{
  box-sizing:border-box!important;
  width:104px!important;
  min-width:104px!important;
  max-width:104px!important;
  min-height:104px!important;
  padding:10px 6px!important;
  border-radius:16px!important;
  grid-template-rows:34px auto auto!important;
  gap:4px!important;
  flex:none!important;
}
.td-level-icon,
.td-level-icon svg{
  width:34px!important;
  height:34px!important;
}
.td-level-card strong{
  font-size:10.5px!important;
  line-height:1.12!important;
  min-height:24px!important;
}
.td-level-card em{
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
}
.td-levels-track::-webkit-scrollbar{height:7px!important;}
.td-levels-track::-webkit-scrollbar-track{background:rgba(184,148,83,.10)!important;border-radius:999px!important;}
.td-levels-track::-webkit-scrollbar-thumb{background:rgba(139,106,46,.55)!important;border-radius:999px!important;}

/* TECH14IZ — Livelli: dimensione desktop originale TECH14IS, invariabile.
   Nel layout desktop approvato TECH14IS la griglia disponibile produceva
   schede da circa 86 px (repeat(6,minmax(86px,1fr))). Manteniamo quindi
   86 px a ogni viewport e abilitiamo soltanto lo scorrimento quando serve. */
.td-levels-track{
  display:grid!important;
  grid-template-columns:repeat(6,86px)!important;
  grid-auto-columns:86px!important;
  gap:8px!important;
  align-items:stretch!important;
  justify-content:safe center!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding-bottom:8px!important;
  scrollbar-width:thin!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-inline:contain!important;
}
.td-level-card{
  box-sizing:border-box!important;
  width:86px!important;
  min-width:86px!important;
  max-width:86px!important;
  min-height:104px!important;
  padding:10px 6px!important;
  border-radius:16px!important;
  grid-template-rows:34px auto auto!important;
  gap:4px!important;
  flex:none!important;
}
.td-levels-track::-webkit-scrollbar{height:7px!important;}
.td-levels-track::-webkit-scrollbar-track{background:rgba(184,148,83,.10)!important;border-radius:999px!important;}
.td-levels-track::-webkit-scrollbar-thumb{background:rgba(139,106,46,.55)!important;border-radius:999px!important;}
