@font-face{font-family:"Unbounded";src:url(unbounded-extrabold.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
/* Pase Peyote: el boleto de estadio retro. Lo usan la página para comprar, la página del QR y la descarga para imprimir.
   Proporción 2.35:1, papel hueso, talón negro con QR. Todo se mide con el ancho del boleto (cqw). */
.tk{--tk-paper:#f1eee7;--tk-ink:#151412;--tk-mute:#77746c;--tk-or:#ff8346;--tk-bone:#f7f6f2;--tk-page:#f7f6f2;
  container-type:inline-size;position:relative;display:grid;grid-template-columns:minmax(0,1fr) 26%;width:100%;aspect-ratio:2.35/1;
  background:var(--tk-paper);color:var(--tk-ink);filter:drop-shadow(0 18px 30px rgba(21,20,18,.16));font-family:Rubik,Arial,sans-serif}
.tk *{box-sizing:border-box}
.tk::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(21,20,18,.02) 0 1px,transparent 1px 4px);pointer-events:none}
.tk-main{position:relative;display:flex;flex-direction:column;padding:3.6cqw 4.2cqw 2.6cqw;border-right:2px dashed rgba(21,20,18,.35);overflow:hidden}
.tk-row1{display:flex;align-items:center;justify-content:space-between}
.tk-row1 img{width:auto;height:5cqw}
.tk-k{font:600 1.7cqw Rubik,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.tk-title{margin-top:3.4cqw;font:400 5cqw/.95 "Unbounded",Rubik,Arial,sans-serif;text-transform:uppercase;white-space:nowrap}
.tk-sub{margin-top:1.2cqw;font:600 2.1cqw Rubik,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.tk-msg{max-width:62%;margin-top:1.2cqw;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--tk-mute);font:500 1.8cqw/1.3 Rubik,Arial,sans-serif;overflow-wrap:anywhere}
.tk-rule{height:.25cqw;margin:auto 4.5cqw 1.6cqw 0;background:var(--tk-or)}
.tk-meta{display:flex;align-items:flex-end;gap:7cqw}
.tk-meta div{display:flex;flex-direction:column;min-width:0}
.tk-meta .k{color:var(--tk-mute);font:600 1.45cqw Rubik,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.tk-meta .v{margin-top:.5cqw;font:400 2.6cqw/1 "Unbounded",Rubik,Arial,sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:26cqw}
.tk-warn{margin-top:1.3cqw;color:var(--tk-mute);font:500 1.5cqw Rubik,Arial,sans-serif}
.tk-stamp{position:absolute;top:10.5cqw;right:3.5cqw;display:flex;align-items:center;justify-content:center;width:15cqw;height:15cqw;border:.35cqw solid var(--tk-or);border-radius:50%}
.tk-stamp::after{content:"";position:absolute;inset:.9cqw;border:.2cqw dashed var(--tk-or);border-radius:50%}
.tk-stamp img{width:62%;height:auto}
.tk-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:3.4cqw 2.2cqw;background:var(--tk-ink);color:var(--tk-bone);text-align:center}
.tk-stub .k{color:#d8d5cc;font:600 1.45cqw Rubik,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.tk-amt{font:400 4.4cqw/1 "Unbounded",Rubik,Arial,sans-serif}
.tk-cur{margin-top:-.4cqw;font:600 1.6cqw Rubik,Arial,sans-serif;letter-spacing:.2em}
.tk-qr{width:15cqw;height:15cqw;padding:1cqw;background:var(--tk-bone)}
.tk-qr svg{display:block;width:100%;height:100%}
.tk-qr.is-sample svg{opacity:.18}
.tk-code{color:var(--tk-or);font:600 1.9cqw Rubik,Arial,sans-serif;letter-spacing:.06em;word-break:break-all}
.tk-notch{position:absolute;right:calc(26% - 1.8cqw);z-index:2;width:3.6cqw;height:3.6cqw;border-radius:50%;background:var(--tk-page)}
.tk-notch.t{top:-1.8cqw}.tk-notch.b{bottom:-1.8cqw}
