:root{--bg-card:#1E1A12;--border-input:#463C24;--green-stock:#C99A05;--ck-black:var(--tinta);--border:#E4E7E1;--bump-bg:rgba(var(--acento-rgb),0.05);--bump-bg-on:rgba(var(--acento-rgb),0.12);--ck-alert:#FF6B4A;--ck-bg:var(--ck-fundo);--ck-focus-ring:rgba(var(--acento-rgb),0.28);--ck-input-ph:#9A9A9A;--ck-input-txt:#141414;--ck-line:#2E2718;--ck-line-2:#463C24;--ck-mute:#8D8677;--ck-panel:var(--painel);--ck-panel-2:#1E1A12;--ck-soft:#B7B0A1;--ck-txt:#F6F2E8;--d0:rgba(var(--acento-rgb),0.06);--d1:rgba(255,107,74,0.09);--d2:rgba(255,107,74,0.35);--d3:rgba(var(--acento-rgb),0.18);--d4:rgba(var(--acento-rgb),0.08);--d5:rgba(var(--acento-rgb),0.07);--d6:rgba(var(--acento-rgb),0.3);--err-bg:#B3261E;--err-fg:#FFFFFF;--k:#070605;--lpc-green-dark:#C99A05;--lpc-neon:var(--acento);--lpc-neon-2:var(--acento-2b);--lpc-on:#FFFFFF;--pix-teal:#32BCAD;--s0:rgba(0,0,0,.5);--s1:#fff;--s10:rgba(255,255,255,.45);--s11:rgba(255,255,255,.25);--s12:rgba(255,255,255,.12);--s13:rgba(255,255,255,.55);--s14:rgba(255,255,255,.85);--s15:rgba(0,0,0,.06);--s16:rgba(var(--acento-rgb),0.28);--s17:rgba(var(--acento-rgb),0.38);--s18:rgba(var(--acento-rgb),0.30);--s19:rgba(var(--acento-rgb),0.3);--s2:#0F0D09;--s20:rgba(var(--acento-rgb),0.5);--s3:rgba(0,0,0,.04);--s4:#e0e0e0;--s5:#bbb;--s6:#222;--s7:#999;--s8:#b3b3b3;--s9:rgba(0,0,0,.05);--text:#171A15;--text-muted:#9AA295;--text-soft:#5F675B;--wht:#FFFFFF;}
/* ═══ CHECKOUT MODAL — paleta Sephora (preto puro) ═══ */
.lpc-overlay{position:fixed;inset:0;background:var(--s0);z-index:100;display:none;align-items:stretch;justify-content:center}
.lpc-overlay.visible{display:flex}
.lpc-modal{background:var(--s1);width:100%;max-width:520px;max-height:100vh;overflow-y:auto;animation:lpcSlideUp 280ms cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}
@keyframes lpcSlideUp{from{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}
.lpc-topbar{background:var(--ck-black);color:var(--s1);padding:14px 18px;display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:5}
.lpc-back{width:28px;height:28px;display:flex;align-items:center;justify-content:center}
.lpc-back svg{width:22px;height:22px;stroke:var(--s1);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lpc-topbar-title{display:flex;align-items:center}
.lpc-topbar-title img{height:16px;width:auto;display:block;filter:brightness(0) invert(1)}
.lpc-body{padding:0 0 110px;flex:1;background:var(--s2)}
/* Resumo persistente */
.lpc-order-bar{position:sticky;top:0;background:var(--s1);border-bottom:1px solid var(--border);padding:14px 20px;display:flex;align-items:center;gap:12px;z-index:6;box-shadow:0 1px 4px var(--s3)}
.lpc-order-thumb{width:54px;height:54px;background:var(--s1);border:1px solid var(--border);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:4px}
.lpc-order-thumb img{width:100%;height:100%;object-fit:contain}
.lpc-order-info{flex:1;min-width:0}
.lpc-order-name{font-size:13.5px;font-weight:600;color:var(--text);line-height:1.3;margin-bottom:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lpc-order-meta{font-size:12px;color:var(--text-soft);display:flex;align-items:center;gap:6px}
.lpc-order-meta .dot{width:3px;height:3px;background:var(--text-muted);border-radius:50%;display:inline-block}
.lpc-order-price{font-size:16px;font-weight:800;color:var(--text);text-align:right;line-height:1;letter-spacing:-.01em;flex-shrink:0}
.lpc-order-price sup{font-size:.6em;font-weight:700}
/* Indicador de passos */
.lpc-progress{padding:18px 22px 0;display:flex;align-items:center;gap:8px}
.lpc-progress-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);font-weight:600;letter-spacing:.04em;text-transform:uppercase;position:relative}
.lpc-progress-step::after{content:'';position:absolute;top:9px;left:60%;right:-40%;height:2px;background:var(--s4);z-index:0}
.lpc-progress-step:last-child::after{display:none}
.lpc-progress-num{width:20px;height:20px;border-radius:50%;background:var(--s4);color:var(--s1);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;position:relative;z-index:1}
.lpc-progress-step.done .lpc-progress-num{background:var(--text)}
.lpc-progress-step.done::after{background:var(--text)}
.lpc-progress-step.active{color:var(--text)}
.lpc-progress-step.active .lpc-progress-num{background:var(--ck-black)}
.lpc-step-wrap{padding:18px 22px 0}
.lpc-step{display:none;animation:lpcFadeStep 200ms ease}
.lpc-step.active{display:block}
@keyframes lpcFadeStep{from{opacity:0;transform:translateX(6px)}to{opacity:1;transform:translateX(0)}}
.lpc-step-h1{font-size:22px;font-weight:600;color:var(--text);letter-spacing:-.005em;line-height:1.25;margin-bottom:18px}
.lpc-step-h2{font-size:16px;font-weight:700;color:var(--text);margin-top:26px;margin-bottom:6px;letter-spacing:.04em;text-transform:uppercase}
.lpc-step-sub{font-size:13.5px;color:var(--text-soft);line-height:1.5;margin-bottom:18px}
.lpc-cep-hint{font-size:13px;color:var(--text-soft);margin:-4px 0 18px;line-height:1.5}
.lpc-cep-hint strong{color:var(--text);font-weight:600}
.lpc-after-cep{max-height:0;overflow:hidden;opacity:0;transition:max-height 480ms cubic-bezier(.16,1,.3,1), opacity 320ms ease 160ms}
.lpc-after-cep.revealed{max-height:3000px;opacity:1}
.lpc-cep-loading{display:none;align-items:center;gap:8px;font-size:13px;color:var(--text-soft);margin:-6px 0 14px}
.lpc-cep-loading.visible{display:flex}
.lpc-cep-loading::before{content:'';width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--ck-black);border-radius:50%;animation:lpcSpin .7s linear infinite}
.lpc-cep-confirmed{display:none;align-items:center;gap:8px;font-size:13px;color:var(--green-stock);font-weight:600;margin:-6px 0 14px}
.lpc-cep-confirmed.visible{display:flex}
.lpc-cep-confirmed svg{width:14px;height:14px;stroke:var(--green-stock);fill:none;stroke-width:3}
.lpc-field{margin-bottom:14px}
.lpc-label{display:block;font-size:12px;font-weight:700;color:var(--text);margin-bottom:6px;letter-spacing:.04em;text-transform:uppercase}
.lpc-input{width:100%;border:1px solid var(--border-input);padding:13px 14px;font-size:16px;color:var(--text);font-family:inherit;background:var(--s1);-webkit-appearance:none;appearance:none;transition:border-color 160ms}
.lpc-input:focus{outline:none;border-color:var(--ck-black);box-shadow:0 0 0 1px var(--ck-black)}
.lpc-input::placeholder{color:var(--s5)}
.lpc-input-wrap{position:relative}
.lpc-inrow{display:flex;gap:10px;align-items:center}
.lpc-inrow .lpc-input-wrap{flex:1}
.lpc-inrow label.checkbox{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text);cursor:pointer;flex-shrink:0;padding-right:4px}
.lpc-inrow label.checkbox input{width:18px;height:18px;accent-color:var(--ck-black)}
.lpc-phone-wrap{position:relative}
.lpc-phone-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--text-soft);pointer-events:none}
.lpc-phone-wrap .lpc-input{padding-left:50px}
.lpc-btn-primary{width:100%;background:var(--ck-black);color:var(--s1);border:none;padding:16px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background 160ms}
.lpc-btn-primary:hover{background:var(--s6)}
.lpc-btn-primary:disabled{background:var(--s7);cursor:not-allowed}
.lpc-ship-card{background:var(--s1);border:1px solid var(--border);overflow:hidden}
.lpc-ship-row{padding:14px 16px;display:flex;align-items:flex-start;gap:12px;cursor:pointer}
.lpc-ship-row+.lpc-ship-row{border-top:1px solid var(--border)}
.lpc-ship-radio{width:20px;height:20px;border:2px solid var(--s8);border-radius:50%;flex-shrink:0;position:relative;margin-top:1px;transition:all 160ms}
.lpc-ship-row.selected .lpc-ship-radio{border-color:var(--ck-black);border-width:6px}
.lpc-ship-info{flex:1}
.lpc-ship-name{font-size:14px;font-weight:600;color:var(--text);margin-bottom:2px;letter-spacing:.02em}
.lpc-ship-prices{text-align:right}
.lpc-ship-old{color:var(--text-muted);font-size:13px;text-decoration:line-through}
.lpc-ship-old sup{font-size:.7em}
.lpc-ship-free{color:var(--green-stock);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lpc-bottom-bar{position:fixed;bottom:0;left:0;right:0;background:var(--s1);border-top:1px solid var(--border);padding:12px 18px 18px;max-width:520px;margin:0 auto;z-index:10;box-shadow:0 -2px 12px var(--s9)}
.lpc-bottom-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0 10px;font-size:13px}
.lpc-bottom-label{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.lpc-bottom-value{color:var(--green-stock);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lpc-totals-list{padding:8px 0}
.lpc-totals-row{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;font-size:14px}
.lpc-totals-label{color:var(--text-soft);font-weight:400}
.lpc-totals-value{color:var(--text);font-weight:500}
.lpc-totals-value sup{font-size:.6em}
.lpc-totals-value.green{color:var(--green-stock);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:13px}
.lpc-totals-divider{height:1px;background:var(--border);margin:12px 0}
.lpc-pay-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0}
.lpc-pay-label{font-size:14px;color:var(--text);letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.lpc-pay-value-wrap{text-align:right}
.lpc-pay-value{font-size:22px;color:var(--text);font-weight:600}
.lpc-pay-value sup{font-size:.55em}
.lpc-pay-method{font-size:12px;color:var(--text-soft);margin-top:2px;letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.lpc-total-final-row{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 0 8px}
.lpc-total-final-label{font-size:18px;color:var(--text);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lpc-total-final-right{text-align:right}
.lpc-total-final-line{display:flex;align-items:baseline;gap:10px;justify-content:flex-end}
.lpc-total-final-new{color:var(--text);font-size:24px;font-weight:700;letter-spacing:-.01em}
.lpc-total-final-new sup{font-size:.55em}
.lpc-confirm-btn{width:100%;background:var(--ck-black);color:var(--s1);border:none;padding:18px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-top:18px}
.lpc-confirm-btn:hover{background:var(--s6)}
.lpc-summary-section{background:var(--bg-card);margin:24px -22px -110px;padding:18px 22px 110px}
.lpc-summary-h{font-size:11px;font-weight:700;color:var(--text);margin-bottom:10px;letter-spacing:.12em;text-transform:uppercase}
.lpc-summary-card{background:var(--s1);padding:14px;margin-bottom:16px}
.lpc-summary-card-row{display:flex;align-items:flex-start;gap:12px}
.lpc-summary-icon{width:36px;height:36px;background:var(--bg-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.lpc-summary-icon svg{width:20px;height:20px;stroke:var(--text);fill:none;stroke-width:1.6}
.lpc-summary-info{flex:1;min-width:0}
.lpc-summary-strong{font-size:13.5px;font-weight:700;color:var(--text);margin-bottom:2px}
.lpc-summary-text{font-size:12.5px;color:var(--text-soft);line-height:1.4}
.lpc-pix-overlay{position:fixed;inset:0;background:var(--s1);z-index:110;display:none;flex-direction:column}
.lpc-pix-overlay.visible{display:flex}
.lpc-pix-head{background:var(--ck-black);color:var(--s1);padding:14px 18px;display:flex;align-items:center;gap:14px;position:relative}
.lpc-pix-head-title{display:flex;align-items:center}
.lpc-pix-head-title img{height:16px;width:auto;display:block;filter:brightness(0) invert(1)}
.lpc-pix-body{flex:1;overflow-y:auto;padding:30px 22px;max-width:520px;margin:0 auto;width:100%}
.lpc-pix-eyebrow{color:var(--text-soft);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}
.lpc-pix-h1{color:var(--text);font-size:22px;font-weight:600;letter-spacing:-.005em;margin-bottom:14px}
.lpc-pix-amount{color:var(--text);font-size:34px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}
.lpc-pix-amount sup{font-size:.5em}
.lpc-pix-method{color:var(--text-soft);font-size:13px;margin-bottom:22px;letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.lpc-pix-timer-box{background:var(--s2);border:1px solid var(--border);padding:12px 14px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);font-weight:500;margin-bottom:22px;letter-spacing:.04em;text-transform:uppercase}
.lpc-pix-timer-box svg{width:16px;height:16px;stroke:var(--ck-black);fill:none;stroke-width:2}
.lpc-pix-timer-box strong{color:var(--ck-black);font-weight:700}
.lpc-qr-card{background:var(--s1);border:1px solid var(--border);padding:22px;text-align:center;margin-bottom:18px}
.lpc-qr-card img{margin:0 auto;display:block;max-width:100%}
.lpc-pix-or{text-align:center;color:var(--text-soft);font-size:11px;margin-bottom:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.lpc-pix-code-box{background:var(--bg-card);border:1px solid var(--border);padding:14px;margin-bottom:12px}
.lpc-pix-code{font-family:'Courier New',monospace;font-size:11px;color:var(--text);word-break:break-all;max-height:70px;overflow-y:auto;line-height:1.55}
.lpc-pix-copy{width:100%;background:var(--ck-black);color:var(--s1);border:none;padding:15px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:22px}
.lpc-pix-copy:hover{background:var(--s6)}
.lpc-pix-copy.copied{background:var(--green-stock)}
.lpc-pix-copy svg{width:16px;height:16px}
.lpc-pix-instructions{background:var(--s2);border:1px solid var(--border);padding:16px 18px}
.lpc-pix-instructions h4{font-size:11px;font-weight:700;color:var(--text);margin-bottom:10px;letter-spacing:.12em;text-transform:uppercase}
.lpc-pix-instructions ol{padding-left:20px;font-size:13px;color:var(--text-soft);line-height:1.7}
.lpc-pix-watching{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;margin-top:14px;color:var(--text-soft);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.lpc-pix-watching::before{content:'';width:8px;height:8px;background:var(--ck-black);border-radius:50%;animation:lpcPulse 1.4s infinite}
@keyframes lpcPulse{0%,100%{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}
.lpc-success{position:fixed;inset:0;background:var(--s1);z-index:200;display:none;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}
.lpc-success.visible{display:flex}
.lpc-success-icon{width:88px;height:88px;border-radius:50%;background:var(--green-stock);display:flex;align-items:center;justify-content:center;margin-bottom:26px}
.lpc-success-icon svg{width:44px;height:44px;stroke:var(--s1);fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.lpc-success-title{font-size:24px;font-weight:600;color:var(--text);margin-bottom:10px;letter-spacing:-.01em}
.lpc-success-sub{font-size:14px;color:var(--text-soft);line-height:1.55;max-width:380px;margin-bottom:24px}
.lpc-success-amount-box{background:var(--bg-card);padding:18px 28px;margin-bottom:28px}
.lpc-success-amount-label{font-size:11px;font-weight:700;color:var(--text-soft);margin-bottom:4px;letter-spacing:.12em;text-transform:uppercase}
.lpc-success-amount-val{font-size:24px;font-weight:700;color:var(--text);letter-spacing:-.02em}
.lpc-success-amount-val sup{font-size:.55em}
.lpc-success-cta{background:var(--ck-black);color:var(--s1);border:none;padding:14px 36px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
/* SECURE LOADING — tema Sephora (preto + logo branca) */
.lpc-secure{position:fixed;inset:0;background:var(--ck-black);z-index:180;display:none;align-items:center;justify-content:center;padding:32px;flex-direction:column;gap:38px;animation:lpcFadeIn 240ms ease}
.lpc-secure.visible{display:flex}
@keyframes lpcFadeIn{from{opacity:0}to{opacity:1}}
.lpc-secure-logo{height:24px;width:auto;display:block;animation:lpcLogoIn 600ms cubic-bezier(.16,1,.3,1);filter:brightness(0) invert(1)}
@keyframes lpcLogoIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.lpc-secure-line{width:1px;height:42px;background:linear-gradient(to bottom,transparent,var(--s10),transparent);animation:lpcLineSweep 1.6s ease-in-out infinite}
@keyframes lpcLineSweep{0%,100%{opacity:.3;transform:scaleY(.8)}50%{opacity:1;transform:scaleY(1.1)}}
.lpc-secure-content{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:320px;text-align:center}
.lpc-secure-lock-wrap{width:46px;height:46px;border:1px solid var(--s11);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative}
.lpc-secure-lock-wrap::before{content:'';position:absolute;inset:-3px;border:1px solid var(--s12);border-top-color:var(--s1);border-radius:50%;animation:lpcSpin 1.4s linear infinite}
.lpc-secure-lock-wrap svg{width:18px;height:18px;stroke:var(--s1);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lpc-secure-title{font-size:11px;font-weight:600;color:var(--s1);letter-spacing:.22em;text-transform:uppercase}
.lpc-secure-sub{font-size:12px;color:var(--s13);letter-spacing:.04em;line-height:1.5}
@keyframes lpcSpin{to{transform:rotate(360deg)}}
.lpc-loading{position:fixed;inset:0;background:var(--s14);z-index:150;display:none;align-items:center;justify-content:center}
.lpc-loading.visible{display:flex}
.lpc-loading-spinner{width:48px;height:48px;border:4px solid var(--border);border-top-color:var(--ck-black);border-radius:50%;animation:lpcSpin .8s linear infinite}
.lpc-progress-step.active .lpc-progress-num { background: var(--lpc-neon); color: var(--lpc-on); }
.lpc-progress-step.done .lpc-progress-num { background: var(--lpc-green-dark); color: var(--s1); }
.lpc-progress-step.done::after { background: var(--lpc-green-dark); }
.lpc-btn-primary { width: 100%; background: linear-gradient(135deg, var(--lpc-neon), var(--lpc-neon-2));
  color: var(--lpc-on); border: none; border-radius: 12px; padding: 16px; font-family: inherit;
  font-size: 15px; font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase; cursor: pointer;
  box-shadow: 0 10px 26px var(--s16); transition: transform 150ms, box-shadow 150ms; }
.lpc-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 14px 32px var(--s17); }
.lpc-confirm-btn { width: 100%; background: linear-gradient(135deg, var(--lpc-neon), var(--lpc-neon-2));
  color: var(--lpc-on); border: none; border-radius: 12px; padding: 17px; font-family: inherit;
  font-size: 15.5px; font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase; cursor: pointer;
  box-shadow: 0 12px 30px var(--s18); margin-top: 18px; transition: transform 150ms; }
.lpc-confirm-btn:hover { transform: translateY(-1px); }
.lpc-ship-row.selected { border-color: var(--lpc-green-dark); }
.lpc-ship-row.selected .lpc-ship-radio { border-color: var(--lpc-green-dark); }
.lpc-ship-row.selected .lpc-ship-radio::after { background: var(--lpc-green-dark); }
.lpc-ship-free, .lpc-totals-value.green { color: var(--lpc-green-dark); font-weight: 800; }
.lpc-cep-confirmed svg { stroke: var(--lpc-green-dark); }
.lpc-cep-confirmed { color: var(--lpc-green-dark); }
.lpc-pix-copy { background: var(--ck-black); color: var(--lpc-neon); }
.lpc-pix-copy.copied { background: var(--lpc-green-dark); color: var(--s1); }
.lpc-success-icon { background: var(--lpc-neon); }
.lpc-success-icon svg { stroke: var(--lpc-on); }
.lpc-success-cta { background: var(--ck-black); color: var(--lpc-neon); }
.lpc-pay-method { background: var(--lpc-neon); color: var(--lpc-on); }
.lpc-secure { background: var(--ck-black); }
.lpc-input { font-size: 16px !important; }
.lpc-logo-img { height: 20px; width: auto; }
.lpc-logo-word { font-family: 'Archivo Black', Inter, sans-serif; font-size: 13px; letter-spacing: 0.06em; color: var(--wht); margin-left: 9px; }
.lpc-logo-word em { font-style: normal; color: var(--lpc-neon); }
.lpc-modal, .lpc-pix-overlay, .lpc-success { background: var(--ck-bg); }
.lpc-body { background: var(--ck-bg); }
.lpc-topbar, .lpc-pix-head { background: var(--k); border-bottom: 1px solid var(--ck-line); }
.lpc-order-bar { background: var(--ck-panel); border-bottom: 1px solid var(--ck-line); box-shadow: none; }
.lpc-order-thumb { background: var(--ck-panel-2); border-color: var(--ck-line-2); border-radius: 10px; }
.lpc-order-name { color: var(--ck-txt); }
.lpc-order-meta { color: var(--ck-soft); }
.lpc-order-meta .dot { background: var(--ck-mute); }
.lpc-order-price { color: var(--lpc-neon); }
.lpc-progress-step { color: var(--ck-mute); }
.lpc-progress-step::after { background: var(--ck-line-2); }
.lpc-progress-num { background: var(--ck-line-2); color: var(--ck-txt); }
.lpc-progress-step.active { color: var(--ck-txt); }
.lpc-progress-step.done { color: var(--ck-soft); }
.lpc-step-h1, .lpc-step-h2 { color: var(--ck-txt); }
.lpc-step-sub { color: var(--ck-soft); }
.lpc-label { color: var(--ck-soft); }
.lpc-input { background: var(--wht); border: 2px solid var(--ck-line-2); color: var(--ck-input-txt); border-radius: 12px; font-weight: 600; }
.lpc-input::placeholder { color: var(--ck-input-ph); font-weight: 500; }
.lpc-input:focus { border-color: var(--lpc-neon); box-shadow: 0 0 0 3px var(--ck-focus-ring); }
.lpc-input:disabled { background: var(--ck-panel-2); border-color: var(--ck-line); color: var(--ck-mute); }
.lpc-label { color: var(--ck-txt); font-weight: 800; font-size: 13px; letter-spacing: 0.03em; text-transform: uppercase; }
.lpc-inrow label.checkbox { color: var(--ck-soft); }
.lpc-cep-hint { color: var(--ck-soft); }
.lpc-cep-hint strong { color: var(--ck-txt); }
.lpc-cep-loading { color: var(--ck-soft); }
.lpc-phone-prefix { background: var(--wht); border: 2px solid var(--ck-line-2); color: var(--ck-input-txt); font-weight: 700; }
.lpc-ship-card { background: var(--ck-panel); border-color: var(--ck-line); border-radius: 12px; }
.lpc-ship-row { border-color: var(--ck-line); }
.lpc-ship-name { color: var(--ck-txt); }
.lpc-ship-row div { color: var(--ck-soft); }
.lpc-ship-old { color: var(--ck-mute); }
.lpc-ship-radio { border-color: var(--ck-line-2); }
.lpc-ship-row.selected { border-color: var(--lpc-neon); background: var(--d0); }
.lpc-ship-row.selected .lpc-ship-radio { border-color: var(--lpc-neon); }
.lpc-ship-row.selected .lpc-ship-radio::after { background: var(--lpc-neon); }
.lpc-ship-free { color: var(--lpc-neon); }
.lpc-bottom-bar { background: var(--ck-panel); border-top: 1px solid var(--ck-line); }
.lpc-bottom-label { color: var(--ck-soft); }
.lpc-bottom-value { color: var(--lpc-neon); }
.lpc-totals-label { color: var(--ck-soft); }
.lpc-totals-value { color: var(--ck-txt); }
.lpc-totals-value.green { color: var(--lpc-neon); }
.lpc-totals-divider { background: var(--ck-line); }
.lpc-pay-label, .lpc-total-final-label { color: var(--ck-txt); }
.lpc-pay-value, .lpc-total-final-new { color: var(--ck-txt); }
.lpc-total-final-new { color: var(--lpc-neon); }
.lpc-summary-section { background: var(--ck-panel); border-top: 1px solid var(--ck-line); }
.lpc-summary-h { color: var(--ck-mute); }
.lpc-summary-card { background: var(--ck-panel-2); border: 1px solid var(--ck-line); border-radius: 10px; }
.lpc-summary-icon { background: var(--ck-bg); }
.lpc-summary-icon svg { stroke: var(--lpc-neon); }
.lpc-summary-strong { color: var(--ck-txt); }
.lpc-summary-text { color: var(--ck-soft); }
.lpc-cep-confirmed { color: var(--lpc-neon); }
/* PIX dark — QR continua em card claro pra escanear */
.lpc-pix-eyebrow { color: var(--lpc-neon); }
.lpc-pix-h1 { color: var(--ck-txt); }
.lpc-pix-amount { color: var(--ck-txt); }
.lpc-pix-method { color: var(--ck-soft); }
.lpc-pix-timer-box { background: var(--ck-panel); border-color: var(--ck-line-2); color: var(--ck-txt); border-radius: 10px; }
.lpc-pix-timer-box svg { stroke: var(--ck-alert); }
.lpc-pix-timer-box strong { color: var(--ck-alert); }
.lpc-qr-card { background: var(--wht); border-radius: 14px; }
.lpc-pix-or { color: var(--ck-mute); }
.lpc-pix-code-box { background: var(--ck-panel); border-color: var(--ck-line); color: var(--ck-soft); border-radius: 10px; }
.lpc-pix-code { color: var(--ck-soft); }
.lpc-pix-copy { background: linear-gradient(135deg, var(--lpc-neon), var(--lpc-neon-2)); color: var(--lpc-on); border-radius: 12px; }
.lpc-pix-copy.copied { background: var(--lpc-green-dark); color: var(--wht); }
.lpc-pix-instructions { background: var(--ck-panel); border: 1px solid var(--ck-line); border-radius: 12px; }
.lpc-pix-instructions h4 { color: var(--ck-txt); }
.lpc-pix-instructions ol, .lpc-pix-instructions li { color: var(--ck-soft); }
.lpc-pix-watching { color: var(--ck-soft); }
.lpc-success-title { color: var(--ck-txt); }
.lpc-success-sub { color: var(--ck-soft); }
.lpc-success-amount-box { background: var(--ck-panel); border: 1px solid var(--ck-line); border-radius: 12px; }
.lpc-success-amount-label { color: var(--ck-soft); }
.lpc-success-amount-val { color: var(--lpc-neon); }
.lpc-success-cta { background: linear-gradient(135deg, var(--lpc-neon), var(--lpc-neon-2)); color: var(--lpc-on); border-radius: 12px; }
.lpc-btn-primary:hover, .lpc-confirm-btn:hover { background: linear-gradient(135deg, var(--lpc-neon), var(--lpc-neon-2)); }
/* ═══ ELEMENTOS DE CONVERSÃO ═══ */
.lpc-trustline { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap;
  padding: 10px 14px; background: var(--ck-panel); border-bottom: 1px solid var(--ck-line); }
.lpc-trustline span { display: inline-flex; align-items: center; gap: 5px;
  font-size: 10.5px; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; color: var(--ck-soft); }
.lpc-trustline svg { width: 12px; height: 12px; stroke: var(--lpc-neon); fill: none; stroke-width: 2.4;
  stroke-linecap: round; stroke-linejoin: round; }
.lpc-reserve { display: flex; align-items: center; justify-content: center; gap: 8px;
  margin: 14px 22px 0; padding: 10px 14px; border-radius: 10px;
  background: var(--d1); border: 1px solid var(--d2);
  font-size: 12.5px; font-weight: 700; color: var(--ck-txt); }
.lpc-reserve svg { width: 14px; height: 14px; stroke: var(--ck-alert); fill: none; stroke-width: 2.2;
  stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.lpc-reserve strong { color: var(--ck-alert); font-variant-numeric: tabular-nums; }
.lpc-live { display: flex; align-items: center; gap: 8px; margin: 10px 22px 0; padding: 9px 13px;
  border-radius: 10px; background: var(--ck-panel); border: 1px solid var(--ck-line);
  font-size: 12px; color: var(--ck-soft); }
.lpc-live i { width: 7px; height: 7px; border-radius: 50%; background: var(--lpc-neon); flex-shrink: 0;
  box-shadow: 0 0 0 3px var(--d3); animation: livePulse 1.8s infinite; }
.lpc-live strong { color: var(--ck-txt); font-weight: 700; }
.lpc-econ { display: flex; align-items: center; justify-content: space-between; gap: 10px;
  margin-top: 14px; padding: 12px 14px; border-radius: 10px;
  background: var(--d5); border: 1px solid var(--d6); }
.lpc-econ span { font-size: 13px; font-weight: 700; color: var(--ck-txt); }
.lpc-econ b { font-size: 15px; font-weight: 900; color: var(--lpc-neon); white-space: nowrap; }
.lpc-mini { margin-top: 16px; border: 1px solid var(--ck-line); border-radius: 12px;
  background: var(--ck-panel); padding: 13px 14px; }
.lpc-mini-h { font-size: 10.5px; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--ck-mute); margin-bottom: 8px; }
.lpc-mini div { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--ck-soft); padding: 3px 0; }
.lpc-mini svg { width: 13px; height: 13px; stroke: var(--lpc-neon); fill: none; stroke-width: 2.6;
  stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.lpc-mini strong { color: var(--ck-txt); }
.lpc-topbar, .lpc-pix-head { position: sticky; justify-content: center; }
.lpc-topbar .lpc-back, .lpc-pix-head .lpc-back { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); }
.lpc-brandmid { display: inline-flex; align-items: center; gap: 10px; }
.lpc-brandmid .lpc-logo-img { height: 26px; width: auto; }
.lpc-brandtxt { font-family: 'Archivo Black', Inter, sans-serif; font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--wht); line-height: 1.05; }
.lpc-brandtxt small { display: block; font-family: 'Inter', sans-serif; font-size: 8.5px; font-weight: 800; letter-spacing: 0.28em; color: var(--lpc-neon); }
/* ═══ BUMP + PAGAMENTO ═══ */
.lpc-opt { font-weight: 600; text-transform: none; letter-spacing: 0; color: var(--ck-mute); font-size: 11.5px; }
.lpc-paybadge { display: flex; align-items: center; gap: 10px; padding: 13px 14px; border-radius: 12px;
  background: var(--ck-panel); border: 1px solid var(--ck-line-2); margin-bottom: 16px; }
.lpc-paybadge-ico { width: 34px; height: 34px; border-radius: 9px; background: var(--pix-teal);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.lpc-paybadge-ico svg { width: 19px; height: 19px; color: var(--wht); }
.lpc-paybadge-txt { font-size: 13.5px; color: var(--ck-soft); }
.lpc-paybadge-txt strong { color: var(--ck-txt); font-weight: 900; }
.lpc-ship-eta { font-size: 13px; color: var(--ck-soft); }
.lpc-ship-paid { font-size: 14px; font-weight: 800; color: var(--ck-txt); }
.lpc-bump { position: relative; display: grid; grid-template-columns: 22px 52px 1fr; gap: 12px; align-items: center;
  padding: 18px 14px 14px; margin: 4px 0 18px; border-radius: 14px; cursor: pointer;
  background: var(--bump-bg); border: 2px dashed var(--lpc-neon); transition: background 160ms, border-color 160ms; }
.lpc-bump.checked { background: var(--bump-bg-on); border-style: solid; }
.lpc-bump input { position: absolute; opacity: 0; pointer-events: none; }
.lpc-bump-badge { position: absolute; top: -10px; left: 12px; background: var(--lpc-neon); color: var(--lpc-on);
  font-size: 9.5px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase;
  padding: 3px 9px; border-radius: 100px; }
.lpc-bump-check { width: 22px; height: 22px; border-radius: 7px; border: 2px solid var(--lpc-neon);
  position: relative; flex-shrink: 0; }
.lpc-bump.checked .lpc-bump-check { background: var(--lpc-neon); }
.lpc-bump.checked .lpc-bump-check::after { content: ''; position: absolute; left: 6px; top: 2px;
  width: 6px; height: 11px; border-right: 2.6px solid var(--lpc-on); border-bottom: 2.6px solid var(--lpc-on);
  transform: rotate(42deg); }
.lpc-bump-img { width: 52px; height: 52px; object-fit: contain; }
.lpc-bump-title { display: block; font-size: 14px; font-weight: 800; color: var(--ck-txt); line-height: 1.3; }
.lpc-bump-title b { color: var(--lpc-neon); font-weight: 900; }
.lpc-bump-desc { display: block; font-size: 12px; color: var(--ck-soft); margin-top: 3px; }
.lpc-bump-desc s { color: var(--ck-mute); }
/* ── nota do frete (etapa de entrega) ── */
.lpc-frete-nota{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start;margin:12px 0 14px;padding:14px;border:1px solid var(--ck-line);border-radius:12px;background:var(--ck-panel);color:var(--ck-soft);font-size:14px;line-height:1.5}
.lpc-frete-nota svg{width:19px;height:19px;color:var(--lpc-neon);margin-top:1px}
.lpc-frete-nota b{color:var(--ck-txt)}
/* trava de seguranca: nenhum icone solto dentro das etapas pode estourar de tamanho */
.lpc-step svg{max-width:26px;max-height:26px}

/* ── tema Desafio Bíblico ── */
.lpc-modal, .lpc-pix-overlay, .lpc-success, .lpc-secure {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}
.lpc-step-h1, .lpc-step-h2, .lpc-pix-h1, .lpc-success-title, .lpc-total-final-new, .lpc-pix-amount {
  font-family: 'Anton', Impact, sans-serif; font-weight: 400; letter-spacing: .02em; text-transform: uppercase;
}
.lpc-brandtxt { font-family: 'Anton', Impact, sans-serif; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; }
.lpc-btn-primary, .lpc-confirm-btn, .lpc-pix-copy, .lpc-success-cta {
  font-family: 'Anton', Impact, sans-serif; font-weight: 400; letter-spacing: .06em;
  text-transform: uppercase; font-size: 20px;
}
.lpc-input { font-size: 16px !important; }
.lpc-topbar { background: linear-gradient(100deg,#141109,#0B0A09); border-bottom: 1px solid #2E2718; }
.lpc-secure {
  background:
    radial-gradient(120% 55% at 50% 22%, #241d0d 0%, transparent 62%),
    repeating-linear-gradient(118deg, transparent 0 26px, #ffffff05 27px 28px),
    #0B0A09;
  gap: 28px;
}
.lpc-secure-logo { filter: none; height: 30px; }
.lpc-secure-line { width: 62px; height: 3px; border-radius: 2px;
  background: linear-gradient(90deg, transparent, var(--lpc-neon), transparent); }
.lpc-secure-lock-wrap { border-color: rgba(var(--acento-rgb),.34); width: 52px; height: 52px; }
.lpc-secure-lock-wrap::before { border-color: rgba(var(--acento-rgb),.16); border-top-color: var(--lpc-neon); inset: -4px; }
.lpc-secure-lock-wrap svg { stroke: var(--lpc-neon); width: 21px; height: 21px; }
.lpc-secure-title { font-family: 'Anton', Impact, sans-serif; font-weight: 400; font-size: 22px; letter-spacing: .05em; color: #F6F2E8; }
.lpc-secure-sub { font-size: 12.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--lpc-neon); }
/* a pagina do quiz nao reseta <button>: sem isto o voltar sai como caixa cinza do sistema */
.lpc-back { background: transparent; border: 0; padding: 0; color: inherit; cursor: pointer; }
.lpc-back svg { flex: 0 0 auto; }


/* ══ tema.claro:true — checkout claro (texto escuro, painel branco, topbar na cor da faixa) ══ */
html[data-tema="claro"]{
  --bg-card:#FFFFFF;--border-input:#DCD3C6;--ck-black:var(--faixa);--ck-bg:#FFFFFF;--k:#FFFFFF;
  --ck-input-ph:#8A8175;--ck-input-txt:var(--texto);--ck-line:#E8E0D2;--ck-line-2:#D8CBB0;
  --ck-mute:#6E655A;--ck-panel:var(--tinta);--ck-panel-2:var(--tinta-2);--ck-soft:#554D42;--ck-txt:var(--texto);
  --lpc-on:#FFFFFF;--lpc-green-dark:var(--acento-2b);--green-stock:var(--acento-2b);
  --s0:rgba(30,26,20,.55);--s2:var(--tinta);--s6:var(--texto);
  --s10:rgba(30,26,20,.42);--s11:rgba(30,26,20,.22);--s12:rgba(30,26,20,.12);--s13:rgba(30,26,20,.52);
  --text:var(--texto);--text-muted:#6E655A;--text-soft:#554D42;
  --s16:rgba(var(--acento-rgb),.22);--s17:rgba(var(--acento-rgb),.30);--s18:rgba(var(--acento-rgb),.24);
}
html[data-tema="claro"] .lpc-pix-copy,html[data-tema="claro"] .lpc-success-cta{background:var(--faixa);color:#fff}
html[data-tema="claro"] .lpc-topbar .lpc-brandtxt{color:#fff}
html[data-tema="claro"] .lpc-pix-head .lpc-brandtxt{color:#fff}
html[data-tema="claro"] .lpc-topbar .lpc-brandtxt small{color:rgba(255,255,255,.72)}
html[data-tema="claro"] .lpc-pix-head .lpc-brandtxt small{color:rgba(255,255,255,.72)}
html[data-tema="claro"] .lpc-pix-head .lpc-back svg{stroke:#fff}
html[data-tema="claro"] .lpc-back svg{stroke:#fff}
html[data-tema="claro"] .lpc-secure-lock-wrap{background:#fff;border-color:rgba(var(--acento-rgb),.32)}
html[data-tema="claro"] .lpc-secure-title{color:var(--texto)}
html[data-tema="claro"] .lpc-secure-sub{color:var(--acento)}


/* 09/09/26: resumo sem a linha TOTAL (o frete ja diz o valor; o PIX mostra de novo) */
.lpc-total-final-row{display:none}
/* 09/09/26: "o que chega na sua casa" = miniatura de cada produto, nao lista de texto */
.lpc-mini div.lpc-mini-grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:12px 8px;margin-top:10px}
.lpc-mini div.lpc-mini-grid figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.lpc-mini div.lpc-mini-grid img{width:100%;max-width:76px;height:80px;object-fit:contain;display:block}
.lpc-mini div.lpc-mini-grid figcaption{font-size:11.5px;line-height:1.25;text-align:center;color:var(--ck-soft);font-weight:600;text-wrap:balance}
.lpc-mini div.lpc-mini-grid figure{padding:0}

/* claro: header do checkout e da tela PIX na cor da faixa (a regra antiga pintava um degrade preto fixo) */
html[data-tema="claro"] .lpc-topbar,html[data-tema="claro"] .lpc-pix-head{background:var(--faixa);border-bottom:1px solid rgba(0,0,0,.14)}
html[data-tema="claro"] .lpc-brandmid .lpc-logo-img{width:auto;max-width:150px;object-fit:contain}

/* entregaFotos com 1 item = foto do kit inteira, sem grade */
.lpc-mini div.lpc-mini-grid.is-unica{grid-template-columns:1fr}
.lpc-mini div.lpc-mini-grid.is-unica img{max-width:100%;width:auto;height:auto;max-height:230px;margin:0 auto}
