/* ==========================================================
   Terryfashionlove — adattamenti per WordPress e WooCommerce
   ========================================================== */

/* Accessibilità */
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--viola);color:#fff;padding:10px 16px;border-radius:0 0 10px 0;}
.skip-link:focus{left:0;}
.screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--fuxia);outline-offset:1px;}

/* Header: menu di WordPress e carrello */
.site-header .logo-link{display:inline-flex;width:56px;height:56px;min-width:56px;border-radius:50%;overflow:hidden;flex-shrink:0;}
.site-header .logo-link img{width:100%;height:100%;object-fit:cover;}
.site-header nav li{list-style:none;display:inline-flex;}
.site-header nav .current-menu-item > a{color:var(--fuxia);}
.tfl-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;margin-left:20px;color:var(--viola-deep);background:var(--bianco);border:1px solid rgba(91,42,134,0.14);}
nav a.tfl-cart{margin-left:20px;}
.tfl-cart:hover{color:var(--fuxia);border-color:var(--fuxia);}
.tfl-cart-n{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--fuxia);color:#fff;font-size:0.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;}
@media(max-width:639px){
  .site-header .logo-link{width:44px;height:44px;min-width:44px;}
  nav a.tfl-cart{margin-left:12px;width:38px;height:38px;}
  header nav .nav-cta{margin-left:12px;}
}

/* Presentazione: foto a scorrimento */
.hero-visual{overflow:hidden;}
.hero-visual .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;opacity:0;transition:opacity 1.2s ease;}
.hero-visual .hero-slide.is-on{opacity:1;}
.hero-visual.has-slides::before{content:none;}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-slide{transition:none;}}

/* Codice sconto (codice fisso WooCommerce) */
.coupon-action{gap:14px;}

/* Recensioni e pulsanti centrati */
.section-head .rating{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.stars{color:var(--fuxia);font-size:1.1rem;letter-spacing:2px;}
.review .stars{margin-bottom:10px;}
.review blockquote{font-style:italic;color:#4A2E56;margin-bottom:12px;font-size:0.95rem;}
.review figcaption{font-weight:600;color:var(--viola-deep);font-size:0.9rem;}
.review figcaption::before{content:"— ";}
.center-actions{text-align:center;margin-top:36px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* Footer */
.footer-contact{display:flex;flex-wrap:wrap;gap:12px;}
.footer-contact a.fc-soft{background:rgba(255,255,255,0.12);color:#fff;}
.footer-social{display:flex;gap:16px;margin-top:22px;}
.footer-social a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,0.14);display:flex;align-items:center;justify-content:center;}
.footer-info h2{font-size:1.1rem;}
.footer-info p{margin-bottom:6px;}
.footer-info a{text-decoration:underline;}
.footer-links{margin-top:14px;}
.footer-links li{list-style:none;display:inline;}
.footer-links li + li::before{content:" · ";}

/* Reparti con i prodotti WooCommerce */
.cat-panel-body ul.products{margin-bottom:0 !important;}
.cat-actions{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:22px;}
.cat-actions .cat-close{margin:0;}

/* Pagine normali e pagine del negozio */
.tfl-page,.tfl-shop{padding:48px 0 80px;background:var(--panna);min-height:50vh;}
.tfl-page .wrap,.tfl-shop .wrap{max-width:1140px;}
.entry-title,.woocommerce-products-header__title,.product_title{font-family:'Unbounded',sans-serif;font-weight:800;color:var(--viola-deep);font-size:clamp(1.6rem,3.6vw,2.3rem);line-height:1.15;margin-bottom:24px;}
.entry-content{font-size:1rem;color:#4A3354;}
.entry-content > * + *{margin-top:14px;}
.entry-content ul,.entry-content ol{padding-left:22px;}
.entry-content h2,.entry-content h3{color:var(--viola-deep);margin-top:28px;}
.entry-content a{color:var(--viola);text-decoration:underline;}
.tfl-page section,.tfl-shop section{padding:0;background:none;}
.term-description,.woocommerce-products-header p{color:#5B4066;margin-bottom:20px;max-width:60ch;}

/* Briciole di pane */
.woocommerce .woocommerce-breadcrumb{font-size:0.85rem;color:#8A6F97;margin-bottom:22px;}
.woocommerce .woocommerce-breadcrumb a{color:var(--viola);}

/* Griglia prodotti */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  background:var(--bianco);border-radius:20px;overflow:hidden;border:1px solid rgba(91,42,134,0.08);
  padding-bottom:16px;display:flex;flex-direction:column;text-align:left;
}
.woocommerce ul.products li.product a img{margin:0 0 12px;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:#F7EEF5;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Work Sans',sans-serif;font-weight:600;font-size:1rem !important;color:var(--viola-deep);padding:0 16px !important;}
.woocommerce ul.products li.product .price{color:var(--fuxia) !important;font-weight:700;font-size:1.05rem !important;padding:0 16px;margin-bottom:10px !important;}
.woocommerce ul.products li.product .price del{color:#9A86A6;font-weight:500;}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.woocommerce ul.products li.product .button{margin:auto 16px 0 !important;text-align:center;}
.woocommerce ul.products li.product .star-rating{margin:0 16px 8px;}
.woocommerce ul.products li.product .added_to_cart{display:block;text-align:center;margin-top:8px;font-size:0.85rem;color:var(--viola);font-weight:600;}
.woocommerce span.onsale{background:var(--fuxia);border-radius:100px;min-height:0;min-width:0;padding:6px 12px;line-height:1.2;font-weight:600;top:12px;left:12px;right:auto;margin:0;}
.woocommerce ul.products li.product .onsale{top:12px;left:12px;right:auto;margin:0;}

/* Pulsanti */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button:not(.is-link){
  background:linear-gradient(100deg,var(--fuxia),var(--viola)) !important;color:#fff !important;
  border:0;border-radius:12px;padding:12px 20px;font-family:'Work Sans',sans-serif;font-weight:600;font-size:0.92rem;
  box-shadow:0 8px 18px rgba(214,23,140,0.22);transition:transform .15s ease,box-shadow .15s ease;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(214,23,140,0.3);}
.woocommerce button.button:disabled,.woocommerce button.button.disabled,.woocommerce a.button.disabled{opacity:0.5;transform:none;}
.woocommerce a.button.loading::after{top:12px;}

/* Scheda prodotto */
.woocommerce div.product{margin-bottom:40px;}
.woocommerce div.product div.images img{border-radius:20px;}
.woocommerce div.product div.images .flex-control-thumbs li img{border-radius:10px;}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--fuxia);font-weight:700;font-size:1.5rem;}
.woocommerce div.product .woocommerce-product-details__short-description{color:#5B4066;margin-bottom:18px;}
.woocommerce div.product form.cart{margin-bottom:14px;}
.woocommerce div.product form.cart .variations{margin-bottom:10px;}
.woocommerce div.product form.cart .variations th{padding-right:12px;color:var(--viola-deep);font-weight:600;vertical-align:middle;}
.woocommerce div.product form.cart .variations select{min-width:180px;}
.woocommerce div.product form.cart .reset_variations{color:var(--viola);font-size:0.85rem;}
.woocommerce div.product form.cart .button{padding:15px 28px;font-size:1rem;}
.woocommerce .quantity .qty{border:1px solid rgba(91,42,134,0.25);border-radius:10px;padding:12px 6px;width:4.2em;}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:rgba(91,42,134,0.14);}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--panna);border-color:rgba(91,42,134,0.14);border-radius:12px 12px 0 0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--bianco);border-bottom-color:var(--bianco);}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--viola-deep);font-weight:600;}
.woocommerce div.product .woocommerce-tabs .panel{background:var(--bianco);padding:22px;border-radius:0 16px 16px 16px;color:#4A3354;}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:1.1rem;color:var(--viola-deep);margin-bottom:10px;}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:10px;font-style:normal;}
.woocommerce .related > h2,.woocommerce .upsells > h2{font-family:'Unbounded',sans-serif;color:var(--viola-deep);font-size:1.3rem;margin:30px 0 18px;}
.product_meta{font-size:0.85rem;color:#8A6F97;margin-top:14px;}
.product_meta a{color:var(--viola);}
.tfl-wa-ask{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:12px;border:1.5px solid #25D366;color:#128C4A;font-weight:600;font-size:0.92rem;margin:4px 0 18px;max-width:420px;}
.tfl-wa-ask:hover{background:#25D366;color:#fff;}
.tfl-trust{list-style:none;padding:14px 16px;margin:0 0 18px;background:var(--bianco);border-radius:14px;display:grid;gap:6px;font-size:0.88rem;color:#4A3354;max-width:420px;}
.woocommerce .star-rating span::before,.woocommerce p.stars a{color:var(--fuxia);}

/* Moduli (carrello, cassa, account) */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce div.product form.cart .variations select,.woocommerce .select2-container .select2-selection--single,
.woocommerce table.cart td.actions .coupon .input-text,.woocommerce-page select{
  border:1px solid rgba(91,42,134,0.25);border-radius:10px;padding:11px 12px;background:#fff;font:0.95rem 'Work Sans',sans-serif;color:var(--testo);
}
.woocommerce .select2-container .select2-selection--single{height:auto;}
.woocommerce form .form-row label{font-weight:600;color:var(--viola-deep);font-size:0.88rem;}
.woocommerce form .form-row{padding:0;margin-bottom:14px;}
.woocommerce table.shop_table{border-radius:16px;border-color:rgba(91,42,134,0.14);background:#fff;border-collapse:separate;overflow:hidden;}
.woocommerce table.shop_table th{color:var(--viola-deep);}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:rgba(91,42,134,0.1);padding:12px;}
.woocommerce table.shop_table img{width:64px;border-radius:10px;}
.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-checkout #order_review{background:#fff;border-radius:18px;padding:18px;}
.woocommerce-cart .cart-collaterals .cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-shipping-fields h3,.woocommerce-additional-fields h3{font-family:'Unbounded',sans-serif;font-size:1.15rem;color:var(--viola-deep);margin-bottom:14px;}
.woocommerce-checkout #payment{background:var(--panna);border-radius:14px;}
.woocommerce-checkout #payment div.payment_box{background:#fff;color:#4A3354;border-radius:10px;}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#fff;}
.woocommerce #payment #place_order{width:100%;padding:16px;font-size:1.05rem;}
.woocommerce ul#shipping_method li{margin-bottom:6px;}
.tfl-terms-note{font-size:0.85rem;color:#6C5678;margin-bottom:12px;}
.tfl-terms-note a{color:var(--viola);text-decoration:underline;}

/* Barra spedizione gratuita */
.tfl-ship{background:#fff;border-radius:14px;padding:14px 16px;margin-bottom:22px;border:1px solid rgba(214,23,140,0.18);}
.tfl-ship p{margin-bottom:8px;color:var(--viola-deep);font-size:0.95rem;}
.tfl-ship-bar{height:8px;border-radius:8px;background:var(--panna);overflow:hidden;}
.tfl-ship-bar span{display:block;height:100%;background:linear-gradient(100deg,var(--fuxia),var(--viola));border-radius:8px;}

/* Avvisi */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{border-radius:14px;background:#fff;color:var(--testo);}
.woocommerce-message{border-top-color:#25D366;}
.woocommerce-message::before{color:#25D366;}
.woocommerce-info{border-top-color:var(--viola);}
.woocommerce-info::before{color:var(--viola);}
.woocommerce-error{border-top-color:#B0103A;}
.woocommerce-message .button,.woocommerce-info .button{float:right;}
.woocommerce-store-notice,p.demo_store{background:var(--viola-deep);}

/* Paginazione e ordinamento */
.woocommerce-result-count{color:#8A6F97;font-size:0.88rem;}
.woocommerce nav.woocommerce-pagination ul{border:0;}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0 3px;}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:10px;padding:10px 14px;background:#fff;color:var(--viola-deep);}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--fuxia);color:#fff;}

/* Account */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;background:#fff;border-radius:14px;overflow:hidden;}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;color:var(--viola-deep);border-bottom:1px solid rgba(91,42,134,0.08);}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--fuxia-soft);}

/* Condizioni di vendita (pagina con i riquadri apribili) */
.entry-content .terms{margin:0;}
.entry-content .terms summary{font-size:1rem;}

/* Pulsante "Scrivici" nell'intestazione: testo bianco leggibile */
.site-header nav a.btn-primary,.site-header nav a.btn-primary:hover{color:#fff;}
