/* CSS CRÍTICO MÓVIL - Solo estilos esenciales */
*{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;box-sizing:border-box}
body{margin:0;padding:0;background:#fafafa;font-size:16px;line-height:1.4}
.topbar{height:90px;background:linear-gradient(135deg, #1b0d57 , #010228 );;position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:0 15px}
.logo-icon{height:clamp(3rem, 8vw, 4rem);width:auto}
.header-right{color:white;font-size:14px}
.rifa-container{margin-top:90px;padding:15px}
.rifa-card{background:white;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 10px rgba(0,0,0,0.1);padding:15px}
.rifa-image{width:100%;height:250px;object-fit:cover;border-radius:12px 12px 0 0}
.rifa-title{color:linear-gradient(135deg, #1b0d57 , #010228 );;font-size:24px;font-weight:700;text-align:center;margin:20px 0}
.stats-row{display:flex;gap:10px;margin:20px 0}
.stats-card{flex:1;background:white;border:1px solid #e8e8e8;border-radius:8px;padding:15px;text-align:center}
.stats-label{color:#666;font-size:12px;text-transform:uppercase;margin-bottom:5px}
.stats-value{color:linear-gradient(135deg, #1b0d57 , #010228 );;font-size:20px;font-weight:700}
.progress-container{background:white;border-radius:8px;padding:15px;margin:15px 0;border:1px solid #e8e8e8}
.progress-bar-container{background:#f0f0f0;border-radius:10px;height:15px;overflow:hidden}
.progress-bar-fill{background:linear-gradient(135deg, #1b0d57 , #010228 );;height:100%;border-radius:10px;transition:width 1s ease}
.tickets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}
.ticket-number{background:white;border:2px solid #e8e8e8;border-radius:8px;padding:15px;text-align:center;font-weight:600;cursor:pointer;transition:all 0.2s}
.ticket-number:active,.ticket-selected{background:linear-gradient(135deg, #1b0d57 , #010228 );;color:white;border-color:linear-gradient(135deg, #1b0d57 , #010228 );}
.quantity-control{display:flex;align-items:center;gap:10px;margin:20px 0}
.btn-quantity{background:white;border:2px solid #e8e8e8;width:50px;height:50px;border-radius:8px;font-size:20px;font-weight:700;color:linear-gradient(135deg, #1b0d57 , #010228 );}
.quantity-input{flex:1;border:2px solid #e8e8e8;border-radius:8px;padding:12px;text-align:center;font-size:18px;font-weight:600}
.btn-comprar{background:linear-gradient(135deg, #1b0d57 , #010228 );;border:none;padding:15px;font-size:18px;font-weight:700;border-radius:8px;color:white;width:100%;margin:15px 0;text-transform:uppercase}
.btn-comprar:active{background:linear-gradient(135deg, #1b0d57 , #010228 )}
.btn-limpiar{background:white;border:2px solid #e8e8e8;padding:15px;font-size:16px;font-weight:600;border-radius:8px;color:#666;width:100%}
.modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);z-index:2000;align-items:center;justify-content:center;padding:clamp(1rem,4vw,1.25rem)}
.modal.show{display:flex}
.modal-content{background:white;border-radius:clamp(0.75rem,3vw,1rem);max-width:clamp(20rem,90vw,25rem);width:100%;max-height:clamp(60vh,80vh,90vh);overflow-y:auto}
.modal-header{padding:clamp(1rem,4vw,1.25rem);border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}
.modal-title{color:linear-gradient(135deg, #1b0d57 , #010228 );;font-size:clamp(1rem,4vw,1.25rem);font-weight:700;margin:0}
.btn-close{background:none;border:none;font-size:clamp(1.25rem,5vw,1.5rem);cursor:pointer}
.modal-body{padding:clamp(1rem,4vw,1.25rem)}
.form-control{border:2px solid #e8e8e8;border-radius:8px;padding:12px;font-size:16px;width:100%;margin-bottom:15px}
.btn-primary{background:linear-gradient(135deg, #1b0d57 , #010228 );;border:none;padding:15px;font-size:16px;font-weight:600;border-radius:8px;color:white;width:100%;text-transform:uppercase}
.sold-out{background:#ffebee;border:2px solid #f44336;border-radius:15px;padding:30px;text-align:center;margin:20px 0}
.sold-out-badge{background:#f44336;color:white;padding:15px 25px;border-radius:25px;font-size:18px;font-weight:700;margin-bottom:15px;display:inline-block}
@media (max-width:480px){
.tickets-grid{grid-template-columns:repeat(2,1fr)}
.stats-row{flex-direction:column}
.rifa-title{font-size:20px}
.topbar{height:80px}
.logo-icon{height:clamp(2.5rem, 6vw, 3rem)}
.rifa-container{margin-top:80px;padding:10px}
}