/* LCPlanos frontend — independent from template/Bootstrap */
:root{--lc-bg:#0b1121;--lc-card:#172136;--lc-panel:#0f172a;--lc-border:#2b3852;--lc-text:#eef3fb;--lc-muted:#94a3b8;--lc-green:#10b981;--lc-blue:#3b82f6;--lc-orange:#f97316;--lc-yellow:#facc15;--lc-danger:#ef4444}
.lc-plans,.lc-plan-detail,.lc-checkout-shell,.lc-payment-page{box-sizing:border-box;font-family:inherit;color:var(--lc-text)}
.lc-plans *,.lc-plan-detail *,.lc-checkout-shell *,.lc-payment-page *{box-sizing:border-box}
.lc-plans{max-width:1220px;margin:2.5rem auto;padding:2.25rem 1.5rem;background:var(--lc-bg);border-radius:16px}
.lc-plans>.text-center{text-align:center;margin-bottom:2.25rem}.lc-plans h1{margin:0 0 .55rem;font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15}.lc-plans p{margin:0}
.lc-plans>.row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;align-items:stretch}.lc-plans>.row>[class*="col-"]{width:auto!important;max-width:none!important;padding:0!important;display:flex}
.lc-plans article{position:relative;overflow:hidden;display:flex!important;flex-direction:column;width:100%;min-height:500px;background:var(--lc-card)!important;border:1px solid var(--lc-border)!important;border-top:5px solid var(--lc-accent)!important;border-radius:16px!important;box-shadow:0 14px 34px rgba(0,0,0,.22)!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.lc-plans article:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(0,0,0,.28)!important}
.lc-plans article{--lc-accent:var(--lc-blue)}
.lc-plans .lc-theme-success{--lc-accent:var(--lc-green)}
.lc-plans .lc-theme-primary{--lc-accent:var(--lc-blue)}
.lc-plans .lc-theme-warning{--lc-accent:var(--lc-orange)}
.lc-plans .lc-theme-danger{--lc-accent:var(--lc-danger)}
/* Plano em destaque: recomendacao legivel e orientada a conversao */
.lc-plans .lc-plan-featured{
  border:2px solid var(--lc-accent)!important;
  border-top-width:4px!important;
  box-shadow:0 18px 42px rgba(249,115,22,.18)!important;
  transform:translateY(-8px) scale(1.025);
  z-index:2;
}
.lc-plans .lc-plan-featured:hover{
  transform:translateY(-11px) scale(1.025);
  box-shadow:0 24px 52px rgba(249,115,22,.25)!important;
}
.lc-plans .lc-plan-recommended-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 1rem;
  padding:.48rem .9rem;
  border-radius:999px;
  background:var(--lc-accent);
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:.72rem;
  font-weight:850;
  line-height:1;
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:0 6px 18px rgba(249,115,22,.22);
  white-space:nowrap;
}
.lc-plans .lc-plan-featured>.p-4.text-center{padding-top:1.2rem!important}
.lc-plans .lc-plan-price{font-size:2.35rem!important;color:var(--lc-accent)!important;font-weight:800!important;line-height:1.1}.lc-plans .lc-plan-savings{text-align:center;margin:0 0 1rem}.lc-plans .lc-plan-savings-badge{display:inline-flex;align-items:center;justify-content:center;padding:.36rem .72rem;border-radius:999px;background:#ef4444;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.7rem;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.02em}.lc-plans .lc-plan-monthly{margin-top:.85rem;color:#aab5c8;font-size:.95rem}.lc-plans .lc-plan-monthly strong{color:#facc15!important;font-size:1.05rem}
.lc-plans article>.position-absolute{position:absolute;z-index:2}.lc-plans article>.p-4{padding:1.5rem!important}.lc-plans article>.text-center{text-align:center}.lc-plans article>.border-bottom{border-bottom:1px solid var(--lc-border)!important}.lc-plans article>.flex-grow-1{flex:1 1 auto}.lc-plans article .text-uppercase{text-transform:uppercase}.lc-plans article .fw-bold{font-weight:700}.lc-plans article .mb-4{margin-bottom:1.3rem!important}.lc-plans article .mt-4{margin-top:1.3rem!important}.lc-plans article .pt-3{padding-top:1rem!important}.lc-plans article .pt-0{padding-top:0!important}.lc-plans article .small{font-size:.82rem}
.lc-plans article>.p-4.text-center>.text-uppercase{color:#f4f7fb!important}.lc-plans article .lc-plan-price{color:var(--lc-accent)!important}
.lc-plans .plan-features-html{line-height:1.55;color:#d8e0ed}.lc-plans .plan-features-html ul{list-style:none;padding:0;margin:0}.lc-plans .plan-features-html li{margin:.42rem 0}.lc-plans .plan-features-html p{margin:.35rem 0}.lc-plans .btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border:0;border-radius:8px;text-decoration:none;cursor:pointer;transition:filter .15s ease,transform .15s ease}.lc-plans .btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.lc-plans .w-100{width:100%}.lc-plans article .btn,.lc-plans article .lc-plan-cta{background:var(--lc-accent)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.9rem!important;font-weight:800!important;line-height:1.2!important;letter-spacing:.015em!important;text-transform:uppercase!important;text-indent:0!important;opacity:1!important;visibility:visible!important;text-shadow:none!important}.lc-plans article .lc-plan-cta:link,.lc-plans article .lc-plan-cta:visited,.lc-plans article .lc-plan-cta:hover,.lc-plans article .lc-plan-cta:focus{color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none!important}.lc-plans article a:not(.btn){color:#aab5c8!important;text-decoration:underline}.lc-plans article a:not(.btn):hover{color:#fff!important}
/* detail */
.lc-plan-detail{--lc-accent:var(--lc-blue);max-width:1220px;margin:2.5rem auto!important;background:#111a2d!important;border:1px solid #334155!important;border-top:4px solid var(--lc-accent)!important;border-radius:16px!important;padding:2rem!important}.lc-plan-detail[style*="success"]{--lc-accent:var(--lc-green)}.lc-plan-detail[style*="warning"]{--lc-accent:var(--lc-orange)}.lc-plan-detail>.row{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:3rem;align-items:start}.lc-plan-detail h1{margin:0 0 1rem;padding-left:1rem;border-left:5px solid var(--lc-accent)!important;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;text-transform:uppercase}.lc-plan-detail hr{border:0;border-top:1px solid #334155}.lc-plan-detail .plan-description{line-height:1.75}.lc-plan-detail aside{position:sticky;top:24px;background:var(--lc-panel)!important;border:1px solid #2c3952!important;border-radius:12px;padding:1.5rem!important}.lc-plan-detail aside>div.d-flex{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid #334155}.lc-plan-detail .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;text-decoration:none;font-weight:700;padding:.85rem 1.2rem;background:var(--lc-accent)!important;color:#fff!important}.lc-plan-detail aside .btn{width:100%;margin-top:1rem}.lc-plan-detail aside .btn-link{background:transparent!important;color:var(--lc-muted)!important}
/* checkout */
.lc-checkout-shell{--lc-accent:var(--lc-blue);max-width:1040px!important;margin:2.5rem auto!important;background:#111a2d!important;border:1px solid #334155!important;border-top:4px solid var(--lc-accent)!important;border-radius:16px!important;padding:1.75rem!important}.lc-checkout-shell[style*="success"]{--lc-accent:var(--lc-green)}.lc-checkout-shell[style*="warning"]{--lc-accent:var(--lc-orange)}.lc-checkout-shell>.d-flex{display:flex;justify-content:space-between;gap:1.25rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #334155}.lc-checkout-shell h1{margin:.2rem 0;font-size:2rem}.lc-checkout-shell form>.row{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:1.5rem}.lc-checkout-shell section,.lc-checkout-shell aside{background:var(--lc-panel)!important;border:1px solid #26344e!important;border-radius:12px!important;padding:1.5rem!important}.lc-checkout-shell .row.g-3{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.lc-checkout-shell .mb-3{margin-bottom:1rem}.lc-checkout-shell .mb-4{margin-bottom:1.5rem}.lc-checkout-shell label{display:block;margin-bottom:.4rem}.lc-checkout-shell .form-control,.lc-checkout-shell .form-select{display:block;width:100%;min-height:48px;padding:.7rem .85rem;background:#1e293b!important;border:1px solid #3b4a64!important;border-radius:8px;color:#fff!important}.lc-checkout-shell .form-control:focus,.lc-checkout-shell .form-select:focus{outline:0;border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(59,130,246,.16)!important}.lc-checkout-shell .form-check{display:flex;gap:.55rem;align-items:flex-start}.lc-checkout-shell .form-check input{margin-top:.3rem}.lc-checkout-shell aside>div.d-flex{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid #334155}.lc-checkout-shell .d-grid{display:grid}.lc-checkout-shell .gap-2{gap:.5rem}.lc-checkout-shell .lc-payment-option{display:flex!important;align-items:center;justify-content:center;min-height:82px;border:1px solid #475569!important;border-radius:10px!important;cursor:pointer;background:#111827!important;position:relative}.lc-checkout-shell .lc-payment-option:has(input:checked){border-color:#22c55e!important;box-shadow:0 0 0 2px rgba(34,197,94,.22)}.lc-checkout-shell .lc-payment-option input{position:absolute;opacity:0}.lc-checkout-shell .btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:50px;border:0;border-radius:8px;text-decoration:none;font-weight:700;cursor:pointer}.lc-checkout-shell button.btn{background:var(--lc-accent)!important;color:#fff!important;margin-top:1.5rem}.lc-checkout-shell .btn-link{background:transparent!important;color:var(--lc-muted)!important;margin-top:.6rem}.lc-checkout-shell .text-danger{color:#ff5d67}.lc-checkout-shell .text-uppercase{text-transform:uppercase}.lc-checkout-shell .small{font-size:.82rem}.lc-checkout-shell .fw-bold{font-weight:700}.lc-checkout-shell .text-end{text-align:right}
/* Pix payment — isolated from Joomla template / Bootstrap */
.lc-payment-page{max-width:560px;margin:2rem auto;padding:.75rem;color:#e7edf8}
.lc-payment-page .lc-payment-card{overflow:hidden;border:1px solid #26344e;border-radius:18px;background:#101a2d;box-shadow:0 20px 48px rgba(0,0,0,.28)}
.lc-payment-page .lc-payment-hero{padding:1.25rem 1.35rem 1.1rem;text-align:center;background:linear-gradient(135deg,#0c9f7b,#10b981);color:#fff}
.lc-payment-page .lc-payment-brandline{display:flex;align-items:center;justify-content:center;gap:.45rem;font-size:.98rem;font-weight:700;letter-spacing:.01em}
.lc-payment-page .lc-payment-lock{display:inline-flex;align-items:center;justify-content:center}
.lc-payment-page .lc-payment-plan{margin-top:.34rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.88}
.lc-payment-page .lc-payment-amount{margin-top:.05rem;font-size:2.05rem;line-height:1.1;font-weight:800;letter-spacing:-.03em}
.lc-payment-page .lc-payment-trust{display:flex;align-items:center;justify-content:center;gap:.38rem;flex-wrap:wrap;margin-top:.72rem}
.lc-payment-page .lc-payment-trust-badge{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;min-height:26px;padding:.24rem .54rem;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(5,46,40,.2);color:#fff;font-size:.66rem;font-weight:700;white-space:nowrap}
.lc-payment-page .lc-payment-trust-badge--pix{font-weight:800;letter-spacing:.04em}
.lc-payment-page .lc-payment-body{padding:1.45rem 1.45rem 1.3rem;text-align:center}
.lc-payment-page .lc-payment-timer{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:.68rem .85rem;margin:0 0 1.15rem;border:1px solid #3b465d;border-radius:9px;background:#1d2230;color:#d7dfed;font-size:.84rem}
.lc-payment-page .lc-payment-timer span{color:#aeb9cc}
.lc-payment-page .lc-payment-timer strong{color:#fbd56a;font-size:1.02rem;font-variant-numeric:tabular-nums;letter-spacing:.03em}
.lc-payment-page .lc-payment-instruction h1{margin:0;color:#f1f5fb;font-size:1.12rem;line-height:1.3;font-weight:800}
.lc-payment-page .lc-payment-instruction p{margin:.3rem 0 .9rem;color:#9dacbf;font-size:.84rem}
.lc-payment-page .lc-payment-qr-wrap{display:inline-flex;align-items:center;justify-content:center;padding:.58rem;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.2)}
.lc-payment-page .lc-pix-qr{display:block;width:228px;max-width:64vw;height:auto;background:#fff;border:0;border-radius:7px;pointer-events:none;user-select:none}
.lc-payment-page .lc-payment-divider{display:flex;align-items:center;gap:.7rem;margin:1.05rem 0 .9rem;color:#7f8da4;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}
.lc-payment-page .lc-payment-divider:before,.lc-payment-page .lc-payment-divider:after{content:"";height:1px;flex:1;background:#2d3b55}
.lc-payment-page .lc-payment-copy-section{text-align:left}
.lc-payment-page .lc-payment-copy-section>label{display:block;color:#e7edf8;font-size:.96rem;font-weight:800}
.lc-payment-page .lc-payment-copy-section>p{margin:.25rem 0 .72rem;color:#99a7bb;font-size:.84rem;line-height:1.4}
.lc-payment-page .lc-input-group{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;width:100%}
.lc-payment-page .lc-input-group input{min-width:0;width:100%;height:48px;padding:.72rem .82rem;border:1px solid #3b4a64;border-radius:9px;background:#172237;color:#dce6f5;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;outline:0}
.lc-payment-page .lc-input-group input:focus{border-color:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.12)}
.lc-payment-page .lc-input-group button{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-width:136px;height:48px;padding:.72rem 1rem;border:0;border-radius:9px;background:#10b981;color:#fff;font-size:.84rem;font-weight:800;cursor:pointer;transition:transform .15s ease,background .15s ease}
.lc-payment-page .lc-input-group button:hover{background:#0da574}
.lc-payment-page .lc-input-group button:active{transform:translateY(1px)}
.lc-payment-page .lc-input-group button.is-copied{background:#15803d}
.lc-payment-page .lc-payment-status{display:flex;align-items:flex-start;gap:.68rem;margin-top:1rem;padding:.82rem .9rem;border:1px solid #2c4773;border-radius:10px;background:#142849;text-align:left}
.lc-payment-page .lc-payment-status-dot{flex:0 0 auto;width:9px;height:9px;margin-top:.35rem;border-radius:50%;background:#60a5fa;box-shadow:0 0 0 5px rgba(96,165,250,.1)}
.lc-payment-page .lc-payment-status div{display:flex;flex-direction:column;gap:.1rem}
.lc-payment-page .lc-payment-status strong{color:#e5efff;font-size:.9rem}
.lc-payment-page .lc-payment-status div>span{color:#b6c6dc;font-size:.82rem;line-height:1.35}
.lc-payment-page .lc-payment-status--paid{border-color:#1f6e55;background:#11392f}
.lc-payment-page .lc-payment-status--paid .lc-payment-status-dot{background:#34d399;box-shadow:0 0 0 5px rgba(52,211,153,.1)}
.lc-payment-page .lc-payment-status--expired{border-color:#7a5b1f;background:#362d17}
.lc-payment-page .lc-payment-status--expired .lc-payment-status-dot{background:#fbbf24;box-shadow:0 0 0 5px rgba(251,191,36,.1)}
.lc-payment-page .lc-payment-status--error{border-color:#74343b;background:#391c23}
.lc-payment-page .lc-payment-status--error .lc-payment-status-dot{background:#fb7185;box-shadow:0 0 0 5px rgba(251,113,133,.1)}
.lc-payment-page .lc-payment-help{display:flex;align-items:flex-start;justify-content:center;gap:.42rem;margin-top:.8rem;color:#8696ad;font-size:.74rem;line-height:1.4}
.lc-payment-page .lc-payment-help svg{flex:0 0 auto;margin-top:.08rem}
.lc-payment-page .lc-payment-transaction{margin-top:1.05rem;padding-top:.8rem;border-top:1px solid #26344e;color:#7f8da4;font-size:.74rem;text-align:left}
.lc-payment-page .lc-payment-transaction summary{cursor:pointer;text-align:center;color:#91a0b7;user-select:none}
.lc-payment-page .lc-payment-transaction div{margin-top:.65rem;text-align:center;overflow-wrap:anywhere}
.lc-payment-page .lc-payment-transaction code{color:#aab8cb;font-size:.72rem}
@media(max-width:620px){.lc-plans{padding:1.25rem .85rem}.lc-plans article>.p-4{padding:1.15rem!important}.lc-plan-detail,.lc-checkout-shell{padding:1.15rem!important;border-radius:12px!important}.lc-checkout-shell .row.g-3{grid-template-columns:1fr}.lc-payment-page{max-width:none;margin:.8rem auto;padding:.5rem}.lc-payment-page .lc-payment-card{border-radius:14px}.lc-payment-page .lc-payment-hero{padding:1.05rem .85rem .9rem}.lc-payment-page .lc-payment-brandline{font-size:.92rem}.lc-payment-page .lc-payment-plan{margin-top:.25rem;font-size:.72rem}.lc-payment-page .lc-payment-amount{font-size:1.85rem}.lc-payment-page .lc-payment-trust{gap:.3rem;margin-top:.58rem}.lc-payment-page .lc-payment-trust-badge{min-height:24px;font-size:.62rem;padding:.2rem .45rem}.lc-payment-page .lc-payment-body{display:flex;flex-direction:column;padding:1rem .85rem .95rem}.lc-payment-page .lc-payment-timer{order:1;margin-bottom:.85rem;padding:.62rem .75rem}.lc-payment-page .lc-payment-copy-section{order:2}.lc-payment-page .lc-payment-divider{order:3;margin:.9rem 0 .72rem}.lc-payment-page .lc-payment-instruction{order:4}.lc-payment-page .lc-payment-qr-wrap{order:5;align-self:center;padding:.48rem;border-radius:12px}.lc-payment-page .lc-pix-qr{width:198px;max-width:58vw}.lc-payment-page .lc-payment-status{order:6;margin-top:.9rem}.lc-payment-page .lc-payment-help{order:7}.lc-payment-page .lc-payment-transaction{order:8}.lc-payment-page .lc-payment-instruction h1{font-size:1.02rem}.lc-payment-page .lc-payment-instruction p{margin:.28rem 0 .72rem;font-size:.8rem}.lc-payment-page .lc-input-group{grid-template-columns:1fr}.lc-payment-page .lc-input-group input{height:44px;font-size:.7rem}.lc-payment-page .lc-input-group button{width:100%;min-width:0;height:46px}.lc-payment-page .lc-payment-copy-section>label{font-size:.92rem}.lc-payment-page .lc-payment-copy-section>p{font-size:.8rem}.lc-payment-page .lc-payment-status{padding:.76rem .8rem}.lc-payment-page .lc-payment-status strong{font-size:.86rem}.lc-payment-page .lc-payment-status div>span{font-size:.78rem}}


/* LCPlanos 1.13.32 - checkout registration UX */
.lc-plans .lc-plan-price-period{
  display:inline-block;
  margin-left:.08em;
  font-size:1.05rem;
  font-weight:700;
  line-height:1;
  vertical-align:baseline;
}
.lc-checkout-shell .lc-password-field{
  position:relative;
}
.lc-checkout-shell .lc-password-field .form-control{
  padding-right:3rem!important;
}
.lc-checkout-shell .lc-password-toggle{
  position:absolute;
  right:.55rem;
  top:50%;
  transform:translateY(-50%);
  width:2.25rem;
  height:2.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:.45rem;
  background:transparent;
  color:#93a4bd;
  cursor:pointer;
}
.lc-checkout-shell .lc-password-toggle:hover,
.lc-checkout-shell .lc-password-toggle:focus-visible{
  color:#fff;
  background:rgba(148,163,184,.12);
  outline:0;
}
.lc-checkout-shell .lc-password-toggle svg{
  width:1.2rem;
  height:1.2rem;
  fill:currentColor;
}
.lc-checkout-shell .lc-password-toggle.is-visible{
  color:#60a5fa;
}
.lc-checkout-shell .lc-field-status{
  min-height:1.35rem;
  padding-top:.35rem;
  font-size:.78rem;
  line-height:1.35;
  color:#94a3b8;
}
.lc-checkout-shell .lc-field-status.is-checking{color:#93c5fd}
.lc-checkout-shell .lc-field-status.is-valid{color:#86efac}
.lc-checkout-shell .lc-field-status.is-invalid{color:#fca5a5}
.lc-checkout-shell input[aria-invalid="true"]{
  border-color:#ef4444!important;
}
.lc-checkout-shell input[aria-invalid="false"]{
  border-color:#22c55e!important;
}

/* LCPlanos 1.13.36 - endereco internacional */
.lc-checkout-shell .form-text{margin-top:.35rem;color:#94a3b8;font-size:.78rem;line-height:1.35}
.lc-checkout-shell select[hidden],.lc-checkout-shell input[hidden]{display:none!important}
.lc-checkout-shell .form-select option{background:#fff;color:#111827}

/* LCPlanos 1.13.41 - opção PIX */
.lc-payment-option__image {
    display: block;
    width: auto;
    max-width: 170px;
    max-height: 56px;
    object-fit: contain;
    cursor: default !important;
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
}
.lc-checkout-shell .lc-payment-option--single {
    cursor: default !important;
}
.lc-checkout-shell .lc-payment-heading {
    margin-bottom: .65rem !important;
    line-height: 1.2;
}
.lc-checkout-shell .lc-payment-option {
    min-height: 68px !important;
    padding: .35rem .8rem !important;
}
.lc-payment-option__fallback {
    font-size: 1.15rem;
    letter-spacing: .04em;
}
.lc-payment-unavailable {
    padding: .8rem 1rem;
    border: 1px solid #475569;
    border-radius: .6rem;
    color: #cbd5e1;
    background: #111827;
    font-size: .95rem;
}

.lc-plan-access-note{padding:12px 14px;border:1px solid #334155;border-radius:8px;color:#94a3b8;background:#0f172a;text-align:center;font-size:.9rem;line-height:1.35}

/* LCPlanos 1.13.44 - refinamento de espacamento no resumo do plano */
.lc-plan-detail .lc-plan-payment-note{margin-top:1.35rem;color:#94a3b8;font-size:.9rem;line-height:1.35}.lc-plan-detail .lc-plan-payment-note strong{display:block;color:#dbe5f3;font-size:.95rem;font-weight:700;margin-bottom:.15rem}.lc-plan-detail .lc-plan-payment-note span{display:block}.lc-plan-detail .lc-plan-trust-badges{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin:.55rem 0 .1rem}.lc-plan-detail .lc-plan-trust-badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:28px;padding:.28rem .62rem;border:1px solid #334155;border-radius:999px;background:#111a2d;color:#b8c5d8;font-size:.72rem;font-weight:700;line-height:1;white-space:nowrap}.lc-plan-detail .lc-plan-trust-badge svg{width:13px;height:13px;fill:currentColor}.lc-plan-detail .lc-plan-trust-pix{color:#5eead4;border-color:rgba(45,212,191,.35)}

/* LCPlanos 1.13.45 - conclusão de cadastro */
.lc-complete-shell{max-width:760px;margin:3rem auto;padding:0 1rem}.lc-complete-card{background:#111a2d;border:1px solid #334155;border-top:4px solid #10b981;border-radius:14px;color:#e5edf8;padding:2rem;text-align:center;box-shadow:0 12px 36px rgba(0,0,0,.16)}.lc-complete-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 1rem;border-radius:999px;background:rgba(16,185,129,.14);border:1px solid rgba(16,185,129,.45);color:#34d399;font-size:2rem;font-weight:800}.lc-complete-card h1{margin:0 0 1.25rem;font-size:clamp(1.65rem,4vw,2.2rem);line-height:1.15}.lc-complete-thankyou{margin:0 auto 1.4rem;color:#dbe5f3;line-height:1.65;text-align:left}.lc-complete-thankyou>:first-child{margin-top:0}.lc-complete-thankyou>:last-child{margin-bottom:0}.lc-complete-notice{margin:1.25rem 0;padding:1rem 1.1rem;border-radius:10px;text-align:left;line-height:1.5}.lc-complete-notice strong{display:block;margin-bottom:.4rem}.lc-complete-notice p{margin:.35rem 0 0}.lc-complete-notice--info{background:rgba(59,130,246,.1);border:1px solid rgba(96,165,250,.32)}.lc-complete-notice--warning{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.38)}.lc-complete-notice--success{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.35)}.lc-complete-help{color:#a8b3c7;font-size:.92rem}.lc-complete-button{display:inline-flex;align-items:center;justify-content:center;min-width:190px;margin-top:.45rem;padding:.85rem 1.4rem;border-radius:9px;background:#10b981;color:#fff!important;text-decoration:none;font-weight:700}.lc-complete-button:hover{filter:brightness(1.06);text-decoration:none}@media(max-width:600px){.lc-complete-card{padding:1.45rem}.lc-complete-shell{margin:1.5rem auto}}

/* LCPlanos 1.13.57 - cobrança PIX expirada */
.lc-payment-page .lc-payment-expired-panel{padding:2rem 1.35rem 1.7rem;text-align:center}
.lc-payment-page .lc-payment-expired-panel[hidden]{display:none!important}
.lc-payment-page .lc-payment-expired-icon{display:inline-flex;align-items:center;justify-content:center;width:66px;height:66px;margin-bottom:1rem;border:1px solid #7a5b1f;border-radius:50%;background:#362d17;color:#fbbf24}
.lc-payment-page .lc-payment-expired-panel h1{margin:0 0 .65rem;color:#f4f7fb;font-size:1.22rem;line-height:1.3;font-weight:800}
.lc-payment-page .lc-payment-expired-panel p{margin:.2rem auto;color:#b8c4d6;font-size:.88rem;line-height:1.5;max-width:390px}
.lc-payment-page .lc-payment-expired-panel .lc-payment-expired-help{margin-top:.2rem;color:#e2e8f0}
.lc-payment-page .lc-payment-retry{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:48px;margin:1.25rem auto .85rem;padding:.72rem 1.1rem;border-radius:9px;background:#10b981;color:#fff!important;text-decoration:none!important;font-size:.92rem;font-weight:800;box-shadow:0 8px 20px rgba(16,185,129,.18);transition:transform .15s ease,background .15s ease}
.lc-payment-page .lc-payment-retry:hover{background:#0da574;color:#fff!important}
.lc-payment-page .lc-payment-retry:active{transform:translateY(1px)}
.lc-payment-page .lc-payment-expired-note{display:block;max-width:410px;margin:0 auto;color:#8291a6;font-size:.74rem;line-height:1.45}
@media(max-width:620px){.lc-payment-page .lc-payment-expired-panel{padding:1.55rem .95rem 1.35rem}.lc-payment-page .lc-payment-expired-icon{width:58px;height:58px}.lc-payment-page .lc-payment-expired-panel h1{font-size:1.08rem}.lc-payment-page .lc-payment-retry{width:100%;min-width:0}}

/* LCPlanos 1.13.58 - status de pagamento mais compacto */
.lc-payment-status > div > span { line-height: 1.35; }

/* LCPlanos 1.13.59 - status PIX em apenas duas linhas */
.lc-payment-page .lc-payment-status > div { justify-content:center; }
.lc-payment-page .lc-payment-status > div > span { color:#d7e3f4; }


/* LCPlanos 1.13.60 - confiança no checkout e prevenção de clique acidental */
.lc-checkout-shell .lc-checkout-trust-badges{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin:.65rem 0 .2rem}
.lc-checkout-shell .lc-checkout-trust-badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:28px;padding:.28rem .62rem;border:1px solid #334155;border-radius:999px;background:#111a2d;color:#b8c5d8;font-size:.72rem;font-weight:700;line-height:1;white-space:nowrap}
.lc-checkout-shell .lc-checkout-trust-badge svg{width:13px;height:13px;fill:currentColor}
.lc-checkout-shell .lc-checkout-trust-pix{color:#5eead4;border-color:rgba(45,212,191,.35)}
.lc-plans .lc-plan-details-link{display:inline-block!important;margin-top:1.45rem!important;padding:.28rem .35rem;line-height:1.4}
@media(max-width:620px){.lc-checkout-shell .lc-checkout-trust-badges{margin-top:.6rem}.lc-plans .lc-plan-details-link{margin-top:1.6rem!important;padding:.35rem .45rem}}

/* LCPlanos 1.13.61 - espacamento superior e responsividade dos cards */
.lc-plans{
  margin:1rem auto 2.5rem;
  padding:1.5rem 1.5rem 2.25rem;
}
.lc-plans>.text-center{
  margin-bottom:1.75rem;
}
@media(max-width:900px){
  .lc-plans>.row{
    grid-template-columns:1fr!important;
    gap:1.25rem!important;
    max-width:560px;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .lc-plans>.row>[class*="col-"]{
    width:100%!important;
    min-width:0!important;
  }
  .lc-plans article{
    min-height:0;
  }
  .lc-plans .lc-plan-featured,
  .lc-plans .lc-plan-featured:hover{
    transform:none!important;
  }
}
@media(max-width:620px){
  .lc-plans{
    margin:.45rem auto 1.5rem;
    padding:1rem .9rem 1.5rem;
    border-radius:12px;
  }
  .lc-plans>.text-center{
    margin-bottom:1.35rem;
  }
  .lc-plans h1{
    font-size:1.75rem;
  }
  .lc-plans>.row{
    gap:1rem!important;
    max-width:none;
  }
  .lc-plans article>.p-4{
    padding:1.2rem!important;
  }
  .lc-plans .lc-plan-price{
    font-size:2.1rem!important;
  }
  .lc-plans .lc-plan-recommended-badge{
    white-space:normal;
    max-width:100%;
    text-align:center;
  }
}

/* LCPlanos 1.13.62 - revisão responsiva geral das telas públicas */
.lc-plans,
.lc-plan-detail,
.lc-checkout-shell,
.lc-payment-page,
.lc-complete-shell{
  width:min(100%, calc(100vw - 2rem));
  min-width:0;
}
.lc-plan-detail img,
.lc-checkout-shell img,
.lc-complete-shell img,
.lc-plan-detail video,
.lc-complete-shell video{
  max-width:100%!important;
  height:auto!important;
}
.lc-plan-detail table,
.lc-complete-thankyou table{
  max-width:100%!important;
}
.lc-plan-detail .plan-description,
.lc-complete-thankyou,
.lc-checkout-shell section,
.lc-checkout-shell aside{
  min-width:0;
  overflow-wrap:anywhere;
}

@media(max-width:900px){
  .lc-plan-detail{
    margin:1rem auto!important;
    padding:1.35rem!important;
  }
  .lc-plan-detail>.row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:1.25rem!important;
  }
  .lc-plan-detail aside{
    position:static!important;
    top:auto!important;
    width:100%!important;
  }

  .lc-checkout-shell{
    margin:1rem auto!important;
    padding:1.35rem!important;
  }
  .lc-checkout-shell form>.row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:1.25rem!important;
  }
  .lc-checkout-shell form>.row>[class*="col-"]{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
  }
  .lc-checkout-shell section,
  .lc-checkout-shell aside{
    width:100%!important;
    max-width:100%!important;
  }
  .lc-checkout-shell aside{
    position:static!important;
  }

  .lc-complete-shell{
    margin:1.25rem auto;
  }
}

@media(max-width:620px){
  .lc-plans,
  .lc-plan-detail,
  .lc-checkout-shell,
  .lc-payment-page,
  .lc-complete-shell{
    width:calc(100vw - 1rem)!important;
    max-width:calc(100vw - 1rem)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .lc-plan-detail,
  .lc-checkout-shell{
    padding:.9rem!important;
    border-radius:12px!important;
  }

  .lc-checkout-shell>.d-flex{
    display:grid!important;
    grid-template-columns:1fr auto;
    gap:.75rem!important;
    align-items:start!important;
    margin-bottom:1rem!important;
    padding-bottom:.85rem!important;
  }
  .lc-checkout-shell h1{
    font-size:1.55rem!important;
    line-height:1.15;
  }
  .lc-checkout-shell>.d-flex>div:first-child{
    min-width:0;
  }
  .lc-checkout-shell>.d-flex>.text-end{
    min-width:76px;
    text-align:right!important;
  }
  .lc-checkout-shell form>.row{
    gap:.9rem!important;
  }
  .lc-checkout-shell section,
  .lc-checkout-shell aside{
    padding:1rem!important;
    border-radius:10px!important;
  }
  .lc-checkout-shell .row.g-3,
  .lc-checkout-shell .lc-password-row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:.75rem!important;
  }
  .lc-checkout-shell .row.g-3>[class*="col-"],
  .lc-checkout-shell .lc-password-row>[class*="col-"]{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
  }
  .lc-checkout-shell .form-control,
  .lc-checkout-shell .form-select{
    min-width:0!important;
    width:100%!important;
    font-size:16px!important;
  }
  .lc-checkout-shell .lc-payment-option{
    width:100%!important;
    min-width:0!important;
  }
  .lc-checkout-shell .lc-payment-option__image{
    max-width:min(170px,72vw)!important;
  }
  .lc-checkout-shell aside>div.d-flex{
    gap:.65rem;
  }
  .lc-checkout-shell aside>div.d-flex>*{
    min-width:0;
  }
  .lc-checkout-shell .lc-checkout-trust-badge{
    white-space:normal;
    text-align:center;
  }

  .lc-plan-detail h1{
    padding-left:.75rem;
    font-size:1.55rem;
  }
  .lc-plan-detail aside{
    padding:1rem!important;
  }
  .lc-plan-detail aside>div.d-flex{
    gap:.65rem;
  }
  .lc-plan-detail .lc-plan-trust-badge{
    white-space:normal;
    text-align:center;
  }
  .lc-plan-detail .plan-description table,
  .lc-complete-thankyou table{
    width:100%!important;
    display:table!important;
    table-layout:fixed;
  }
  .lc-plan-detail .plan-description td,
  .lc-plan-detail .plan-description th,
  .lc-complete-thankyou td,
  .lc-complete-thankyou th{
    max-width:100%!important;
    overflow-wrap:anywhere;
  }

  .lc-complete-shell{
    padding:0!important;
    margin-top:.75rem!important;
    margin-bottom:1rem!important;
  }
  .lc-complete-card{
    padding:1.1rem!important;
    border-radius:12px;
  }
  .lc-complete-card h1{
    font-size:1.45rem;
  }
  .lc-complete-thankyou{
    font-size:.95rem;
    line-height:1.5;
  }
  .lc-complete-button{
    width:100%;
    min-width:0;
  }
}

@media(max-width:380px){
  .lc-checkout-shell>.d-flex{
    grid-template-columns:1fr!important;
  }
  .lc-checkout-shell>.d-flex>.text-end{
    text-align:left!important;
  }
  .lc-payment-page .lc-payment-trust-badge,
  .lc-checkout-shell .lc-checkout-trust-badge,
  .lc-plan-detail .lc-plan-trust-badge{
    font-size:.6rem;
  }
}


/* LCPlanos 1.13.76 - centralizacao do grid quando ha um ou dois planos */
@media (min-width:901px){
  .lc-plans>.row.lc-plan-grid--single{
    grid-template-columns:minmax(0,390px)!important;
    justify-content:center;
  }
  .lc-plans>.row.lc-plan-grid--double{
    grid-template-columns:repeat(2,minmax(0,390px))!important;
    justify-content:center;
  }
}

/* LCPlanos 1.14.65 — refinamento cirúrgico do checkout inspirado no LCBolões */
/* LCPlanos 1.14.69 — identidade cromática do plano preservada também nas etapas */
.lc-checkout-shell{--accent:var(--lc-accent)}
.lc-checkout-shell .lc-checkout-section-title{display:flex;align-items:center;gap:.65rem}
.lc-checkout-shell .lc-section-step{display:inline-grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,#18263b);border:1px solid color-mix(in srgb,var(--accent) 55%,#43516a);color:#fff;font-size:.72rem;font-weight:900}
.lc-checkout-shell .form-control,.lc-checkout-shell .form-select{transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.lc-checkout-shell .form-control[aria-invalid="false"]:not([readonly]),.lc-checkout-shell .form-select[aria-invalid="false"]{border-color:#356951}
.lc-checkout-shell .form-control[aria-invalid="true"],.lc-checkout-shell .form-select[aria-invalid="true"]{border-color:#e56d75;box-shadow:0 0 0 3px rgba(229,109,117,.09)}
.lc-checkout-shell .lc-payment-cta{transition:transform .15s ease,filter .15s ease,opacity .15s ease}
.lc-checkout-shell .lc-payment-cta:not(:disabled):active{transform:translateY(1px) scale(.997)}
@media(min-width:901px){.lc-checkout-shell .lc-checkout-summary-panel{position:sticky;top:18px;height:auto!important;align-self:flex-start}}
@media(max-width:900px){.lc-checkout-shell .lc-checkout-summary-panel{position:static!important;top:auto!important}}
@media(max-width:620px){.lc-checkout-shell .lc-section-step{width:24px;height:24px;flex-basis:24px}}
@media(prefers-reduced-motion:reduce){.lc-checkout-shell .form-control,.lc-checkout-shell .form-select,.lc-checkout-shell .lc-payment-cta{transition:none}}


/* LCPlanos 1.14.67 — densidade vertical do checkout alinhada cirurgicamente ao LCBolões 0.2.42 */
/*
 * Somente apresentação: replica medidas comprovadas do checkout de bolões
 * sem alterar markup funcional, validações, campos, submissão ou pagamento.
 */
@media(min-width:901px){
  .lc-checkout-shell{
    max-width:980px!important;
    padding:24px!important;
    border-color:#31425c!important;
    border-top-color:var(--lc-accent)!important;
    border-top-width:3px!important;
    background:#111b2e!important;
    box-shadow:0 16px 40px rgba(0,0,0,.22)!important;
  }
  .lc-checkout-shell>.d-flex{
    gap:24px!important;
    margin-bottom:20px!important;
    padding-bottom:18px!important;
    border-bottom-color:#3a475d!important;
  }
  .lc-checkout-shell h1{
    margin:0!important;
    font-size:1.65rem!important;
    line-height:1.08!important;
  }
  .lc-checkout-shell>.d-flex>div:first-child>.text-uppercase{
    display:block;
    margin-bottom:4px!important;
    color:#9eabc0!important;
    font-size:.7rem!important;
    font-weight:800!important;
    letter-spacing:.06em!important;
  }
  .lc-checkout-shell>.d-flex>div:first-child>.text-muted{
    margin-top:5px!important;
    color:#aeb9cb!important;
    font-size:.88rem!important;
  }
  .lc-checkout-shell>.d-flex>.text-end{
    min-width:130px;
    color:#aeb9cb!important;
  }
  .lc-checkout-shell>.d-flex>.text-end .small{
    font-size:.72rem!important;
  }
  .lc-checkout-shell>.d-flex>.text-end .fw-bold{
    font-size:1.05rem!important;
    line-height:1.1!important;
  }
  .lc-checkout-shell form>.row{
    grid-template-columns:minmax(0,1.65fr) minmax(280px,.95fr)!important;
    gap:20px!important;
  }
  .lc-checkout-shell .lc-checkout-main-panel,
  .lc-checkout-shell .lc-checkout-summary-panel{
    padding:22px!important;
    border:1px solid #31425c!important;
    border-radius:13px!important;
    background:#111b2e!important;
  }
}

/* Mesmas medidas internas do formulário do LCBolões. */
.lc-checkout-shell .lc-checkout-section-title{
  margin-bottom:16px!important;
  color:#f4f7fc!important;
  font-size:1.15rem!important;
  line-height:1.2!important;
}
.lc-checkout-shell .lc-checkout-main-panel>.mb-3,
.lc-checkout-shell .lc-checkout-main-panel>.row.mb-3{
  margin-bottom:14px!important;
}
.lc-checkout-shell .row.g-3,
.lc-checkout-shell .lc-password-row{
  gap:14px 13px!important;
}
.lc-checkout-shell label.form-label{
  margin-bottom:6px!important;
  color:#e7ebf2!important;
  font-size:.78rem!important;
  font-weight:500!important;
}
.lc-checkout-shell .form-control,
.lc-checkout-shell .form-select{
  min-height:42px!important;
  padding:11px 12px!important;
  border-color:#43516a!important;
  border-radius:8px!important;
  background:#202d42!important;
  color:#f7f9fc!important;
  font-size:.9rem!important;
}
.lc-checkout-shell .form-control[readonly]{
  background:#1b273a!important;
  color:#9ba7b8!important;
}
.lc-checkout-shell .form-text{
  margin-top:4px!important;
  color:#8390a4!important;
  font-size:.68rem!important;
  line-height:1.35!important;
}

/* A etapa 2 passa a ter exatamente o mesmo respiro/separador entre seções do checkout de bolões. */
.lc-checkout-shell .lc-checkout-main-panel>.form-check.mb-4{
  margin-bottom:0!important;
}
.lc-checkout-shell .lc-checkout-main-panel>h3.lc-checkout-section-title{
  margin-top:22px!important;
  padding-top:20px!important;
  border-top:1px solid #334158;
}

/* Tablet/mobile preservam a responsividade já validada; apenas herdando a densidade visual. */
@media(max-width:900px){
  .lc-checkout-shell{
    padding:18px!important;
  }
  .lc-checkout-shell .lc-checkout-main-panel,
  .lc-checkout-shell .lc-checkout-summary-panel{
    padding:18px!important;
  }
}
@media(max-width:620px){
  .lc-checkout-shell{
    padding:14px!important;
  }
  .lc-checkout-shell .lc-checkout-main-panel,
  .lc-checkout-shell .lc-checkout-summary-panel{
    padding:16px!important;
  }
  .lc-checkout-shell .form-control,
  .lc-checkout-shell .form-select{
    min-height:42px!important;
  }
}

/* LCPlanos 1.14.68 — distância superior do checkout igual ao LCBolões 0.2.42 */
/* Somente layout: remove o respiro vertical extra de 2.5rem do shell dos planos. */
.lc-checkout-shell{margin:0 auto!important}

/* LCPlanos 1.14.70 — preserva a cor dinâmica do plano também na borda superior do checkout */
