.unico-wr-booking{max-width:720px;margin:18px 0}.unico-wr-booking-row{margin:0 0 16px}.unico-wr-booking label{display:block;font-weight:600;margin-bottom:6px}.unico-wr-booking input,.unico-wr-booking select{width:100%;max-width:100%}.unico-wr-booking-status{margin-top:12px}.unico-wr-balance,.unico-wr-readonly-note,.unico-wr-access-note{margin:12px 0}.unico-wr-readonly-note{font-size:.95em;opacity:.78}.unico-wr-product-availability{margin:28px 0;padding:20px;border:1px solid rgba(0,0,0,.12);border-radius:10px}.unico-wr-product-availability h3{margin-top:0}.unico-wr-account table{width:100%;border-collapse:collapse}.unico-wr-account th,.unico-wr-account td{padding:8px;border-bottom:1px solid #ddd;text-align:left}.unico-wr-account-status{margin-top:12px}
.unico-wr-service-note{margin:0 0 18px}.unico-wr-policy-note{margin:12px 0;padding:12px 14px;border-left:4px solid currentColor;background:rgba(0,0,0,.04);font-size:.95em}.unico-wr-after-purchase{margin:28px 0;padding:22px;border:1px solid rgba(0,0,0,.12);border-radius:10px}.unico-wr-after-purchase h2{margin-top:0}.unico-wr-booking-cta{text-transform:uppercase;font-weight:600}.unico-wr-account-balance{font-size:1.05em}.unico-wr-access-note{padding:16px;border:1px solid rgba(0,0,0,.12);border-radius:8px}

/* Calendario condiviso da agenda cliente e disponibilità pre-acquisto. */
.unico-wr-calendar-wrap{--uwr-border:#dededb;--uwr-text:#202628;--uwr-muted:#667085;--uwr-available:#eef8ef;--uwr-unavailable:#f4f4f2;margin:24px 0;color:var(--uwr-text);font:inherit}
.unico-wr-calendar-wrap *{box-sizing:border-box}
.unico-wr-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.unico-wr-calendar-selection{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;text-align:center;gap:4px;line-height:1.4}
.unico-wr-calendar-selection strong{font-size:1.1em;font-weight:600;color:var(--uwr-text)}
.unico-wr-selected-date{color:var(--uwr-muted);font-size:.95em}
.unico-wr-calendar-wrap .unico-wr-calendar-nav{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid var(--uwr-border);border-radius:50%;background:#fff;color:var(--uwr-text);font-family:inherit;font-size:28px;font-weight:400;line-height:1;box-shadow:none;cursor:pointer}
.unico-wr-calendar-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;align-items:start}
.unico-wr-calendar-month{min-width:0;border:1px solid var(--uwr-border);border-radius:14px;padding:16px;background:#fff}
.unico-wr-calendar-wrap .unico-wr-calendar-month h3{margin:0 0 16px;padding:0;text-align:center;text-transform:capitalize;color:var(--uwr-text);font-family:inherit;font-size:1.2em;font-weight:500;line-height:1.4;letter-spacing:normal}
.unico-wr-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.unico-wr-calendar-weekdays{margin-bottom:8px;text-align:center;font-weight:600;line-height:1.6}
.unico-wr-calendar-wrap .unico-wr-calendar-day{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:auto;aspect-ratio:1/1;margin:0;padding:0;border:2px solid transparent;border-radius:9px;background:var(--uwr-unavailable);color:var(--uwr-text);font:inherit;font-size:1em;line-height:1;letter-spacing:normal;text-align:center;box-shadow:none;transition:background-color .15s,border-color .15s;cursor:default}
.unico-wr-calendar-wrap .unico-wr-calendar-day.is-available{background:var(--uwr-available);cursor:pointer}
.unico-wr-calendar-wrap .unico-wr-calendar-day.is-unavailable{color:#8d9292;background:var(--uwr-unavailable);cursor:not-allowed;opacity:1}
.unico-wr-calendar-wrap .unico-wr-calendar-day.is-selected{background:var(--uwr-text);border-color:var(--uwr-text);color:#fff}
.unico-wr-calendar-wrap .unico-wr-calendar-day.is-available:hover:not(:disabled){border-color:var(--uwr-text)}
.unico-wr-calendar-wrap button:focus-visible{outline:3px solid #98734d;outline-offset:3px}
.unico-wr-calendar-wrap .unico-wr-calendar-nav:disabled{opacity:.35;cursor:default}
.unico-wr-calendar-wrap button::before,.unico-wr-calendar-wrap button::after{content:none}
.unico-wr-calendar-months[aria-busy="true"]{opacity:.65}
.unico-wr-calendar-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:.82em;color:var(--uwr-muted);line-height:1.5}
.unico-wr-calendar-legend span{display:inline-flex;align-items:center;gap:7px}
.unico-wr-calendar-legend i{display:inline-block;width:13px;height:13px;border:1px solid var(--uwr-border);border-radius:4px}
.unico-wr-legend-available{background:var(--uwr-available)}
.unico-wr-legend-selected{background:var(--uwr-text)}
.unico-wr-legend-unavailable{background:var(--uwr-unavailable)}
.unico-wr-calendar-wrap .unico-wr-calendar-message{margin:12px 0 0;padding:0;color:var(--uwr-muted);font-size:.9em;line-height:1.5}
.unico-wr-calendar-wrap .unico-wr-calendar-retry{margin:10px 0 0;padding:8px 12px;border:1px solid var(--uwr-border);border-radius:8px;background:#fff;color:var(--uwr-text);font:inherit;cursor:pointer}
.unico-wr-calendar-wrap [hidden]{display:none!important}
.unico-wr-booking .unico-wr-book-button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:400px){.unico-wr-calendar-month{padding:12px}.unico-wr-calendar-grid{gap:4px}.unico-wr-calendar-toolbar{gap:8px}.unico-wr-calendar-selection strong{font-size:1em}.unico-wr-selected-date{font-size:.82em}}
@media(prefers-reduced-motion:reduce){.unico-wr-calendar-wrap .unico-wr-calendar-day{transition:none}}

/* Area cliente: il menu resta quello nativo WooCommerce, cambia solo la presentazione. */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;gap:8px;list-style:none;margin:0 0 24px;padding:0}
body.woocommerce-account .woocommerce-MyAccount-navigation li{list-style:none;margin:0;padding:0}
body.woocommerce-account .woocommerce-MyAccount-navigation li::marker{content:''}
body.woocommerce-account .woocommerce-MyAccount-navigation a{display:flex;align-items:center;box-sizing:border-box;min-height:44px;padding:10px 14px;border:1px solid #e9e5df;border-radius:9px;background:#fbfbfa;color:#202628;font-size:.95em;line-height:1.35;text-decoration:none;transition:background-color .15s,border-color .15s}
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{border-color:#ad8d6b;background:#e9e5df;color:#202628}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,body.woocommerce-account .woocommerce-MyAccount-navigation a[aria-current="page"]{border-color:#202628;background:#202628;color:#fff}
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible,.unico-wr-account a:focus-visible,.unico-wr-account button:focus-visible{outline:3px solid #ad8d6b;outline-offset:2px}

.unico-wr-account,.unico-wr-booking{box-sizing:border-box;min-width:0;max-width:100%;overflow:visible}
.unico-wr-account .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.unico-wr-account-section{min-width:0;margin:0 0 32px}
.unico-wr-account-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.unico-wr-account .unico-wr-account-section h3{margin:0 0 14px;padding:0;color:#202628;font-size:1.45em;line-height:1.3}
.unico-wr-account .unico-wr-account-heading h3{margin:0}
.unico-wr-account .unico-wr-account-subheading{margin:12px 0;color:#202628;font-size:1.08em;line-height:1.35}
.unico-wr-account .unico-wr-account-balance{margin:0 0 16px;color:#202628;line-height:1.5}
.unico-wr-account .unico-wr-account-empty{margin:0 0 16px}
.unico-wr-account .unico-wr-account-table{width:100%;min-width:0;border-collapse:collapse;table-layout:auto}
.unico-wr-account .unico-wr-account-table th,.unico-wr-account .unico-wr-account-table td{padding:10px 8px;border-bottom:1px solid #e9e5df;text-align:left;vertical-align:middle;white-space:normal}
.unico-wr-account .unico-wr-no-action{color:#555f62;font-size:.9em}
.unico-wr-account-history{margin:14px 0}
.unico-wr-account-history summary{padding:10px 0;color:#202628;font-weight:600;cursor:pointer}
.unico-wr-account-history summary:focus-visible{outline:3px solid #ad8d6b;outline-offset:2px}
.unico-wr-account-jump{margin:14px 0 0}
.unico-wr-account-jump a{color:#202628;text-underline-offset:3px}

@media(max-width:980px){
  body.woocommerce-account .woocommerce-MyAccount-navigation,body.woocommerce-account .woocommerce-MyAccount-content{float:none!important;clear:both;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}
  body.woocommerce-account .woocommerce-MyAccount-navigation{margin:0 0 24px!important}
  body.woocommerce-account .woocommerce-MyAccount-content{margin:0!important;overflow:visible}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
}
@media(max-width:767px){
  .unico-wr-account,.unico-wr-booking{width:100%;padding:0;overflow:visible!important}
  .unico-wr-account-section{margin-bottom:26px}
  .unico-wr-account .unico-wr-account-section h3{font-size:1.25rem;line-height:1.3;margin-bottom:12px}
  .unico-wr-account .unico-wr-account-heading h3{margin-bottom:0}
  .unico-wr-account .unico-wr-account-heading{align-items:flex-start;gap:10px;margin-bottom:14px}
  .unico-wr-account p,.unico-wr-account td,.unico-wr-account summary,.unico-wr-booking p,.unico-wr-booking label{font-size:.9rem;line-height:1.5}
  .unico-wr-booking{margin:12px 0}
  .unico-wr-booking-row{margin-bottom:12px}
  .unico-wr-calendar-wrap{margin:16px 0}
  .unico-wr-account .unico-wr-account-table{display:block!important;width:100%!important;min-width:0!important;max-width:100%;border:0!important;overflow:visible!important}
  .unico-wr-account .unico-wr-account-table thead{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .unico-wr-account .unico-wr-account-table tbody{display:block!important;width:100%;min-width:0}
  .unico-wr-account .unico-wr-account-table tr{display:block!important;box-sizing:border-box;width:100%;min-width:0;margin:0 0 12px;padding:10px 12px;border:1px solid #e9e5df;border-radius:10px;background:#fbfbfa}
  .unico-wr-account .unico-wr-account-table td{display:flex!important;box-sizing:border-box;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:7px 0!important;border:0!important;text-align:right!important;white-space:normal!important;overflow-wrap:anywhere}
  .unico-wr-account .unico-wr-account-table td::before{content:attr(data-label);flex:0 0 43%;text-align:left;font-weight:600;color:#202628}
  .unico-wr-account .unico-wr-account-table td:last-child{padding-bottom:2px!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation a{min-height:44px;font-size:.875rem;padding:10px 12px}
  body.woocommerce-account .woocommerce-MyAccount-content .et_pb_button,body.woocommerce-account .woocommerce-MyAccount-content .button,.unico-wr-account .button,.unico-wr-booking .button{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 14px!important;font-size:.875rem!important;line-height:1.25!important;text-align:center;white-space:normal}
  .unico-wr-account .unico-wr-account-heading .unico-wr-booking-cta{text-transform:none}
}
@media(prefers-reduced-motion:reduce){body.woocommerce-account .woocommerce-MyAccount-navigation a{transition:none}}

/* Controlli ELITA: select native accessibili, senza widget o librerie aggiuntive. */
.unico-wr-booking select.unico-wr-service,.unico-wr-booking select.unico-wr-slot{appearance:none;-webkit-appearance:none;box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;min-height:48px;height:auto;padding:12px 44px 12px 16px;border:1px solid #e9e5df;border-radius:10px;background-color:#fbfbfa;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23202628' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px;color:#202628;font-family:inherit;font-size:16px;font-weight:400;line-height:1.4;box-shadow:none;cursor:pointer;transition:border-color .15s,background-color .15s}
.unico-wr-booking select.unico-wr-service:hover:not(:disabled),.unico-wr-booking select.unico-wr-slot:hover:not(:disabled){border-color:#ad8d6b;background-color:#fff}
.unico-wr-booking select.unico-wr-service:focus-visible,.unico-wr-booking select.unico-wr-slot:focus-visible{outline:2px solid #98734d;outline-offset:2px;border-color:#ad8d6b}
.unico-wr-booking select.unico-wr-service:disabled,.unico-wr-booking select.unico-wr-slot:disabled{background-color:#e9e5df;color:#555f62;cursor:not-allowed;opacity:1}
.unico-wr-booking select option{font-family:inherit;color:#202628;background:#fbfbfa}
.unico-wr-account button.button.unico-wr-cancel-booking{appearance:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;min-width:88px;max-width:100%;margin:0;padding:10px 16px!important;border:1px solid #ad8d6b!important;border-radius:9px;background:#fbfbfa!important;color:#202628!important;font-family:inherit;font-size:14px!important;font-weight:600;line-height:1.35!important;letter-spacing:normal;text-transform:none;white-space:normal;box-shadow:none;cursor:pointer;transition:background-color .15s,border-color .15s}
.unico-wr-account button.button.unico-wr-cancel-booking:hover:not(:disabled){background:#e9e5df!important;border-color:#202628!important}
.unico-wr-account button.button.unico-wr-cancel-booking:focus-visible{outline:2px solid #98734d;outline-offset:3px}
.unico-wr-account button.button.unico-wr-cancel-booking:disabled{opacity:.6;cursor:wait}
.unico-wr-account button.button.unico-wr-cancel-booking::before,.unico-wr-account button.button.unico-wr-cancel-booking::after{content:none!important}
@media(prefers-reduced-motion:reduce){.unico-wr-booking select,.unico-wr-account button.unico-wr-cancel-booking{transition:none!important}}
@media(forced-colors:active){.unico-wr-booking select.unico-wr-service,.unico-wr-booking select.unico-wr-slot{appearance:auto;background-image:none;padding-right:12px}.unico-wr-account button.button.unico-wr-cancel-booking{border-color:ButtonText!important}}

/* Solo il modulo nativo di accesso/registrazione: la bacheca mantiene la sua larghezza. */
body.woocommerce-account .unico-wr-account-login{box-sizing:border-box;width:100%;max-width:900px;min-width:0;margin:0 auto}
body.woocommerce-account .unico-wr-account-login #customer_login{display:flex;flex-direction:row;align-items:stretch;gap:32px;width:100%;margin:0 auto}
body.woocommerce-account .unico-wr-account-login #customer_login .u-column1,body.woocommerce-account .unico-wr-account-login #customer_login .u-column2{float:none!important;display:flex;flex:1 1 0;flex-direction:column;box-sizing:border-box;width:100%!important;max-width:none;min-width:0;margin:0}
body.woocommerce-account .unico-wr-account-login h2{margin:0 0 16px;padding:0;font-size:1.65rem;line-height:1.3;color:#202628}
body.woocommerce-account .unico-wr-account-login form.woocommerce-form{box-sizing:border-box;width:100%;margin:0 0 24px;padding:24px;border:1px solid #e9e5df;border-radius:12px;background:#fbfbfa}
body.woocommerce-account .unico-wr-account-login .form-row{margin:0 0 16px;padding:0}
body.woocommerce-account .unico-wr-account-login .form-row label{font-size:.9rem;line-height:1.5;color:#202628}
body.woocommerce-account .unico-wr-account-login input.input-text{box-sizing:border-box;min-width:0;width:100%;min-height:48px;padding:11px 12px;border:1px solid #e9e5df;border-radius:8px;background:#fff;color:#202628;font:inherit;font-size:16px;line-height:1.4}
body.woocommerce-account .unico-wr-account-login .password-input input.input-text{padding-right:44px}
body.woocommerce-account .unico-wr-account-login input.input-text:focus-visible{outline:2px solid #98734d;outline-offset:2px}
body.woocommerce-account .unico-wr-account-login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:6px;min-height:44px}
body.woocommerce-account .unico-wr-account-login button.button{box-sizing:border-box;width:100%;min-height:44px;padding:10px 16px!important;border:1px solid #ad8d6b!important;border-radius:8px;background:#fbfbfa!important;color:#202628!important;font-family:inherit;font-size:14px!important;font-weight:600;line-height:1.4!important}
body.woocommerce-account .unico-wr-account-login button.button:hover{background:#e9e5df!important}
body.woocommerce-account .unico-wr-account-login a{color:#202628;text-decoration:underline;text-underline-offset:3px}
body.woocommerce-account .unico-wr-account-login a:focus-visible,body.woocommerce-account .unico-wr-account-login button:focus-visible{outline:2px solid #98734d;outline-offset:2px}
body.woocommerce-account .unico-wr-account-login .lost_password{margin:8px 0 0;font-size:.9rem}
body.woocommerce-account .unico-wr-account-login button.button::after{font-size:14px;line-height:1.4}
@media(min-width:768px){body.woocommerce-account .unico-wr-account-login form.woocommerce-form{display:flex;flex:1 1 auto;flex-direction:column;height:auto;margin-bottom:0}body.woocommerce-account .unico-wr-account-login form.woocommerce-form-login>.form-row:has(.woocommerce-form-login__submit),body.woocommerce-account .unico-wr-account-login form.woocommerce-form-register>.form-row:has(.woocommerce-form-register__submit){margin-top:auto}body.woocommerce-account .unico-wr-account-login form.woocommerce-form-register::after{content:"";display:block;flex:0 0 calc(1.35rem + 8px)}}
@media(max-width:767px){body.woocommerce-account .unico-wr-account-login{max-width:420px}body.woocommerce-account .unico-wr-account-login #customer_login{flex-direction:column;gap:28px}}
@media(max-width:480px){body.woocommerce-account .unico-wr-account-login form.woocommerce-form{padding:20px}}
