/* TORILOC 1.9.246 · Mobile responsive guard
 * Ultimo livello della catena CSS: rende realmente usabili su smartphone
 * pagine Cittadino, Negoziante, Operatore e componenti condivisi.
 * Non modifica logica, permessi o flussi.
 */
@media (max-width:760px), (max-width:1024px) and (pointer:coarse) {
  html,body{max-width:100%;overflow-x:hidden!important}
  body.tlc-portal-page{min-width:0!important}
  .tlc-wrap,.tlc-wrap main,.tlc-wrap section,.tlc-wrap article,.tlc-wrap form,.tlc-wrap fieldset,.tlc-wrap div{min-width:0}
  .tlc-wrap img,.tlc-wrap video,.tlc-wrap iframe,.tlc-wrap canvas,.tlc-wrap svg{max-width:100%}
  .tlc-wrap input,.tlc-wrap select,.tlc-wrap textarea,.tlc-wrap button,.tlc-wrap .tlc-btn{max-width:100%;box-sizing:border-box}
  .tlc-wrap .tlc-btn,.tlc-wrap button{white-space:normal;overflow-wrap:anywhere;text-align:center}

  /* Shell: nessuna pagina personale puo' mantenere una larghezza desktop. */
  .tlc-citizen-section-page>.tlc-shell,
  .tlc-merchant-section-page>.tlc-shell,
  .tlc-merchant-accessibility-page>.tlc-shell,
  .tlc-operator-page>.tlc-shell{
    width:100%!important;max-width:none!important;margin:0!important;
    padding-left:12px!important;padding-right:12px!important;
  }
  .tlc-citizen-section-page,.tlc-merchant-section-page,.tlc-merchant-accessibility-page{
    width:100%!important;max-width:100%!important;
  }
  .tlc-citizen-section-page>.tlc-shell>* ,
  .tlc-merchant-section-page>.tlc-shell>* ,
  .tlc-merchant-accessibility-page>.tlc-shell>* ,
  .tlc-operator-page>.tlc-shell>*{
    width:100%;max-width:100%;min-width:0;box-sizing:border-box;
  }

  /* Navigazione/hero delle pagine interne. */
  .tlc-citizen-section-nav,.tlc-merchant-section-nav{
    width:100%!important;margin:0 0 12px!important;padding:11px 12px!important;
    border-radius:15px!important;
  }
  .tlc-citizen-section-nav a,.tlc-merchant-section-nav a{font-size:14px!important;line-height:1.3!important}
  .tlc-citizen-section-hero,.tlc-merchant-section-hero{
    width:100%!important;margin:0 0 14px!important;padding:18px 16px!important;border-radius:20px!important;
  }
  .tlc-citizen-section-hero h1,.tlc-merchant-section-hero h1{
    margin:8px 0 5px!important;font-size:27px!important;line-height:1.08!important;overflow-wrap:anywhere!important;
  }
  .tlc-citizen-section-hero p,.tlc-merchant-section-hero p{
    max-width:none!important;font-size:15px!important;line-height:1.5!important;
  }

  /* Pannelli condivisi delle sezioni personali. */
  .tlc-citizen-section-view .tlc-user-card,
  .tlc-citizen-section-view .tlc-selected-offer,
  .tlc-citizen-section-view .tlc-user-wallet,
  .tlc-citizen-section-view .tlc-review-center,
  .tlc-citizen-section-view .tlc-notification-center,
  .tlc-citizen-section-view .tlc-community-reputation,
  .tlc-citizen-section-view .tlc-gamification,
  .tlc-citizen-section-view .tlc-form-panel,
  .tlc-citizen-section-view .tlc-referral-card,
  .tlc-merchant-section-view .tlc-form-panel,
  .tlc-merchant-section-view .tlc-code-validate-panel,
  .tlc-merchant-section-view .tlc-review-center,
  .tlc-merchant-section-view .tlc-notification-center{
    width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;
    box-sizing:border-box!important;
  }
  .tlc-citizen-section-view .tlc-user-section-title{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;align-items:start!important;
  }
  .tlc-citizen-section-view .tlc-user-section-title h2{font-size:22px!important;line-height:1.15!important}
  .tlc-citizen-section-view .tlc-user-section-title>span,
  .tlc-citizen-section-view .tlc-user-section-title div>span{font-size:14px!important;line-height:1.45!important}
  .tlc-citizen-section-view .tlc-user-section-title .tlc-btn{width:100%!important;min-height:46px!important}

  /* Wallet, visite, preferiti e contenuti cittadino. */
  .tlc-citizen-wallet-split,.tlc-citizen-wallet-group,.tlc-citizen-coupon-history,
  .tlc-citizen-visit-list,.tlc-citizen-followed-quarters{width:100%!important;max-width:100%!important}
  .tlc-citizen-wallet-group{padding:14px!important;border-radius:18px!important}
  .tlc-citizen-wallet-group-head{align-items:flex-start!important;gap:10px!important}
  .tlc-citizen-wallet-group-head h3{font-size:20px!important}
  .tlc-citizen-visit-list>a{width:100%!important;padding:13px!important;gap:11px!important}
  .tlc-citizen-visit-list strong{font-size:16px!important;line-height:1.3!important}
  .tlc-citizen-visit-list small,.tlc-citizen-visit-list em{font-size:13px!important;line-height:1.4!important}

  /* Punti / reputazione: le griglie desktop diventano leggibili. */
  .tlc-citizen-section-view .tlc-gamification{padding:16px!important;border-radius:20px!important}
  .tlc-citizen-section-view .tlc-gamification-head{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .tlc-citizen-section-view .tlc-gamification-score{width:100%!important;min-width:0!important}
  .tlc-citizen-section-view .tlc-gamification-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .tlc-citizen-section-view .tlc-gamification-grid{grid-template-columns:1fr!important}
  .tlc-citizen-section-view .tlc-badge-grid{grid-template-columns:1fr!important}
  .tlc-citizen-section-view .tlc-citizen-badge p,
  .tlc-citizen-section-view .tlc-goals-list p,
  .tlc-citizen-section-view .tlc-points-rule span{font-size:14px!important;line-height:1.45!important}
  .tlc-citizen-section-view .tlc-community-reputation{padding:16px!important;border-radius:20px!important}
  .tlc-citizen-section-view .tlc-community-reputation-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  .tlc-citizen-section-view .tlc-community-reputation p,
  .tlc-citizen-section-view .tlc-community-reputation-shop-note{font-size:14px!important;line-height:1.45!important}
  .tlc-citizen-section-view .tlc-community-reputation-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .tlc-citizen-section-view .tlc-community-reputation-kpis small{font-size:12px!important;line-height:1.3!important}
  .tlc-citizen-section-view .tlc-community-reputation-shops>a{
    align-items:flex-start!important;flex-direction:column!important;gap:6px!important;
  }
  .tlc-citizen-section-view .tlc-community-reputation-shops>a>span>strong{white-space:normal!important;font-size:15px!important}
  .tlc-citizen-section-view .tlc-community-reputation-shops>a>span>small{font-size:13px!important}
  .tlc-citizen-section-view .tlc-community-reputation-shops>a>b{font-size:14px!important}

  /* PROFILO e form: una colonna, campi pieni. */
  .tlc-citizen-section-view .tlc-profile-panel,
  .tlc-merchant-section-view .tlc-profile-panel{padding:16px!important;border-radius:20px!important}
  .tlc-citizen-section-view form,.tlc-merchant-section-view form{max-width:100%!important}
  .tlc-citizen-section-view form label,.tlc-merchant-section-view form label{max-width:100%!important}
  .tlc-citizen-section-view input,.tlc-citizen-section-view select,.tlc-citizen-section-view textarea,
  .tlc-merchant-section-view input,.tlc-merchant-section-view select,.tlc-merchant-section-view textarea{
    width:100%;min-width:0!important;max-width:100%!important;font-size:16px!important;
  }

  /* FAQ: risposta senza rientro desktop e caratteri reali da smartphone. */
  .tlc-citizen-faq-intro{padding:17px!important;border-radius:19px!important}
  .tlc-citizen-faq-intro h2{font-size:22px!important}
  .tlc-citizen-faq-intro p{font-size:15px!important}
  .tlc-citizen-faq-item summary{grid-template-columns:40px minmax(0,1fr) 32px!important;padding:12px!important}
  .tlc-citizen-faq-item summary strong{font-size:15px!important;line-height:1.35!important}
  .tlc-citizen-faq-answer{padding:0 14px 16px!important}
  .tlc-citizen-faq-answer p{font-size:15px!important;line-height:1.6!important}
  .tlc-citizen-faq-help strong{font-size:15px!important}.tlc-citizen-faq-help p{font-size:14px!important}

  /* NOTIFICHE · layout mobile reale, non desktop compresso. */
  .tlc-citizen-section-view[data-tlc-citizen-section="notifications"] .tlc-notification-center,
  .tlc-merchant-section-view[data-tlc-merchant-section="notifiche"] .tlc-notification-center{
    margin:0!important;padding:14px!important;border-radius:20px!important;
  }
  .tlc-notification-center .tlc-user-section-title{margin-bottom:14px!important}
  .tlc-notification-center .tlc-user-section-title h2{margin:5px 0!important;font-size:23px!important}
  .tlc-notification-layout,.tlc-notification-columns,.tlc-notification-settings-column{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;gap:14px!important;
  }
  .tlc-notification-list{width:100%!important;max-width:100%!important;gap:10px!important}
  .tlc-notification-subhead{padding:10px 0!important}
  .tlc-notification-subhead strong{font-size:17px!important}.tlc-notification-subhead span{font-size:13px!important}
  .tlc-notification-archive-note{font-size:14px!important;line-height:1.45!important}
  .tlc-notification-bulkbar{
    position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;
    padding:12px!important;border-radius:14px!important;
  }
  .tlc-notification-bulkbar label{font-size:14px!important}
  .tlc-notification-bulkbar>div{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  .tlc-notification-bulkbar .tlc-btn{width:100%!important;min-height:44px!important;font-size:14px!important}
  .tlc-notification-item{
    display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:10px 8px!important;
    width:100%!important;padding:14px!important;border-radius:16px!important;
  }
  .tlc-notification-check{grid-column:1;padding-top:2px!important}
  .tlc-notification-copy{grid-column:2;min-width:0!important}
  .tlc-notification-copy strong{display:block;font-size:16px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
  .tlc-notification-item p{margin:6px 0!important;font-size:14px!important;line-height:1.5!important;overflow-wrap:anywhere!important}
  .tlc-notification-item small{font-size:12.5px!important;line-height:1.4!important}
  .tlc-notification-actions{
    grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr!important;gap:7px!important;width:100%!important;
  }
  .tlc-notification-actions .tlc-btn{width:100%!important;min-height:44px!important;font-size:14px!important}
  .tlc-notification-device-push,.tlc-notification-prefs{
    width:100%!important;max-width:100%!important;padding:15px!important;border-radius:18px!important;
  }
  .tlc-notification-device-push h3,.tlc-notification-prefs-head h3{font-size:19px!important;line-height:1.25!important}
  .tlc-notification-device-push p,.tlc-notification-prefs-head p{font-size:14px!important;line-height:1.5!important}
  .tlc-notification-device-push>small{font-size:13px!important;line-height:1.4!important}
  .tlc-notification-prefs-kicker,.tlc-notification-smart-heading span{font-size:12px!important;line-height:1.3!important}
  .tlc-notification-pref-list{gap:9px!important}
  .tlc-notification-pref-row{
    grid-template-columns:24px minmax(0,1fr)!important;gap:10px!important;padding:13px!important;border-radius:14px!important;
  }
  .tlc-notification-pref-row input{width:20px!important;height:20px!important;margin-top:1px!important}
  .tlc-notification-pref-copy strong{font-size:15px!important;line-height:1.3!important}
  .tlc-notification-pref-copy small{margin-top:3px!important;font-size:13px!important;line-height:1.4!important}
  .tlc-notification-smart-heading strong{font-size:15px!important;line-height:1.35!important}
  .tlc-notification-prefs-note{font-size:14px!important;line-height:1.5!important}
  .tlc-notification-save,.tlc-notification-device-actions .tlc-btn{min-height:48px!important;font-size:15px!important}

  /* NEGOZIANTE · tutte le pagine modulari in una colonna. */
  .tlc-merchant-section-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;width:100%!important}
  .tlc-merchant-section-actions .tlc-btn{width:100%!important;min-height:48px!important}
  .tlc-merchant-section-card-grid{grid-template-columns:1fr!important;width:100%!important}
  .tlc-merchant-section-card{width:100%!important;padding:16px!important;border-radius:19px!important}
  .tlc-merchant-section-card h2{font-size:21px!important;overflow-wrap:anywhere!important}
  .tlc-merchant-section-card p,.tlc-merchant-section-card>small{font-size:14px!important;line-height:1.5!important}
  .tlc-merchant-section-card-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .tlc-merchant-section-card-actions .tlc-btn{width:100%!important;min-height:46px!important}
  .tlc-merchant-section-list>article{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;padding:15px!important;
  }
  .tlc-merchant-section-list>article>div:last-child{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .tlc-merchant-section-list>article>div:last-child .tlc-btn{width:100%!important;min-height:44px!important}
  .tlc-merchant-section-list h3{font-size:18px!important;overflow-wrap:anywhere!important}
  .tlc-merchant-section-list p,.tlc-merchant-section-list small{font-size:14px!important;line-height:1.45!important}
  .tlc-merchant-section-view .tlc-follow-grid,
  .tlc-merchant-section-view .tlc-news-grid,
  .tlc-merchant-section-view .tlc-merchant-metrics-grid{grid-template-columns:1fr!important}
  .tlc-code-form{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .tlc-code-form input{min-width:0!important;width:100%!important}
  .tlc-code-form .tlc-btn{width:100%!important}

  /* Accessibilita negoziante. */
  .tlc-access-dedicated-hero{grid-template-columns:1fr!important;gap:14px!important}
  .tlc-access-dedicated-copy,.tlc-access-dedicated-card,.tlc-access-dedicated-note{width:100%!important;max-width:100%!important}
  .tlc-access-dedicated-copy h1{font-size:28px!important;line-height:1.08!important}
  .tlc-access-dedicated-copy p,.tlc-access-dedicated-reassurance,.tlc-access-dedicated-card li small,.tlc-access-dedicated-note p{font-size:14px!important;line-height:1.5!important}
  .tlc-access-dedicated-actions .tlc-btn{width:100%!important}

  /* OPERATORE · le colonne amministrative non possono uscire dallo schermo. */
  .tlc-operator-page{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .tlc-operator-page .tlc-shell{width:100%!important;max-width:none!important}
  .tlc-operator-page [class*="grid"],
  .tlc-operator-page [class*="columns"]{min-width:0;max-width:100%}
  .tlc-operator-page .tlc-operator-grid,
  .tlc-operator-page .tlc-operator-kpis,
  .tlc-operator-page .tlc-operator-mission-grid,
  .tlc-operator-page .tlc-operator-summary-grid{grid-template-columns:1fr!important}
  .tlc-operator-page .tlc-operator-card,
  .tlc-operator-page .tlc-operator-mission-card,
  .tlc-operator-page .tlc-form-panel{width:100%!important;max-width:100%!important;padding:15px!important}
  .tlc-operator-page .tlc-operator-actions,
  .tlc-operator-page .tlc-operator-mission-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .tlc-operator-page .tlc-operator-actions .tlc-btn,
  .tlc-operator-page .tlc-operator-mission-actions .tlc-btn{width:100%!important;min-height:44px!important}
  .tlc-operator-page table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}

  /* CERCO e pagine/form condivisi aperti dalle aree personali. */
  .tlc-cerco-form,.tlc-cerco-request,.tlc-cerco-card,.tlc-cerco-panel{max-width:100%!important;min-width:0!important}
  .tlc-cerco-form [class*="grid"],.tlc-cerco-form [class*="row"]{min-width:0!important}
  .tlc-cerco-form .tlc-btn{max-width:100%!important}

  /* Footer: leggibile ma compatto e mai schiacciato. */
  .tlc-support-footer{width:100%!important;max-width:100%!important;padding-left:14px!important;padding-right:14px!important}
  .tlc-support-footer,.tlc-support-footer p,.tlc-support-footer a{font-size:12px!important;line-height:1.5!important;overflow-wrap:anywhere!important}

  /* Tabelle/righe orizzontali residue: scroll locale invece di ridurre l'intera pagina. */
  .tlc-citizen-section-view table,.tlc-merchant-section-view table{
    display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  }
}

/* Telefoni molto stretti: non comprimere i contenuti, riduci solo i padding. */
@media (max-width:380px){
  .tlc-citizen-section-page>.tlc-shell,.tlc-merchant-section-page>.tlc-shell,.tlc-operator-page>.tlc-shell{padding-left:9px!important;padding-right:9px!important}
  .tlc-citizen-section-hero,.tlc-merchant-section-hero{padding:16px 13px!important}
  .tlc-notification-center{padding:11px!important}
  .tlc-notification-item{padding:12px!important}
  .tlc-citizen-section-view .tlc-gamification-kpis{grid-template-columns:1fr 1fr!important}
}

/* TORILOC 1.9.247 · Fix isolato filtri pagina Coupon mobile.
 * Le pillole non devono essere compresse verticalmente dal responsive guard globale. */
@media (max-width:760px), (max-width:1024px) and (pointer:coarse) {
  .tlc-pass-page .tlc-pass-filters{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
    padding:14px 2px 16px!important;
    scrollbar-width:none;
  }
  .tlc-pass-page .tlc-pass-filters::-webkit-scrollbar{display:none}
  .tlc-pass-page .tlc-pass-filters button{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    min-height:48px!important;
    padding:11px 18px!important;
    border-radius:999px!important;
    white-space:nowrap!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    writing-mode:horizontal-tb!important;
    font-size:15px!important;
    line-height:1.2!important;
    text-align:center!important;
  }
}


  /* NOTIFICHE · allineamento checkbox mobile */
  .tlc-notification-bulkbar label{
    display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:center!important;
    justify-items:start!important;gap:10px!important;width:100%!important;min-width:0!important;
  }
  .tlc-notification-bulkbar label input,
  .tlc-notification-check input{margin:0!important;display:block!important;justify-self:start!important;align-self:start!important;}
  .tlc-notification-bulkbar label span{display:block!important;line-height:1.35!important;text-align:left!important;}
  .tlc-notification-check{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;padding-top:4px!important;width:24px!important;min-width:24px!important;}
  .tlc-notification-bulkbar .tlc-btn,
  .tlc-notification-actions .tlc-btn{justify-content:center!important;text-align:center!important;}

/* TORILOC v1.9.261 — topbar mobile e menu centralizzati per ruolo */
.tlc-mobile-nav-shell,.tlc-unified-mobile-standalone,.tlc-unified-mobile-menu{display:none}
@media(max-width:760px){
  /* Le pagine che in passato nascondevano l'header globale tornano a usare la stessa topbar. */
  .tlc-search-app-page>.tlc-header,
  .tlc-search-app-page .tlc-header,
  .tlc-events-page>.tlc-header,
  .tlc-newsroom-wrap>.tlc-header,
  .tlc-event-single-page>.tlc-header,
  .tlc-cerco-page>.tlc-header,
  .tlc-campaign-page>.tlc-header{display:block!important}
  .tlc-merchant-accessibility-view>.tlc-header{display:block!important}

  .tlc-header{
    position:sticky!important;top:0!important;z-index:10060!important;
    padding:0!important;background:linear-gradient(180deg,rgba(7,16,34,.985),rgba(7,16,34,.95))!important;
    border-bottom:1px solid rgba(243,223,170,.13)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.22)!important;
    -webkit-backdrop-filter:blur(20px) saturate(125%)!important;backdrop-filter:blur(20px) saturate(125%)!important;
  }
  body.admin-bar .tlc-header{top:46px!important}
  .tlc-header>.tlc-desktop-nav{display:none!important}
  .tlc-header>.tlc-mobile-nav-shell{display:block!important;width:min(100%,760px)!important;margin:0 auto!important;padding:0 14px!important}

  .tlc-unified-mobile-standalone{
    display:block!important;position:sticky!important;top:0!important;z-index:10060!important;
    width:100%!important;margin:0!important;padding:0 14px!important;
    background:linear-gradient(180deg,rgba(7,16,34,.985),rgba(7,16,34,.95))!important;
    border-bottom:1px solid rgba(243,223,170,.13)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.22)!important;
    -webkit-backdrop-filter:blur(20px) saturate(125%)!important;backdrop-filter:blur(20px) saturate(125%)!important;
  }
  body.admin-bar .tlc-unified-mobile-standalone{top:46px!important}

  .tlc-unified-mobile-nav{
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
    width:100%!important;min-height:72px!important;padding:10px 0!important;
  }
  .tlc-unified-mobile-brand{
    display:flex!important;align-items:center!important;min-width:0!important;max-width:190px!important;
    color:#fff7e8!important;text-decoration:none!important;
  }
  .tlc-unified-mobile-brand .tlc-logo-mark{width:38px!important;height:38px!important;flex:0 0 38px!important}
  .tlc-unified-mobile-brand .tlc-logo-svg{width:38px!important;height:38px!important}
  .tlc-unified-mobile-brand>span:last-child{font-size:15px!important;line-height:1!important;font-weight:950!important;letter-spacing:.04em!important}
  .tlc-unified-mobile-brand em{display:block!important;margin-top:4px!important;color:#e8d8b4!important;font-size:8px!important;font-style:normal!important;letter-spacing:.16em!important}
  .tlc-unified-mobile-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex:0 0 auto!important}
  .tlc-unified-menu-toggle,.tlc-unified-notifications,.tlc-unified-profile{
    position:relative!important;display:grid!important;place-items:center!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;
    margin:0!important;padding:0!important;border:1px solid rgba(243,223,170,.20)!important;border-radius:16px!important;
    background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.04))!important;
    color:#f3dfaa!important;text-decoration:none!important;box-shadow:0 10px 28px rgba(0,0,0,.20)!important;cursor:pointer!important;
  }
  .tlc-unified-menu-toggle:focus-visible,.tlc-unified-notifications:focus-visible,.tlc-unified-profile:focus-visible{outline:3px solid rgba(243,223,170,.22)!important;outline-offset:2px!important}
  .tlc-unified-menu-toggle .tlc-unified-dots{display:grid!important;gap:4px!important;place-items:center!important}
  .tlc-unified-menu-toggle .tlc-unified-dots i{display:block!important;width:4px!important;height:4px!important;border-radius:50%!important;background:#f3dfaa!important}
  .tlc-unified-notifications .tlc-app-icon,.tlc-unified-profile .tlc-app-icon{width:22px!important;height:22px!important}
  .tlc-unified-notifications>b{position:absolute!important;top:-6px!important;right:-6px!important;display:grid!important;place-items:center!important;min-width:22px!important;height:22px!important;padding:0 5px!important;border:2px solid #071022!important;border-radius:999px!important;background:#ef5264!important;color:#fff!important;font-size:10px!important;font-weight:1000!important;line-height:1!important}

  .tlc-unified-mobile-menu{position:fixed!important;z-index:10120!important;inset:0!important;display:none!important}
  .tlc-unified-mobile-menu.is-open{display:block!important}
  .tlc-unified-menu-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;border:0!important;background:rgba(2,8,20,.76)!important;-webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important}
  .tlc-unified-menu-sheet{position:absolute!important;top:0!important;right:0!important;width:min(88vw,370px)!important;height:100%!important;padding:calc(18px + env(safe-area-inset-top)) 15px calc(22px + env(safe-area-inset-bottom))!important;background:radial-gradient(circle at 0 0,rgba(200,167,106,.14),transparent 28%),linear-gradient(165deg,#10213b,#071226 76%)!important;box-shadow:-22px 0 55px rgba(0,0,0,.45)!important;overflow:auto!important;animation:tlcUnifiedMenuIn .2s ease both!important}
  .tlc-unified-menu-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:14px!important;padding-bottom:14px!important;border-bottom:1px solid rgba(255,255,255,.10)!important}
  .tlc-unified-menu-head>div{display:grid!important;gap:3px!important}.tlc-unified-menu-head small{color:#d8b968!important;font-size:9px!important;font-weight:1000!important;letter-spacing:.13em!important}.tlc-unified-menu-head strong{color:#fff7e8!important;font-size:19px!important}
  .tlc-unified-menu-head>button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:14px!important;background:rgba(255,255,255,.06)!important;color:#fff!important;font-size:24px!important;line-height:1!important}
  .tlc-unified-menu-sheet nav{display:grid!important;gap:8px!important}
  .tlc-unified-menu-sheet nav>a{display:grid!important;grid-template-columns:38px minmax(0,1fr) 16px!important;align-items:center!important;gap:10px!important;min-height:56px!important;padding:9px 11px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:17px!important;background:rgba(255,255,255,.045)!important;color:#fff7e8!important;text-decoration:none!important;font-size:14px!important;font-weight:850!important;line-height:1.2!important}
  .tlc-unified-menu-sheet nav>a.is-logout{margin-top:5px!important;border-color:rgba(239,82,100,.22)!important;background:rgba(239,82,100,.07)!important;color:#ffd5da!important}
  .tlc-unified-menu-icon{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:13px!important;background:rgba(216,185,104,.11)!important;color:#f3d487!important}
  .tlc-unified-menu-icon .tlc-app-icon{width:20px!important;height:20px!important}.tlc-unified-menu-sheet nav>a>b{color:#d8b968!important;font-size:20px!important;font-weight:700!important;text-align:right!important}
  html.tlc-unified-menu-open,html.tlc-unified-menu-open body{overflow:hidden!important}
  @keyframes tlcUnifiedMenuIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}

  /* Le barre interne di Esplora/Eventi/Voci non sono più una seconda navigazione. */
  .tlc-app-explore-header,.tlc-app-subpage-header{display:none!important}
  .tlc-app-context-actions{position:relative!important;z-index:4!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;width:100%!important;margin:0 0 12px!important}
  .tlc-app-context-actions .tlc-app-shop-round{position:static!important;flex:0 0 44px!important;width:44px!important;height:44px!important;border-radius:16px!important}

  /* Nei dashboard app la vecchia testata specifica non deve ricomparire. */
  .tlc-app-header,.tlc-app-user-header,.tlc-merchant-app-topbar{display:none!important}
}
@media(min-width:761px){
  .tlc-header>.tlc-desktop-nav{display:flex!important}
  .tlc-header>.tlc-mobile-nav-shell,.tlc-unified-mobile-standalone,.tlc-unified-mobile-menu{display:none!important}
}


/* TORILOC 1.9.272 — Restyling scheda attività mobile: gerarchia più pulita, meno box, contenuti secondari richiudibili. */
@media(max-width:760px){
  .tlc-mobile-app-shop-clean .tlc-app-shop-hero{
    min-height:335px!important;
    padding-bottom:27px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-hero-copy{
    padding:48px 3px 0!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-hero h1{
    max-width:96%!important;
    font-size:clamp(29px,9.2vw,41px)!important;
    line-height:1!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-hero-copy>p{
    margin-top:7px!important;
    font-size:12px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-kicker{
    gap:6px!important;
    margin-bottom:8px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-kicker span,
  .tlc-mobile-app-shop-clean .tlc-app-shop-kicker em{
    min-height:24px!important;
    padding:5px 8px!important;
    font-size:8px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-main{
    margin-top:-15px!important;
    padding:0 15px 30px!important;
  }

  /* Intro: un solo blocco, più editoriale e meno "card". */
  .tlc-mobile-app-shop-clean .tlc-app-shop-summary{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
    padding:16px 2px 17px!important;
    border:0!important;
    border-bottom:1px solid rgba(243,223,170,.14)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-summary-copy small{
    font-size:11px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-summary-copy p{
    display:block!important;
    margin-top:8px!important;
    max-height:none!important;
    overflow:visible!important;
    color:#d0d7e2!important;
    font-size:12px!important;
    line-height:1.58!important;
    white-space:normal!important;
    -webkit-line-clamp:unset!important;
    -webkit-box-orient:initial!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    align-items:flex-end!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite .tlc-action-post-form{margin:0!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite .tlc-favorite-btn,
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite .tlc-follow-shop-btn{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(243,223,170,.18)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.045)!important;
    box-shadow:none!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite .tlc-follow-shop-btn{
    overflow:hidden!important;
    color:transparent!important;
    font-size:0!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-favorite .tlc-follow-shop-btn:before{
    content:"🔔";
    color:var(--tlc-app-gold-light)!important;
    font-size:17px!important;
  }

  /* Azioni: più compatte, senza effetto mosaico. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    margin:14px 0 21px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions>a{
    min-height:62px!important;
    padding:8px 3px!important;
    gap:5px!important;
    border-color:rgba(243,223,170,.10)!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.035)!important;
    box-shadow:none!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions span{
    width:31px!important;
    height:31px!important;
    border-radius:11px!important;
    background:rgba(216,185,104,.09)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions span .tlc-app-icon{
    width:17px!important;
    height:17px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions strong{
    font-size:8px!important;
  }

  /* Titoli sezione: ritmo più compatto. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-section{
    margin:21px 0!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-section-head{
    margin-bottom:10px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-section-head small{
    margin-bottom:3px!important;
    font-size:8px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-section-head h2{
    font-size:20px!important;
    line-height:1.08!important;
  }

  /* Organizza la visita: righe semplici, extra richiudibili. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list{
    gap:0!important;
    overflow:hidden!important;
    border:1px solid rgba(243,223,170,.11)!important;
    border-radius:17px!important;
    background:rgba(255,255,255,.025)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list>div,
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list>a{
    min-height:58px!important;
    padding:9px 10px!important;
    border:0!important;
    border-bottom:1px solid rgba(243,223,170,.09)!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list>:last-child{
    border-bottom:0!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list>div>span,
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list>a>span{
    width:37px!important;
    height:37px!important;
    border-radius:12px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-info-list strong{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more{
    margin-top:8px!important;
    border:1px solid rgba(243,223,170,.11)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.025)!important;
    overflow:hidden!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more>summary{
    list-style:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:50px!important;
    padding:0 13px!important;
    color:#e8deca!important;
    font-size:11px!important;
    font-weight:900!important;
    cursor:pointer!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more>summary::-webkit-details-marker{display:none!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more>summary b{
    color:var(--tlc-app-gold-light)!important;
    font-size:19px!important;
    font-weight:500!important;
    transition:transform .18s ease!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more[open]>summary b{transform:rotate(45deg)!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-visit-more>.tlc-app-shop-info-list{
    border:0!important;
    border-top:1px solid rgba(243,223,170,.09)!important;
    border-radius:0!important;
  }

  /* Check-in resta riconoscibile, ma non domina tutta la scheda. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card{
    grid-template-columns:40px minmax(0,1fr) auto!important;
    gap:10px!important;
    margin:22px 0 0!important;
    padding:12px!important;
    border-radius:18px!important;
    box-shadow:0 13px 30px rgba(0,0,0,.20)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-icon{
    width:40px!important;
    height:40px!important;
    border-radius:13px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-icon .tlc-app-icon{
    width:22px!important;
    height:22px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card strong{
    font-size:12px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card p{
    margin-top:2px!important;
    font-size:9px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card>button{
    grid-column:auto!important;
    min-height:39px!important;
    min-width:78px!important;
    margin:0!important;
    padding:0 10px!important;
    border-radius:13px!important;
    font-size:10px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card>button b{
    display:none!important;
  }

  /* KPI in un'unica fascia anziché tre card. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-stats{
    gap:0!important;
    margin:8px 0 21px!important;
    overflow:hidden!important;
    border:1px solid rgba(243,223,170,.09)!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.025)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-stats>div{
    min-height:55px!important;
    padding:8px 5px!important;
    border:0!important;
    border-right:1px solid rgba(243,223,170,.08)!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-stats>div:last-child{border-right:0!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-stats strong{font-size:13px!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-stats small{font-size:7px!important}

  /* Servizi: niente scatole annidate, solo gruppi e tag. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-token-block{
    margin:0!important;
    padding:10px 0 12px!important;
    border:0!important;
    border-bottom:1px solid rgba(243,223,170,.09)!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-token-block:last-child{border-bottom:0!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-token-block h3{
    margin-bottom:8px!important;
    font-size:11px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-token-block span{
    padding:6px 8px!important;
    border-color:rgba(216,185,104,.16)!important;
    background:rgba(216,185,104,.055)!important;
    font-size:8px!important;
  }

  /* Sezioni secondarie richiudibili: missioni e accessibilità non occupano spazio finché non servono. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-secondary{
    display:grid!important;
    gap:8px!important;
    margin:20px 0!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure{
    overflow:hidden!important;
    border:1px solid rgba(243,223,170,.11)!important;
    border-radius:17px!important;
    background:rgba(255,255,255,.025)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary{
    list-style:none!important;
    display:grid!important;
    grid-template-columns:37px minmax(0,1fr) 22px!important;
    align-items:center!important;
    gap:10px!important;
    min-height:61px!important;
    padding:10px 12px!important;
    cursor:pointer!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary::-webkit-details-marker{display:none!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure-icon{
    display:grid!important;
    place-items:center!important;
    width:37px!important;
    height:37px!important;
    border-radius:12px!important;
    background:rgba(216,185,104,.09)!important;
    color:var(--tlc-app-gold-light)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure-icon .tlc-app-icon{width:18px!important;height:18px!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary span:nth-child(2){min-width:0!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary small{
    display:block!important;
    margin-bottom:2px!important;
    color:var(--tlc-app-gold)!important;
    font-size:7px!important;
    font-weight:950!important;
    text-transform:uppercase!important;
    letter-spacing:.07em!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary strong{
    display:block!important;
    overflow:hidden!important;
    color:#f4ecdc!important;
    font-size:11px!important;
    line-height:1.25!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure>summary>b{
    color:var(--tlc-app-gold-light)!important;
    font-size:20px!important;
    font-weight:500!important;
    text-align:center!important;
    transition:transform .18s ease!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure[open]>summary>b{transform:rotate(45deg)!important}
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure-body{
    padding:0 10px 10px!important;
    border-top:1px solid rgba(243,223,170,.08)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure-body>.tlc-community-help,
  .tlc-mobile-app-shop-clean .tlc-app-shop-disclosure-body>.tlc-access-public{
    margin:10px 0 0!important;
  }

  /* Evita una chiusura ridondante: la bottom navigation conclude già la scheda. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-footer-card{display:none!important}

  /* La rivendicazione resta presente ma più compatta. */
  .tlc-mobile-app-shop-clean .tlc-app-shop-claim-wrap .tlc-claim-card{
    margin:11px 0 15px!important;
    padding:15px!important;
    border-radius:18px!important;
    box-shadow:none!important;
  }
}

@media(max-width:390px){
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-actions>a{
    min-height:58px!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card{
    grid-template-columns:36px minmax(0,1fr)!important;
  }
  .tlc-mobile-app-shop-clean .tlc-app-shop-checkin-card>button{
    grid-column:1/-1!important;
    width:100%!important;
  }
}
