/*
Theme Name: ArcadeU
Template: twentytwentyfive
Description: Tema di ArcadeU (figlio di Twenty Twenty-Five) secondo le brand guidelines v1.0: viola #3B1E6E, oro #F5B700, Outfit, bottoni a pillola, card con raggio 16. Home e pagine dei giochi in inc/pagine.php, grafica in assets/arcadeu.css. Sorgenti: aree/vita-privata/giochi/progetto/sito/wp/tema/arcadeu/
Version: 0.2.0
Text Domain: arcadeu
*/

/* ---- base ---- */
:root{ --au-viola:#3B1E6E; --au-oro:#F5B700; --au-crema:#FFF7E0; --au-scuro:#24123F; --au-ink:#1B1230; --au-grigio:#F3F1F8; --au-ombra:0 8px 28px rgba(59,30,110,.10); }
body{ -webkit-font-smoothing:antialiased; background:#fff; }
:focus-visible{ outline:3px solid var(--au-oro); outline-offset:2px; }
h1,h2,h3{ letter-spacing:-.02em; }
.wp-site-blocks{ padding:0 !important; }
.wp-site-blocks > *{ margin-block-start:0 !important; }

/* ---- bottoni di WordPress e WooCommerce, come quelli del sito ---- */
.wp-element-button,.wp-block-button__link,.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce #place_order,.au-form button,.au-tasti .button{
  border-radius:999px !important; font-weight:600 !important; padding:0 26px !important; min-height:50px; line-height:1.2 !important;
  display:inline-flex !important; align-items:center; justify-content:center; box-sizing:border-box; white-space:nowrap;
  background:var(--au-oro) !important; color:var(--au-viola) !important; border:0 !important; text-decoration:none !important;
  box-shadow:0 5px 0 #c99500 !important; font-family:Outfit,"Helvetica Neue",Arial,sans-serif !important; font-size:17px !important; cursor:pointer;
}
.wp-element-button:hover,.woocommerce .button:hover,.woocommerce #place_order:hover{ transform:translateY(-1px); }
.woocommerce #place_order{ width:100%; min-height:58px; font-size:19px !important; }
.au-elimina,.au-form button.au-elimina{ background:transparent !important; box-shadow:inset 0 0 0 2px #FF5C5C !important; color:#b42318 !important; }
.au-tasti a.button[href*="azione=scarica"]{ background:transparent !important; box-shadow:inset 0 0 0 2px var(--au-viola) !important; }
.au-secondario,.au-tasti .button.secondario{ background:transparent !important; box-shadow:inset 0 0 0 2px var(--au-viola) !important; }

/* ---- pagine generiche (FAQ, privacy, account, pagamento) ---- */
.au-pagina-testa{ background:linear-gradient(180deg,var(--au-crema),#fff); padding:clamp(40px,6vw,80px) clamp(16px,4vw,32px) 24px !important; }
.au-pagina-testa h1{ font-size:clamp(36px,5vw,56px); font-weight:800; color:var(--au-viola); margin:0; }
.au-pagina-corpo{ padding:8px clamp(16px,4vw,32px) clamp(56px,8vw,96px) !important; }
.au-pagina-corpo p,.au-pagina-corpo li{ font-size:17px; line-height:1.6; }
.au-pagina-corpo h2{ color:var(--au-viola); font-weight:800; }
.au-pagina-corpo details.wp-block-details{ background:#fff; border-radius:16px; box-shadow:var(--au-ombra); padding:6px 22px; margin:0 0 12px; }
.au-pagina-corpo details.wp-block-details summary{ cursor:pointer; font-weight:600; color:var(--au-viola); font-size:18px; padding:16px 0; list-style:none; display:flex; justify-content:space-between; gap:16px; align-items:center; }
.au-pagina-corpo details.wp-block-details summary::-webkit-details-marker{ display:none; }
.au-pagina-corpo details.wp-block-details summary::after{ content:"+"; font-size:26px; line-height:1; transition:transform .2s; }
.au-pagina-corpo details.wp-block-details[open] summary::after{ transform:rotate(45deg); }
.au-pagina-testa > *{ max-width:820px !important; margin-left:auto !important; margin-right:auto !important; }
.woocommerce-account .au-pagina-testa > *,.woocommerce-checkout .au-pagina-testa > *,.woocommerce-cart .au-pagina-testa > *{ max-width:1180px !important; }
.au-pagina-corpo details.wp-block-details p{ padding-bottom:12px; margin:0; }

/* ---- WooCommerce: moduli ---- */
.woocommerce form .form-row label{ font-weight:600; color:var(--au-viola); font-size:15px; }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single,
.au-verifica input,.woocommerce-form-login input.input-text,.woocommerce-form-register input.input-text{
  border-radius:12px !important; border:1.5px solid #d9d4e6 !important; padding:12px 14px !important; font-size:17px !important; background:#fff; min-height:50px; box-sizing:border-box;
}
.select2-container .select2-selection--single{ height:50px !important; display:flex; align-items:center; }
.woocommerce form .form-row input.input-text:focus{ border-color:var(--au-viola) !important; outline:none; box-shadow:0 0 0 3px rgba(245,183,0,.5); }
.woocommerce-info,.woocommerce-message,.woocommerce-error{ border-radius:14px; border-top:0 !important; background:var(--au-crema) !important; color:var(--au-ink) !important; padding:16px 20px 16px 52px !important; }
.woocommerce-error{ background:#ffecec !important; }
.woocommerce-info::before,.woocommerce-message::before{ color:var(--au-viola) !important; }

/* pagamento: dati a sinistra, riepilogo in una card a destra */
@media (min-width:900px){
  .woocommerce-checkout form.checkout{ display:grid; grid-template-columns:1.15fr .85fr; gap:0 40px; align-items:start; }
  .woocommerce-checkout form.checkout > *{ grid-column:1; }
  .woocommerce-checkout form.checkout #order_review_heading{ grid-column:2; grid-row:1; margin-top:0; }
  .woocommerce-checkout form.checkout #order_review{ grid-column:2; grid-row:2 / span 20; position:sticky; top:96px; }
  .woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{ width:100% !important; float:none !important; }
}
.woocommerce-checkout #order_review{ background:#fff; border-radius:20px; box-shadow:0 18px 50px rgba(59,30,110,.14); padding:22px; }
.woocommerce-checkout h3{ color:var(--au-viola); font-weight:800; font-size:22px; }
.woocommerce table.shop_table{ border:0 !important; border-radius:14px; }
.woocommerce table.shop_table th,.woocommerce table.shop_table td{ border-color:#eee8f6 !important; }
.woocommerce table.shop_table .order-total{ font-size:20px; color:var(--au-viola); }
#payment{ background:var(--au-grigio) !important; border-radius:16px !important; }
.au-recesso{ background:var(--au-crema); border-radius:12px; padding:14px 16px !important; font-size:15px; line-height:1.45; }
.au-recesso input{ width:20px; height:20px; accent-color:var(--au-viola); vertical-align:-4px; margin-right:6px; }

/* account e pagamento: più larghi delle pagine di testo */
.woocommerce-account .au-pagina-corpo > *,.woocommerce-checkout .au-pagina-corpo > *,.woocommerce-cart .au-pagina-corpo > *,
.woocommerce-account .au-pagina-corpo .wp-block-post-content > *,.woocommerce-checkout .au-pagina-corpo .wp-block-post-content > *,.woocommerce-cart .au-pagina-corpo .wp-block-post-content > *{ max-width:1180px !important; }
.woocommerce-account .au-pagina-testa h1,.woocommerce-checkout .au-pagina-testa h1{ font-size:clamp(32px,4vw,44px); }

/* account */
.woocommerce-account .woocommerce{ display:grid; gap:28px; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper{ grid-column:1 / -1; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper:empty{ display:none; }
@media (min-width:900px){
  .woocommerce-account .woocommerce{ grid-template-columns:240px minmax(0,1fr); }
  .woocommerce-account .woocommerce-MyAccount-navigation{ grid-column:1; grid-row:1; }
  .woocommerce-account .woocommerce-MyAccount-content{ grid-column:2; grid-row:1; }
}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{ width:auto !important; float:none !important; }
.woocommerce-MyAccount-navigation ul{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
@media (min-width:900px){ .woocommerce-MyAccount-navigation ul{ flex-direction:column; } }
.woocommerce-MyAccount-navigation li a{ display:block; padding:10px 16px; border-radius:999px; text-decoration:none; font-weight:600; color:var(--au-viola); background:var(--au-grigio); }
.woocommerce-MyAccount-navigation li.is-active a{ background:var(--au-viola); color:#fff; }
.woocommerce-form-login,.woocommerce-form-register{ border:0 !important; border-radius:20px !important; box-shadow:var(--au-ombra); padding:24px !important; background:#fff; }

/* area "I miei giochi" (plugin ArcadeU) */
.au-verifica{ background:var(--au-crema); border-radius:20px; padding:22px; margin-bottom:24px; }
.au-verifica h3{ color:var(--au-viola); margin-top:0; }
.au-verifica form{ margin:12px 0; display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.au-giochi{ list-style:none; padding:0; display:grid; gap:14px; }
.au-mio-gioco{ background:#fff; border-radius:20px; box-shadow:var(--au-ombra); padding:18px 20px; display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; align-items:center; }
.au-mio-gioco strong{ font-size:20px; color:var(--au-viola); }
.au-tasti{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.au-tasti form{ margin:0; }
.au-bloccato{ color:#6b6480; font-weight:600; background:var(--au-grigio); padding:8px 14px; border-radius:999px; }
.au-nota{ color:#6b6480; font-size:15px; }
.au-cta{ margin:8px 0; }
