/* Shared window chrome. Search is the reference; content and close handlers stay local. */
:root { --ode-window-radius:22px; --ode-window-close-ink:#3b4e50; }
:is(.popup > .callback, .popup > .thanks, .popup > .cart, .auth-card, .cl-dialog, .pg-dialog, .vc-dialog, .ode-dialog, .ode-quick-cart, .purchase-confirm, .registration-success, .configurator-consultation, .configurator-why-popover, .staff-catalog, .staff-refund-dialog, .order-detail-drawer, .ode-cart-feedback, .ode-cart-feedback-error, .ode-wishlist-toast, .ode-cookie, #modal-agree .modal-content) { border-radius:var(--ode-window-radius)!important; }
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close]) {
  box-sizing:border-box!important; flex-shrink:0!important; z-index:2;
  width:44px!important; height:44px!important; min-width:44px!important; min-height:44px!important;
  padding:0!important; border:0!important; border-radius:0!important;
  background:transparent!important; box-shadow:none!important;
  color:var(--ode-window-close-ink)!important; font-size:0!important; line-height:1!important;
  display:inline-grid!important; place-items:center; cursor:pointer; opacity:1!important;
}
/* Inline controls keep their layout position; floating controls share search's inset. */
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close]):not(.callback__close):not(.thanks__close):not(.cart__close):not(.phone-auth-close):not(.pg-dialog__close):not(.purchase-confirm-close):not(.registration-success__close):not(.configurator-consultation-close):not(.configurator-why-close):not(.f-button) { position:relative; }
:is(.callback__close,.thanks__close,.cart__close,.phone-auth-close,.pg-dialog__close,.purchase-confirm-close,.registration-success__close,.configurator-consultation-close,.configurator-why-close) { top:12px!important; right:12px!important; }
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close]) > * { display:none!important; }
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close])::before {
  content:""!important; display:block!important; position:absolute!important;
  left:50%!important; top:50%!important; width:18px!important; height:18px!important;
  transform:translate(-50%,-50%)!important; background:currentColor!important;
  /* Exact silhouette from the search close SVG, independent of the font. */
  --ode-close-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M16 1.4L14.6 0L8 6.6L1.4 0L0 1.4L6.6 8L0 14.6L1.4 16L8 9.4L14.6 16L16 14.6L9.4 8L16 1.4Z'/%3E%3C/svg%3E");
  -webkit-mask:var(--ode-close-mask) center/contain no-repeat;
  mask:var(--ode-close-mask) center/contain no-repeat;
}
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close])::after { content:none!important; }
@media(hover:hover) { :is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close]):hover { color:#008b6c!important; background:transparent!important; } }
:is(.callback__close, .thanks__close, .cart__close, .phone-auth-close, .cl-dialog .cl-close, .pg-dialog__close, .vc-dialog [data-vc-close], .vc-dialog [data-ode-close], .ode-dialog-close, .ode-quick-cart__close, .purchase-confirm-close, .registration-success__close, .configurator-consultation-close, .configurator-why-close, #staff-close-catalog, .ode-cart-feedback__close, .ode-wishlist-toast__close, .cl-note-help__close, #modal-agree .close, .fancybox__container [data-fancybox-close]):focus-visible { outline:2px solid #008b6c!important; outline-offset:2px; }
/* A dark photo viewer needs the same glyph with light contrast. */
.fancybox__container { --ode-window-close-ink:#fff; }
.ode-cart-feedback { grid-template-columns:40px minmax(0,1fr) 44px; }
@media(max-width:767px) {
  :root { --ode-window-radius:20px; }
  .ode-cart-feedback { grid-template-columns:36px minmax(0,1fr) 44px; }
}

/* Guarantee close lives in its heading row rather than a floating corner. */
.pg-dialog__close { position:relative!important; top:auto!important; right:auto!important; }

/* Primary actions across popup and account forms. Keep tabs and icon controls separate. */
:root { --ode-action-green:#0d8b6d; --ode-action-hover:#08745b; --ode-action-radius:6px; }
:is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]) {
  box-sizing:border-box; display:flex!important; align-items:center!important;
  justify-content:var(--ode-action-align,space-between)!important; gap:20px!important;
  min-height:48px!important; padding:13px 20px!important;
  border:1px solid transparent!important; border-radius:var(--ode-action-radius)!important;
  background:var(--ode-action-green)!important; color:#fff!important;
  font-family:Onest,sans-serif!important; font-size:14px!important; font-weight:500!important;
  line-height:1.4!important; text-align:var(--ode-action-text-align,left)!important; text-decoration:none!important;
  white-space:normal; box-shadow:none!important;
  transition:background-color .18s ease,opacity .18s ease;
}
/* Use the site's existing diagonal arrow silhouette once, including dynamic buttons. */
:is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]) > .ode-link-arrow { display:none!important; }
:is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden])::after {
  content:""; display:block; flex:0 0 16px; width:16px; height:16px;
  background:currentColor;
  --ode-action-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18 18 6M6 6h12v12'/%3E%3C/svg%3E");
  -webkit-mask:var(--ode-action-arrow) center/contain no-repeat;
  mask:var(--ode-action-arrow) center/contain no-repeat;
}
@media(hover:hover) {
  :is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]):not(:disabled):not([aria-disabled="true"]):hover { background:var(--ode-action-hover)!important; color:#fff!important; }
}
:is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]):focus-visible { outline:2px solid var(--ode-action-green)!important; outline-offset:3px; }
:is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]):is(:disabled,[aria-disabled="true"]) { opacity:.5!important; cursor:default; }
/* Checkout stays centered and does not receive an arrow. */
:is([data-modal="buy-now"] .callback-form__button, .popup a[href*="checkout"], [data-popup-no-arrow]):not([hidden]) { --ode-action-align:center; --ode-action-text-align:center; }
:is([data-modal="buy-now"] .callback-form__button, .popup a[href*="checkout"], [data-popup-no-arrow]):not([hidden])::after { content:none!important; display:none!important; }
@media(prefers-reduced-motion:reduce) { :is(.popup .callback-form__button, .popup .thanks__button, .cl-dialog .cl-submit, .cl-dialog .cl-register, .auth-card .auth-form__button, .registration-success__continue, .configurator-consultation .configurator-consultation-button, .vc-dialog .vc-apply, .ode-dialog .ode-solid-button, .purchase-confirm [data-confirm-yes], .staff-catalog .staff-primary, .staff-refund-dialog .staff-primary, .order-detail-drawer .orders-sum__button:not(.orders-sum__button_transparent), .ode-cookie button):not([hidden]) { transition:none; } }

/* One publication consent block shared by review and question forms. */
.cl-publication { width:100%; border-top:1px solid #dedede; padding-top:18px; }
.cl-publication .consent-check { display:flex; align-items:flex-start; gap:10px; margin:0; color:#52625c; font:400 13px/1.6 Onest,sans-serif; cursor:pointer; }
.cl-publication input[type="checkbox"] { appearance:auto; -webkit-appearance:checkbox; flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; accent-color:#0d8b6d; cursor:pointer; }
.cl-publication a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.cl-publication .cl-field { display:flex; flex-direction:column; gap:6px; margin:0; color:#52625c; font:400 13px/1.6 Onest,sans-serif; }
.cl-dialog .cl-field :is(input:not([type="checkbox"]):not([type="radio"]),textarea),.cl-publication .cl-field textarea { box-sizing:border-box; border:1px solid #dce3df; border-radius:6px; background:#fff; padding:12px 14px; }
.cl-publication .cl-field textarea { width:100%; min-height:80px; font:400 14px/1.6 Onest,sans-serif; }
.cl-publication input:focus-visible,.cl-publication summary:focus-visible { outline:2px solid #0d8b6d; outline-offset:3px; }
