/* Comprobante de pago (paso de pago) y constancia imprimible (pantalla final). */
.visually-hidden,input.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important}
.voucher-upload{position:relative}
.optional{font-weight:400;color:var(--secondary-ui,#aaa);font-size:11px;letter-spacing:0;display:inline}
.voucher{display:grid;gap:14px;margin-top:2px}
.voucher-upload{display:grid;gap:8px}
.voucher-title{font-size:12px;font-weight:600;letter-spacing:.005em}
.voucher-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.voucher-button{cursor:pointer;align-self:flex-start;display:inline-flex}
.voucher-button .arrow-icon,.print-receipt .arrow-icon{width:17px;height:17px}
.arrow-up{transform:rotate(-90deg)}
.arrow-down{transform:rotate(90deg)}
.voucher-remove{border:0;background:none;color:var(--secondary-ui,#aaa);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer;padding:6px 2px}
.voucher-remove:hover{color:var(--text-ui,#fff)}
.voucher-status{margin:0;font-size:11px;line-height:1.45;color:var(--secondary-ui,#aaa);overflow-wrap:anywhere}
.voucher-status.is-ok{color:var(--text-ui,#f9f9f9)}
.voucher-status.is-error{color:#ff8a7a}
.voucher-button:focus-visible{outline:3px solid #b8b8b8;outline-offset:3px}

.success-code{margin:4px 0 0;font-size:13px;font-weight:600;letter-spacing:.06em}
.print-receipt{align-self:flex-start;margin-top:6px}
.success-note{margin:2px 0 0;font-size:11px;color:var(--secondary-ui,#aaa)}

/* La constancia solo existe mientras se imprime. */
#print-sheet{display:none}
@media print{
  @page{size:A4;margin:16mm}
  :root,body{color-scheme:light!important}
  body>*:not(#print-sheet){display:none!important}
  html,body{background:#fff!important;height:auto!important;min-height:0!important;overflow:visible!important;margin:0!important;padding:0!important}
  #print-sheet{display:block;color:#111;font-family:'Noto Sans','Segoe UI',Arial,sans-serif;font-size:11pt;line-height:1.45}
  #print-sheet .ps-logo{display:block;width:62mm;height:auto;margin:0 0 9mm}
  #print-sheet h1{font-size:20pt;font-weight:600;letter-spacing:-.02em;margin:0 0 4px}
  #print-sheet .ps-meta{margin:0 0 18px;color:#333;font-size:10pt}
  /* Mismo cuadro que «Revisa tu registro»: dos columnas, etiqueta arriba y dato debajo. */
  #print-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:0;border-top:1.5px solid #111}
  #print-sheet .ps-item{break-inside:avoid;padding:9px 0 8px;border-bottom:1px solid #d6d6d6}
  #print-sheet dt{margin:0 0 3px;color:#666;font-size:8.5pt;letter-spacing:.03em}
  #print-sheet dd{margin:0;font-weight:600;font-size:11pt;overflow-wrap:anywhere}
  #print-sheet .ps-note{margin:16px 0 0;padding:10px 12px;border-left:3px solid #2185ff;background:#f2f7ff;font-size:9.5pt}
  #print-sheet .ps-foot{margin:18px 0 0;font-size:8.5pt;color:#666}
}

/* ---- Espaciado (2026-11-05): más aire en el paso de pago y en el resumen ---- */
.voucher{gap:20px;margin-top:6px;padding-top:18px;border-top:1px solid var(--line-ui,#353535)}
.voucher label{line-height:1.4}
.voucher label .optional,.voucher-title .optional{display:inline;margin:0 0 0 4px}
.voucher input:not([type=file]){margin-top:10px}
.voucher-upload{gap:10px}
.voucher-row{gap:16px}
.review{gap:16px 24px!important;font-size:13px!important}
.review div{padding-bottom:10px!important}
.review span{font-size:11px!important;margin-bottom:5px!important;letter-spacing:.02em}
.review b{font-size:13.5px;line-height:1.35}
@media (max-width:700px){.review{gap:12px 16px!important;font-size:12px!important}.voucher{gap:16px;padding-top:14px}}

/* ---- Barra de desplazamiento del panel: fina y discreta, sin flechas ---- */
@supports not selector(::-webkit-scrollbar){
  .panel,.info-panel,.glass-select-list,.country-list{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}
  body.light .panel,body.light .info-panel{scrollbar-color:rgba(0,0,0,.25) transparent}
}
.panel::-webkit-scrollbar,.info-panel::-webkit-scrollbar{width:6px}
.panel::-webkit-scrollbar-track,.info-panel::-webkit-scrollbar-track{background:transparent;margin:28px 0}
.panel::-webkit-scrollbar-thumb,.info-panel::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:6px}
.panel::-webkit-scrollbar-thumb:hover,.info-panel::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.38)}
body.light .panel::-webkit-scrollbar-thumb,body.light .info-panel::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25)}
.panel::-webkit-scrollbar-corner{background:transparent}
.panel::-webkit-scrollbar-button,.info-panel::-webkit-scrollbar-button{display:none;height:0}
