/* Checkout do pacote — tudo prefixado com .ck para não colidir com o site */
.ck-backdrop{position:fixed; inset:0; z-index:200; background:rgba(10,26,40,.62); backdrop-filter:blur(4px); display:flex; align-items:flex-start; justify-content:center; padding:24px 16px; overflow-y:auto}
.ck-backdrop[hidden]{display:none}
.ck{background:var(--paper,#FAF6ED); color:var(--text,#0F2233); width:100%; max-width:760px; border-radius:22px; box-shadow:0 40px 90px -30px rgba(0,0,0,.7); overflow:hidden; margin:auto 0}
.ck__head{background:var(--ink,#0A1A28); color:#fff; padding:20px 24px 16px; position:relative}
.ck__head h2{font-size:22px; color:#fff; padding-right:40px}
.ck__head p{color:rgba(255,255,255,.7); font-size:13px; margin-top:4px}
.ck__close{position:absolute; top:14px; right:14px; width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,.25); background:transparent; color:#fff; font-size:18px; line-height:1}
.ck__close:hover{background:rgba(255,255,255,.12)}
.ck__steps{display:flex; gap:6px; margin-top:14px; list-style:none; padding:0; flex-wrap:wrap}
.ck__steps li{font-family:var(--ff-mono,monospace); font-size:10px; letter-spacing:.08em; text-transform:uppercase; padding:4px 9px; border-radius:999px; border:1px solid rgba(255,255,255,.2); color:rgba(255,255,255,.6)}
.ck__steps li[data-on="true"]{background:var(--sun,#FF5C1A); border-color:var(--sun,#FF5C1A); color:#fff}
.ck__steps li[data-done="true"]{color:#fff; border-color:rgba(255,255,255,.5)}
.ck__body{padding:22px 24px}
.ck__foot{display:flex; gap:10px; align-items:center; justify-content:space-between; padding:16px 24px 22px; border-top:1px dashed var(--line,#E3DACB); flex-wrap:wrap}
.ck__total{font-size:12px; color:var(--muted,#5E6E7C)}
.ck__total b{display:block; font-family:var(--ff-display,sans-serif); font-size:24px; color:var(--text,#0F2233); letter-spacing:-.03em}
.ck-btn{border:0; border-radius:999px; padding:13px 22px; font-weight:700; font-size:14.5px; background:var(--sun,#FF5C1A); color:#fff; display:inline-flex; align-items:center; gap:8px}
.ck-btn:hover{filter:brightness(1.05)}
.ck-btn:disabled{opacity:.55; cursor:not-allowed}
.ck-btn--ghost{background:transparent; color:var(--text,#0F2233); border:1.5px solid var(--line,#E3DACB)}
.ck-btn--ink{background:var(--ink,#0A1A28)}
.ck-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:12px 14px}
.ck-f{display:flex; flex-direction:column; gap:5px; grid-column:span 6}
.ck-f--3{grid-column:span 3} .ck-f--2{grid-column:span 2} .ck-f--4{grid-column:span 4}
.ck-f label{font-size:12px; font-weight:600; color:var(--muted,#5E6E7C)}
.ck-f input,.ck-f select{border:1.5px solid var(--line,#E3DACB); background:#fff; border-radius:10px; padding:11px 12px; font-size:15px; width:100%; min-width:0}
.ck-f input:focus,.ck-f select:focus{outline:none; border-color:var(--ink,#0A1A28)}
.ck-f[data-err] input,.ck-f[data-err] select{border-color:#C8102E}
.ck-f small.ck-err{color:#C8102E; font-size:11.5px}
.ck-sum{display:flex; gap:14px; align-items:center; background:#fff; border:1px solid var(--line,#E3DACB); border-radius:14px; padding:12px 14px; margin-bottom:18px}
.ck-sum__art{width:62px; height:62px; border-radius:12px; flex:none; display:grid; place-items:center; color:#fff; font-family:var(--ff-display,sans-serif); font-weight:800; font-size:18px}
.ck-sum h3{font-size:17px}
.ck-sum p{font-size:12.5px; color:var(--muted,#5E6E7C)}
.ck-h{font-size:15px; margin:18px 0 10px; font-family:var(--ff-display,sans-serif)}
.ck-h:first-child{margin-top:0}
.ck-stepper{display:inline-flex; align-items:center; gap:10px}
.ck-stepper button{width:36px; height:36px; border-radius:50%; border:1.5px solid var(--line,#E3DACB); background:#fff; font-size:18px}
.ck-stepper output{min-width:22px; text-align:center; font-weight:700; font-size:16px}
.ck-trav{border:1px solid var(--line-2,#EDE5D8); background:#fff; border-radius:12px; padding:12px; margin-top:10px}
.ck-trav b{font-size:12.5px; display:block; margin-bottom:8px}
.ck-drop{border:1.5px dashed var(--line,#E3DACB); border-radius:14px; background:#fff; padding:16px; display:flex; gap:14px; align-items:center; cursor:pointer; position:relative}
.ck-drop:hover,.ck-drop:focus-within{border-color:var(--ink,#0A1A28)}
.ck-drop input{position:absolute; inset:0; opacity:0; cursor:pointer}
.ck-drop i{flex:none; width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:var(--paper-2,#F1EADC); font-style:normal; font-size:20px}
.ck-drop b{display:block; font-size:14px}
.ck-drop span{font-size:12px; color:var(--muted,#5E6E7C)}
.ck-drop[data-ok="true"]{border-style:solid; border-color:var(--ok,#12805C); background:#F2FAF6}
.ck-drop[data-ok="true"] i{background:var(--ok,#12805C); color:#fff}
.ck-drop + .ck-drop{margin-top:12px}
.ck-pay{display:grid; grid-template-columns:repeat(3,1fr); gap:10px}
.ck-pay button{border:1.5px solid var(--line,#E3DACB); background:#fff; border-radius:14px; padding:14px 12px; text-align:left}
.ck-pay button b{display:block; font-size:15px}
.ck-pay button span{font-size:11.5px; color:var(--muted,#5E6E7C)}
.ck-pay button[aria-pressed="true"]{border-color:var(--ink,#0A1A28); box-shadow:inset 0 0 0 1px var(--ink,#0A1A28)}
.ck-note{font-size:12px; color:var(--muted,#5E6E7C); margin-top:12px; line-height:1.45}
.ck-note b{color:var(--text,#0F2233)}
.ck-card{margin-top:14px; background:#fff; border:1px solid var(--line,#E3DACB); border-radius:14px; padding:14px; display:flex; gap:12px; align-items:center; flex-wrap:wrap}
.ck-card__info{flex:1; min-width:180px; font-size:13.5px}
.ck-card__info b{display:block; font-size:15px}
.ck-check{display:flex; gap:10px; align-items:flex-start; font-size:12.5px; margin-top:16px}
.ck-check input{margin-top:3px; width:16px; height:16px; accent-color:var(--ink,#0A1A28)}
.ck-alert{background:#FDECEE; color:#8A1020; border-radius:12px; padding:12px 14px; font-size:13px; margin-bottom:14px}
.ck-ok{background:#EAF6F0; color:#0D5E43; border-radius:12px; padding:12px 14px; font-size:13.5px; margin-bottom:14px}
.ck-done{text-align:center}
.ck-done h3{font-size:24px; margin-bottom:6px}
.ck-code{font-family:var(--ff-mono,monospace); font-size:13px; background:#fff; border:1px solid var(--line,#E3DACB); border-radius:999px; padding:5px 12px; display:inline-block; margin:8px 0 16px}
.ck-qr{width:220px; height:220px; margin:10px auto; background:#fff; padding:10px; border-radius:14px; border:1px solid var(--line,#E3DACB)}
.ck-qr svg,.ck-qr img{width:100%; height:100%}
.ck-copy{display:flex; gap:8px; max-width:520px; margin:10px auto 0}
.ck-copy input{flex:1; min-width:0; border:1.5px solid var(--line,#E3DACB); border-radius:10px; padding:10px; font-family:var(--ff-mono,monospace); font-size:12px}
.ck-status{display:inline-flex; align-items:center; gap:8px; font-size:13px; margin-top:14px; color:var(--muted,#5E6E7C)}
.ck-status i{width:9px; height:9px; border-radius:50%; background:var(--sun-2,#FFA53D); animation:ckpulse 1.4s infinite}
@keyframes ckpulse{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.ck-status i{animation:none}}

/* janela segura do cartão */
.ck-secure{position:fixed; inset:0; z-index:260; background:rgba(5,12,20,.72); display:flex; align-items:center; justify-content:center; padding:16px}
.ck-secure[hidden]{display:none}
.ck-secure__box{background:#fff; color:#0F2233; width:100%; max-width:420px; border-radius:18px; overflow:hidden; box-shadow:0 30px 80px -20px rgba(0,0,0,.8)}
.ck-secure__bar{display:flex; align-items:center; gap:10px; padding:14px 18px; background:#0E2436; color:#fff; font-size:13px}
.ck-secure__bar b{font-size:14px}
.ck-secure__bar svg{color:#4ADE80; flex:none}
.ck-secure__bar small{margin-left:auto; opacity:.7; font-size:11px}
.ck-secure__body{padding:18px}
.ck-secure__field{display:flex; flex-direction:column; gap:5px; margin-bottom:12px}
.ck-secure__field label{font-size:12px; font-weight:600; color:#5E6E7C}
.ck-secure__field input,.ck-secure__field select,.ck-mpf{border:1.5px solid #E3DACB; border-radius:10px; padding:0 12px; height:44px; font-size:15px; width:100%; background:#fff}
.ck-mpf{padding:0 12px}
.ck-secure__row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.ck-secure__test{background:#FFF6E5; color:#7A4E0F; font-size:12px; border-radius:10px; padding:9px 11px; margin-bottom:12px}
.ck-secure__foot{display:flex; gap:10px; justify-content:flex-end; padding:0 18px 18px}
.ck-secure__fine{font-size:11px; color:#5E6E7C; padding:0 18px 16px; line-height:1.45}

@media (max-width:600px){
  .ck-backdrop{padding:0}
  .ck{border-radius:0; min-height:100%}
  .ck-f--3,.ck-f--2,.ck-f--4{grid-column:span 6}
  .ck-pay{grid-template-columns:1fr}
  .ck__foot .ck-btn{flex:1; justify-content:center}
}
