/* Colégio Educare — checkout (checkout.html) */

/* Tokens + fundo (escopo no body — não resetar navbar/footer) */
body.educare-checkout-pixel {
  --pri:#f0b100;
  --sec:#dd6a07;
  --acc:#ec6730;
  --dk:#1a1a2e;
  --bg:#fefcf7;
  --bgc:#fffdf5;
  --brd:#e8dfc8;
  --title:#3a3a3a;
  --txt:#5a5a6e;
  --meta:#9a968b;
  --gold-glow:rgba(240,177,0,0.4);
  --side:0px;
  --page-max:1300px;
  --white:#fff;
  --ease-expo:cubic-bezier(0.16,1,0.3,1);
  --r-sm:6px;
  --r-md:12px;
  --r-lg:20px;
  --r-xl:30px;
  --green:#27ae60;
  --green-glow:rgba(39,174,96,.3);
  --red:#e74c3c;
  font-weight:500;
  background:var(--bg);
  overflow-x:hidden;
}

/* Box-sizing global no checkout */
body.educare-checkout-pixel *,
body.educare-checkout-pixel *::before,
body.educare-checkout-pixel *::after {
  box-sizing: border-box;
}

/* Remove margin/padding que o WordPress injeta globalmente no checkout */
body.educare-checkout-pixel .educare-checkout-main p,
body.educare-checkout-pixel .educare-checkout-main h1,
body.educare-checkout-pixel .educare-checkout-main h2,
body.educare-checkout-pixel .educare-checkout-main h3,
body.educare-checkout-pixel .educare-checkout-main ul,
body.educare-checkout-pixel .educare-checkout-main li {
  margin: 0;
  padding: 0;
}

/* wp-block-library injeta margin em p */
body.educare-checkout-pixel .main p {
  margin-block-start: 0;
  margin-block-end: 0;
}

/* Ocultar woocommerce-notices-wrapper duplicada dentro do stepper */
body.educare-checkout-pixel .educare-checkout-shortcode-wrap .stepper .woocommerce-notices-wrapper {
  display: none;
}

body.educare-checkout-pixel .entry-header,
body.educare-checkout-pixel .wp-block-post-title,
body.educare-checkout-pixel .page-title {
  display:none!important;
}

@media(prefers-reduced-motion:reduce){
  body.educare-checkout-pixel .educare-checkout-main *,
  body.educare-checkout-pixel .educare-checkout-main *::before,
  body.educare-checkout-pixel .educare-checkout-main *::after{
    animation-duration:0.01ms!important;
    transition-duration:0.01ms!important;
  }
}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}

@keyframes check-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}100%{transform:scale(1)}}

.is-hidden{display:none!important}

/* ========== NAVBAR ========== */
.topbar__cart{
  position:relative;
  width:44px;
  height:44px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(240,177,0,.06);
  border:1px solid var(--brd);
  color:var(--title);
  font-size:16px;
  text-decoration:none;
  flex-shrink:0;
  transition:all .4s var(--ease-expo);
}
.topbar__cart:hover{background:rgba(240,177,0,.12);border-color:var(--pri);color:var(--pri)}
.topbar__cart-count{
  position:absolute;
  top:-4px;
  right:-4px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  background:linear-gradient(135deg,var(--pri),var(--sec));
  color:#fff;
  font-size:10px;
  font-weight:700;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

/* ========== LAYOUT ========== */
.educare-checkout-widget-root.educare-checkout-pixel{
  width:100%;
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
  --page-max:1300px;
}

.main,
.educare-checkout-widget-root .educare-checkout-notices-wrap{
  width:100%;
  max-width:var(--page-max);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

/* ========== STEPPER ========== */
/* Faixa branca em full-bleed (largura do viewport); conteúdo alinhado a --page-max */
body.educare-checkout-pixel .stepper{
  background:var(--white);
  padding:clamp(72px,12vh,100px) 0 clamp(24px,4vh,30px);
  border-bottom:1px solid var(--brd);
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  box-sizing:border-box;
}
.stepper__container{
  max-width:var(--page-max,1300px);
  width:100%;
  margin:0 auto;
  padding:0 clamp(16px,4vw,40px);
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
}
.stepper__step{display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .4s}
.stepper__num{width:36px;height:36px;border-radius:50%;border:2px solid var(--brd);display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-size:13px;font-weight:700;color:var(--meta);transition:all .4s;flex-shrink:0}
.stepper__text{font-size:13px;font-weight:500;color:var(--meta);transition:all .3s;white-space:nowrap}
.stepper__line{flex:1;height:2px;background:var(--brd);margin:0 20px;min-width:40px;position:relative;overflow:hidden}
.stepper__line::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--pri),var(--sec));transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-expo)}
.stepper__step.active .stepper__num{background:linear-gradient(135deg,var(--pri),var(--sec));border-color:transparent;color:#fff;box-shadow:0 4px 16px rgba(240,177,0,.3)}
.stepper__step.active .stepper__text{color:var(--title);font-weight:600}
.stepper__step.done .stepper__num{background:var(--green);border-color:transparent;color:#fff}
.stepper__step.done .stepper__text{color:var(--green)}
.stepper__line.done::after{transform:scaleX(1)}

/* ========== MAIN ========== */
.main{padding:clamp(30px,4vh,50px) var(--side);display:grid;grid-template-columns:1fr 420px;gap:clamp(30px,4vw,60px);align-items:start}
.main--full{grid-template-columns:1fr}
.panel{display:none}
.panel.active{display:block}

/* ========== LOGIN ========== */
.login-panel{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--brd);padding:clamp(30px,4vh,48px);position:relative;overflow:hidden;margin-bottom:20px}
.login-panel__mesh{position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(240,177,0,.06),transparent 70%);border-radius:50%;pointer-events:none}
.login-panel__header{margin-bottom:28px;position:relative}
.login-panel__icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--pri),var(--sec));display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;margin-bottom:16px;box-shadow:0 6px 24px rgba(240,177,0,.25)}
.login-panel__title{font-family:var(--fh);font-size:clamp(1.4rem,2.5vw,1.8rem);font-weight:600;color:var(--title);margin-bottom:6px}
.login-panel__desc{font-size:14px;font-weight:500;color:var(--txt);line-height:1.6}
.login-tabs{display:flex;border-bottom:2px solid var(--brd);margin-bottom:28px}
.login-tab{flex:1;padding:14px;text-align:center;font-size:14px;font-weight:500;color:var(--meta);cursor:pointer;transition:all .3s;position:relative;border:none;background:none;font-family:var(--fb)}
.login-tab::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--pri),var(--sec));transform:scaleX(0);transition:transform .4s var(--ease-expo)}
.login-tab.active{color:var(--title);font-weight:600}
.login-tab.active::after{transform:scaleX(1)}
.login-tab:hover{color:var(--pri)}
.login-form{display:none}
.login-form.active{display:block}

.logged-in-bar{display:none;align-items:center;gap:14px;padding:16px 20px;background:rgba(39,174,96,.06);border:1px solid rgba(39,174,96,.15);border-radius:var(--r-md);margin-bottom:24px}
.logged-in-bar.show{display:flex}
.logged-in-bar__avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--pri),var(--sec));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:700;flex-shrink:0}
.logged-in-bar__info{flex:1}
.logged-in-bar__name{font-size:14px;font-weight:600;color:var(--title)}
.logged-in-bar__email{font-size:12px;color:var(--meta)}
.logged-in-bar__check{color:var(--green);font-size:18px}

/* ========== FORMS ========== */
.form-group{margin-bottom:20px}
.form-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--title);margin-bottom:8px}
.form-label i{color:var(--pri);font-size:11px}
.form-label .req{color:var(--acc);font-weight:700}
.form-input{width:100%;padding:14px 18px;font-family:var(--fb);font-size:14px;font-weight:500;color:var(--title);background:var(--bgc);border:1.5px solid var(--brd);border-radius:var(--r-md);outline:none;transition:all .4s}
.form-input::placeholder{color:var(--meta)}
.form-input:focus{border-color:var(--pri);background:var(--white);box-shadow:0 0 0 3px rgba(240,177,0,.1)}
.form-input.is-invalid{border-color:var(--red)}

/* WooCommerce — mostrar/ocultar senha */
.woocommerce .password-input,
.educare-shop-account .password-input,
.educare-myaccount-form .password-input {
  display: block;
  position: relative;
  width: 100%;
}
.woocommerce .password-input input[type="password"],
.woocommerce .password-input input[type="text"],
.educare-shop-account .password-input .form-input,
.educare-shop-account .password-input .woocommerce-Input,
.educare-shop-account .password-input .input-text,
.educare-myaccount-form .password-input .form-input {
  width: 100%;
  padding-right: 48px;
}
.woocommerce .password-input input::-ms-reveal,
.educare-shop-account .password-input input::-ms-reveal {
  display: none;
}
.woocommerce .show-password-input,
.educare-shop-account .show-password-input,
.educare-myaccount-form .show-password-input {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: var(--r-md, 12px);
  background: transparent;
  color: var(--meta, #9a968b);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: color 0.25s, background 0.25s;
  -webkit-appearance: none;
  appearance: none;
  font-size: 0;
  line-height: 1;
  z-index: 2;
}
.woocommerce .show-password-input::before,
.educare-shop-account .show-password-input::before,
.educare-myaccount-form .show-password-input::before {
  content: '\f06e';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: 15px;
  line-height: 1;
  display: block;
  color: inherit;
  background: none !important;
  background-image: none !important;
  width: auto;
  height: auto;
}
.woocommerce .show-password-input.display-password::before,
.educare-shop-account .show-password-input.display-password::before,
.educare-myaccount-form .show-password-input.display-password::before {
  content: '\f070';
}
.woocommerce .show-password-input:hover,
.educare-shop-account .show-password-input:hover,
.educare-myaccount-form .show-password-input:hover {
  color: var(--pri, #f0b100);
  background: rgba(240, 177, 0, 0.1);
}
.woocommerce .show-password-input:focus-visible,
.educare-shop-account .show-password-input:focus-visible,
.educare-myaccount-form .show-password-input:focus-visible {
  outline: 2px solid var(--pri, #f0b100);
  outline-offset: 2px;
}

.form-hint{font-size:11px;font-weight:500;color:var(--meta);margin-top:6px;display:flex;align-items:center;gap:4px}
.form-hint i{font-size:9px;color:var(--pri)}
.form-hint a{font-size:11px;color:var(--pri)}
.form-hint--lost-password{margin-top:10px;justify-content:flex-end}
.login-panel .login-panel__lost-password {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--acc);
  text-decoration: none;
  padding: 8px 12px;
  border-radius: var(--r-md);
  border: 1.5px solid rgba(236, 103, 48, 0.45);
  background: linear-gradient(180deg, rgba(236, 103, 48, 0.12), rgba(236, 103, 48, 0.04));
  box-shadow: 0 2px 10px rgba(236, 103, 48, 0.12);
  transition: color 0.25s, border-color 0.25s, background 0.25s, box-shadow 0.25s;
}
.login-panel .login-panel__lost-password:hover {
  color: var(--title);
  border-color: var(--pri);
  background: rgba(240, 177, 0, 0.1);
  box-shadow: 0 4px 14px rgba(240, 177, 0, 0.2);
}

/* Login social (Google / Apple) no checkout */
.educare-social-login{margin-top:18px;padding-top:18px;border-top:1px solid var(--brd)}
.educare-social-login__label{
  text-align:center;
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--meta);
  margin-bottom:12px
}
.educare-social-login__buttons{display:flex;flex-direction:column;gap:10px}
.educare-social-login__btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  padding:12px 16px;
  border-radius:var(--r-md);
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  border:1.5px solid var(--brd);
  transition:transform .2s,box-shadow .25s,border-color .25s,background .25s
}
.educare-social-login__btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.08)}
.educare-social-login__btn--google{
  background:#fff;
  color:#3c4043;
  border-color:#dadce0
}
.educare-social-login__btn--google:hover{border-color:#4285f4;background:#f8f9ff}
.educare-social-login__btn--google .fab{color:#4285f4;font-size:18px}
.educare-social-login__btn--apple{
  background:#000;
  color:#fff;
  border-color:#000
}
.educare-social-login__btn--apple:hover{background:#1c1c1e;border-color:#1c1c1e}
.educare-social-login__btn--apple .fab{font-size:20px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239a968b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;cursor:pointer}
textarea.form-input{resize:vertical;min-height:80px}

/* ========== BUTTONS ========== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--fb);font-size:15px;font-weight:600;padding:16px 36px;border-radius:100px;border:none;cursor:pointer;transition:all .4s var(--ease-expo);letter-spacing:.03em;position:relative;overflow:hidden;text-decoration:none}
.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s}
.btn:hover::before{left:100%}
.btn--pri{background:linear-gradient(135deg,var(--pri),var(--sec));color:#fff}
.btn--pri:hover{box-shadow:0 0 50px var(--gold-glow);transform:translateY(-3px)}
.btn--ghost{background:transparent;border:1.5px solid var(--brd);color:var(--txt)}
.btn--ghost:hover{border-color:var(--pri);color:var(--pri);background:rgba(240,177,0,.04)}
.btn--full{width:100%}
.btn--green{background:linear-gradient(135deg,var(--green),#2ecc71);color:#fff}
.btn--green:hover{box-shadow:0 0 50px var(--green-glow);transform:translateY(-3px)}
.btn--sm{padding:12px 24px;font-size:13px}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}
.panel-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:nowrap;margin-top:24px}
.panel-actions--compact{margin-top:20px}
.panel-actions .btn{flex:1;min-width:0;max-width:none}
.panel-actions .btn--full{width:auto}
.or-divider{display:flex;align-items:center;gap:16px;margin:24px 0}
.or-divider__line{flex:1;height:1px;background:var(--brd)}
.or-divider__text{font-size:12px;font-weight:500;color:var(--meta);text-transform:uppercase;letter-spacing:.1em}

/* ========== SECTIONS ========== */
.ck-section{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--brd);padding:clamp(24px,3vh,36px);margin-bottom:20px}
.ck-section__header{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.ck-section__icon{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--pri),var(--sec));display:flex;align-items:center;justify-content:center;font-size:16px;color:#fff;flex-shrink:0}
.ck-section__title{font-family:var(--fh);font-size:16px;font-weight:600;color:var(--title)}
.ck-section__subtitle{font-size:12px;font-weight:500;color:var(--meta)}

/* ========== PAYMENT ========== */
.pay-methods{display:flex;flex-direction:column;gap:12px}
.pay-method{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:var(--r-md);border:1.5px solid var(--brd);cursor:pointer;transition:all .4s var(--ease-expo);background:transparent}
.pay-method:hover{border-color:var(--pri);background:rgba(240,177,0,.02)}
.pay-method.active{border-color:var(--pri);background:rgba(240,177,0,.04);box-shadow:0 4px 16px rgba(240,177,0,.1)}
.pay-method__radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--brd);display:flex;align-items:center;justify-content:center;transition:all .3s;flex-shrink:0}
.pay-method__radio::after{content:'';width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--pri),var(--sec));transform:scale(0);transition:transform .3s var(--ease-expo)}
.pay-method.active .pay-method__radio{border-color:var(--pri)}
.pay-method.active .pay-method__radio::after{transform:scale(1)}
.pay-method__icon{font-size:20px;color:var(--pri);width:28px;text-align:center}
.pay-method__text{flex:1}
.pay-method__name{font-size:14px;font-weight:600;color:var(--title)}
.pay-method__desc{font-size:12px;color:var(--meta)}
.pay-method__badges{display:flex;gap:4px;flex-wrap:wrap}
.pay-method__badge{padding:3px 8px;border-radius:4px;font-size:10px;font-weight:600;background:var(--bgc);color:var(--meta);border:1px solid var(--brd)}
.pay-method__badge--pix{background:rgba(39,174,96,.08);color:var(--green);border-color:rgba(39,174,96,.2)}
.pay-details{display:none;margin-top:16px;padding:20px;background:var(--bgc);border-radius:var(--r-md);border:1px solid var(--brd)}
.pay-details.active{display:block}
.pay-details__box{text-align:center;padding:20px}
.pay-details__box p{font-size:14px;color:var(--txt);margin-bottom:8px}
.pay-details__box p:last-child{margin-bottom:0}
.pay-details__icon{font-size:48px;color:var(--pri);margin-bottom:12px;display:block}
.pay-details__note{font-size:12px;color:var(--green);font-weight:600}

/* ========== CART ========== */
.cart-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--brd)}
.cart-item:last-child{border-bottom:none}
.cart-item__img{width:72px;height:72px;border-radius:var(--r-md);overflow:hidden;background:linear-gradient(145deg,#f7f5f0,#eee9df);flex-shrink:0}
.cart-item__img img{width:100%;height:100%;object-fit:contain;padding:6px;border-radius:35px}
.cart-item__info{flex:1;min-width:0}
.cart-item__name{font-family:var(--fh);font-size:14px;font-weight:600;color:var(--title);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-item__meta{font-size:11px;color:var(--meta);margin-bottom:2px}
.cart-item__aluno{font-size:11px;color:var(--sec);font-weight:500}
.cart-item__aluno i{margin-right:4px;font-size:10px}
.cart-item__actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px;gap:8px;flex-wrap:wrap}
.cart-item__qty{display:flex;align-items:center;border:1px solid var(--brd);border-radius:var(--r-sm);overflow:hidden}
.cart-item__qty-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;font-size:11px;color:var(--txt);cursor:pointer;transition:all .3s}
.cart-item__qty-btn:hover{background:rgba(240,177,0,.06);color:var(--pri)}
.cart-item__qty-val{width:32px;text-align:center;font-size:13px;font-weight:600;color:var(--title);border:none;outline:none;background:transparent;border-left:1px solid var(--brd);border-right:1px solid var(--brd);-moz-appearance:textfield}
.cart-item__qty-val::-webkit-outer-spin-button,
.cart-item__qty-val::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cart-item__price{font-family:var(--fh);font-size:15px;font-weight:700;color:var(--pri);white-space:nowrap}
.cart-item__remove{background:none;border:none;color:var(--meta);font-size:12px;cursor:pointer;transition:color .3s;padding:4px}
.cart-item__remove:hover{color:var(--red)}
.cart-empty{text-align:center;padding:32px 16px;color:var(--meta);font-size:14px;font-weight:500}

/* ========== SUMMARY ========== */
.sidebar{position:sticky;top:120px}
.summary{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--brd);padding:clamp(24px,3vh,36px)}
.summary__title{font-family:var(--fh);font-size:18px;font-weight:600;color:var(--title);margin-bottom:20px;display:flex;align-items:center;gap:10px}
.summary__title i{color:var(--pri)}
.summary__coupon{display:flex;gap:8px;margin:16px 0}
.summary__coupon-input{flex:1;min-width:0;padding:12px 14px;font-family:var(--fb);font-size:13px;font-weight:500;border:1.5px solid var(--brd);border-radius:var(--r-md);outline:none;transition:all .3s;background:var(--bgc)}
.summary__coupon-input:focus{border-color:var(--pri);background:var(--white)}
.summary__coupon-input.is-valid{border-color:var(--green)}
.summary__coupon-input.is-invalid{border-color:var(--red)}
.summary__coupon-btn{padding:12px 20px;background:var(--dk);color:#fff;font-family:var(--fb);font-size:12px;font-weight:600;border:none;border-radius:var(--r-md);cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.summary__coupon-btn:hover{background:var(--pri)}
.summary__coupon-btn.is-applied{background:var(--green);cursor:default}
.summary__totals{border-top:1px solid var(--brd);padding-top:16px;margin-top:16px}
.summary__row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;gap:12px}
.summary__row-label{font-size:14px;font-weight:500;color:var(--txt)}
.summary__row-value{font-size:14px;font-weight:500;color:var(--title);white-space:nowrap}
.summary__row--total{padding:12px 0;margin-top:8px;border-top:2px solid var(--brd)}
.summary__row--total .summary__row-label{font-size:16px;font-weight:700;color:var(--title)}
.summary__row--total .summary__row-value{font-family:var(--fh);font-size:22px;font-weight:900;background:linear-gradient(135deg,var(--pri),var(--sec));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.summary__row--discount .summary__row-value{color:var(--green);font-weight:600}
.summary__row--frete .summary__row-value{color:var(--green);font-weight:600}
.summary__secure{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding:14px;border-radius:var(--r-md);background:rgba(39,174,96,.04);border:1px solid rgba(39,174,96,.1)}
.summary__secure i{color:var(--green);font-size:14px}
.summary__secure span{font-size:12px;font-weight:500;color:var(--green)}

/* ========== SUCCESS ========== */
.success{text-align:center;padding:clamp(60px,10vh,100px) 20px}
.success__check{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--green),#2ecc71);display:inline-flex;align-items:center;justify-content:center;font-size:36px;color:#fff;margin-bottom:24px;box-shadow:0 8px 30px var(--green-glow);animation:check-pop .6s var(--ease-expo)}
.success__title{font-family:var(--fh);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;color:var(--title);margin-bottom:8px}
.success__desc{font-size:15px;color:var(--txt);line-height:1.7;max-width:500px;margin:0 auto 28px}
.success__order{display:inline-block;font-family:var(--fh);font-size:18px;font-weight:700;color:var(--pri);background:rgba(240,177,0,.08);padding:8px 24px;border-radius:100px;margin-bottom:28px}

/* ========== RESPONSIVE ========== */
@media(max-width:1100px){
  .main{grid-template-columns:1fr}
  .sidebar{position:relative;top:auto}
}
@media(max-width:900px){
  :root{--side:clamp(20px,5vw,32px)}
  .form-row{grid-template-columns:1fr}
  .stepper__text{display:none}
}
@media(max-width:760px){
  .panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .panel-actions .btn{width:100%;padding:12px 10px;font-size:12px}
}
@media(max-width:480px){
  .cart-item{flex-direction:column;gap:10px}
  .cart-item__img{width:100%;height:120px}
  .cart-item__actions{flex-direction:column;align-items:flex-start}
}
@media(min-width:901px){
  :root{--side:0}
  .stepper__container,
  .main{max-width:var(--page-max);padding-left:0;padding-right:0}
  body.educare-checkout-pixel .stepper{padding:100px 0 30px}
  .main{padding-left:0;padding-right:0}
}

body.educare-checkout-pixel .educare-checkout-shortcode-wrap {
  width: 100%;
  max-width: none;
}

/* ========== WooCommerce bridge ========== */
.educare-checkout-pixel .educare-shop-page-inner {
  max-width: none;
  padding: 0;
}

.educare-checkout-pixel .woocommerce-notices-wrapper {
  max-width: var(--page-max);
  margin: 88px auto 0;
  padding: 0 var(--side, 24px);
}

.educare-checkout-form .woocommerce-billing-fields h3,
.educare-checkout-form .woocommerce-shipping-fields h3,
.educare-checkout-form #order_review_heading {
  display: none;
}

/* Entrega presencial (sem frete postal) */
.educare-delivery-fieldset {
  border: 0;
  margin: 0 0 20px;
  padding: 0;
}
.educare-delivery-fieldset__legend {
  font-family: var(--fb);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--title);
  margin-bottom: 12px;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.educare-delivery-fieldset__legend i {
  color: var(--pri);
  font-size: 14px;
  text-transform: none;
  letter-spacing: normal;
}
.educare-delivery-options {
  display: grid;
  gap: 10px;
}
.educare-delivery-option {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 14px 16px;
  border: 1.5px solid var(--brd);
  border-radius: var(--r-md);
  background: var(--bgc);
  cursor: pointer;
  transition: border-color 0.25s, background 0.25s, box-shadow 0.25s;
}
.educare-delivery-option:hover {
  border-color: rgba(240, 177, 0, 0.45);
}
.educare-delivery-option.is-selected {
  border-color: var(--pri);
  background: rgba(240, 177, 0, 0.06);
  box-shadow: 0 0 0 1px rgba(240, 177, 0, 0.15);
}
.educare-delivery-option input[type='radio'] {
  margin-top: 4px;
  accent-color: var(--pri);
  flex-shrink: 0;
}
.educare-delivery-option__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.educare-delivery-option__title {
  font-family: var(--fh);
  font-size: 15px;
  font-weight: 600;
  color: var(--title);
}
.educare-delivery-option__desc {
  font-size: 13px;
  line-height: 1.45;
  color: var(--meta);
  font-weight: 500;
}
.educare-delivery-recipient-wrap {
  margin-bottom: 20px;
}

.educare-checkout-billing-heading {
  margin: 8px 0 20px;
  padding-top: 20px;
  border-top: 1px solid var(--brd);
}
.educare-checkout-billing-heading__title {
  font-family: var(--fh);
  font-size: 16px;
  font-weight: 700;
  color: var(--title);
  margin: 0 0 8px;
}
.educare-checkout-billing-heading__desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 500;
  color: var(--meta);
}

.educare-checkout-fields .form-row {
  margin-bottom: 20px;
}

.educare-checkout-fields label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--title);
  margin-bottom: 8px;
}

.educare-checkout-fields .woocommerce-input-wrapper {
  display: block;
  width: 100%;
}

.educare-checkout-fields .input-text,
.educare-checkout-fields select,
.educare-checkout-fields textarea {
  width: 100%;
}

/* ========== Campos WC no contexto pixel (endereço + registo) ========== */

/* Reset de campos WC que ficam escondidos pelo pixel layout */
.educare-checkout-pixel #customer_details,
.educare-checkout-pixel .woocommerce-billing-fields,
.educare-checkout-pixel .woocommerce-shipping-fields,
.educare-checkout-pixel .woocommerce-additional-fields {
  display: none !important;
}

/* Ocultar labels WC nativos — usamos form-label customizado */
.educare-checkout-form .woocommerce-billing-fields h3,
.educare-checkout-form .woocommerce-shipping-fields h3,
.educare-checkout-form #order_review_heading {
  display: none;
}

.educare-create-account--hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

/* Textarea de observações */
#addressSection textarea.form-input {
  resize: vertical;
  min-height: 80px;
}

.educare-wc-payment-wrap .woocommerce-checkout-review-order-table,
.educare-order-review .shop_table {
  display: none;
}

.educare-wc-payment-wrap ul.wc_payment_methods.pay-methods {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Sem gateways: uma linha estável, sem “card” clicável */
.educare-wc-payment-wrap li.pay-method--empty,
.educare-checkout-payment li.pay-method--empty {
  cursor: default;
  border-style: dashed;
  border-color: var(--brd);
  background: var(--bgc);
}

.educare-wc-payment-wrap li.pay-method--empty:hover,
.educare-checkout-payment li.pay-method--empty:hover {
  border-color: var(--brd);
  background: var(--bgc);
}

.educare-wc-payment-wrap li.pay-method--empty .woocommerce-info,
.educare-checkout-payment li.pay-method--empty .woocommerce-info {
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  font-size: 13px;
  line-height: 1.45;
  color: var(--meta);
}

.educare-wc-payment-wrap li.pay-method--empty .woocommerce-info::before,
.educare-checkout-payment li.pay-method--empty .woocommerce-info::before {
  display: none;
}

.educare-wc-payment-wrap li.pay-method {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  border-radius: var(--r-md);
  border: 1.5px solid var(--brd);
  cursor: pointer;
  transition: all 0.4s var(--ease-expo);
  background: transparent;
}

.educare-wc-payment-wrap li.pay-method:hover {
  border-color: var(--pri);
  background: rgba(240, 177, 0, 0.02);
}

.educare-wc-payment-wrap li.pay-method.active,
.educare-wc-payment-wrap li.pay-method:has(input:checked) {
  border-color: var(--pri);
  background: rgba(240, 177, 0, 0.04);
  box-shadow: 0 4px 16px rgba(240, 177, 0, 0.1);
}

.pay-method input.input-radio,
.pay-method .educare-payment-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.pay-method__label {
  display: flex;
  flex: 1;
  align-items: center;
  gap: 14px;
  margin: 0;
  cursor: pointer;
  border: none;
  padding: 0;
  background: none;
  box-shadow: none;
}

.educare-wc-payment-wrap li.pay-method .payment_box.pay-details {
  flex: 0 0 100%;
  width: 100%;
}

.pay-method__icon img {
  max-height: 24px;
  width: auto;
}

.educare-place-order {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

body.educare-checkout-pixel .woocommerce-form-coupon-toggle {
  display: none !important;
}

body.educare-checkout-pixel .checkout_coupon.educare-summary-coupon,
body.educare-checkout-pixel .summary__coupon {
  display: flex !important;
  gap: 8px;
  margin: 16px 0;
}

.woocommerce-checkout .checkout_coupon .form-row-first {
  flex: 1;
  min-width: 0;
  margin: 0;
}

.woocommerce-checkout .checkout_coupon .form-row-last {
  margin: 0;
}

.woocommerce-checkout .checkout_coupon input.input-text {
  padding: 12px 14px;
  font-size: 13px;
  border: 1.5px solid var(--brd);
  border-radius: var(--r-md);
  background: var(--bgc);
}

.woocommerce-checkout .checkout_coupon button.button {
  padding: 12px 20px;
  background: var(--dk);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border: none;
  border-radius: var(--r-md);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
}

.woocommerce-checkout .checkout_coupon button.button:hover {
  background: var(--pri);
}

.educare-checkout-thankyou .woocommerce-order-overview {
  display: none;
}
