/* Ohoskin Notifiche — pagina prodotto */
/* gli avvisi nativi si nascondono solo quando lo script è attivo (classe messa nell'head) */
html.ohk-notifiche body.single-product .woocommerce-notices-wrapper { display: none !important; }
/* vecchio toast dello snippet 690, se ancora attivo */
.ohoskin-toast-cart { display: none !important; }

.ohk-n-regione { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* pannello in alto, fisso */
.ohk-n-pan { position: fixed; top: 16px; right: 24px; width: 400px; max-width: calc(100vw - 20px); z-index: 100000; background: #fff; color: #1d2420; border-radius: 16px; padding: 18px;
  box-shadow: 0 18px 48px rgba(0,0,0,.2), 0 0 0 1px rgba(0,0,0,.04); font-family: Raleway, sans-serif;
  transform: translateY(-14px) scale(.98); transform-origin: top right; opacity: 0; transition: transform .45s cubic-bezier(.22,1,.36,1), opacity .25s; overflow: hidden; }
.ohk-n-pan.su { transform: none; opacity: 1; }
body.admin-bar .ohk-n-pan { top: 48px; }
@media (max-width: 767px) {
  .ohk-n-pan { left: 10px; right: 10px; top: 10px; width: auto; transform-origin: top center; }
  body.admin-bar .ohk-n-pan { top: 56px; }
}
.ohk-n-alto { display: flex; align-items: center; gap: 10px; }
.ohk-n-esito { flex: 1; display: flex; align-items: center; gap: 8px; font: 600 15px/1.3 Raleway, sans-serif; }
.ohk-n-icona { width: 22px; height: 22px; border-radius: 11px; color: #fff; font: 700 12px/22px Raleway, sans-serif; text-align: center; flex: none; }
.ohk-n-ok .ohk-n-icona { background: #2F8A55; } .ohk-n-err .ohk-n-icona { background: #B3261E; } .ohk-n-info .ohk-n-icona { background: #566C5E; }
.ohk-n-pan button.ohk-n-x { all: unset; cursor: pointer; width: 32px; height: 32px; border-radius: 16px; display: grid; place-items: center; font-size: 15px; color: #444; flex: none; }
.ohk-n-pan button.ohk-n-x:hover { background: #E1E7E3; }
.ohk-n-pan button.ohk-n-x:focus-visible, .ohk-n-pan a:focus-visible { outline: 3px solid #2F8A55; outline-offset: 2px; }
.ohk-n-voce { display: flex; gap: 12px; align-items: center; padding: 14px 0; margin-top: 12px; border-top: 1px solid #e3e8e5; border-bottom: 1px solid #e3e8e5; }
.ohk-n-mini { width: 58px !important; height: 58px !important; border-radius: 10px; object-fit: cover; background: #f3f3f2; flex: none; }
.ohk-n-testi { flex: 1; min-width: 0; }
.ohk-n-nome { font: 600 15px/1.3 Raleway, sans-serif; }
.ohk-n-sub { font: 400 13px/1.4 Raleway, sans-serif; color: #5b6660; margin-top: 2px; }
.ohk-n-punto { display: inline-block; width: 10px; height: 10px; border-radius: 5px; margin-right: 6px; box-shadow: 0 0 0 1px rgba(0,0,0,.12); }
.ohk-n-importo { font: 500 16px 'M1Plus', 'M PLUS Rounded 1c', sans-serif; white-space: nowrap; }
.ohk-n-totale { display: flex; justify-content: space-between; align-items: baseline; margin-top: 12px; font: 600 15px Raleway, sans-serif; }
.ohk-n-totale[hidden] { display: none; }
.ohk-n-totale .ohk-n-importo { font-size: 18px; }
.ohk-n-nota { font: 400 12px Raleway, sans-serif; color: #5b6660; margin-top: 4px; }
.ohk-n-azioni { display: flex; gap: 8px; margin-top: 14px; }
.ohk-n-pan a.ohk-n-bt { flex: 1; display: flex; align-items: center; justify-content: center; height: 46px; border-radius: 8px; border: 1px solid #1d2420; background: #fff; color: #1d2420 !important; font: 600 15px Raleway, sans-serif; text-decoration: none !important; transition: background .2s; }
.ohk-n-pan a.ohk-n-bt:hover { background: #E1E7E3; }
.ohk-n-pan a.ohk-n-bt.ohk-n-pieno { background: #14361D; border-color: #14361D; color: #fff !important; }
.ohk-n-pan a.ohk-n-bt.ohk-n-pieno:hover { background: #1d4a29; }
.ohk-n-testo { font: 400 14px/1.5 Raleway, sans-serif; color: #333; margin: 8px 0 0 30px; }
.ohk-n-testo ul { margin: 0; padding: 0; list-style: none; }
.ohk-n-testo a { color: inherit; font-weight: 600; }
.ohk-n-tempo { position: absolute; left: 0; bottom: 0; height: 3px; width: 100%; background: #2F8A55; opacity: .45; transform-origin: left; animation: ohk-n-scorre linear forwards; }
.ohk-n-info .ohk-n-tempo { background: #566C5E; }
@keyframes ohk-n-scorre { from { transform: scaleX(1); } to { transform: scaleX(0); } }

/* pulsante: in corso e aggiunto */
.single_add_to_cart_button.ohk-n-in-corso, .single_add_to_cart_button.ohk-n-fatto { display: inline-flex !important; align-items: center; justify-content: center; gap: 10px; pointer-events: none; }
.single_add_to_cart_button.ohk-n-fatto { background: #2F8A55 !important; border-color: #2F8A55 !important; color: #fff !important; transition: background .3s; }
.ohk-n-giro { width: 18px; height: 18px; border-radius: 9px; border: 2px solid rgba(255,255,255,.35); border-top-color: #fff; animation: ohk-n-giro .8s linear infinite; flex: none; }
@keyframes ohk-n-giro { to { transform: rotate(360deg); } }
.ohk-n-spunta { width: 18px; height: 18px; flex: none; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.ohk-n-spunta path { stroke-dasharray: 24; stroke-dashoffset: 24; animation: ohk-n-traccia .35s .05s ease-out forwards; }
@keyframes ohk-n-traccia { to { stroke-dashoffset: 0; } }

/* colore non scelto: gli swatch della galleria in rosso, la frase sotto (avviso di ohoskin-product-ui) */
form.cart:has(.ohoskin-variation-missing) .ohg-colori-form { outline: 2px solid #B3261E; outline-offset: 6px; border-radius: 12px; }
form.cart .ohoskin-variation-notice { color: #B3261E; font-weight: 600; }

@media (prefers-reduced-motion: reduce) {
  .ohk-n-pan, .ohk-n-spunta path, .ohk-n-tempo { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .ohk-n-giro { animation-duration: 2s; }
}
/* testo degli avvisi di WooCommerce: niente punto elenco, link della stessa misura del testo */
.ohk-n-testo ul, .ohk-n-testo li { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.ohk-n-testo li::before, .ohk-n-testo li::marker { content: none !important; }
.ohk-n-testo a { font: inherit !important; text-decoration: underline; }

/* mini carrello nel pannello in alto (l'icona in testata apre questo, non il mini carrello di Elementor) */
.elementor-menu-cart__container, .elementor-menu-cart__main { display: none !important; }
.ohk-n-titolo-carr small { font-weight: 400; color: #5b6660; margin-left: 4px; }
.ohk-n-lista { max-height: min(52vh, 420px); overflow-y: auto; margin-top: 12px; border-top: 1px solid #e3e8e5; }
.ohk-n-voce.ohk-n-voce-carr { margin-top: 0; border-top: 0; align-items: flex-start; }
.ohk-n-voce.ohk-n-via { opacity: .4; }
.ohk-n-nome a { color: inherit !important; text-decoration: none !important; }
.ohk-n-nome a:hover { text-decoration: underline !important; }
.ohk-n-nome .ohk-c-var { display: block; font: 400 12.5px/1.4 Raleway, sans-serif; color: #5b6660; margin-top: 2px; }
.ohk-n-nome .ohk-c-tag { display: table; font: 600 10.5px/1.3 Raleway, sans-serif; padding: 2px 7px; border-radius: 99px; margin-top: 5px; }
.ohk-n-nome .ohk-c-inc { background: #E3F0E7; color: #1f6b3e; }
.ohk-n-nome .ohk-c-vat { background: #F6EAD6; color: #8a5410; }
.ohk-n-pan button.ohk-n-togli { all: unset; cursor: pointer; font: 400 12.5px Raleway, sans-serif; color: #5b6660; text-decoration: underline; }
.ohk-n-pan button.ohk-n-togli:hover { color: #B3261E; }
.ohk-n-pan button.ohk-n-togli:focus-visible { outline: 3px solid #2F8A55; outline-offset: 2px; }
.ohk-n-vuoto { margin: 14px 0 0; font: 400 14px Raleway, sans-serif; color: #5b6660; }
.ohk-n-carr .ohk-n-totale { padding-top: 12px; border-top: 1px solid #e3e8e5; }

/* pulsanti del pannello coerenti con la pagina prodotto: principale nero, secondario bianco; stati sempre salvia */
.ohk-n-pan a.ohk-n-bt { height: 50px !important; border-radius: 6px !important; font: 400 17px Raleway, sans-serif !important; border: 1px solid #111 !important; }
.ohk-n-pan a.ohk-n-bt.ohk-n-pieno { background: #000 !important; border-color: #000 !important; }
.ohk-n-pan a.ohk-n-bt.ohk-n-pieno:hover { background: #222 !important; }
.ohk-n-pan button.ohk-n-x, .ohk-n-pan button.ohk-n-x:focus { background: transparent !important; color: #444 !important; border: 0 !important; box-shadow: none !important; }
.ohk-n-pan button.ohk-n-x:hover, .ohk-n-pan button.ohk-n-x:active, .ohk-n-pan button.ohk-n-x:focus-visible { background: #E1E7E3 !important; color: #14361D !important; }
.ohk-n-pan button.ohk-n-togli, .ohk-n-pan button.ohk-n-togli:focus, .ohk-n-pan button.ohk-n-togli:hover, .ohk-n-pan button.ohk-n-togli:active { background: transparent !important; border: 0 !important; box-shadow: none !important; }
