/* =====================================================================
   registro.css - [yape_registro] y [yape_consulta]
   ---------------------------------------------------------------------
   El aspecto es el del plugin "Yape Tickets" de WordPress, copiado regla
   por regla. Un cambio: en WordPress los dos atajos usaban las mismas
   clases genericas (.yto-card, .msg, .ok, .tab, .btn) con valores
   distintos, y si los dos estaban en una pagina el ultimo pisaba al
   primero. Aqui el registro va dentro de .yto-reg y la consulta dentro
   de .yto-consulta: cada uno con lo suyo.
   ===================================================================== */
/* ---- Cabecera "¿Como participar?" ---- */
.yto-lock-wrap{position:relative;
}
.yto-overlay-lock{position:absolute;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;border-radius:20px;background:rgba(0,0,0,.85);
}
.yto-overlay-lock img{width:clamp(220px,85vw,780px);max-width:92%;height:auto;display:block;
}
@media (min-width:900px){
.yto-overlay-lock img{max-width:760px;width:70%;
}
}
.yto-wrap{
    max-width:860px;
    margin:16px auto;
    font-family:'DM Sans',system-ui,sans-serif;
}
.yto-hdr{
    background:#74238447;
    border-radius:20px;
    padding:16px 20px 20px;
    box-shadow:0 8px 32px rgba(0,0,0,.18);
}
.yto-hdr .topbar{
    display:flex;align-items:center;gap:8px;
    padding-bottom:12px;
    border-bottom:1px solid rgba(255,255,255,.15);
    margin-bottom:18px;
    min-width:0;
}
.yto-hdr .topbar .tb-icon{
    width:30px;height:30px;
    background:rgba(255,255,255,.15);
    border-radius:8px;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
}
.yto-hdr .topbar .tb-icon svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
.yto-hdr .topbar .tb-date{
    flex:1;min-width:0;
    font-size:14px;font-weight:600;color:rgba(255,255,255,.85);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.yto-hdr .topbar .tb-date strong{font-weight:800;color:#fff;
}
.yto-hdr .topbar .tb-badge{
    display:inline-flex;align-items:center;gap:5px;
    background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.28);
    border-radius:999px;padding:5px 11px;
    font-size:12px;font-weight:700;color:#fff;white-space:nowrap;
    text-decoration:none;flex-shrink:0;transition:background .2s;
}
.yto-hdr .topbar .tb-badge:hover{background:rgba(255,255,255,.25);
}
.yto-hdr .topbar .tb-badge .tb-dot{width:6px;height:6px;background:#4ade80;border-radius:50%;flex-shrink:0;
}
.yto-hdr .topbar .tb-badge svg{width:14px;height:14px;fill:#fff;flex-shrink:0;
}
.yto-hdr .topbar .tb-logo{height:34px;width:auto;max-width:80px;border-radius:8px;object-fit:contain;flex-shrink:0;
}
@media(max-width:480px){
.yto-hdr .topbar .tb-icon{display:none;
}
.yto-hdr .topbar .tb-logo{height:28px;max-width:64px;
}
.yto-hdr .topbar .tb-badge{padding:4px 9px;font-size:11px;
}
.yto-hdr .topbar .tb-date{font-size:13px;
}
}
.yto-hdr-title{
    text-align:center;
    font-size:28px;
    font-weight:400;
    color:#fff;
    letter-spacing:-.3px;
    margin-bottom:6px;
    font-family:'Anton';
}
.yto-hdr-title::after{
    content:'';display:block;
    width:40px;height:3px;
    background:rgba(255,255,255,.4);
    border-radius:999px;
    margin:8px auto 0;
}
.yto-hdr-cols{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:16px;
}
@media(max-width:600px){
.yto-hdr-cols{grid-template-columns:1fr;
}
}
.yto-col-card{
    background:#fff;
    border-radius:14px;
    padding:16px;
}
.yto-paso-num{
    width:26px;height:26px;
    background:#742384;
    color:#fff;
    border-radius:50%;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:13px;font-weight:800;
    flex-shrink:0;
    margin-right:8px;
}
.yto-paso-header{
    display:flex;align-items:center;
    margin-bottom:10px;
}
.yto-paso-label{
    font-size:13px;font-weight:800;color:#111;
}
.yto-paso-precio{
    font-size:13px;font-weight:700;
    color:#742384;
    margin-left:4px;
}
.yto-num-grande{
    font-size:22px;font-weight:900;
    color:#742384;
    letter-spacing:.3px;
    margin:4px 0 2px;
    line-height:1.1;
}
.yto-num-label{font-size:11px;color:#aaa;margin-bottom:2px;
}
.yto-num-benef{font-size:11px;color:#aaa;margin-top:4px;
}
.yto-num-benef strong{color:#555;font-weight:700;
}
.yto-copy-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    width:100%;
    background:#fff !important;
    color:#742384 !important;
    border:1.5px solid #742384 !important;
    border-radius:999px;padding:10px 14px;
    font-size:13px;font-weight:700;cursor:pointer;
    white-space:nowrap;
    transition:opacity .18s,transform .1s;
    -webkit-tap-highlight-color:transparent;
    text-transform:none !important;letter-spacing:normal !important;box-shadow:none !important;
    margin-top:12px;box-sizing:border-box;
}
.yto-copy-btn:active{opacity:.8;transform:scale(.98);
}
.yto-copy-btn svg{width:14px;height:14px;fill:none;stroke:#742384;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;
}
.yto-copy-btn.copied{background:#f0fdf4 !important;color:#16a34a !important;border-color:#86efac !important;
}
.yto-copy-btn.copied svg{stroke:#16a34a;
}
.yto-register-btn{
    display:flex;align-items:center;justify-content:center;gap:8px;
    width:100%;
    background:#742384;
    color:#fff;border:none;
    border-radius:10px;padding:12px 14px;
    font-size:14px;font-weight:700;cursor:pointer;
    margin-top:10px;box-sizing:border-box;
    text-transform:none;letter-spacing:normal;box-shadow:none;
    text-decoration:none;
}
.yto-register-btn svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;
}
.yto-tip-inline{
    display:flex;align-items:flex-start;gap:8px;
    background:#f7f4fc;border-radius:10px;padding:10px 12px;
    margin-top:10px;
}
.yto-tip-inline svg{width:15px;height:15px;fill:none;stroke:#aaa;stroke-width:2;flex-shrink:0;margin-top:1px;
}
.yto-tip-inline span{font-size:12px;color:#888;line-height:1.4;
}
.yto-hdr-footer{
    text-align:center;margin-top:12px;
    font-size:12px;color:rgba(255,255,255,.5);
}
@media (max-width: 1024px){
.yto-wrap,.yto-card{max-width:600px;
}
}
@media (max-width: 560px){
.yto-wrap{max-width:100%;margin:12px 0;
}
.yto-hdr{border-radius:14px;padding:14px 14px 18px;
}
}
/* ---- Formulario de registro ---- */
.yto-reg .yto-card{
    max-width: 860px;
    margin: 16px auto;
    padding: 32px 28px 26px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 24px rgba(0,0,0,.08);
    font-family: 'DM Sans', system-ui, Segoe UI, Roboto, Arial;
}
@media(max-width:560px){
.yto-reg .yto-card{ margin:12px 10px; padding:24px 16px 20px;
}
}
.yto-reg .yto-title{
    margin: 0 0 4px;
    font-size: 22px;
    font-weight: 400;
    text-align: center;
    color: #575757;
    font-family: 'Anton';
}
.yto-reg .yto-subtitle{
    font-size: 13px;
    text-align: center;
    color: #999;
    margin-bottom: 26px;
}
.yto-reg .yto-form{
    font-size: 14px;
    line-height: 1.35;
}
.yto-reg .yto-form .row{
    margin-bottom: 10px;
}
.yto-reg .yto-form .field-label{
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 500;
    color: #999;
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 5px;
}
.yto-reg .yto-form .field-label .verified{
    font-size: 10px;
    background: #DCFCE7;
    color: #166534;
    padding: 1px 7px;
    border-radius: 20px;
    font-weight: 500;
    letter-spacing: 0;
}
.yto-reg .yto-inp-wrap{
    position: relative;
    display: flex;
    align-items: center;
}
.yto-reg .yto-inp-ico{
    position: absolute;
    left: 13px;
    display: flex;
    align-items: center;
    color: #bbb;
    pointer-events: none;
}
.yto-reg .yto-form input[type=text],
.yto-reg .yto-form input[type=email],
.yto-reg .yto-form input[type=number],
.yto-reg .yto-form input[type=date],
.yto-reg .yto-form input[type=time]{
    width: 100%;
    height: 46px;
    padding: 0 14px 0 42px;
    border: 1.5px solid #E3E3E3;
    border-radius: 999px;
    font-size: 14px;
    font-family: inherit;
    color: #111;
    background: #fff;
    transition: border-color 0.18s, box-shadow 0.18s;
    -webkit-appearance: none;
    outline: none;
}
.yto-reg .yto-form input:focus{
    border-width: 1px;             /* como el modal de ganadores: la linea fina + el halo */
    border-color: var(--foco-borde);
    box-shadow: var(--foco-halo);
}
.yto-reg .yto-form input::placeholder{ color: #DCDCDC;
}
.yto-reg .yto-select-wrap{
    position: relative;
}
.yto-reg .yto-select-wrap .yto-inp-ico{
    top: 50%;
    transform: translateY(-50%);
}
.yto-reg .yto-select-arr{
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    color: #bbb;
    pointer-events: none;
}
.yto-reg .yto-form select{
    width: 100%;
    height: 46px;
    padding: 0 36px 0 42px;
    border: 1.5px solid #E3E3E3;
    border-radius: 999px;
    font-size: 14px;
    font-family: inherit;
    color: #111;
    background: #fff;
    -webkit-appearance: none;
    outline: none;
    transition: border-color 0.18s, box-shadow 0.18s;
}
.yto-reg .yto-form select:focus{ border-width: 1px; border-color: var(--foco-borde); box-shadow: var(--foco-halo);
}
.yto-reg .yto-form select.yto-empty{ color: #C8C8C8;
}
.yto-reg .yto-form select option{ color: #111;
}
.yto-reg .grid-2{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
@media(max-width:520px){
.yto-reg .grid-2{ grid-template-columns: 1fr; gap: 0;
}
.yto-reg .grid-2 .row{ margin-bottom: 10px;
}
.yto-reg .grid-dni-nombre .row{ margin-bottom: 16px;
}
.yto-reg .grid-whatsapp-dep .row{ margin-bottom: 16px;
}
.yto-reg .grid-monto-tickets{ grid-template-columns: 1fr 1fr !important; gap: 12px !important;
}
.yto-reg .grid-monto-tickets .row{ margin-bottom: 0;
}
}
.yto-reg .yto-ticket-badge{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #434343;
    border-radius: 999px;
    height: 46px;
}
.yto-reg .yto-ticket-badge .ticket-num{
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    display: inline-block;
}
@keyframes yto-pop{
    0%  { transform: scale(1); }
    40% { transform: scale(1.45); }
    70% { transform: scale(0.92); }
    100%{ transform: scale(1); }
  }
.yto-reg .yto-ticket-badge .ticket-num.pop{
    animation: yto-pop 0.32s ease forwards;
}
.yto-reg .yto-ticket-badge .ticket-label{
    font-size: 13px;
    color: rgba(255,255,255,0.75);
    font-weight: 500;
}
.yto-reg .yto-price-hint{
    font-size: 11px;
    color: #bbb;
    text-align: right;
    margin-top: 4px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    min-height: 16px;
}
.yto-reg .yto-price-hint.promo-active{
    color: #16a34a;
    font-weight: 500;
}
.yto-reg .yto-form input[type=number]::-webkit-outer-spin-button,
.yto-reg .yto-form input[type=number]::-webkit-inner-spin-button{
    -webkit-appearance: none; margin: 0;
}
.yto-reg .yto-form input[type=number]{ -moz-appearance: textfield;
}
.yto-reg .yto-upload-zone{
    border: 1.5px dashed #E3E3E3;
    border-radius: 12px;
    padding: 24px 16px;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
    background: #FAF5FF;
}
.yto-reg .yto-upload-zone:hover{
    border-color: #7B2FBE;
    background: #F3E8FF;
}
.yto-reg .yto-upload-zone.has-file{
    border-color: #22c55e;
    background: #f0faf4;
    padding: 20px 16px;
}
.yto-reg .yto-preview-row{
    display: flex;
    align-items: center;
    gap: 12px;
}
.yto-reg .yto-preview-thumb{
    width: 72px;
    height: 72px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    border: 1px solid #d1fae5;
}
.yto-reg .yto-preview-info{
    flex: 1;
    text-align: left;
    min-width: 0;
}
.yto-reg .yto-preview-name{
    font-size: 12px;
    font-weight: 500;
    color: #166534;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.yto-reg .yto-preview-change{
    font-size: 11px;
    color: #16a34a;
    margin-top: 3px;
    text-decoration: underline;
    cursor: pointer;
}
.yto-reg .yto-preview-check{
    width: 28px;
    height: 28px;
    background: #22c55e;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.yto-reg .yto-upload-icon{
    width: 46px;
    height: 46px;
    margin: 0 auto 12px;
    background: #EDE0FA;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.yto-reg .yto-upload-icon svg{ width: 20px; height: 20px;
}
.yto-reg .yto-upload-text{
    font-size: 14px;
    color: #555;
    line-height: 1.4;
}
.yto-reg .yto-upload-text b{ color: #7B2FBE; font-weight: 600;
}
.yto-reg .yto-upload-hint{
    font-size: 11px;
    color: #bbb;
    margin-top: 5px;
}
.yto-reg .yto-action-row{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 22px 0 0;
    align-items: stretch;
}
@media(max-width:520px){
.yto-reg .yto-action-row{
      grid-template-columns: 1fr;
      gap: 10px;
}
}
.yto-reg .yto-terms-btn{
    display: block;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
}
.yto-reg .yto-terms-btn input[type=checkbox]{
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}
.yto-reg .yto-terms-face{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    height: 100%;
    min-height: 46px;
    padding: 12px 16px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 500;
    font-family: inherit;
    letter-spacing: 0.2px;
    transition: all 0.22s ease;
    background: #F5F5F5;
    border: 1.5px solid #E3E3E3;
    color: #555;
}
.yto-reg .yto-terms-face .yto-terms-link{
    color: #7B2FBE;
    font-weight: 600;
}
.yto-reg .yto-terms-face .yto-terms-check{
    display: none;
}
.yto-reg .yto-terms-face .yto-terms-icon{
    display: inline-flex;
    flex-shrink: 0;
}
.yto-reg .yto-terms-btn input[type=checkbox]:checked + .yto-terms-face{
    background: #eafff0;
    border-color: #66e090;
    color: #2eaa55;
}
.yto-reg .yto-terms-btn input[type=checkbox]:checked + .yto-terms-face .yto-terms-icon{
    display: none;
}
.yto-reg .yto-terms-btn input[type=checkbox]:checked + .yto-terms-face .yto-terms-check{
    display: inline-flex;
    flex-shrink: 0;
}
.yto-reg .yto-terms-btn input[type=checkbox]:checked + .yto-terms-face .yto-terms-link{
    color: #2eaa55;
}
.yto-reg .yto-terms-face:hover{ filter: brightness(0.97);
}
.yto-reg .yto-btn-submit{
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    background: #7B2FBE;
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    letter-spacing: 0.6px;
    cursor: pointer;
    transition: transform 0.1s, opacity 0.18s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.yto-reg .yto-btn-submit:hover{ opacity: 0.85; color: #fff; background: #7B2FBE;
}
.yto-reg .yto-btn-submit:active{ transform: scale(0.98);
}
.yto-reg .yto-btn-submit:disabled{
    opacity: 0.55;
    cursor: not-allowed;
}
.yto-reg .msg{
    margin-top: 14px;
    padding: 12px;
    border-radius: 12px;
    display: none;
    font-size: 14px;
}
.yto-reg .ok{ background: #f0faf4; border: 1.5px solid #2ecc71; color: #1a6b3a;
}
.yto-reg .err{ background: #fef2f2; border: 1.5px solid #e74c3c; color: #991b1b;
}
.yto-reg .yto-tickets-hidden{ display: none;
}
/* ---- Banner de promociones ---- */
.yto-reg .yto-banner{
    max-width: 860px;
    margin: 16px auto;
    padding: 12px 16px;
    border-radius: 12px;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    align-items: center;
}
.yto-reg .yto-banner.on{
    background: linear-gradient(228.83deg, #13e57400 -51.56%, #005eff00 8.91%, #28bbd300 72.65%);
    color: #fff;
    box-shadow: 0 6px 18px rgba(0,0,0,.12);
}
.yto-reg .yto-banner.off{
    background: #f1f1f1;
    color: #666;
    border: 1px solid #e0e0e0;
}
.yto-reg .yto-banner .chip{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255,255,255,.2);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 600;
}
.yto-reg .yto-banner .yto-bi{
    display: inline-block;
    width: 1.1em;
    height: 1.1em;
    vertical-align: -.2em;
    flex: none;
}
.yto-reg .yto-banner .item strong{
    font-weight: 700;
    background: #ffffff;
    color: #212728;
    border-radius: 14px;
    padding: 2px 5px;
}
.yto-reg .yto-right-sep{
    display: inline;
    margin: 0 6px;
    opacity: .9;
}
@media (max-width:700px){
.yto-reg .yto-right-sep{ display:none;
}
}
.yto-reg .yto-banner .promos-list{
    letter-spacing: .2px;
}
.yto-reg .yto-banner .mid .sep{
    margin: 0 8px;
}
@media (max-width:700px){
.yto-reg .yto-banner{
      flex-direction: column;
      align-items: center;
}
}
@media (max-width:700px){
.yto-reg .yto-banner .right{
      display: flex;
      flex-direction: column;      
      align-items: center;     
      gap: 4px;                   
      width: 100%;
      text-align: center;
}
}
@media (max-width:700px){
.yto-reg .countdown-wrap{
      display: block;    
      margin-top: 4px;
}
}
@media (max-width:700px){
.yto-reg .yto-banner .left{
    width: 100%;
    display: flex;
    justify-content: center;
}
.yto-reg .yto-banner .mid{
    width: 100%;
    text-align: center;
}
}
@media (max-width:700px){
.yto-reg .yto-banner .right{
    width: 100%;
    align-items: center;   
    text-align: center;
}
}
/* ---- Consulta de tickets ---- */
.yto-consulta .yto-card{
    max-width:860px;
    margin:20px auto;
    padding:24px;
    background:#fff;
    border:1px solid #eaeaea;
    border-radius:16px;
    box-shadow:0 3px 14px rgba(0,0,0,.06);
    font-family:system-ui,Segoe UI,Roboto,Arial;
}
.yto-consulta .yto-title{
    margin:0 0 16px;
    font-size:18px;
}
.yto-consulta .msg{
    margin-top:14px;
    padding:12px;
    border-radius:10px;
    display:none;
}
.yto-consulta .ok{
    background:#e8f5e9;
    border:1px solid #c8e6c9;
}
.yto-consulta .err{
    background:#ffebee;
    border:1px solid #ffcdd2;
}
.yto-consulta .msg.no-bg{
    background:transparent;
    border:none;
    padding:0;
}
.yto-consulta .yto-banner{
    background:linear-gradient(228.83deg,#13e5d5 -51.56%,#84f2c7 8.91%,#defdbb 72.65%);
    color:#682b7f;
    border-radius:12px;
    padding:14px 18px;
    display:flex;
    align-items:center;
    gap:14px;
}
.yto-consulta .yto-banner-icon{
    font-size:26px;
    line-height:1;
    flex-shrink:0;
}
.yto-consulta .yto-banner-main{
    flex:1;
    min-width:0;
}
.yto-consulta .yto-banner-name{
    font-size:15px;
    font-weight:700;
    line-height:1.25;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.yto-consulta .yto-banner-meta{
    font-size:12px;
    opacity:.9;
    margin-top:3px;
    line-height:1.3;
}
.yto-consulta .yto-banner-badge{
    background:rgba(255,255,255,.2);
    border-radius:10px;
    padding:8px 12px;
    text-align:center;
    flex-shrink:0;
    min-width:60px;
}
.yto-consulta .yto-banner-badge .b1{
    font-size:22px;
    font-weight:900;
    line-height:1;
}
.yto-consulta .yto-banner-badge .b2{
    font-size:10px;
    text-transform:uppercase;
    opacity:.9;
    letter-spacing:.5px;
}
@media (max-width:480px){
.yto-consulta .yto-banner{ flex-wrap:wrap;
}
.yto-consulta .yto-banner-main{ flex-basis:calc(100% - 80px); order:2;
}
.yto-consulta .yto-banner-icon{ order:0;
}
.yto-consulta .yto-banner-badge{ order:1; margin-left:auto;
}
}
.yto-consulta .tab{
    display:inline-block;
    margin-right:8px;
    padding:8px 12px;
    border:1px solid #ddd;
    border-radius:8px;
    cursor:pointer;
    vertical-align:middle;
}
.yto-consulta .on{
    background:#f5f5f5;
}
.yto-consulta .inline-btn{
    display:inline-block;
    margin-left:16px;
    vertical-align:middle;
}
.yto-consulta .form .row{
    margin-bottom:14px;
}
.yto-consulta .form label,
.yto-consulta .form .row-label{
    display:block;
    font-weight:600;
    margin-bottom:6px;
}
.yto-consulta .form input[type=text]{
    width:100%;
    padding:12px;
    border:1px solid #ddd;
    border-radius:999px;
    outline:0;
    transition:border-color .15s, box-shadow .15s;
}
.yto-consulta .form input[type=text]:focus{
    border-width:1px;
    border-color:var(--foco-borde);
    box-shadow:var(--foco-halo);
}
.yto-consulta .form input[type=text]::placeholder{
    color:#999;
    opacity:.45;
}
.yto-consulta .form .search-row{
    display:flex;
    gap:10px;
    align-items:stretch;
}
.yto-consulta .form .search-row input[type=text]{
    flex:1;
    min-width:0;
}
.yto-consulta .form .search-row .btn{
    flex-shrink:0;
    white-space:nowrap;
}
.yto-consulta .ver-lista-wrap{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    margin-top:18px;
}
.yto-consulta .btn{
    background:#1e88e5;
    color:#fff;
    border:0;
    border-radius:999px;
    padding:12px 16px;
    cursor:pointer;
}
.yto-consulta .mini{
    padding:8px 12px;
}
.yto-consulta .yto-icon-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    padding:0;
    background:transparent;
    border:0;
    border-radius:8px;
    color:#555;
    cursor:pointer;
    text-decoration:none;
    transition:color .15s ease, background-color .15s ease;
}
.yto-consulta .yto-icon-btn:hover,
.yto-consulta .yto-icon-btn:focus{
    color:#742384;
    background:rgba(116,35,132,.08);
    outline:none;
}
.yto-consulta .yto-icon-btn svg{
    width:22px;
    height:22px;
    display:block;
}
.yto-consulta .yto-tt-wrap{ position:relative; display:inline-flex;
}
.yto-consulta .yto-tt-wrap .yto-tt{
    position:absolute;
    bottom:calc(100% + 8px);
    left:50%;
    transform:translateX(-50%) translateY(4px);
    background:#2C2C2A;
    color:#fff;
    font-size:12px;
    line-height:1.2;
    padding:6px 10px;
    border-radius:6px;
    white-space:nowrap;
    pointer-events:none;
    opacity:0;
    transition:opacity .15s ease, transform .15s ease;
    z-index:10;
}
.yto-consulta .yto-tt-wrap .yto-tt::after{
    content:"";
    position:absolute;
    top:100%;
    left:50%;
    transform:translateX(-50%);
    border:5px solid transparent;
    border-top-color:#2C2C2A;
}
.yto-consulta .yto-tt-wrap:hover .yto-tt,
.yto-consulta .yto-tt-wrap:focus-within .yto-tt{
    opacity:1;
    transform:translateX(-50%) translateY(0);
}
.yto-consulta .btn-ver-lista{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:10px 18px;
    background:#742384;
    color:#fff !important;
    border:0;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
    text-decoration:none !important;
    cursor:pointer;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,0);
    transition:box-shadow .15s ease, transform .05s ease;
}
.yto-consulta .btn-ver-lista:link,
.yto-consulta .btn-ver-lista:visited,
.yto-consulta .btn-ver-lista:hover,
.yto-consulta .btn-ver-lista:active,
.yto-consulta .btn-ver-lista:focus{
    color:#fff !important;
    text-decoration:none !important;
}
.yto-consulta .btn-ver-lista:hover{
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.12);
}
.yto-consulta .btn-ver-lista:active{
    transform:scale(.97);
}
.yto-consulta .btn-ver-lista svg{
    width:16px;
    height:16px;
    flex-shrink:0;
    stroke:#fff;
}

/* =====================================================================
   LO NUEVO (no existia en WordPress)
   ===================================================================== */

/* Registro cerrado sin imagen configurada: un aviso con texto. */
.yto-overlay-lock .yto-lock-texto{background:#fff;border-radius:18px;padding:22px 26px;max-width:420px;text-align:center;font-family:'DM Sans',system-ui,sans-serif;color:#333;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.yto-overlay-lock .yto-lock-texto b{display:block;font-family:'Anton',sans-serif;font-weight:400;font-size:24px;color:#742384;margin-bottom:6px}
.yto-overlay-lock .yto-lock-texto a{display:inline-block;margin-top:12px;color:#fff;background:#25D366;border-radius:999px;padding:9px 18px;text-decoration:none;font-weight:700;font-size:14px}

/* Nombres y apellidos: "se autocompleta" (fijo, punteado), del DNI (verde) o a mano (normal). */
.yto-reg .yto-form input.yto-nom{padding-left:14px}
.yto-reg .yto-form input.yto-nom[readonly]{background:#F7F7F7;cursor:not-allowed;border-style:dashed;color:#aaa}
.yto-reg .yto-form input.yto-nom.ok{background:#eafaf0;border-color:#2ecc71;border-style:solid;color:#166534;cursor:default}
/* El nombre guardado con el DNI (no verificado): abreviado y fijo, en los colores de "lo guardado" (WhatsApp, correo) */
.yto-reg .yto-form input.yto-nom.sug{background:#faf7ff;border-color:#e2d3f5;border-style:solid;color:#2b1a3d;cursor:default}
.yto-reg .yto-nom-guardado{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:-4px 0 12px;font-size:12.5px;line-height:1.4;color:#8b8499}
.yto-reg .yto-nom-guardado[hidden]{display:none}
.yto-reg .yto-nom-guardado button{border:0;background:none;padding:0;color:#7B2FBE;font:inherit;font-weight:700;text-transform:none;letter-spacing:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.yto-reg .yto-nom-guardado button:focus-visible{outline:2px solid #7B2FBE;outline-offset:2px;border-radius:3px}
/* Tipo y numero de documento: lado a lado tambien en el celular (el tipo es corto). */
.yto-reg .yto-form select#yto-tipo-doc{color:#111}
@media(max-width:520px){
  .yto-reg .grid-2.grid-doc{grid-template-columns:minmax(118px,.8fr) 1.2fr;gap:10px}
  .yto-reg .grid-doc .row{margin-bottom:16px}
}

/* Pantalla de exito: los numeros de ticket. */
.yto-reg .yto-exito{display:none;text-align:center;padding:6px 4px 2px}
.yto-reg .yto-exito.visible{display:block}
.yto-reg .yto-exito-ico{width:60px;height:60px;border-radius:50%;background:#dcfce7;color:#16a34a;display:grid;place-items:center;margin:0 auto 12px;font-size:30px}
.yto-reg .yto-exito h4{font-family:'Anton',sans-serif;font-weight:400;font-size:26px;color:#575757;margin:0 0 6px}
.yto-reg .yto-exito p{color:#777;font-size:14px;margin:0 0 14px;line-height:1.45}
.yto-reg .yto-exito .yto-exito-texto{font-size:16px;color:#3d3450;font-weight:600;margin:0 0 16px}
.yto-reg .yto-estado{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700;margin-bottom:14px}
.yto-reg .yto-estado.pendiente{background:#fff4e0;color:#9a5b00}
.yto-reg .yto-estado.aprobado{background:#dcfce7;color:#166534}
/* Llego tarde: sus tickets quedan para el proximo sorteo */
.yto-reg .yto-estado.tarde{background:#e0f2fe;color:#075985}
.yto-reg .yto-soporte{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;margin:-4px 0 16px;font-size:14px;color:#3d3450}
.yto-reg .yto-soporte[hidden]{display:none}
.yto-reg .yto-soporte b{letter-spacing:.3px;white-space:nowrap}
.yto-reg .yto-soporte-btn{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#25d366;color:#fff;font:700 13px/1 'DM Sans',system-ui,sans-serif;padding:8px 14px;text-decoration:none}
.yto-reg .yto-soporte-btn:hover{background:#1fb959}

/* Se cerro el registro mientras la persona llenaba (registro.js): junto al boton */
.yto-reg .yto-cierre{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;padding:12px 14px;border-radius:14px;background:#fff7e6;border:1px solid #fcd9a0;color:#7a4a00;font-size:13.5px;line-height:1.45;animation:yto-aparece .25s ease-out}
.yto-reg .yto-cierre[hidden]{display:none}
.yto-reg .yto-cierre svg{flex:none;margin-top:1px}
.yto-reg .yto-cierre b{display:block;color:#5c3700}
.yto-reg .yto-cierre a{color:inherit;font-weight:700;text-decoration:underline}
.yto-reg .yto-cierre-otro{background:#eef6ff;border-color:#bcd9fb;color:#0b4a8b}
.yto-reg .yto-cierre-otro b{color:#083866}
.yto-reg .yto-exito-acciones{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
/* Secundarios y mas chicos: lo que debe llamar la atencion despues de
   registrar es "Crear mi cuenta" (abajo). */
.yto-reg .yto-exito-acciones a,.yto-reg .yto-exito-acciones button{border:0;border-radius:10px;padding:8px 14px;font:700 12.5px/1.2 'DM Sans',system-ui,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;text-decoration:none}
.yto-reg .yto-btn-otro{background:#F5F5F5;color:#555;border:1.5px solid #E3E3E3 !important}
.yto-reg .yto-btn-otro:hover{background:#eee}
.yto-reg .yto-btn-ver{background:#7B2FBE;color:#fff;border:1.5px solid #7B2FBE !important}
/* Con la invitacion a la vista, "Ver mis tickets" pasa a contorno: un solo boton lleno */
.yto-reg .yto-exito:has(.yto-invita:not([hidden])) .yto-btn-ver{background:#fff;color:#7B2FBE;border-color:#d9c6f2 !important}
.yto-reg .yto-exito:has(.yto-invita:not([hidden])) .yto-btn-ver:hover{background:#f7f2fd}

/* Consulta: los numeros de cada registro. */
.yto-consulta .yto-regs{margin-top:12px;display:flex;flex-direction:column;gap:10px}
.yto-consulta .yto-reg-item{border:1px solid #eee;border-radius:12px;padding:12px 14px;font-size:13px;color:#444}
.yto-consulta .yto-reg-item .cab{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.yto-consulta .yto-reg-item .fecha{color:#888}
.yto-consulta .yto-reg-item .est{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}
.yto-consulta .est.pendiente{background:#fff4e0;color:#9a5b00}
.yto-consulta .est.aprobado{background:#dcfce7;color:#166534}
.yto-consulta .est.rechazado{background:#fdecea;color:#9b1c14}
/* Llegaron tarde (registro cerrado): esperan el proximo sorteo */
.yto-consulta .yto-proximo{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.yto-consulta .yto-proximo-tit{font-weight:700;font-size:13px;color:#3d3450;text-transform:uppercase;letter-spacing:.4px}
.yto-consulta .est.tarde{background:#e0f2fe;color:#075985}
.yto-consulta .yto-reg-item .nota-tarde{color:#6b6480;font-size:12.5px;line-height:1.4}
.yto-consulta .yto-reg-item .cods{display:flex;flex-wrap:wrap;gap:6px}
.yto-consulta .yto-reg-item .cod{font:700 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.5px;background:#f7f4fc;color:#742384;border-radius:8px;padding:6px 8px}
.yto-consulta .yto-reg-item.rechazado .cod{text-decoration:line-through;opacity:.5}
.yto-consulta .yto-reg-item .motivo{margin-top:6px;color:#9b1c14}
.yto-consulta .yto-nota{font-size:12px;color:#777;margin-top:10px;line-height:1.45}
.yto-consulta .yto-nota a{color:#25D366;font-weight:700}
.yto-reg .yto-terms-nota{margin:10px 0 0;text-align:center;font-size:12px;color:#999}
.yto-reg .yto-terms-nota a{color:#7B2FBE;font-weight:600}

/* Enlace a Mi cuenta debajo de la consulta por DNI */
.yto-consulta .yto-cuenta-enlace{margin:14px 0 0;text-align:center;font-size:13.5px;color:#6b6480}
.yto-consulta .yto-cuenta-enlace a{color:#6d28d9;font-weight:700}

/* Codigo de identificacion de la persona (exito del registro y consulta). */
.yto-reg .yto-id{display:flex;flex-direction:column;align-items:center;gap:6px;margin:-4px auto 16px;padding:12px 14px;max-width:340px;background:#faf7ff;border:1px solid #ece3fa;border-radius:14px}
.yto-reg .yto-id[hidden]{display:none}
.yto-reg .yto-id-txt{font-size:12px;font-weight:700;color:#8a7aa3;text-transform:uppercase;letter-spacing:.6px}
.yto-reg .yto-id-cod{display:inline-flex;align-items:center;gap:8px;border:0;text-transform:none;background:#fff;box-shadow:0 0 0 1.5px #d9c6f3 inset;border-radius:10px;padding:8px 12px;cursor:pointer;color:#5b1f86;font:700 18px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2.5px;transition:box-shadow .15s,background .15s}
.yto-reg .yto-id-cod:hover{box-shadow:0 0 0 1.5px #b58ad6 inset}
.yto-reg .yto-id-cod svg{opacity:.55;flex:none}
.yto-reg .yto-id-cod.copiado{background:#dcfce7;box-shadow:0 0 0 1.5px #86efac inset;color:#166534}
.yto-reg .yto-id small{font-size:12px;color:#8b8499;line-height:1.35}
.yto-consulta .yto-banner-id{font-size:12px;margin-top:4px;opacity:.95}
.yto-consulta .yto-banner-id b{font:700 12.5px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.5px;background:rgba(255,255,255,.55);border-radius:6px;padding:2px 6px}
.yto-consulta .yto-ganaste{margin-top:10px;background:#fff8e1;border:1px solid #ffe08a;color:#7a4f00;border-radius:12px;padding:10px 14px;font-size:13.5px;line-height:1.4}
.yto-consulta .yto-reg-item .cod.ganador{background:#ffd54f;color:#5d3a00;box-shadow:0 0 0 2px #ffb300 inset}
.yto-consulta .yto-no-titulo{font-weight:600;color:#2e3d2f}
.yto-consulta .yto-ultimo{margin-top:6px;font-size:13.5px;color:#3d4a3e}
.yto-consulta .yto-ultimo a{color:#6d28d9;font-weight:700}
.yto-consulta .yto-resultados a{color:#6d28d9}

/* La flecha del selector gira mientras su lista esta abierta (assets/js/desplegable.js) */
.yto-reg .yto-select-arr{transition:transform .15s}
.yto-reg select.desp-abierto ~ .yto-select-arr{transform:translateY(-50%) rotate(180deg)}

/* Lo que ya se sabe del DNI (registro.js):
   el WhatsApp y el correo guardados, tapados, en lugar del campo... */
.yto-reg .yto-inp-wrap[hidden],.yto-reg .yto-guardado[hidden],.yto-reg .yto-aviso[hidden]{display:none}
.yto-reg .yto-guardado{display:flex;align-items:center;gap:10px;height:46px;padding:0 5px 0 13px;border:1.5px solid #e2d3f5;border-radius:999px;background:#faf7ff;animation:yto-aparece .18s ease-out}
.yto-reg .yto-guardado-ico{display:flex;color:#7B2FBE;flex:none}
.yto-reg .yto-guardado-txt{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.15}
.yto-reg .yto-guardado-txt b{font-size:15px;font-weight:700;color:#2b1a3d;letter-spacing:.6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yto-reg .yto-guardado-txt small{font-size:11.5px;color:#8b8499;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yto-reg .yto-guardado-otro{flex:none;border:0;border-radius:999px;background:#fff;box-shadow:0 0 0 1.5px #e4d6f7 inset;color:#7B2FBE;font:600 12.5px/1 'DM Sans',system-ui,sans-serif;text-transform:none;letter-spacing:0;padding:10px 13px;cursor:pointer;transition:background .15s,box-shadow .15s}
.yto-reg .yto-guardado-otro:hover{background:#f4eefe;box-shadow:0 0 0 1.5px #c9aef0 inset}
.yto-reg .yto-guardado-otro:focus-visible{outline:2px solid #7B2FBE;outline-offset:2px}
/* ...el aviso debajo del DNI ("ya tienes cuenta", "te recordamos en este equipo")... */
.yto-reg .yto-aviso{margin:-2px 0 16px;padding:10px 14px;background:#faf7ff;border:1px solid #ece3fa;border-radius:14px;font-size:13px;line-height:1.45;color:#5b4d70;animation:yto-aparece .18s ease-out}
.yto-reg .yto-aviso p{margin:0}
.yto-reg .yto-aviso p + p{margin-top:4px}
.yto-reg .yto-aviso a,.yto-reg .yto-aviso button{color:#7B2FBE;font:inherit;font-weight:700;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-transform:none;letter-spacing:0}
/* ...y "recordar mi DNI en este equipo". */
.yto-reg .yto-recordar{display:flex;align-items:flex-start;gap:10px;margin:2px 0 14px;font-size:13px;color:#555;cursor:pointer;line-height:1.35}
.yto-reg .yto-recordar input{width:18px;height:18px;margin:0;flex:none;accent-color:#7B2FBE;cursor:pointer}
.yto-reg .yto-recordar small{display:block;color:#9a94a6;font-size:12px}
@keyframes yto-aparece{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.yto-reg .yto-guardado,.yto-reg .yto-aviso{animation:none}}
/* Una etiqueta con nota larga ("Correo electrónico (opcional...)"): en el celular la nota baja entera, no en columna */
.yto-reg .yto-form .field-label{flex-wrap:wrap;row-gap:0}

/* =====================================================================
   "Tus datos" en una tarjeta (registro.js): cuando ya se tiene todo lo de
   la persona, lo unico a llenar es la compra. El lapiz abre los campos.
   ===================================================================== */
.yto-reg .yto-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.yto-reg .yto-yo[hidden],.yto-reg .yto-datos[hidden],.yto-reg .yto-yo [hidden]{display:none}
.yto-reg .yto-yo{margin:0 0 6px;padding:14px 16px 16px;border:1.5px solid #ece3fa;border-radius:20px;background:linear-gradient(180deg,#fcfaff,#f7f2fe);animation:yto-aparece .2s ease-out}
.yto-reg .yto-yo-cab{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.yto-reg .yto-yo-tit{font-size:12px;font-weight:700;color:#8a7aa3;text-transform:uppercase;letter-spacing:.6px}
.yto-reg .yto-yo-acc{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.yto-reg .yto-yo-editar,.yto-reg .yto-yo-otro{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;font:600 13px/1 'DM Sans',system-ui,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;transition:background .15s,box-shadow .15s,color .15s}
.yto-reg .yto-yo-editar{background:#fff;color:#7B2FBE;box-shadow:0 0 0 1.5px #e0cff5 inset;padding:9px 14px}
.yto-reg .yto-yo-editar:hover{background:#f4eefe;box-shadow:0 0 0 1.5px #c9aef0 inset}
.yto-reg .yto-yo-otro{background:none;color:#8b8499;padding:9px 8px;text-decoration:underline;text-underline-offset:2px}
.yto-reg .yto-yo-otro:hover{color:#5b4d70}
.yto-reg .yto-yo-editar:focus-visible,.yto-reg .yto-yo-otro:focus-visible{outline:2px solid #7B2FBE;outline-offset:2px}
.yto-reg .yto-yo-cuerpo{display:flex;align-items:flex-start;gap:12px}
.yto-reg .yto-yo-ini{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8b3fd1,#5b1f86);color:#fff;font:700 16px/1 'DM Sans',system-ui,sans-serif;letter-spacing:.5px;box-shadow:0 4px 12px rgba(91,31,134,.22)}
.yto-reg .yto-yo-quien{flex:1;min-width:0}
.yto-reg .yto-yo-nombre{margin:2px 0 8px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:16px;font-weight:700;color:#2b1a3d;line-height:1.25;overflow-wrap:anywhere}
.yto-reg .yto-yo-verif{font-size:10.5px;font-weight:600;background:#dcfce7;color:#166534;border-radius:20px;padding:2px 8px}
.yto-reg .yto-yo-cargando{margin:12px 0 0;color:#8b8499;font-size:14px}
.yto-reg .yto-yo-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.yto-reg .yto-yo-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 11px;border-radius:999px;background:#fff;border:1px solid #ece3fa;color:#4b3d63;font-size:13px;line-height:1.2}
.yto-reg .yto-yo-chip svg{flex:none;color:#9a7cc4}
.yto-reg .yto-yo-chip [data-yo-txt]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Mientras se buscan los datos de un DNI recordado */
.yto-reg .yto-yo.cargando .yto-yo-nombre,.yto-reg .yto-yo.cargando .yto-yo-chips,.yto-reg .yto-yo.cargando .yto-yo-editar{display:none}
.yto-reg .yto-yo.cargando .yto-yo-ini{background:#ece3fa;box-shadow:none;animation:yto-pulso 1.1s ease-in-out infinite}
@keyframes yto-pulso{50%{opacity:.45}}
/* Los campos que se abren con el lapiz, y la compra como bloque aparte */
.yto-reg .yto-datos{animation:yto-aparece .18s ease-out}
.yto-reg .yto-compra{margin-top:14px;padding-top:16px;border-top:1.5px dashed #eee5f7}
@media (max-width:520px){
  .yto-reg .yto-yo{padding:12px 13px 14px;border-radius:18px}
  .yto-reg .yto-yo-ini{width:38px;height:38px;font-size:14px}
  .yto-reg .yto-yo-nombre{font-size:15px}
  .yto-reg .yto-yo-chip{font-size:12.5px;padding:5px 10px}
}
@media (prefers-reduced-motion:reduce){.yto-reg .yto-yo,.yto-reg .yto-datos{animation:none}.yto-reg .yto-yo.cargando .yto-yo-ini{animation:none}}

/* Despues de registrar, sin sesion: "Crea tu cuenta en un paso" (o "inicia sesion") */
.yto-reg .yto-invita{display:flex;align-items:center;gap:12px;margin:18px auto 0;max-width:520px;padding:14px 16px;text-align:left;border:1.5px solid #ece3fa;border-radius:18px;background:linear-gradient(180deg,#fcfaff,#f5effe);animation:yto-aparece .25s ease-out}
.yto-reg .yto-invita[hidden]{display:none}
.yto-reg .yto-invita-ico{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#7B2FBE;box-shadow:0 0 0 1.5px #e4d6f7 inset}
.yto-reg .yto-invita-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;line-height:1.35}
.yto-reg .yto-invita-txt b{font-size:14.5px;color:#2b1a3d}
.yto-reg .yto-invita-txt span{font-size:13px;color:#6b6480}
.yto-reg .yto-invita-btn{flex:none;border-radius:999px;background:#7B2FBE;color:#fff;font:700 14px/1 'DM Sans',system-ui,sans-serif;padding:13px 20px;text-decoration:none;white-space:nowrap;box-shadow:0 6px 16px -6px rgba(123,47,190,.55);transition:background .15s,transform .15s,box-shadow .15s}
.yto-reg .yto-invita-btn:hover{background:#6a25a6;transform:translateY(-1px);box-shadow:0 8px 20px -6px rgba(123,47,190,.6)}
.yto-reg .yto-invita-btn:focus-visible{outline:3px solid #cdb2ee;outline-offset:2px}
@media (max-width:520px){
  .yto-reg .yto-invita{flex-wrap:wrap}
  .yto-reg .yto-invita-btn{width:100%;text-align:center}
}

/* Iconos SVG de Mis tickets (antes emojis) */
.yto-consulta .yto-ico{display:inline-flex;vertical-align:-3px;margin-right:5px}
.yto-consulta .yto-ico svg{width:16px;height:16px}
.yto-consulta .yto-banner-icon .yto-ico{margin:0}
.yto-consulta .yto-banner-icon .yto-ico svg{width:26px;height:26px}
.yto-consulta .yto-ganaste{display:flex;align-items:center;gap:8px}
.yto-consulta .yto-ganaste .yto-ico{flex:none;display:inline-flex;margin:0}
.yto-consulta .yto-ganaste .yto-ico svg{width:20px;height:20px;color:#b45309}
