/* =========================
   VARS
========================= */
:root{
  /* tema */
  --cpdu-bg:#f7f7fb;
  --cpdu-card:#ffffff;
  --cpdu-ink:#13161a;
  --cpdu-ink-2:#4b5563;
  --cpdu-ink-3:#6b7280;
  --cpdu-line:#e8eaf0;
  --cpdu-brand:#374151;
  --cpdu-brand-2:#111827;
  --cpdu-accent:#0ea5e9;
  --cpdu-radius:14px;
  --cpdu-shadow:0 10px 30px rgba(16,24,40,.06);

  /* herói */
  --hero-green-1:#0a6b60;
  --hero-green-2:#0e7f72;
  --hero-green-3:#0b776b;
  --hero-white:#fff;
}
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;900&display=swap');

/* =========================
   BASE / TABS / PAINEL
========================= */
.cpdu-wrap{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--cpdu-ink);
  background:
    radial-gradient(1200px 520px at 50% 34%, rgba(255,255,255,.14), rgba(255,255,255,0) 55%),
    linear-gradient(180deg,var(--hero-green-1) 0%,var(--hero-green-2) 100%);
  padding-top:14px;
}
.cpdu-tabs{margin-top: 40px; display:flex;gap:10px;margin:4px 0 18px;justify-content:center}
.cpdu-tab{
  border:1px solid var(--cpdu-line);background:#fff;color:var(--cpdu-ink-2);
  padding:10px 16px;border-radius:999px;cursor:pointer;transition:.2s
}
.cpdu-tab:hover{box-shadow:0 6px 16px rgba(17,24,39,.06)}
.cpdu-tab.is-active{background:var(--cpdu-brand);color:#fff;border-color:var(--cpdu-brand)}
.cpdu-tab.is-disabled{opacity:.55;pointer-events:none}
.cpdu-panel{display:none}.cpdu-panel.is-active{display:block}

/* ===== Botões do herói (NOVO/CONSULTAR) ===== */
.cpdu-hero-tabs{display:flex;justify-content:center;gap:18px;margin:10px 0 12px}
.cpdu-hero-tabs .cpdu-tab{
  margin-top: 30px; font-weight:800;letter-spacing:.45px;text-transform:uppercase;color:#fff;background:transparent;
  border:2px solid rgba(255,255,255,.92);border-radius:6px;padding:12px 22px;line-height:1;box-shadow:none;transition:.18s
}
.cpdu-hero-tabs .cpdu-tab:hover{background:rgba(255,255,255,.08)}
.cpdu-hero-tabs .cpdu-tab.is-active{background:rgba(255,255,255,.14)}

/* =========================
   FORM
========================= */
#cpdu-form{max-width:880px;margin:0 auto;padding:0 8px;text-align:center}
#cpdu-form, #cpdu-form *{box-sizing:border-box}

.cpdu-form label{display:block;font-weight:400;margin:0 0 8px;color:#fff}
.cpdu-form input[type=text],
.cpdu-form input[type=email],
.cpdu-form select{
  width:100%;height:54px;border-radius:28px;border:0;background:#fff;color:#111;
  padding:0 20px;font-size:18px;box-shadow:0 8px 18px rgba(0,0,0,.12)
}
/* OBS: propositalmente NÃO aplicamos width:100% no type=number aqui */

.cpdu-form select{
  -webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:58px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='none' stroke='%2399A3A8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat;background-position:right 18px center;background-size:24px 24px
}

.cpdu-2col{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:0 auto 10px}
@media (max-width:860px){.cpdu-2col{grid-template-columns:1fr;gap:18px}}

.cpdu-gate{
  display:block;margin:12px 0 8px;padding:14px 16px;border:1px dashed var(--cpdu-line);
  border-radius:12px;background:#f8fafc;color:var(--cpdu-ink-3);font-size:14px
}

/* “Paróquia/Movimento” centralizado */
.cpdu-step:first-of-type > label{
  text-align:center;margin-bottom:10px
}

/* =========================
   CABEÇALHO DE ITENS
========================= */
.cpdu-items-head{
  margin-top:18px;padding:14px 18px;border-radius:6px;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18);
  text-align:center;color:var(--hero-green-3);font-weight:800;font-size:28px;letter-spacing:.02em;text-transform:uppercase
}
.cpdu-items-head::after{
  content:"Preencha a quantidade dos itens desejados";
  display:block;margin-top:6px;font-style:italic;font-weight:600;font-size:16px;color:#5b6f6a;text-transform:none
}

/* =========================
   LISTA DE CARDS
========================= */
.cpdu-cards{display:grid;gap:18px;margin-top:14px;grid-template-columns:repeat(12,minmax(0,1fr))}
@media (max-width:1200px){.cpdu-cards{grid-template-columns:repeat(8,1fr)}}
@media (max-width:860px){.cpdu-cards{grid-template-columns:repeat(6,1fr)}}
@media (max-width:640px){.cpdu-cards{grid-template-columns:1fr}}
.cpdu-card{
  grid-column:span 6 / span 6;
  display:grid;grid-template-columns:120px 1fr;align-items:start;gap:18px;
  padding:18px 20px;border:1px solid rgba(0,0,0,.08);border-radius:20px;background:#fff;
  box-shadow:0 10px 26px rgba(0,0,0,.08);overflow:hidden;transition:.15s
}
.cpdu-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(16,24,40,.10)}
@media (max-width:860px){.cpdu-card{grid-column:span 6 / span 6}}
@media (max-width:640px){
  .cpdu-card{grid-template-columns:88px 1fr;gap:14px;padding:14px}
}

.cpdu-card__media{grid-column:1;width:120px;min-width:120px;display:flex;align-items:flex-start;justify-content:center}
.cpdu-card__media img{width:110px;height:110px;object-fit:cover;border-radius:12px;background:#f6f7fb;border:1px solid #e8ecf2;display:block}
@media (max-width:640px){.cpdu-card__media,.cpdu-card__media img{width:88px;height:88px}}

.cpdu-card__body{grid-column:2;display:flex;flex-direction:column;gap:8px;min-width:0;text-align:left}
.cpdu-card__title{margin:0 0 4px;font-weight:600;font-size:16px;letter-spacing:.2px;color:#0b1514}
@media (max-width:640px){.cpdu-card__title{font-size:16px}}
.cpdu-card__subject{color:#6b7280;font-weight:200;font-style:italic}
.cpdu-card__desc{color:#6b7280;font-size:.30rem}

.cpdu-card__subject-plain{
  display:flex;align-items:baseline;gap:6px;font-size:12px;color:#1f2937;font-weight:300;margin:0 0 10px;font-style:italic
}

.cpdu-total-head{
  display:flex;gap:6px;font-size:18px;color:#1f2937;font-weight:600;margin:0 0 10px;
}
.cpdu-card__unitline{
  display:flex;align-items:baseline;gap:6px;font-size:15px;color:#1f2937;font-weight:700;margin:2px 0 10px
}
.cpdu-unit-label{font-weight:800}
.cpdu-unit-value{font-size:16px;font-weight:900}

/* ===== Quantidade x Total (FIX) ===== */
.cpdu-card__grid{
  display:grid;gap:18px;align-items:center;
  grid-template-columns:minmax(0,1fr) 210px; /* esq flexível | dir fixa */
}
@media (max-width:640px){.cpdu-card__grid{grid-template-columns:1fr;row-gap:10px}}

.cpdu-qtyline{display:flex;align-items:center;gap:7px}
.cpdu-qty-label{
  font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#0b6b60;font-size:16px
}
.cpdu-qty-inline input.cpdu-qty{
  width:150px;max-width:45vw;height:44px;padding:0 16px;border-radius:28px;border:1px solid #d9e2ea;
  box-shadow:inset 0 1px 0 rgba(0,0,0,.02),0 4px 10px rgba(0,0,0,.08);font-size:16px;color:#111;background:#fff;outline:0
}
.cpdu-qty-inline input.cpdu-qty:focus{border-color:#8EDBD2;box-shadow:0 0 0 3px rgba(14,165,140,.18)}
@media (max-width:640px){.cpdu-qty-inline input.cpdu-qty{width:120px}}

.cpdu-totalbox{text-align:right;min-width:0}
.cpdu-total-head{font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#0b1514;}
.cpdu-total-disc{margin-top:6px;color:#ffff;font-style:italic;font-weight:600;font-size:14px}
.cpdu-total-value{margin-top:6px;font-size:22px;font-weight:900;color:#111827}

/* =========================
   RESUMO / AÇÕES
========================= */
.cpdu-summary{
  margin-top:22px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  background:#fff;border:1px solid var(--cpdu-line);border-radius:12px;padding:14px 16px;box-shadow:0 6px 18px rgba(16,24,40,.05)
}
.cpdu-checkbox{font-weight:600;font-size:15px;color:var(--cpdu-ink)}
.cpdu-summary input[type=checkbox]{width:16px;height:16px;accent-color:var(--cpdu-brand)}
.cpdu-grand{font-size:18px;font-weight:700;color:var(--cpdu-ink-2)}
.cpdu-grand-value{font-weight:900;color:var(--cpdu-brand-2)}
.cpdu-actions{margin-top:22px;text-align:center}
.cpdu-btn{
  display:inline-block;border:none;background:var(--cpdu-brand);color:#fff;padding:14px 36px;border-radius:14px;
  font-weight:800;letter-spacing:.3px;font-size:16px;transition:.2s;box-shadow:0 6px 20px rgba(55,65,81,.25)
}
.cpdu-btn:hover{background:var(--cpdu-brand-2);transform:translateY(-1px)}
.cpdu-warning{
  margin:14px auto;font-size:13px;color:var(--cpdu-ink-2);text-align:center;font-weight:600;line-height:1.4;
  background:#f9fafb;border:1px solid #e5e7eb;padding:10px 14px;border-radius:12px;max-width:800px;box-shadow:0 4px 12px rgba(0,0,0,.04)
}
@media (max-width:640px){.cpdu-summary{justify-content:center;gap:12px;text-align:center}}

/* =========================
   “PEDIDO FEITO” (tabela)
========================= */
.cpdu-done-card{
  max-width:1060px;margin:20px auto;background:#fff;border:1px solid #e6e8ee;border-radius:14px;padding:18px;
  box-shadow:0 16px 48px rgba(16,24,40,.05);color:#111827
}
.cpdu-done-hd{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin:0 0 14px}
.cpdu-done-title{margin:0;font-size:20px;line-height:1.2;font-weight:800;letter-spacing:-.01em}
.cpdu-done-sub{margin-top:4px;color:#6b7280;font-weight:600;font-size:12px}
.cpdu-done-side{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.cpdu-done-side .cpdu-pill{
  display:inline-block;padding:6px 10px;border:1px solid #e8eaf0;border-radius:999px;background:#f6f7fb;color:#111827;font-weight:700;font-size:12px
}

.cpdu-done-scroll{
  max-height:60vh;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid #e8eaf0;border-radius:10px;
  padding:0 10px 14px 0;box-sizing:border-box
}
.cpdu-done-table{table-layout:fixed;width:100%;min-width:560px;border:none;border-radius:0;overflow:visible}
.cpdu-done-table thead th{
  position:sticky;top:0;z-index:3;background:linear-gradient(180deg,#f5f7fa,#eef2f7);
  color:#111827;font-weight:700;padding:12px 14px;text-align:left;border-bottom:1px solid #e8eaf0;font-size:13px
}
.cpdu-done-table td{padding:12px 14px;border-bottom:1px solid #eef1f6;font-size:14px;vertical-align:middle;line-height:1.35}
.cpdu-done-table tbody tr:nth-child(odd) td{background:#fbfcff}
.cpdu-done-table tbody tr:hover td{background:#f7f9fd}

.cpdu-done-table tfoot td{
  position:sticky;bottom:0;z-index:2;background:#f8fafc;border-top:1px solid #e8eaf0;
  box-shadow:0 -1px 0 rgba(232,234,240,.6);white-space:nowrap
}

/* col widths (aprox) */
.cpdu-done-table col.cpdu-colw-prod{width:44%}
.cpdu-done-table col.cpdu-colw-num{width:14%}
.cpdu-col-num{text-align:right;white-space:nowrap}
.cpdu-col-prod{font-weight:700}
.cpdu-tfoot .cpdu-total-label,
.cpdu-tfoot .cpdu-total-value{white-space:nowrap;text-align:right}
.cpdu-done-actions{margin-top:12px;text-align:center}
@media (max-width:430px){.cpdu-done-table{min-width:560px}}
  
/* =========================
   ESTADOS GERAIS
========================= */
[hidden]{display:none!important}
.cpdu-disabled{opacity:.55;filter:grayscale(.1);pointer-events:none;user-select:none}

/* PATCH — limpar resíduos e fixar layout QUANTIDADE | TOTAL */

/* 1) Some com blocos antigos que podem voltar a aparecer */
.cpdu-card .cpdu-card__meta,
.cpdu-card .cpdu-card__controls,
.cpdu-card .cpdu-card__line{
  display: none !important;
}

/* Alguns temas antigos criavam elementos de "desconto" soltos */
.cpdu-card .desconto,
.cpdu-card .discount,
.cpdu-card [class*="descon"],
.cpdu-card [data-role="discount"]{
  display: none !important;
}

/* 2) Grelha estável: esquerda flexível, direita fixa (TOTAL) */
.cpdu-card__grid{
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 210px !important;
  gap: 18px;
  align-items: start;
}

/* 3) QUANTIDADE à esquerda, com z-index acima de qualquer resíduo */
.cpdu-qtyline{
  display: flex;
  align-items: center;
  gap: 14px;
  position: relative;
  z-index: 2;
}
.cpdu-qty-inline input.cpdu-qty{
  width: 90px !important;
  max-width: 30vw !important;
  height: 30px !important;
  padding: 0 12px;
  border-radius: 28px;
  border: 1px solid #d9e2ea;
  box-shadow: inset 0 1px 0 rgba(0,0,0,.02), 0 4px 10px rgba(0,0,0,.08);
  background: #fff;
  outline: 0;
}

/* 4) TOTAL à direita, sempre dentro da segunda coluna */
.cpdu-totalbox{
  grid-column: 2 !important;
  justify-self: end;
  text-align: right;
  min-width: 0;
}
.cpdu-total-head{ margin: 0; }
.cpdu-total-disc{ margin-top: 6px; }

/* 5) Mobile: empilha sem sobrepor nada */
@media (max-width: 640px){
  .cpdu-card__grid{ grid-template-columns: 1fr !important; row-gap: 10px; }
  .cpdu-totalbox{ justify-self: start; }
  .cpdu-qty-inline input.cpdu-qty{ width: 120px; max-width: 60vw; }
}
/* ==== HOTFIX: cartão igual ao mock (sem sobreposição) ==== */

/* 1) Em vez de 2 colunas, vira uma coluna: QUANTIDADE em cima, TOTAL embaixo */
.cpdu-card__grid{ 
  display:block !important;       /* derruba grid de 2 colunas */
  margin-top: 6px;
}

/* 2) Linha QUANTIDADE: label à esquerda + campo pílula ao lado */
.cpdu-qtyline{
  display:flex !important;
  align-items:center;
  gap: 12px;
  margin: 10px 0 2px;
  position: static !important;
}
.cpdu-qtyline .cpdu-qty{
  width: 80px!important;
  max-width: 30vw!important;
  height: 20px!important;
  padding: 0 8px!important;
  border-radius: 999px;
  background: #fff;
  border: 2px solid rgba(0,0,0,.25);
  box-shadow: none;
}

/* 3) TOTAL abaixo, alinhado à esquerda, com quebra normal de linha */
.cpdu-totalbox{
  display:block !important;
  margin-top: 12px;
  white-space: normal;
}
.cpdu-total-head{
  font-weight: 400;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.cpdu-total-value .cpdu-total{
  font-size: 20px;
  font-weight: 500;
  align-items:baseline
}

/* 4) Garante que nada fique “positioned”/flutuando ao focar o input */
.cpdu-card__grid *,
.cpdu-card__grid{ position: static !important; }
.cpdu-card{ overflow: hidden; }  /* evita qualquer vazamento visual */

/* linha de instrução (itálico) */ .cpdu-hero-infos{ text-align:center; margin:24px 0 24px; } .cpdu-hero-infos p{ color:rgba(255,255,255,.92); font-style:italic; font-weight:300; font-size:16px; line-height:1.4; margin:0; }

/* ====== OVERRIDES DE ESTÉTICA DOS CARDS (colar AO FINAL do CSS) ====== */
:root{
  /* ajustes finos de estética */
  --cpdu-card-radius: 18px;
  --cpdu-card-pad: 18px;
  --cpdu-card-gap: 14px;
  --cpdu-card-shadow: 0 10px 26px rgba(16,24,40,.08);
  --cpdu-card-shadow-hover: 0 16px 36px rgba(16,24,40,.10);
  --cpdu-img-brd: #e8ecf2;
  --cpdu-img-bg: #f6f7fb;
  --cpdu-qty-h: 38px;
  --cpdu-qty-w: 92px;
  --cpdu-total-weight: 900;
  --cpdu-accent-ink: #0b6b60;
  --cpdu-muted: #6b7280;

  /* altura-base de uma linha de cards para calcular scroll quando seu JS
     colocar .cpdu-scroll-5/.cpdu-scroll-9 (só estética da barra) */
  --cpdu-row-approx: 230px;
}

/* ====== GRADE: 2 por linha no desktop (sem mudar HTML) ====== */
.cpdu-cards{
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 22px !important;
  align-items: start;
}
.cpdu-card{
  grid-column: auto !important;
}

/* ====== CARD: bloco elegante ====== */
.cpdu-card{
  border-radius: var(--cpdu-card-radius) !important;
  padding: var(--cpdu-card-pad) !important;
  gap: var(--cpdu-card-gap) !important;
  border: 1px solid rgba(15, 23, 42, .06) !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    radial-gradient(120% 120% at 0% 0%, rgba(255,255,255,.8), rgba(255,255,255,0)) border-box;
  box-shadow: var(--cpdu-card-shadow) !important;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.cpdu-card:hover{
  transform: translateY(-2px);
  box-shadow: var(--cpdu-card-shadow-hover) !important;
  border-color: rgba(15, 23, 42, .10) !important;
}

/* mídia/miniatura */
.cpdu-card__media{ width: 116px !important; min-width: 116px !important; }
.cpdu-card__media img{
  width: 108px !important; height: 108px !important; object-fit: cover;
  border-radius: 14px !important; background: var(--cpdu-img-bg) !important;
  border: 1px solid var(--cpdu-img-brd) !important;
  box-shadow: 0 6px 16px rgba(16,24,40,.06);
}
.cpdu-card__placeholder{
  width:108px;height:108px;border-radius:14px;background:linear-gradient(180deg,#f3f4f6,#eef1f5);
  border:1px dashed #d7dce3;
}

/* tipografia e hierarquia */
.cpdu-card__body{ gap: 10px !important; }
.cpdu-card__title{
  margin: 0 0 2px !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  letter-spacing: .2px;
  color: #0b1514;
  line-height: 1.25;
}
.cpdu-card__subject-plain{
  margin: 0 0 8px !important;
  font-size: 12px !important;
  color: var(--cpdu-muted) !important;
  font-style: italic;
}

/* linha do valor unitário */
.cpdu-card__unitline{
  display: flex; align-items: baseline; gap: 6px;
  margin: 4px 0 8px !important;
  color: #1f2937;
}
.cpdu-card__unitline strong:first-child{
  font-weight: 700; opacity: .85; letter-spacing: .02em;
}
.cpdu-unit-value{ font-weight: 800 !important; }

/* grade inferior (mantém sua estrutura atual) */
.cpdu-card__grid{
  gap: 12px !important;
}

/* QUANTIDADE */
.cpdu-qty-label{
  color: var(--cpdu-accent-ink) !important;
  font-weight: 800 !important;
  letter-spacing: .08em;
}
.cpdu-qty-inline .cpdu-qty{
  width: var(--cpdu-qty-w) !important;
  height: var(--cpdu-qty-h) !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  border: 1px solid #d9e2ea !important;
  background: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(0,0,0,.02),
    0 4px 10px rgba(0,0,0,.08) !important;
  font-size: 15px !important;
  color: #111 !important;
}
.cpdu-qty-inline .cpdu-qty:focus{
  border-color: #8EDBD2 !important;
  box-shadow: 0 0 0 3px rgba(14,165,140,.18) !important;
  outline: none !important;
}

/* TOTAL (caixa discreta) */
.cpdu-totalbox{
  text-align: right;
  background: linear-gradient(180deg,#f9fafb,#f3f4f6);
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px 12px;
}
.cpdu-total-head{
  margin: 0 0 4px !important;
  font-weight: 600 !important;
  color: #111827 !important;
  font-size: 12px !important;
  letter-spacing: .06em;
  text-transform: uppercase;
  opacity: .85;
  text-align: right !important;
}
.cpdu-total-value .cpdu-total{
  font-size: 22px !important;
  font-weight: var(--cpdu-total-weight) !important;
  color: #0f172a !important;
}

/* estado mobile: 1 por linha, respiro no conteúdo */
@media (max-width: 860px){
  .cpdu-cards{ grid-template-columns: 1fr !important; }
  .cpdu-card__media{ width: 92px !important; min-width: 92px !important; }
  .cpdu-card__media img{ width: 86px !important; height: 86px !important; }
  .cpdu-qty-inline .cpdu-qty{ width: 110px !important; }
  
}

/* ====== SCROLL da grade quando seu JS aplicar as classes ======
   (apenas estética da barra e altura aproximada de 3 linhas) */
.cpdu-cards.cpdu-scroll-5,
.cpdu-cards.cpdu-scroll-9{
  overflow-y: auto;
  max-height: calc(var(--cpdu-row-approx) * 3 + 40px);
  padding-right: 6px;
}
.cpdu-cards.cpdu-scroll-5::-webkit-scrollbar,
.cpdu-cards.cpdu-scroll-9::-webkit-scrollbar{ width: 8px; }
.cpdu-cards.cpdu-scroll-5::-webkit-scrollbar-thumb,
.cpdu-cards.cpdu-scroll-9::-webkit-scrollbar-thumb{
  background:#cfd8e3; border-radius:8px;
}
.cpdu-cards.cpdu-scroll-5:hover::-webkit-scrollbar-thumb,
.cpdu-cards.cpdu-scroll-9:hover::-webkit-scrollbar-thumb{
  background:#b6c2d1;
}
/* ===== Ajustes do bloco de revisão/ação ===== */

/* 1) Caixa de resumo: garante alinhamento vertical perfeito */
.cpdu-summary{
  align-items: center !important;     /* já tinha, reforçamos */
  gap: 14px;                          /* leve respiro entre os lados */
}

/* 2) Label do checkbox: vira linha flex + texto preto */
.cpdu-checkbox{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  line-height: 1 !important;
  color: #111 !important;             /* preto */
  font-weight: 600;
}

/* 3) Próprio checkbox: centralização e tamanho consistente */
.cpdu-summary input[type=checkbox]{
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;               /* remove desalinhamentos por margin-line */
  vertical-align: middle !important;
  accent-color: #0f9f7f !important;   /* verde do tema */
}

/* 4) Total geral: mantém contraste forte (opcional) */
.cpdu-grand,
.cpdu-grand-value{
  color: #0f172a !important;
}

/* ===== Botão – nova cor e efeitos ===== */

.cpdu-actions{ 
  margin-top: 26px !important;        /* um pouco mais de respiro do resumo */
}

.cpdu-btn{
  background: linear-gradient(180deg, #12b886, #0f9f7f) !important; /* verde elegante */
  color: #fff !important;
  border: 0 !important;
  padding: 16px 42px !important;
  border-radius: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .2px !important;
  box-shadow: 0 10px 24px rgba(15, 159, 127, .35) !important;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
.cpdu-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(15, 159, 127, .45) !important;
  filter: saturate(1.05);
}
.cpdu-btn:active{
  transform: translateY(0);
  box-shadow: 0 8px 18px rgba(15, 159, 127, .35) !important;
  filter: saturate(1);
}
.cpdu-btn:focus-visible{
  outline: 3px solid rgba(18, 184, 134, .35);
  outline-offset: 3px;
  border-radius: 18px;
}

/* ===== Mais espaço antes da última frase ===== */
.cpdu-warning{
  margin-top: 32px !important;         /* aumenta o espaço abaixo do botão */
}

/* ===== Fundo manchado em verde escuro ===== */
body {
  /* cor base */
  background-color: #0e5f52;

  /* sobreposição de gradientes radiais */
  background-image:
    radial-gradient(circle at 15% 20%, rgba(0,0,0,0.35), transparent 70%),
    radial-gradient(circle at 85% 10%, rgba(0,0,0,0.25), transparent 60%),
    radial-gradient(circle at 30% 80%, rgba(0,0,0,0.30), transparent 70%),
    radial-gradient(circle at 70% 70%, rgba(255,255,255,0.03), transparent 60%),
    linear-gradient(180deg, #0d5a4e 0%, #08453c 100%);

  /* cobre toda a tela */
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;

  /* transição suave ao carregar */
  transition: background 0.6s ease;
  color: #fff; /* se quiser texto claro */
}
/* ===== Fundo verde com manchas aplicando no painel ===== */
.cpdu-wrap {
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--cpdu-ink);
  min-height: 100vh;
  padding-top: 14px;

  /* novo fundo manchado */
  background-color: #0e5f52;
  background-image:
    radial-gradient(circle at 15% 20%, rgba(0,0,0,0.35), transparent 70%),
    radial-gradient(circle at 85% 10%, rgba(0,0,0,0.25), transparent 60%),
    radial-gradient(circle at 30% 80%, rgba(0,0,0,0.30), transparent 70%),
    radial-gradient(circle at 70% 70%, rgba(255,255,255,0.03), transparent 60%),
    linear-gradient(180deg, #0d5a4e 0%, #08453c 100%);
    box-shadow: inset 0 40px 120px rgba(255,255,255,0.06);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  transition: background 0.6s ease;
}


/* ===== TOTAL (com linha "Desconto: xx%") ===== */
.cpdu-totalbox{
  background: linear-gradient(180deg,#f9fafb,#f3f4f6);
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 12px 14px;
  min-width: 210px;
}


.cpdu-total-disc{
  margin-top: 6px;
  font-size: 14px;
  font-style: italic;
  color: #374151;          /* cinza escuro legível */
  font-weight: 500;
}

.cpdu-total-value{
  margin-top: 6px;
}

.cpdu-total-value .cpdu-total{
  font-size: 28px;
  font-weight: 900;
  color: #0f172a;
  line-height: 1;
}

/* use só no mobile se quiser esse empilhamento */
@media (max-width: 640px){
  .cpdu-card__grid{ display:block !important; }
  .cpdu-totalbox{ display:block !important; text-align:left !important; }
}
@media (max-width: 640px){
  .cpdu-totalbox{ text-align: left; }
}

.cpdu-total-head-new{
  font-size: 16px;
  font-weight: 900;
  color: #0f172a;
  line-height: 1;
}


/* Títulos do bloco em duas colunas (Solicitante e Email) */
#cpdu-form .cpdu-2col > label{
  font-family: "Cinzel", serif !important;
  font-weight: 600;
  font-size: 26px;          /* combine com o de cima */
  letter-spacing: .02em;
  color: #fff;
}

/* ===== Resumo ao vivo do pedido ===== */
.cpdu-live-summary{
  width:100%;
  background:#fff;
  border:1px solid var(--cpdu-line);
  border-radius:12px;
  box-shadow:0 6px 18px rgba(16,24,40,.05);
  padding:14px 16px;
  margin:0 0 12px; /* fica acima do checkbox */
}

.cpdu-live-summary__title{
  font-weight:800;
  font-size:15px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#0f172a;
  margin:0 0 10px 0;
}

.cpdu-live-summary__table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}

.cpdu-live-summary__table th,
.cpdu-live-summary__table td{
  padding:10px 8px;
  border-bottom:1px solid #eef1f6;
  font-size:14px;
  color:#0f172a;
}

.cpdu-live-summary__table thead th{
  background:linear-gradient(180deg,#f5f7fa,#eef2f7);
  font-weight:700;
  text-align:left;
}

.cpdu-live-summary__table .cpdu-col-num{
  text-align:right;
  white-space:nowrap;
}

.cpdu-live-summary__prod{
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* ===== BOTÃO “CLIQUE AQUI PARA PROSSEGUIR” ===== */
#cpdu-continue {
  background: linear-gradient(180deg, #12b886, #0f9f7f) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 16px 42px !important;
  border-radius: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .2px !important;
  box-shadow: 0 10px 24px rgba(15, 159, 127, .35) !important;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
  cursor: not-allowed; /* mantém visual, mas sem interação */
  opacity: 1 !important; /* remove esmaecimento */
}

/* Mesmo desabilitado, mantém aparência ativa */
#cpdu-continue:disabled {
  background: linear-gradient(180deg, #12b886, #0f9f7f) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(15, 159, 127, .35) !important;
  opacity: 1 !important;
  pointer-events: none; /* impede clique */
  filter: grayscale(0) brightness(1) !important;
}

/* Efeito hover (opcional, mesmo desabilitado ele não reage) */
#cpdu-continue.enabled:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(15, 159, 127, .45) !important;
  filter: saturate(1.05);
}

#cpdu-form .cpdu-step:first-of-type > label{
  font-family: "Cinzel", serif !important;
  font-weight: 600;
  font-size: 28px;          /* ajuste se quiser maior/menor */
  letter-spacing: .02em;
  color: #fff;              /* mantém branco no seu herói */
}

/* Zoom sutil ao passar o mouse */
.cpdu-card__media { position: relative; overflow: hidden; border-radius: 8px; }
.cpdu-card__media img { display:block; transition: transform .2s ease; cursor: zoom-in; }
.cpdu-card__media:hover img { transform: scale(1.08); }

/* Lightbox */
.cpdu-lightbox-overlay{
  position:fixed; inset:0; background:rgba(0,0,0,.8);
  display:flex; align-items:center; justify-content:center;
  z-index:9999; padding:24px;
}
.cpdu-lightbox-overlay img{
  max-width:min(92vw,1200px);
  max-height:90vh;
  width:auto; height:auto;
  box-shadow:0 10px 30px rgba(0,0,0,.5);
  border-radius:10px;
}
.cpdu-lightbox-overlay:after{
  content:"Clique para fechar";
  position:fixed; bottom:16px; left:0; right:0;
  text-align:center; color:#fff; font:600 13px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  opacity:.8;
}
