/* v1.56.1 — acabamento premium sem alterar a estrutura da loja */
:root{
  --polish-green:#153f32;
  --polish-green-deep:#0d3026;
  --polish-gold:#b7925d;
  --polish-line:rgba(21,63,50,.14);
  --polish-shadow:0 18px 48px rgba(16,50,39,.10);
  --polish-shadow-soft:0 10px 28px rgba(16,50,39,.065);
}

html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{color:#fff;background:var(--polish-green)}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(183,146,93,.35)!important;outline-offset:3px!important}

/* Entrada da loja: oculta os dados provisórios até o produto real estar pronto. */
.cr-entry-loader{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:24px;visibility:hidden;opacity:0;pointer-events:none;color:#153f32;background:radial-gradient(circle at 50% 43%,#fff 0,#f7f8f6 45%,#edf2ef 100%);transition:opacity .42s ease,visibility .42s ease}
html.store-booting .cr-entry-loader{visibility:visible;opacity:1;pointer-events:auto}
html.store-ready .cr-entry-loader{visibility:hidden;opacity:0;pointer-events:none}
.cr-entry-loader-inner{display:grid;justify-items:center;text-align:center;transform:translateY(-2vh)}
.cr-entry-logo-wrap{position:relative;width:154px;height:132px;display:grid;place-items:center;margin-bottom:13px}
.cr-entry-logo-wrap::before,.cr-entry-logo-wrap::after,.cr-entry-logo-wrap span{content:"";position:absolute;inset:15px;border:1px solid rgba(21,63,50,.13);border-radius:50%;animation:crEntryRing 1.8s ease-out infinite}
.cr-entry-logo-wrap::after{animation-delay:.55s}
.cr-entry-logo-wrap span{animation-delay:1.1s}
.cr-entry-logo-wrap img{position:relative;z-index:2;width:126px;height:104px;display:block;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(21,63,50,.12));animation:crEntryLogo 1.5s ease-in-out infinite alternate}
.cr-entry-loader strong{font-size:.82rem;font-weight:850;letter-spacing:.22em}
.cr-entry-loader small{margin-top:7px;color:#718079;font-size:.72rem;letter-spacing:.035em}
.cr-entry-loader>div>i{width:122px;height:2px;display:block;overflow:hidden;margin-top:19px;border-radius:999px;background:rgba(21,63,50,.1)}
.cr-entry-loader>div>i b{width:45%;height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#153f32,#b7925d);animation:crEntryProgress 1.15s ease-in-out infinite}
@keyframes crEntryRing{0%{opacity:0;transform:scale(.72)}28%{opacity:.8}100%{opacity:0;transform:scale(1.28)}}
@keyframes crEntryLogo{from{transform:scale(.965)}to{transform:scale(1.015)}}
@keyframes crEntryProgress{0%{transform:translateX(-115%)}100%{transform:translateX(275%)}}

/* Movimento e profundidade discretos */
.clean-header,.checkout-header,.affiliate-header{transition:box-shadow .24s ease,border-color .24s ease,background-color .24s ease!important}
.clean-header.is-scrolled,.checkout-header.is-scrolled,.affiliate-header.is-scrolled{border-color:rgba(21,63,50,.12)!important;box-shadow:0 12px 30px rgba(16,50,39,.075)!important}

.clean-main-image{overflow:hidden;box-shadow:0 18px 46px rgba(16,50,39,.09)!important;transition:box-shadow .28s ease,border-color .28s ease!important}
.clean-main-image:hover{border-color:rgba(21,63,50,.2)!important;box-shadow:0 24px 58px rgba(16,50,39,.13)!important}
.clean-main-image img{transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .2s ease!important}
.clean-main-image:hover img{transform:scale(1.018)}
.gallery-thumb{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important}
.gallery-thumb:hover{transform:translateY(-2px)}
.gallery-thumb.active{box-shadow:0 0 0 2px rgba(21,63,50,.12)!important}

.clean-buy-card,.clean-checkout-card,.clean-order-summary,.cr-tracking-card,.affiliate-card,.feature-card,.step-card,.trust-card{border-color:var(--polish-line)!important;box-shadow:var(--polish-shadow-soft)!important;transition:box-shadow .24s ease,border-color .24s ease,transform .24s ease!important}
.clean-buy-card{box-shadow:var(--polish-shadow)!important}

.cr-btn,.btn,.review-open-button,.affiliate-btn,.clean-freight-form button,.checkout-coupon-input button{position:relative;overflow:hidden;isolation:isolate;transition:transform .16s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease!important}
.cr-btn::after,.btn::after,.review-open-button::after,.affiliate-btn::after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.16) 48%,transparent 76%);transform:translateX(-130%);transition:transform .5s ease}
.cr-btn:hover::after,.btn:hover::after,.review-open-button:hover::after,.affiliate-btn:hover::after{transform:translateX(130%)}
.cr-btn:hover,.btn:hover,.review-open-button:hover,.affiliate-btn:hover{transform:translateY(-1px)}
.cr-btn:active,.btn:active,.review-open-button:active,.affiliate-btn:active{transform:translateY(0) scale(.985)!important}
.cr-btn-primary,.btn-primary,.finish-button{box-shadow:0 11px 25px rgba(21,63,50,.18)!important}
.cr-btn-primary:hover,.btn-primary:hover,.finish-button:hover{box-shadow:0 14px 32px rgba(21,63,50,.24)!important}

.shirt-model-option,.v15-color-option,.shipping-option,.delivery-mode-option{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background-color .16s ease!important}
.shirt-model-option:hover,.v15-color-option:hover,.shipping-option:hover,.delivery-mode-option:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,50,39,.07)!important}
.shirt-model-option.active,.v15-color-option.active,.shipping-option.active,.delivery-mode-option.active{box-shadow:0 0 0 2px rgba(21,63,50,.1)!important}

input,select,textarea{transition:border-color .17s ease,box-shadow .17s ease,background-color .17s ease!important}
input:focus,select:focus,textarea:focus{border-color:rgba(21,63,50,.62)!important;box-shadow:0 0 0 4px rgba(21,63,50,.085)!important}

.clean-benefit-grid article,.review-card,.clean-detail-list details,.v15-freight-item,.cart-item{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important}
.clean-benefit-grid article:hover,.review-card:hover{transform:translateY(-3px);border-color:rgba(21,63,50,.18)!important;box-shadow:0 14px 34px rgba(16,50,39,.08)!important}
.clean-detail-list details[open]{border-color:rgba(21,63,50,.2)!important;background:#fbfcfb!important}
.v15-freight-item,.shipping-option,.cart-item{animation:polishItemIn .28s ease both}

.clean-cart{box-shadow:-22px 0 60px rgba(16,50,39,.16)!important}
.cart-backdrop{backdrop-filter:blur(3px);transition:opacity .2s ease!important}
.toast,.clean-toast{box-shadow:0 15px 42px rgba(8,35,27,.22)!important}
.review-dialog::backdrop{background:rgba(7,29,23,.62);backdrop-filter:blur(5px)}

/* Feedback instantâneo enquanto uma ação está processando */
button.is-loading{cursor:wait!important;opacity:.88}
button.is-loading::before{content:"";width:14px;height:14px;display:inline-block;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:polishSpin .65s linear infinite}
.polish-enter{animation:polishEnter .38s cubic-bezier(.2,.7,.2,1) both}

@keyframes polishSpin{to{transform:rotate(360deg)}}
@keyframes polishItemIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes polishEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

@media (max-width:720px){
  .clean-main-image:hover img{transform:none}
  .clean-benefit-grid article:hover,.review-card:hover{transform:none}
  .cr-btn,.btn{min-height:48px}
  input,select,textarea{font-size:16px!important}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
