/* ==========================================================================
   JORNADA DE COMPRA — VISUAL MODERNO (carrinho, checkout, obrigado)
   2026-10-14 · tema-diogenes-base

   - Carregado por último no header da jornada (jornada-de-compra/headers/default.php),
     depois de bootstrap/woocommerce.css/style.css, por isso vence as regras antigas.
   - Tudo escopado em body.dio-jc (classe adicionada no <body> da jornada).
   - Cores: --jc-primary e --jc-header-bg vêm do ACF (Configurações do Tema).
   ========================================================================== */

body.dio-jc{
  --jc-primary:#2563eb;
  --jc-primary-600:color-mix(in srgb,var(--jc-primary) 85%,#000);
  --jc-primary-50:color-mix(in srgb,var(--jc-primary) 8%,#fff);
  --jc-primary-100:color-mix(in srgb,var(--jc-primary) 16%,#fff);
  --jc-header-bg:#fff;
  --jc-bg:#f4f5f7;
  --jc-card:#fff;
  --jc-text:#0f172a;
  --jc-muted:#64748b;
  --jc-faint:#94a3b8;
  --jc-border:#e5e7eb;
  --jc-border-strong:#cbd5e1;
  --jc-success:#16a34a;
  --jc-success-50:#f0fdf4;
  --jc-danger:#dc2626;
  --jc-danger-50:#fef2f2;
  --jc-warning:#d97706;
  --jc-radius:16px;
  --jc-radius-sm:10px;
  --jc-shadow:0 1px 2px rgba(15,23,42,.04),0 4px 16px rgba(15,23,42,.05);
  --jc-shadow-lg:0 10px 30px rgba(15,23,42,.10);
  --jc-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  background:var(--jc-bg)!important;
  color:var(--jc-text);
  font-family:var(--jc-font)!important;
  font-size:15px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
body.dio-jc *,body.dio-jc *::before,body.dio-jc *::after{box-sizing:border-box}
body.dio-jc h1,body.dio-jc h2,body.dio-jc h3,body.dio-jc h4,body.dio-jc h5,
body.dio-jc p,body.dio-jc a,body.dio-jc li,body.dio-jc label,body.dio-jc th,body.dio-jc td,
body.dio-jc input,body.dio-jc select,body.dio-jc textarea,body.dio-jc button{font-family:var(--jc-font)!important}
body.dio-jc a{color:var(--jc-primary)}
body.dio-jc a:hover{color:var(--jc-primary-600)}
body.dio-jc .jc-ico{flex-shrink:0;display:inline-block;vertical-align:middle}
body.dio-jc .jc-muted{color:var(--jc-muted)}
body.dio-jc .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}

/* ---------- Header ---------- */
body.dio-jc .jc-header{background:var(--jc-header-bg)!important;border-bottom:1px solid var(--jc-border);position:relative;z-index:20;padding:0!important}
body.dio-jc .jc-header-inner{max-width:1180px;margin:0 auto;padding:12px 20px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:72px}
body.dio-jc .jc-header-back{display:inline-flex;align-items:center;gap:6px;color:var(--jc-muted);font-size:14px;font-weight:500;text-decoration:none;justify-self:start}
body.dio-jc .jc-header-back:hover{color:var(--jc-text);text-decoration:none}
body.dio-jc .jc-header-logo{display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--jc-text)}
body.dio-jc .jc-header-logo img,body.dio-jc header#headerMain img{width:182px!important;max-width:100%;height:auto!important;max-height:none!important;object-fit:contain;display:block}
body.dio-jc .jc-header-logo strong{font-size:20px;font-weight:800}
body.dio-jc .jc-header-secure{justify-self:end;display:inline-flex;align-items:center;gap:8px;color:var(--jc-success)}
body.dio-jc .jc-header-secure span{display:flex;flex-direction:column;line-height:1.15}
body.dio-jc .jc-header-secure b{font-size:13px;color:var(--jc-text);font-weight:600}
body.dio-jc .jc-header-secure small{font-size:11.5px;color:var(--jc-muted)}

/* ---------- Footer ---------- */
body.dio-jc .jc-footer{background:var(--jc-header-bg)!important;border-top:1px solid var(--jc-border);margin-top:48px;padding:0!important}
body.dio-jc .jc-footer-inner{max-width:1180px;margin:0 auto;padding:22px 20px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
body.dio-jc .jc-footer-seals{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}
body.dio-jc .jc-footer-seals li{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--jc-muted)}
body.dio-jc .jc-footer-seals svg{color:var(--jc-success)}
body.dio-jc .jc-footer-copy{margin:0;font-size:12.5px;color:var(--jc-faint)}
body.dio-jc .jc-footer-copy a{color:var(--jc-muted)}

/* ---------- Página / etapas ---------- */
body.dio-jc .jc-page{padding:28px 0 8px}
body.dio-jc .jc-container{max-width:1180px;margin:0 auto;padding:0 20px}
body.dio-jc .jc-page-head{display:flex;flex-direction:column;gap:18px;margin-bottom:22px}
body.dio-jc .jc-title{font-size:28px!important;font-weight:800!important;letter-spacing:-.02em;margin:0!important;color:var(--jc-text)!important;line-height:1.2}
/* neutraliza larguras/floats do CSS antigo e do woocommerce-layout.css */
body.dio-jc .jc-container>.woocommerce{max-width:none!important;width:auto!important;margin:0!important;padding:0!important}
body.dio-jc .cart-collaterals,body.dio-jc .cart-collaterals .cart_totals,body.dio-jc .jc-summary.cart_totals{float:none!important;width:100%!important;margin:0!important}
body.dio-jc .woocommerce-cart-form,body.dio-jc form.checkout{width:auto!important;float:none!important;margin:0!important}
body.dio-jc .jc-section-title{font-size:20px;font-weight:700;margin:36px 0 16px}

body.dio-jc .jc-steps ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:0;counter-reset:none}
body.dio-jc .jc-steps li{display:flex;align-items:center;flex:1;min-width:0;color:var(--jc-faint);font-size:13.5px;font-weight:500}
body.dio-jc .jc-steps li:last-child{flex:0 0 auto}
body.dio-jc .jc-steps li:not(:last-child)::after{content:"";flex:1;height:2px;margin:0 12px;background:var(--jc-border);border-radius:2px}
body.dio-jc .jc-steps li.is-done:not(:last-child)::after{background:var(--jc-primary)}
body.dio-jc .jc-steps a{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
body.dio-jc .jc-steps li>span:first-child{margin-right:10px}
body.dio-jc .jc-step-dot{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;border:2px solid var(--jc-border-strong);background:#fff;color:var(--jc-faint);flex-shrink:0}
body.dio-jc .jc-steps li.is-current{color:var(--jc-text);font-weight:600}
body.dio-jc .jc-steps li.is-current .jc-step-dot{border-color:var(--jc-primary);background:var(--jc-primary);color:#fff;box-shadow:0 0 0 4px var(--jc-primary-100)}
body.dio-jc .jc-steps li.is-done{color:var(--jc-text)}
body.dio-jc .jc-steps li.is-done .jc-step-dot{border-color:var(--jc-primary);background:var(--jc-primary-50);color:var(--jc-primary)}
body.dio-jc .jc-step-label{white-space:nowrap}
body.dio-jc .jc-steps-caption{display:none;margin:10px 0 0;font-size:13px;font-weight:600;color:var(--jc-muted)}

/* ---------- Cards ---------- */
body.dio-jc .jc-card{background:var(--jc-card);border:1px solid var(--jc-border);border-radius:var(--jc-radius);box-shadow:var(--jc-shadow);margin-bottom:16px}
body.dio-jc .jc-card--pad{padding:22px 24px}
body.dio-jc .jc-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;border-bottom:1px solid var(--jc-border)}
body.dio-jc .jc-card-head h2,body.dio-jc .jc-card-title{display:flex;align-items:center;gap:10px;font-size:17px!important;font-weight:700!important;margin:0!important;color:var(--jc-text)!important;text-transform:none!important;letter-spacing:-.01em}
body.dio-jc .jc-card-title{margin-bottom:14px!important}
body.dio-jc .jc-card-head .jc-ico,body.dio-jc .jc-card-title .jc-ico{color:var(--jc-primary)}
body.dio-jc .jc-card-foot{padding:16px 24px;border-top:1px solid var(--jc-border);background:#fafbfc;border-radius:0 0 var(--jc-radius) var(--jc-radius)}
body.dio-jc .jc-link{font-size:14px;font-weight:600;text-decoration:none}

/* ---------- Botões ---------- */
body.dio-jc .jc-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;border-radius:12px!important;font-weight:600!important;font-size:15px!important;padding:12px 20px!important;line-height:1.2!important;border:1px solid transparent!important;cursor:pointer;text-decoration:none!important;transition:background .15s,box-shadow .15s,transform .05s,border-color .15s;text-transform:none!important;letter-spacing:0!important;height:auto!important;width:auto;box-shadow:none}
body.dio-jc .jc-btn:active{transform:translateY(1px)}
body.dio-jc .jc-btn--primary{background:var(--jc-primary)!important;color:#fff!important;box-shadow:0 6px 16px -6px color-mix(in srgb,var(--jc-primary) 60%,transparent)!important}
body.dio-jc .jc-btn--primary:hover{background:var(--jc-primary-600)!important;color:#fff!important}
body.dio-jc .jc-btn--ghost{background:#fff!important;color:var(--jc-text)!important;border-color:var(--jc-border-strong)!important}
body.dio-jc .jc-btn--ghost:hover{background:#f8fafc!important;border-color:var(--jc-faint)!important}
body.dio-jc .jc-btn--block{display:flex!important;width:100%!important}
body.dio-jc .jc-btn--lg{padding:15px 24px!important;font-size:16px!important}
body.dio-jc .jc-btn--xl{padding:18px 24px!important;font-size:17px!important;border-radius:14px!important}
body.dio-jc .jc-btn:focus-visible{outline:none;box-shadow:0 0 0 4px var(--jc-primary-100)!important}

/* ---------- Inputs ---------- */
body.dio-jc .jc-input,
body.dio-jc .woocommerce form .form-row input.input-text,
body.dio-jc .woocommerce form .form-row textarea,
body.dio-jc .woocommerce form .form-row select,
body.dio-jc .woocommerce-checkout .form-row input.input-text,
body.dio-jc .shipping-calculator-form input.input-text,
body.dio-jc .shipping-calculator-form select{
  width:100%;height:48px;border:1px solid var(--jc-border-strong)!important;border-radius:12px!important;background:#fff!important;
  padding:0 14px!important;font-size:15px!important;color:var(--jc-text)!important;box-shadow:none!important;transition:border-color .15s,box-shadow .15s;outline:none;margin:0
}
body.dio-jc .woocommerce form .form-row textarea{height:auto;min-height:96px;padding:12px 14px!important}
body.dio-jc .jc-input:focus,
body.dio-jc .woocommerce form .form-row input.input-text:focus,
body.dio-jc .woocommerce form .form-row textarea:focus,
body.dio-jc .woocommerce form .form-row select:focus,
body.dio-jc .shipping-calculator-form input.input-text:focus{border-color:var(--jc-primary)!important;box-shadow:0 0 0 4px var(--jc-primary-100)!important}
body.dio-jc .woocommerce form .form-row{padding:0!important;margin:0!important;width:auto!important;float:none!important}
body.dio-jc .woocommerce form .form-row label{display:block;font-size:13.5px!important;font-weight:600!important;color:var(--jc-text)!important;margin:0 0 6px!important;line-height:1.3}
body.dio-jc .woocommerce form .form-row .required{color:var(--jc-danger);text-decoration:none;border:0}
body.dio-jc .woocommerce form .form-row .optional{color:var(--jc-faint);font-weight:400}
body.dio-jc .woocommerce form .form-row.woocommerce-invalid input.input-text,
body.dio-jc .woocommerce form .form-row.woocommerce-invalid select{border-color:var(--jc-danger)!important;box-shadow:0 0 0 4px var(--jc-danger-50)!important}
body.dio-jc .woocommerce form .form-row.woocommerce-invalid label{color:var(--jc-danger)!important}
body.dio-jc .woocommerce form .form-row.woocommerce-validated input.input-text{border-color:color-mix(in srgb,var(--jc-success) 55%,#fff)!important}
body.dio-jc .select2-container .select2-selection--single{height:48px!important;border:1px solid var(--jc-border-strong)!important;border-radius:12px!important;display:flex;align-items:center}
body.dio-jc .select2-container .select2-selection--single .select2-selection__rendered{padding-left:14px!important;line-height:46px!important;color:var(--jc-text)!important}
body.dio-jc .select2-container .select2-selection--single .select2-selection__arrow{height:46px!important;right:8px!important}
body.dio-jc .select2-container--open .select2-selection--single{border-color:var(--jc-primary)!important}
body.dio-jc .select2-dropdown{border-color:var(--jc-border-strong)!important;border-radius:12px!important;overflow:hidden;box-shadow:var(--jc-shadow-lg)}
body.dio-jc .select2-results__option--highlighted[aria-selected],body.dio-jc .select2-results__option--highlighted[data-selected]{background:var(--jc-primary)!important}

/* checkbox */
body.dio-jc .jc-check,body.dio-jc .woocommerce-form__label-for-checkbox{display:flex!important;align-items:flex-start;gap:10px;font-weight:500!important;cursor:pointer}
body.dio-jc input[type=checkbox].input-checkbox,body.dio-jc .woocommerce-form__input-checkbox{width:18px;height:18px;margin:2px 0 0!important;accent-color:var(--jc-primary);flex-shrink:0}

/* ---------- Avisos do WooCommerce ---------- */
body.dio-jc .woocommerce-notices-wrapper:empty{display:none}
body.dio-jc .woocommerce-error,body.dio-jc .woocommerce-message,body.dio-jc .woocommerce-info,body.dio-jc .woocommerce-NoticeGroup .woocommerce-error{
  list-style:none!important;margin:0 0 16px!important;padding:14px 18px 14px 48px!important;border-radius:14px!important;border:1px solid!important;
  position:relative;font-size:14.5px;line-height:1.45;box-shadow:none!important;background-image:none!important
}
body.dio-jc .woocommerce-error::before,body.dio-jc .woocommerce-message::before,body.dio-jc .woocommerce-info::before{
  font-family:inherit!important;content:"!"!important;position:absolute;left:16px;top:14px;width:20px;height:20px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;line-height:1
}
body.dio-jc .woocommerce-error{background:var(--jc-danger-50)!important;border-color:#fecaca!important;color:#991b1b!important}
body.dio-jc .woocommerce-error::before{background:var(--jc-danger)}
body.dio-jc .woocommerce-error li{margin:0;padding:2px 0}
body.dio-jc .woocommerce-message{background:var(--jc-success-50)!important;border-color:#bbf7d0!important;color:#166534!important;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
body.dio-jc .woocommerce-message::before{content:"✓"!important;background:var(--jc-success)}
body.dio-jc .woocommerce-info{background:var(--jc-primary-50)!important;border-color:var(--jc-primary-100)!important;color:var(--jc-text)!important}
body.dio-jc .woocommerce-info::before{content:"i"!important;background:var(--jc-primary)}
body.dio-jc .woocommerce-message .button,body.dio-jc .woocommerce-info .button{order:2;float:none!important;background:#fff!important;color:var(--jc-text)!important;border:1px solid var(--jc-border-strong)!important;border-radius:10px!important;padding:8px 14px!important;font-weight:600!important;font-size:13px!important}

/* overlay de carregamento do Woo mais suave */
body.dio-jc .blockUI.blockOverlay{background:rgba(255,255,255,.65)!important;border-radius:var(--jc-radius)}

/* ==========================================================================
   CARRINHO
   ========================================================================== */
body.dio-jc .jc-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
body.dio-jc .jc-cart-side{position:sticky;top:20px}
body.dio-jc .jc-items{list-style:none!important;margin:0!important;padding:0!important;border:0!important;width:100%;border-radius:0!important}
body.dio-jc .jc-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto 120px 40px;grid-template-areas:"thumb info qty sub rm";gap:18px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--jc-border)}
body.dio-jc .jc-item:last-child{border-bottom:0}
body.dio-jc .jc-item-thumb{grid-area:thumb;width:96px;height:96px;border-radius:12px;overflow:hidden;background:#f8fafc;border:1px solid var(--jc-border)}
body.dio-jc .jc-item-thumb a{display:block;width:100%;height:100%}
body.dio-jc .jc-item-thumb img{width:100%!important;height:100%!important;object-fit:contain;display:block;margin:0!important;max-width:none!important}
body.dio-jc .jc-item-info{grid-area:info;min-width:0;display:flex;flex-direction:column;gap:6px}
body.dio-jc .jc-item-name,body.dio-jc .jc-item-name a{font-size:15px;font-weight:600;color:var(--jc-text)!important;text-decoration:none;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.dio-jc .jc-item-name a:hover{color:var(--jc-primary)!important}
body.dio-jc .jc-item-info dl.variation{margin:0;font-size:13px;color:var(--jc-muted);display:flex;flex-wrap:wrap;gap:2px 8px}
body.dio-jc .jc-item-info dl.variation dt,body.dio-jc .jc-item-info dl.variation dd{margin:0;float:none;font-weight:400}
body.dio-jc .jc-item-info dl.variation dd p{margin:0}
body.dio-jc .jc-item-unit{font-size:13.5px;color:var(--jc-muted)}
body.dio-jc .jc-item-unit small{font-size:12px}
body.dio-jc .jc-item-qty{grid-area:qty}
body.dio-jc .jc-item-subtotal{grid-area:sub;text-align:right;font-size:17px;font-weight:700;color:var(--jc-text)}
body.dio-jc .jc-item-remove{grid-area:rm;display:flex;justify-content:flex-end}
body.dio-jc .jc-item-remove a.remove{width:38px!important;height:38px!important;border-radius:10px!important;display:inline-flex!important;align-items:center;justify-content:center;color:var(--jc-faint)!important;background:transparent!important;font-size:0!important;text-decoration:none}
body.dio-jc .jc-item-remove a.remove:hover{background:var(--jc-danger-50)!important;color:var(--jc-danger)!important}
body.dio-jc .backorder_notification{font-size:12.5px;color:var(--jc-warning);margin:0}

/* quantidade com botões +/− (os botões são criados pelo jornada-moderna.js) */
body.dio-jc .quantity.jc-qty{display:inline-flex!important;align-items:center;border:1px solid var(--jc-border-strong);border-radius:12px;overflow:hidden;background:#fff;height:44px;margin:0!important;float:none!important}
body.dio-jc .quantity.jc-qty input.qty{width:46px!important;height:42px!important;border:0!important;text-align:center;font-size:15px!important;font-weight:600;padding:0!important;background:transparent!important;-moz-appearance:textfield;box-shadow:none!important;margin:0!important}
body.dio-jc .quantity.jc-qty input.qty::-webkit-outer-spin-button,body.dio-jc .quantity.jc-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body.dio-jc .jc-qty-btn{width:40px;height:42px;border:0;background:transparent;color:var(--jc-text);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
body.dio-jc .jc-qty-btn:hover{background:#f1f5f9}
body.dio-jc .jc-qty-btn:disabled{color:var(--jc-faint);cursor:not-allowed}
body.dio-jc .jc-qty-single{font-weight:600;color:var(--jc-muted)}

/* ações do carrinho (cupom) */
body.dio-jc .jc-cart-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
body.dio-jc .jc-coupon{display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex:1;float:none!important;padding:0!important}
body.dio-jc .jc-coupon-label{display:inline-flex!important;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--jc-text);margin:0!important;white-space:nowrap}
body.dio-jc .jc-coupon-label .jc-ico{color:var(--jc-primary)}
body.dio-jc .jc-coupon-field{display:flex;gap:8px;flex:1;min-width:240px;max-width:420px}
body.dio-jc .jc-coupon-field .jc-input{height:44px;width:auto!important;flex:1;min-width:0;text-transform:uppercase;letter-spacing:.04em}
body.dio-jc .jc-coupon-field .jc-input::placeholder{text-transform:none;letter-spacing:0}
body.dio-jc .jc-coupon-field .jc-btn{padding:10px 18px!important}
body.dio-jc .jc-update-cart{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);border:0;padding:0;margin:-1px}
body.dio-jc .jc-link-back{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;text-decoration:none;margin-top:4px}

/* resumo (carrinho e checkout) */
body.dio-jc .jc-summary{overflow:hidden}
body.dio-jc .jc-summary .jc-card-head{padding:18px 22px}
body.dio-jc table.jc-totals,body.dio-jc table.jc-review{width:100%;border:0!important;border-collapse:collapse!important;margin:0!important;border-radius:0!important;background:transparent!important}
body.dio-jc table.jc-totals tr,body.dio-jc table.jc-review tr{display:table-row!important;background:transparent!important}
body.dio-jc table.jc-totals th,body.dio-jc table.jc-totals td,
body.dio-jc table.jc-review tfoot th,body.dio-jc table.jc-review tfoot td{border:0!important;padding:8px 22px!important;font-size:14.5px;font-weight:500;color:var(--jc-muted);background:transparent!important;vertical-align:top;display:table-cell!important;text-align:left}
body.dio-jc table.jc-totals td,body.dio-jc table.jc-review tfoot td{text-align:right!important;color:var(--jc-text);font-weight:600}
body.dio-jc table.jc-totals td::before,body.dio-jc table.jc-review td::before{display:none!important}
body.dio-jc table.jc-totals tr:first-child th,body.dio-jc table.jc-totals tr:first-child td{padding-top:18px!important}
body.dio-jc table.jc-totals .cart-discount td,body.dio-jc table.jc-review .cart-discount td{color:var(--jc-success)}
body.dio-jc .woocommerce-remove-coupon{font-size:12px;font-weight:500;margin-left:6px}
body.dio-jc table.jc-totals tr.order-total th,body.dio-jc table.jc-totals tr.order-total td,
body.dio-jc table.jc-review tr.order-total th,body.dio-jc table.jc-review tr.order-total td{border-top:1px solid var(--jc-border)!important;padding-top:16px!important;padding-bottom:18px!important;font-size:18px!important;color:var(--jc-text)!important;font-weight:800!important}
body.dio-jc tr.order-total td strong{font-weight:800}
body.dio-jc tr.order-total small.includes_tax{display:block;font-size:12px;font-weight:400;color:var(--jc-muted)}
body.dio-jc .wc-proceed-to-checkout{padding:4px 22px 6px!important}
body.dio-jc .wc-proceed-to-checkout a.checkout-button{margin:0!important}

/* frete */
body.dio-jc tr.woocommerce-shipping-totals th{width:1%;white-space:nowrap}
body.dio-jc tr.woocommerce-shipping-totals td{font-weight:500!important}
body.dio-jc ul#shipping_method{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:8px;text-align:left}
body.dio-jc ul#shipping_method li{margin:0!important;padding:10px 12px!important;border:1px solid var(--jc-border);border-radius:10px;display:flex;align-items:center;gap:8px;font-size:13.5px;text-indent:0!important}
body.dio-jc ul#shipping_method li input{margin:0!important;accent-color:var(--jc-primary)}
body.dio-jc ul#shipping_method li label{margin:0!important;font-weight:500;color:var(--jc-text);display:flex;justify-content:space-between;gap:8px;flex:1}
body.dio-jc ul#shipping_method li:has(input:checked){border-color:var(--jc-primary);background:var(--jc-primary-50)}
body.dio-jc .woocommerce-shipping-destination,body.dio-jc .woocommerce-shipping-contents{font-size:12.5px;color:var(--jc-muted);margin:8px 0 0!important;text-align:left;font-weight:400}
body.dio-jc .shipping-calculator-button{font-size:13px;font-weight:600;display:inline-block;margin-top:6px}
body.dio-jc .shipping-calculator-button::after{display:none!important}
body.dio-jc .shipping-calculator-form{margin-top:10px!important;text-align:left;display:grid;gap:8px}
body.dio-jc .shipping-calculator-form p{margin:0!important;padding:0!important}
body.dio-jc .shipping-calculator-form button{width:100%;background:var(--jc-text)!important;color:#fff!important;border-radius:10px!important;padding:11px!important;font-weight:600!important;border:0!important}

/* selos de confiança */
body.dio-jc .jc-trust{list-style:none;margin:0;padding:16px 22px 20px;display:grid;gap:8px;border-top:1px dashed var(--jc-border)}
body.dio-jc .jc-trust li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--jc-muted)}
body.dio-jc .jc-trust svg{color:var(--jc-success)}

/* carrinho vazio */
body.dio-jc .jc-empty{text-align:center;padding:48px 24px 8px;max-width:640px;margin:0 auto 16px;display:flex;flex-direction:column;align-items:center;gap:10px}
body.dio-jc .jc-empty-art{color:var(--jc-primary);margin-bottom:6px}
body.dio-jc .jc-empty h2{font-size:24px!important;font-weight:800!important;margin:0!important;color:var(--jc-text)!important}
body.dio-jc .jc-empty p{margin:0;font-size:15px;max-width:420px}
body.dio-jc .jc-empty .return-to-shop{margin:14px 0 6px!important}
body.dio-jc .jc-empty .jc-trust{border-top:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;padding:18px 0 24px}

/* sugestões / cross-sells */
body.dio-jc .cross-sells{margin-top:32px;float:none!important;width:auto!important}
body.dio-jc .cross-sells>h2{font-size:20px!important;font-weight:700!important;margin:0 0 16px!important;color:var(--jc-text)!important}

/* ==========================================================================
   CHECKOUT
   ========================================================================== */
body.dio-jc .jc-toggle-bar{display:flex;align-items:center;gap:10px;background:#fff;border:1px dashed var(--jc-border-strong);border-radius:14px;padding:13px 18px;margin-bottom:12px;font-size:14.5px;color:var(--jc-text)}
body.dio-jc .jc-toggle-bar .jc-ico{color:var(--jc-primary)}
body.dio-jc .jc-toggle-bar a{font-weight:600}
body.dio-jc .jc-coupon-box{margin-bottom:16px!important}
body.dio-jc .jc-coupon-box p{margin:0 0 10px}
body.dio-jc .jc-coupon-box .jc-coupon-field{max-width:none}
body.dio-jc form.woocommerce-form-login{background:#fff;border:1px solid var(--jc-border)!important;border-radius:var(--jc-radius)!important;padding:22px 24px!important;margin:0 0 16px!important;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
body.dio-jc form.woocommerce-form-login>p:first-child,body.dio-jc form.woocommerce-form-login .clear,body.dio-jc form.woocommerce-form-login .lost_password,body.dio-jc form.woocommerce-form-login .form-row:not(.form-row-first):not(.form-row-last){grid-column:1/-1}
body.dio-jc form.woocommerce-form-login button{background:var(--jc-primary)!important;color:#fff!important;border-radius:12px!important;padding:12px 22px!important;font-weight:600!important;border:0!important}

body.dio-jc .jc-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}
body.dio-jc .jc-checkout-side{position:sticky;top:20px}
body.dio-jc #customer_details{display:block;margin:0!important;width:auto!important;float:none!important}
body.dio-jc #customer_details::before,body.dio-jc #customer_details::after{display:none}
body.dio-jc .woocommerce-billing-fields>h3{display:none}

body.dio-jc .jc-step-card{overflow:visible}
body.dio-jc .jc-step-head{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--jc-border)}
body.dio-jc .jc-step-head>div{flex:1;min-width:0}
body.dio-jc .jc-step-head h2{font-size:18px!important;font-weight:700!important;margin:0!important;color:var(--jc-text)!important;text-transform:none!important;letter-spacing:-.01em}
body.dio-jc .jc-step-head p{margin:2px 0 0;font-size:13.5px}
body.dio-jc .jc-step-head>.jc-ico{color:var(--jc-faint)}
body.dio-jc .jc-step-num{width:34px;height:34px;border-radius:50%;background:var(--jc-primary);color:#fff;font-weight:800;font-size:15px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 0 4px var(--jc-primary-100)}
body.dio-jc .jc-step-body{padding:20px 24px 24px}
body.dio-jc .jc-step-body+.jc-step-body{padding-top:0}
body.dio-jc .jc-subtitle{grid-column:1/-1;margin:0;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--jc-muted)}

/* grade dos campos: 6 colunas */
body.dio-jc .jc-fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
body.dio-jc .jc-fields>.form-row{grid-column:span 6}
body.dio-jc .jc-fields>.form-row-first,body.dio-jc .jc-fields>.form-row-last{grid-column:span 3}
body.dio-jc .jc-fields>#billing_phone_field,body.dio-jc .jc-fields>#billing_cpf_field,body.dio-jc .jc-fields>#billing_cnpj_field,
body.dio-jc .jc-fields>#billing_birthdate_field,body.dio-jc .jc-fields>#billing_sex_field,body.dio-jc .jc-fields>#billing_persontype_field{grid-column:span 3}
body.dio-jc .jc-fields>#billing_postcode_field{grid-column:span 2}
body.dio-jc .jc-fields>#billing_address_1_field{grid-column:span 4}
body.dio-jc .jc-fields>#billing_number_field{grid-column:span 2}
body.dio-jc .jc-fields>#billing_address_2_field{grid-column:span 4}
body.dio-jc .jc-fields>#billing_neighborhood_field,body.dio-jc .jc-fields>#billing_city_field{grid-column:span 3}
body.dio-jc .jc-fields>#billing_state_field,body.dio-jc .jc-fields>#billing_country_field{grid-column:span 3}
body.dio-jc .jc-fields .clear{display:none}
body.dio-jc .jc-account{border-top:1px solid var(--jc-border);padding-top:18px}
body.dio-jc .woocommerce-account-fields .create-account.jc-fields{margin-top:12px}

/* pagamento */
body.dio-jc #payment.jc-payment{background:transparent!important;border-radius:0!important;padding:0!important}
body.dio-jc ul.jc-methods{list-style:none!important;margin:0 0 18px!important;padding:0!important;border:0!important;display:grid;gap:10px}
body.dio-jc li.jc-method{position:relative;border:1.5px solid var(--jc-border);border-radius:14px;margin:0!important;padding:0!important;background:#fff;transition:border-color .15s,box-shadow .15s;list-style:none!important}
body.dio-jc li.jc-method:hover{border-color:var(--jc-border-strong)}
body.dio-jc li.jc-method.is-selected,body.dio-jc li.jc-method:has(input:checked){border-color:var(--jc-primary);box-shadow:0 0 0 4px var(--jc-primary-50)}
body.dio-jc li.jc-method>input.input-radio{position:absolute;opacity:0;pointer-events:none}
body.dio-jc .jc-method-label{display:flex!important;align-items:center;gap:12px;padding:16px 18px!important;margin:0!important;cursor:pointer;font-size:15px!important;font-weight:600!important;color:var(--jc-text)!important;width:100%}
body.dio-jc .jc-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--jc-border-strong);flex-shrink:0;position:relative;transition:border-color .15s}
body.dio-jc li.jc-method.is-selected .jc-radio,body.dio-jc li.jc-method:has(input:checked) .jc-radio{border-color:var(--jc-primary)}
body.dio-jc li.jc-method.is-selected .jc-radio::after,body.dio-jc li.jc-method:has(input:checked) .jc-radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--jc-primary)}
body.dio-jc .jc-method-title{flex:1}
body.dio-jc .jc-method-icon img{max-height:24px!important;width:auto;display:inline-block;margin:0 0 0 4px!important;float:none!important}
body.dio-jc .jc-method-box,body.dio-jc #payment div.payment_box{background:#f8fafc!important;border-radius:0 0 13px 13px!important;margin:0!important;padding:16px 18px!important;font-size:14px;color:var(--jc-muted);border-top:1px solid var(--jc-border)}
body.dio-jc #payment div.payment_box::before{display:none!important}
body.dio-jc .jc-method-box p:last-child{margin-bottom:0}
body.dio-jc .jc-methods-empty{margin:0!important}
body.dio-jc .jc-place-order{padding:0!important;margin:0!important}
body.dio-jc .woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--jc-muted);margin-bottom:14px}
body.dio-jc .woocommerce-privacy-policy-text p{margin:0 0 10px}
body.dio-jc #place_order{float:none!important;margin:0!important}
body.dio-jc .jc-place-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;color:var(--jc-muted);margin:12px 0 0!important;text-align:center}
body.dio-jc .jc-place-note svg{color:var(--jc-success)}

/* resumo do checkout: itens com miniatura */
body.dio-jc .jc-summary--checkout #order_review{padding:0!important;border:0!important;background:transparent!important}
body.dio-jc table.jc-review tbody td{border:0!important;padding:14px 22px 0!important;vertical-align:middle;background:transparent!important;display:table-cell!important}
body.dio-jc table.jc-review tbody tr:last-child td{padding-bottom:14px!important}
body.dio-jc table.jc-review tbody td.product-name{width:100%}
body.dio-jc table.jc-review tbody td.product-total{text-align:right;font-weight:600;font-size:14.5px;white-space:nowrap;color:var(--jc-text)}
body.dio-jc table.jc-review tfoot tr:first-child th,body.dio-jc table.jc-review tfoot tr:first-child td{border-top:1px solid var(--jc-border)!important;padding-top:16px!important}
body.dio-jc .jc-review-prod{display:flex;align-items:center;gap:14px;min-width:0}
body.dio-jc .jc-review-thumb{display:block;position:relative;width:60px;height:60px;border-radius:12px;border:1px solid var(--jc-border);background:#f8fafc;flex-shrink:0}
body.dio-jc .jc-review-thumb img{width:100%!important;height:100%!important;object-fit:contain;border-radius:11px;display:block;margin:0!important;max-width:none!important}
body.dio-jc .jc-review-qty{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--jc-text);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
body.dio-jc .jc-review-name{flex:1;font-size:14px;font-weight:500;color:var(--jc-text);line-height:1.35;display:flex;flex-direction:column;gap:2px;min-width:0}
body.dio-jc .jc-review-name a{color:var(--jc-text);text-decoration:none}
body.dio-jc .jc-review-name dl.variation,body.dio-jc .jc-review-name .wc-item-meta{margin:0;padding:0;list-style:none;font-size:12.5px;color:var(--jc-muted)}
body.dio-jc .jc-review-name dl.variation dt,body.dio-jc .jc-review-name dl.variation dd{display:inline;margin:0;float:none;font-weight:400}
body.dio-jc .jc-review-name dl.variation dd p,body.dio-jc .jc-review-name .wc-item-meta p{display:inline;margin:0}

/* ==========================================================================
   OBRIGADO (order-received)
   ========================================================================== */
body.dio-jc .jc-thanks{max-width:880px;margin:0 auto}
body.dio-jc .jc-thanks-hero{text-align:center;padding:40px 28px 28px;position:relative;overflow:hidden}
body.dio-jc .jc-thanks-hero::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,var(--jc-success),color-mix(in srgb,var(--jc-success) 50%,var(--jc-primary)))}
body.dio-jc .jc-thanks-hero--failed::before{background:var(--jc-danger)}
body.dio-jc .jc-thanks-icon{display:inline-flex;width:84px;height:84px;border-radius:50%;background:var(--jc-success-50);color:var(--jc-success);align-items:center;justify-content:center;margin-bottom:14px}
body.dio-jc .jc-thanks-icon--failed{background:var(--jc-danger-50);color:var(--jc-danger)}
body.dio-jc .jc-check-circle{stroke:currentColor;stroke-width:3;stroke-dasharray:151;stroke-dashoffset:151;animation:jcDraw .6s ease-out forwards}
body.dio-jc .jc-check-mark{stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:36;stroke-dashoffset:36;animation:jcDraw .35s .5s ease-out forwards}
@keyframes jcDraw{to{stroke-dashoffset:0}}
body.dio-jc .jc-thanks-kicker{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--jc-success)}
body.dio-jc .jc-thanks-hero h1{font-size:30px!important;font-weight:800!important;margin:0 0 8px!important;color:var(--jc-text)!important;line-height:1.2;letter-spacing:-.02em;background:none!important;border:0!important;padding:0!important}
body.dio-jc .jc-thanks-hero h1::before{display:none!important}
body.dio-jc .jc-thanks-hero h1 span{display:block;font-size:17px;font-weight:500;color:var(--jc-muted);margin-top:6px;letter-spacing:0}
body.dio-jc .jc-thanks-hero p.jc-muted{max-width:560px;margin:0 auto 6px;background:none!important;border:0!important;padding:0!important}
body.dio-jc .jc-thanks-hero p.jc-muted::before{display:none!important}
body.dio-jc .jc-thanks-mail{display:inline-flex;align-items:center;gap:6px;font-size:14px}
body.dio-jc .jc-overview{list-style:none!important;margin:24px 0 0!important;padding:0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;border:0!important}
body.dio-jc .jc-overview li{margin:0!important;padding:14px 16px!important;border:1px solid var(--jc-border)!important;border-radius:12px;text-align:left;background:#fafbfc;float:none!important;display:flex;flex-direction:column;gap:4px;font-size:12.5px!important;text-transform:none!important;color:var(--jc-muted)}
body.dio-jc .jc-overview li span{display:flex;align-items:center;gap:6px}
body.dio-jc .jc-overview li span svg{color:var(--jc-primary)}
body.dio-jc .jc-overview li strong{font-size:16px!important;color:var(--jc-text);font-weight:700;margin:0!important;display:block}

body.dio-jc .jc-timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
body.dio-jc .jc-timeline li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-right:12px;color:var(--jc-faint)}
body.dio-jc .jc-timeline li::before{content:"";position:absolute;top:15px;left:32px;right:0;height:2px;background:var(--jc-border)}
body.dio-jc .jc-timeline li:last-child::before{display:none}
body.dio-jc .jc-timeline li.is-done::before{background:var(--jc-success)}
body.dio-jc .jc-tl-dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--jc-border-strong);background:#fff;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;color:var(--jc-faint)}
body.dio-jc .jc-timeline li.is-done .jc-tl-dot{background:var(--jc-success);border-color:var(--jc-success);color:#fff}
body.dio-jc .jc-timeline li.is-current .jc-tl-dot{border-color:var(--jc-primary);color:var(--jc-primary);box-shadow:0 0 0 4px var(--jc-primary-100)}
body.dio-jc .jc-timeline b{display:block;font-size:14px;color:var(--jc-text);font-weight:700}
body.dio-jc .jc-timeline li:not(.is-done):not(.is-current) b{color:var(--jc-muted)}
body.dio-jc .jc-timeline small{display:block;font-size:12.5px;color:var(--jc-muted);line-height:1.4;margin-top:2px}

body.dio-jc .jc-gateway{font-size:15px}
body.dio-jc .jc-gateway h2,body.dio-jc .jc-gateway h3{font-size:18px!important;font-weight:700!important;margin:0 0 10px!important;color:var(--jc-text)!important}
body.dio-jc .jc-gateway img{max-width:100%;height:auto}

body.dio-jc .jc-order-details{overflow:hidden}
body.dio-jc .jc-order-details table.jc-review tfoot th{font-weight:500}
body.dio-jc .jc-order-details table.jc-review tfoot tr.jc-total-order_total th,
body.dio-jc .jc-order-details table.jc-review tfoot tr.jc-total-order_total td{border-top:1px solid var(--jc-border)!important;padding-top:14px!important;padding-bottom:18px!important;font-size:18px!important;font-weight:800!important;color:var(--jc-text)!important}
body.dio-jc .jc-order-details table.jc-review tfoot tr:last-child th,body.dio-jc .jc-order-details table.jc-review tfoot tr:last-child td{padding-bottom:18px!important}
body.dio-jc .jc-addresses{display:grid;grid-template-columns:1fr;gap:0 16px}
body.dio-jc .jc-addresses--2{grid-template-columns:1fr 1fr}
body.dio-jc .jc-addresses address{font-style:normal;font-size:14.5px;line-height:1.6;color:var(--jc-text);border:0!important;padding:0!important}
body.dio-jc .jc-addresses address p{margin:6px 0 0;color:var(--jc-muted);padding:0!important}
body.dio-jc .jc-addresses address p::before{display:none!important}
body.dio-jc .jc-thanks-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0 0}
body.dio-jc .jc-thanks-hero .jc-thanks-actions{margin-top:18px}

/* ==========================================================================
   RESPONSIVO
   ========================================================================== */
@media (max-width:1024px){
  body.dio-jc .jc-cart{grid-template-columns:minmax(0,1fr) 340px}
  body.dio-jc .jc-checkout-grid{grid-template-columns:minmax(0,1fr) 360px}
  body.dio-jc .jc-item{grid-template-columns:80px minmax(0,1fr) auto 40px;grid-template-areas:"thumb info info rm" "thumb qty sub sub"}
  body.dio-jc .jc-item-thumb{width:80px;height:80px}
}
@media (max-width:880px){
  body.dio-jc .jc-cart,body.dio-jc .jc-checkout-grid{grid-template-columns:1fr}
  body.dio-jc .jc-cart-side,body.dio-jc .jc-checkout-side{position:static}
  body.dio-jc .jc-checkout-side{order:-1}
  body.dio-jc .jc-header-back span{display:none}
  body.dio-jc .jc-header-secure small{display:none}
  body.dio-jc .jc-timeline{grid-template-columns:1fr;gap:16px}
  body.dio-jc .jc-timeline li{flex-direction:row;align-items:flex-start;padding:0}
  body.dio-jc .jc-timeline li::before{left:15px;top:32px;bottom:-16px;right:auto;width:2px;height:auto}
  body.dio-jc .jc-addresses--2{grid-template-columns:1fr}
}
@media (max-width:600px){
  body.dio-jc{font-size:14.5px}
  body.dio-jc .jc-page{padding-top:18px}
  body.dio-jc .jc-container{padding:0 12px}
  body.dio-jc .jc-header-inner{padding:10px 14px;min-height:60px}
  body.dio-jc .jc-header-secure b{display:none}
  body.dio-jc .jc-title{font-size:23px!important}
  body.dio-jc .jc-step-label{display:none}
  body.dio-jc .jc-steps li>span:first-child,body.dio-jc .jc-steps a>span:first-child{margin-right:0}
  body.dio-jc .jc-steps-caption{display:block}
  body.dio-jc .jc-card-head,body.dio-jc .jc-step-head{padding:16px}
  body.dio-jc .jc-step-body{padding:16px 16px 20px}
  body.dio-jc .jc-card--pad{padding:18px 16px}
  body.dio-jc .jc-card-foot{padding:14px 16px}
  body.dio-jc .jc-item{padding:16px;gap:12px;grid-template-columns:72px minmax(0,1fr) 36px}
  body.dio-jc .jc-item{grid-template-areas:"thumb info rm" "thumb qty sub"}
  body.dio-jc .jc-item-thumb{width:72px;height:72px}
  body.dio-jc .jc-item-subtotal{font-size:16px}
  body.dio-jc .jc-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  body.dio-jc .jc-fields>.form-row,
  body.dio-jc .jc-fields>#billing_postcode_field,body.dio-jc .jc-fields>#billing_address_1_field,body.dio-jc .jc-fields>#billing_address_2_field{grid-column:span 2}
  body.dio-jc .jc-fields>.form-row-first,body.dio-jc .jc-fields>.form-row-last,
  body.dio-jc .jc-fields>#billing_number_field,body.dio-jc .jc-fields>#billing_neighborhood_field,body.dio-jc .jc-fields>#billing_city_field,
  body.dio-jc .jc-fields>#billing_state_field,body.dio-jc .jc-fields>#billing_country_field,body.dio-jc .jc-fields>#billing_phone_field,body.dio-jc .jc-fields>#billing_cpf_field{grid-column:span 1}
  body.dio-jc .jc-fields>#billing_postcode_field{grid-column:span 1}
  body.dio-jc table.jc-totals th,body.dio-jc table.jc-totals td,body.dio-jc table.jc-review tfoot th,body.dio-jc table.jc-review tfoot td{padding-left:16px!important;padding-right:16px!important}
  body.dio-jc table.jc-review tbody td{padding-left:16px!important;padding-right:16px!important}
  body.dio-jc .wc-proceed-to-checkout,body.dio-jc .jc-trust{padding-left:16px!important;padding-right:16px!important}
  body.dio-jc .jc-thanks-hero{padding:32px 16px 22px}
  body.dio-jc .jc-thanks-hero h1{font-size:24px!important}
  body.dio-jc form.woocommerce-form-login{grid-template-columns:1fr}
  body.dio-jc .jc-coupon-field{min-width:0;max-width:none;width:100%}
}
@media (prefers-reduced-motion:reduce){
  body.dio-jc *{animation:none!important;transition:none!important}
  body.dio-jc .jc-check-circle,body.dio-jc .jc-check-mark{stroke-dashoffset:0}
}

/* ==========================================================================
   REFORÇOS DE ESPECIFICIDADE
   O woocommerce.css antigo do tema usa regras como ".woocommerce button.button.alt{...!important}"
   e força labels do pagamento como inline. Aqui repetimos o essencial com seletores mais fortes.
   ========================================================================== */
body.dio-jc .woocommerce .button.jc-btn--primary,body.dio-jc .woocommerce a.jc-btn--primary,
body.dio-jc .woocommerce #payment #place_order,body.dio-jc .woocommerce .wc-proceed-to-checkout a.checkout-button{
  background:var(--jc-primary)!important;background-color:var(--jc-primary)!important;color:#fff!important;border:0!important;
  border-radius:14px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;
  box-shadow:0 8px 20px -8px color-mix(in srgb,var(--jc-primary) 70%,transparent)!important;width:100%!important;display:flex!important;
  align-items:center;justify-content:center;gap:8px;padding:17px 24px!important;font-size:17px!important;line-height:1.2!important
}
body.dio-jc .woocommerce .button.jc-btn--primary:hover,body.dio-jc .woocommerce #payment #place_order:hover,
body.dio-jc .woocommerce .wc-proceed-to-checkout a.checkout-button:hover{background:var(--jc-primary-600)!important;background-color:var(--jc-primary-600)!important}
body.dio-jc .woocommerce .return-to-shop .button.jc-btn--primary,body.dio-jc .woocommerce .jc-thanks-actions .jc-btn--primary{width:auto!important;display:inline-flex!important}
body.dio-jc .woocommerce .button.jc-btn--ghost{background:#fff!important;color:var(--jc-text)!important;border:1px solid var(--jc-border-strong)!important;border-radius:12px!important;font-weight:600!important}
body.dio-jc #payment ul.payment_methods li.jc-method label.jc-method-label{display:flex!important;align-items:center;gap:12px;padding:16px 18px!important;margin:0!important;width:100%}
body.dio-jc #payment ul.payment_methods li.jc-method .jc-radio{display:inline-block!important}
body.dio-jc #payment ul.payment_methods li.jc-method input.input-radio{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;margin:0!important}
body.dio-jc .jc-fields{align-items:end}
/* linha do frete (cart-shipping.php usa uma célula colspan=2) */
body.dio-jc table.jc-review tr.jc-ship>td,body.dio-jc table.jc-totals tr.jc-ship>td{text-align:left!important;font-weight:500!important}
body.dio-jc .jc-ship-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
body.dio-jc .jc-ship-label{color:var(--jc-muted);font-weight:500;white-space:nowrap}
body.dio-jc .jc-ship-body{text-align:right;color:var(--jc-text);font-size:14px;min-width:0;flex:1}
body.dio-jc .jc-ship-body ul#shipping_method{margin-top:0!important}

/* miniatura do item: o CSS antigo dá largura própria a .product-thumbnail */
body.dio-jc .jc-item>.jc-item-thumb{width:96px!important;min-width:0!important;max-width:none!important;height:96px!important;padding:0!important}
@media (max-width:1024px){body.dio-jc .jc-item>.jc-item-thumb{width:80px!important;height:80px!important}}
@media (max-width:600px){
  body.dio-jc .jc-item{grid-template-columns:72px minmax(0,1fr) auto!important;grid-template-areas:"thumb info rm" "thumb qty sub"!important;column-gap:12px;row-gap:10px}
  body.dio-jc .jc-item>.jc-item-thumb{width:72px!important;height:72px!important;align-self:start}
  body.dio-jc .jc-item-qty{justify-self:start}
  body.dio-jc .jc-item-subtotal{align-self:center;white-space:nowrap;font-size:15px}
  body.dio-jc .jc-item-remove{align-self:start}
  body.dio-jc .jc-item-remove a.remove{width:34px!important;height:34px!important}
  body.dio-jc .quantity.jc-qty{height:38px}
  body.dio-jc .quantity.jc-qty input.qty{width:34px!important;height:36px!important;font-size:14px!important}
  body.dio-jc .jc-qty-btn{width:32px;height:36px;font-size:18px}
  body.dio-jc .jc-coupon{flex-direction:column;align-items:stretch;gap:10px}
  body.dio-jc .jc-coupon-label{align-self:flex-start}
  body.dio-jc .jc-coupon-field{flex-basis:auto;width:100%}
  body.dio-jc .jc-cart-actions{padding:14px 16px}
}
/* o clearfix do Woo (ul.order_details::before/::after) viraria item vazio na grade */
body.dio-jc .jc-overview::before,body.dio-jc .jc-overview::after,body.dio-jc .jc-cart::before,body.dio-jc .jc-cart::after,
body.dio-jc .jc-checkout-grid::before,body.dio-jc .jc-checkout-grid::after,body.dio-jc .jc-fields::before,body.dio-jc .jc-fields::after{display:none!important;content:none!important}
@media (min-width:881px){body.dio-jc .jc-overview{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ==========================================================================
   MINHA CONTA — pedidos e detalhe do pedido (2026-10-16)
   myaccount/orders.php, myaccount/view-order.php e a linha do tempo dio_jc_timeline()
   (também usada no obrigado).
   ========================================================================== */
body.dio-jc .jc-timeline{grid-template-columns:repeat(var(--jc-tl-n,4),minmax(0,1fr))}
body.dio-jc .jc-tl-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:12px;background:var(--jc-danger-50);border:1px solid #fecaca;color:var(--jc-danger)}
body.dio-jc .jc-tl-alert b{display:block;color:#991b1b;font-size:15px}
body.dio-jc .jc-tl-alert small{display:block;color:#7f1d1d;font-size:13.5px;margin-top:2px}

body.dio-jc .jc-acc{max-width:980px;margin:8px auto 0;padding:0}
body.dio-jc .jc-acc-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 0 20px}
body.dio-jc .jc-acc-head p{margin:0}
body.dio-jc .jc-acc-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--jc-muted)!important;text-decoration:none!important;margin-bottom:4px}
body.dio-jc .jc-acc-back:hover{color:var(--jc-text)!important}

body.dio-jc .jc-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.2;white-space:nowrap;background:var(--jc-primary-50);color:var(--jc-primary)}
body.dio-jc .jc-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
body.dio-jc .jc-badge--lg{padding:7px 14px;font-size:13.5px}
body.dio-jc .jc-badge--ok{background:var(--jc-success-50);color:var(--jc-success)}
body.dio-jc .jc-badge--erro{background:var(--jc-danger-50);color:var(--jc-danger)}
body.dio-jc .jc-badge--aviso{background:#fffbeb;color:var(--jc-warning)}

body.dio-jc .jc-btn--sm{padding:9px 14px!important;font-size:14px!important;border-radius:10px!important}
body.dio-jc .woocommerce a.jc-btn--sm.jc-btn--primary{width:auto!important;display:inline-flex!important;padding:9px 14px!important;font-size:14px!important;border-radius:10px!important}

/* lista de pedidos */
body.dio-jc .jc-orders{display:flex;flex-direction:column;gap:14px}
body.dio-jc .jc-order{margin:0;overflow:hidden;transition:box-shadow .15s,border-color .15s}
body.dio-jc .jc-order:hover{box-shadow:var(--jc-shadow-lg);border-color:var(--jc-border-strong)}
body.dio-jc .jc-order-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--jc-border);background:#fafbfc}
body.dio-jc .jc-order-id{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
body.dio-jc .jc-order-id a{color:var(--jc-text)!important;text-decoration:none!important;font-size:15px}
body.dio-jc .jc-order-id time{font-size:13.5px}
body.dio-jc .jc-order-body{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 20px;text-decoration:none!important;color:var(--jc-text)!important}
body.dio-jc .jc-order-thumbs{display:flex}
body.dio-jc .jc-order-thumb{width:64px;height:64px;border-radius:12px;border:2px solid #fff;background:#f1f5f9;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px var(--jc-border)}
body.dio-jc .jc-order-thumb+.jc-order-thumb{margin-left:-14px}
body.dio-jc .jc-order-thumb img{width:100%!important;height:100%!important;object-fit:cover;display:block;margin:0!important}
body.dio-jc .jc-order-more{font-size:14px;font-weight:700;color:var(--jc-muted)}
body.dio-jc .jc-order-info{display:flex;flex-direction:column;gap:3px;min-width:0}
body.dio-jc .jc-order-info b{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.dio-jc .jc-order-info small,body.dio-jc .jc-order-total small{font-size:13px}
body.dio-jc .jc-order-total{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
body.dio-jc .jc-order-total b{font-size:17px;font-weight:800;white-space:nowrap}
body.dio-jc .jc-order-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--jc-border)}
body.dio-jc .jc-order-step{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500}
body.dio-jc .jc-order-actions{display:flex;gap:8px;flex-wrap:wrap}
body.dio-jc .jc-pager{display:flex;align-items:center;justify-content:center;gap:16px;margin:22px 0 0;font-size:14px}

body.dio-jc .jc-empty{text-align:center;padding:48px 24px}
body.dio-jc .jc-empty-icon{display:inline-flex;width:76px;height:76px;border-radius:50%;background:var(--jc-primary-50);color:var(--jc-primary);align-items:center;justify-content:center;margin-bottom:14px}
body.dio-jc .jc-empty h2{font-size:21px!important;font-weight:800!important;margin:0 0 6px!important;color:var(--jc-text)!important}
body.dio-jc .jc-empty p{margin:0 0 20px}
body.dio-jc .woocommerce .jc-empty a.jc-btn--primary{width:auto!important;display:inline-flex!important}

/* detalhe do pedido */
body.dio-jc .jc-order-hero{padding:24px;position:relative;overflow:hidden}
body.dio-jc .jc-order-hero::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--jc-primary),color-mix(in srgb,var(--jc-primary) 45%,var(--jc-success)))}
body.dio-jc .jc-order-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
body.dio-jc .jc-order-kicker{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--jc-primary)}
body.dio-jc .jc-order-hero .jc-overview{margin-top:20px!important}
body.dio-jc .jc-order-hero-cta{margin-top:16px}
body.dio-jc .woocommerce .jc-order-hero-cta a.jc-btn--primary{width:auto!important;display:inline-flex!important;padding:12px 20px!important;font-size:15px!important}
body.dio-jc .jc-order-notes ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
body.dio-jc .jc-order-notes li{padding:12px 14px;border:1px solid var(--jc-border);border-radius:12px;background:#fafbfc}
body.dio-jc .jc-order-notes time{display:block;font-size:12.5px;color:var(--jc-muted);margin-bottom:4px}
body.dio-jc .jc-order-notes .description p{margin:0;font-size:14.5px}
body.dio-jc .jc-card-title .jc-ico{color:var(--jc-primary)}

@media (max-width:880px){
  body.dio-jc .jc-timeline{grid-template-columns:1fr}
}
@media (max-width:600px){
  body.dio-jc .jc-order-head,body.dio-jc .jc-order-body,body.dio-jc .jc-order-foot{padding-left:16px;padding-right:16px}
  body.dio-jc .jc-order-body{grid-template-columns:auto minmax(0,1fr);gap:12px}
  body.dio-jc .jc-order-total{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;border-top:1px dashed var(--jc-border);padding-top:12px}
  body.dio-jc .jc-order-thumb{width:52px;height:52px}
  body.dio-jc .jc-order-thumb+.jc-order-thumb{margin-left:-18px}
  body.dio-jc .jc-order-foot{flex-direction:column;align-items:stretch}
  body.dio-jc .jc-order-actions .jc-btn{flex:1}
  body.dio-jc .jc-order-hero{padding:20px 16px}
  body.dio-jc .jc-order-hero .jc-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.dio-jc .jc-order-hero .jc-overview li{padding:12px!important}
  body.dio-jc .jc-order-hero .jc-overview li strong{font-size:14.5px!important}
}
/* fundo cinza da jornada nas páginas de pedidos (o template da Minha Conta usa section.white) */
body.dio-jc.woocommerce-orders section.white,body.dio-jc.woocommerce-view-order section.white{background:transparent!important;padding-top:24px}
