/* ADMIN GATE */
.admin-gate{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:2000;display:none;align-items:center;justify-content:center;}
.admin-gate.open{display:flex;}
.admin-gate-box{background:#fff;border-radius:16px;padding:32px;max-width:380px;width:90%;text-align:center;box-shadow:var(--shadow-lg);}
.admin-gate-box h3{font-family:'Poppins',sans-serif;font-size:20px;color:var(--azul);margin-bottom:8px;}
.admin-gate-box p{font-size:13px;color:var(--texto-suave);margin-bottom:18px;}
.admin-gate-box input{width:100%;padding:11px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;text-align:center;margin-bottom:12px;font-family:'Poppins',sans-serif;color:var(--texto);background:#fff;}
.admin-gate-box input:focus{border-color:var(--azul-claro);}
.admin-gate-box .gate-error{color:var(--dorado);font-size:13px;display:none;margin-bottom:8px;}
.admin-gate-box .admin-btn{width:100%;}

/* ADMIN NAV LINKS (inside hamburger menu) */


/* ADMIN PAGE CONTENT */
.admin-content{background:var(--gris);min-height:auto;padding:0;}
.admin-page-title{font-family:'Poppins',sans-serif;font-size:20px;margin-bottom:4px;color:var(--azul);}
.admin-page-subtitle{font-size:13px;color:var(--texto-suave);margin-bottom:20px;opacity:1;}

/* ADMIN DASHBOARD STATS */
.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px;}
.admin-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:18px 16px;text-align:center;transition:box-shadow .2s,transform .2s;}
.admin-stat-card:hover{box-shadow:0 4px 16px rgba(13,43,110,.06);transform:translateY(-2px);}
.admin-stat-num{font-family:'Poppins',sans-serif;font-size:22px;font-weight:700;color:var(--dorado);}
.admin-stat-card.revenue .admin-stat-num{color:var(--azul);}
.admin-stats-grid.compact .admin-stat-card{padding:10px 8px;}
.admin-stats-grid.compact .admin-stat-num{font-size:20px;}
.admin-stats-grid.compact .admin-stat-label{font-size:10px;}
.admin-stat-label{font-size:12px;color:var(--texto-suave);margin-top:4px;opacity:1;}

/* ADMIN TABLE */
.admin-table,.data-table{width:100%;border-collapse:collapse;font-size:13px;}
.admin-table th,.data-table th{text-align:left;padding:10px 12px;color:var(--texto-suave);border-bottom:1px solid #e2e8f0;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.5px;}
.admin-table td,.data-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;color:var(--texto);}

/* ADMIN USER LIST (mobile) */
.admin-user-list{display:flex;flex-direction:column;gap:6px;}
.admin-user-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;}
.admin-user-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
.admin-user-item-info strong{font-size:14px;color:var(--texto);}
[data-theme="dark"] .admin-user-item{background:var(--admin-card-bg);border-color:var(--admin-border);}

/* ADMIN MOBILE LIST (cards for <=390px) */
.admin-mobile-list{display:flex;flex-direction:column;gap:6px;}
.admin-mobile-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;}
.admin-mobile-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
.admin-mobile-item-info strong{font-size:14px;color:var(--texto);}
[data-theme="dark"] .admin-mobile-item{background:var(--admin-card-bg);border-color:var(--admin-border);}

/* ADMIN TALONARIO LIST */
.admin-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:16px;}
.admin-card h3{font-family:'Poppins',sans-serif;font-size:16px;margin-bottom:12px;color:var(--azul);}
.admin-tal-grid{display:flex;flex-wrap:wrap;gap:6px;}
.admin-tal-scroll{max-height:400px;overflow-y:auto;padding-right:4px;}
.admin-tal-scroll::-webkit-scrollbar{width:5px;}
.admin-tal-scroll::-webkit-scrollbar-thumb{background:var(--azul-suave);border-radius:4px;}
.admin-tal-group{flex:0 0 calc(33.333% - 4px);min-width:280px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff;transition:opacity .2s;}
.admin-tal-group-header{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;transition:background .1s;background:#fafbfc;}
.admin-tal-group-header:hover{background:#f1f5f9;}
.admin-tal-group-id{font-weight:700;font-size:13px;min-width:70px;color:var(--azul);}
.admin-tal-group-stats{font-size:12px;color:var(--texto-suave);flex:1;}
.admin-tal-group-toggle{font-size:11px;color:var(--texto-suave);width:16px;}
.admin-tal-group-bonos{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.4,0,.2,1);border-top:1px solid #f1f5f9;}
.admin-tal-group-bonos.open{grid-template-rows:1fr;}
.admin-tal-group-bonos-inner{overflow:hidden;min-height:0;padding:4px 0;}
.admin-bono-row{display:flex;align-items:center;gap:2px;padding:6px 8px;border-radius:6px;font-size:12px;transition:background .1s;border-left:3px solid #e2e8f0;color:var(--texto);}
.admin-bono-row:hover{background:#f8fafc;}
.admin-bono-row.admin-bono-sold{opacity:.5;border-left-color:var(--texto-suave);background:#f8fafc;}
.admin-bono-row.admin-bono-sold .admin-bono-check{opacity:.5;}
.admin-tal-group-disabled{opacity:.6;}
.admin-tal-group-disabled .admin-tal-group-id{color:#94a3b8;}
.text-muted{color:#94a3b8;}
.admin-bono-ord{font-weight:700;min-width:0;color:var(--azul);flex-shrink:0;}
.admin-bono-nums{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-bono-status{font-size:11px;min-width:64px;text-align:right;color:var(--texto-suave);flex-shrink:0;}

/* ADMIN BONO CHECKBOX */
.admin-bono-check{position:relative;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;cursor:pointer;flex-shrink:0;}
.admin-bono-check input{opacity:0;width:0;height:0;position:absolute;}
.admin-bono-checkmark{position:absolute;inset:0;border:2px solid #cbd5e1;border-radius:4px;background:#fff;transition:all .15s;}
.admin-bono-check input:checked + .admin-bono-checkmark{background:#16a34a;border-color:#16a34a;}
.admin-bono-check input:checked + .admin-bono-checkmark::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.admin-bono-check:hover .admin-bono-checkmark{border-color:var(--azul);}
.admin-bono-check input:checked:hover + .admin-bono-checkmark{background:#15803d;border-color:#15803d;}

/* ADMIN TOGGLE SWITCH */
.admin-toggle-switch{position:relative;display:inline-block;width:30px;height:17px;cursor:pointer;flex-shrink:0;}
.admin-toggle-switch input{opacity:0;width:0;height:0;position:absolute;}
.admin-toggle-slider{position:absolute;inset:0;background:#cbd5e1;border-radius:17px;transition:background .1s;}
.admin-toggle-slider::before{content:'';position:absolute;height:13px;width:13px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .1s;}
.admin-toggle-slider:active::before{transform:scale(.85);}
.admin-toggle-switch input:checked + .admin-toggle-slider{background:var(--azul);}
.admin-toggle-switch input:checked + .admin-toggle-slider::before{transform:translateX(13px);}
.admin-toggle-switch input:checked + .admin-toggle-slider:active::before{transform:translateX(13px) scale(.85);}
.admin-toggle-xs{width:24px;height:14px;}
.admin-toggle-xs .admin-toggle-slider::before{height:10px;width:10px;}
.admin-toggle-xs input:checked + .admin-toggle-slider::before{transform:translateX(10px);}
/* ADMIN TAL CHIP GRID */
.admin-tal-chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px;max-height:480px;overflow-y:auto;padding:4px 0;}
.admin-tal-chip{display:block;text-align:center;padding:10px 8px;border-radius:6px;font-size:12px;font-weight:700;font-family:'Poppins',sans-serif;line-height:1.5;cursor:pointer;transition:all .12s;border:1.5px solid transparent;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-tal-chip.available{background:#d1fae5;color:#065f46;border-color:#6ee7b7;}
.admin-tal-chip.available:hover{border-color:var(--azul);background:var(--azul);color:#fff;}
.admin-tal-chip.sold{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;}
.admin-tal-chip.sold:hover{opacity:.8;}
.admin-tal-chip.in-sale{background:#e2e8f0;color:#64748b;border-color:#94a3b8;cursor:pointer;}
.admin-tal-chip.in-sale:hover{background:#cbd5e1;color:#475569;border-color:#64748b;}

/* ADMIN RANGE BUTTONS */
.admin-tal-ranges{display:flex;gap:4px;flex-wrap:wrap;}
.admin-range-btn{padding:4px 10px;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:var(--texto-suave);font-size:11px;font-weight:600;cursor:pointer;transition:all .12s;font-family:'Poppins',sans-serif;}
.admin-range-btn.active{background:var(--azul);border-color:var(--azul);color:#fff;}
.admin-range-btn:hover:not(.active){border-color:var(--azul-claro);color:var(--azul);}

/* TALONARIOS TOOLBAR */
.admin-tal-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.admin-tal-toolbar .manage-filters{flex:0 0 auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.admin-tal-toolbar .tal-search-wrap{flex:1;min-width:200px;display:flex;gap:6px;}
.admin-tal-toolbar .tal-search-wrap input{flex:1;padding:6px 10px;border:1.5px solid #d1d5db;border-radius:8px;font-size:13px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .15s;min-width:0;}
.admin-tal-toolbar .tal-search-wrap input:focus{border-color:var(--azul);}
.admin-tal-toolbar .tal-range-wrap{flex:0 0 auto;}

/* STICKY PANEL - always visible */
.admin-tal-layout{display:flex;gap:16px;align-items:flex-start;}
.admin-tal-layout > :first-child{flex:1;min-width:0;}
.admin-tal-sticky-panel{width:360px;flex-shrink:0;position:sticky;top:24px;align-self:flex-start;max-height:calc(100vh - 160px);overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;box-shadow:0 4px 12px rgba(0,0,0,.04);}
.admin-tal-sale-info{font-size:12px;line-height:1.6;color:var(--texto-suave);}
.admin-tal-sale-info strong{color:var(--texto);}
.admin-tal-sale-info .sale-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;font-weight:600;margin-top:8px;}

/* ACTIVITY TABLE */
.admin-activity-wrap{overflow-x:auto;max-height:420px;overflow-y:auto;}
.admin-activity-wrap .admin-table{font-size:12px;}
.admin-activity-wrap .admin-table th{white-space:nowrap;}
.admin-activity-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap;}
.admin-activity-badge.success{background:#d1fae5;color:#065f46;}
.admin-activity-badge.warn{background:#fef3c7;color:#92400e;}
.admin-activity-badge.danger{background:#fee2e2;color:#991b1b;}
.admin-activity-badge.info{background:#dbeafe;color:#1e40af;}

/* ACTIVITY TIMELINE (mobile) */
.admin-activity-timeline{display:flex;flex-direction:column;gap:10px;padding:4px 0;}
.activity-tl-item{position:relative;padding:10px 12px 10px 20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;}
.activity-tl-item::before{content:'';position:absolute;left:6px;top:12px;bottom:12px;width:2px;background:var(--azul-suave);border-radius:1px;}
.activity-tl-time{font-size:11px;color:var(--texto-suave);margin-bottom:4px;}
.activity-tl-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:4px;}
.activity-tl-user{font-size:12px;color:var(--texto);font-weight:500;}
.activity-tl-detail{font-size:12px;color:var(--texto-suave);}
[data-theme="dark"] .activity-tl-item{background:var(--admin-card-bg);border-color:var(--admin-border);}
[data-theme="dark"] .activity-tl-item::before{background:var(--admin-border);}

/* MANUAL SALE MODAL */
.manual-sale-bono{background:#f0f5ff;border:1px solid #bfdbfe;border-radius:8px;padding:10px;text-align:center;margin-top:8px;}
.manual-sale-bono strong{font-size:13px;color:var(--azul);}
.manual-sale-bono span{font-weight:700;color:var(--texto);}

/* VENTAS */
#ventasResults .admin-card:last-child{max-height:400px;overflow-y:auto;}
#ventasResults .admin-card:last-child::-webkit-scrollbar{width:5px;}
#ventasResults .admin-card:last-child::-webkit-scrollbar-thumb{background:var(--azul-suave);border-radius:4px;}
.venta-detail-card{border-left:3px solid var(--dorado);margin-top:8px;padding:10px 14px;}
.venta-detail-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:4px;margin-bottom:8px;border-bottom:1px solid #e2e8f0;font-size:13px;}
.venta-detail-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--texto-suave);line-height:1;padding:0 4px;}
.venta-detail-close:hover{color:var(--texto);}
.venta-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;font-size:12px;line-height:1.5;margin-bottom:6px;}
.venta-detail-grid .sale-label{font-size:9px;text-transform:uppercase;letter-spacing:.4px;color:#94a3b8;font-weight:600;}
.venta-detail-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.venta-detail-bonos{padding:4px 0;border-top:1px solid #f1f5f9;}
.venta-detail-bonos .sale-label{font-size:9px;text-transform:uppercase;letter-spacing:.4px;color:#94a3b8;font-weight:600;margin-bottom:2px;}
.venta-detail-bono{display:flex;gap:4px;align-items:center;padding:2px 0;flex-wrap:wrap;}
.venta-detail-bono-label{font-size:11px;color:var(--texto-suave);white-space:nowrap;font-weight:600;min-width:70px;}
.venta-num-chip{background:#f1f5f9;padding:1px 6px;border-radius:3px;font-size:12px;font-weight:600;font-family:monospace;color:var(--azul);}
.venta-detail-total{text-align:right;font-size:13px;font-weight:600;border-top:1px solid #e2e8f0;padding-top:6px;}
.venta-detail-total span{font-size:18px;font-weight:800;color:var(--dorado);}

/* ADMIN COMMON */
.admin-btn{background:var(--dorado);color:#000;border:none;padding:10px 22px;border-radius:8px;font-weight:800;font-size:13px;cursor:pointer;transition:opacity .2s;font-family:'Poppins',sans-serif;}
.admin-btn:hover{opacity:.85;}
.admin-config-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:768px){
  .admin-config-2col{grid-template-columns:1fr;}
  .admin-tal-group{flex:0 0 100%;min-width:0;}
  .admin-tal-toolbar .tal-search-wrap{flex:1 1 100%;order:-1;min-width:0;}
  .admin-tal-toolbar .manage-filters{flex:1;}
  .admin-tal-toolbar .tal-range-wrap{display:none;}
  .admin-tal-toolbar .tal-range-filters{display:inline-block!important;}
}
.campaign-preview{border:1px solid #e2e8f0;object-fit:cover;}
.config-pw-section{border-top:1px solid #e2e8f0;margin-top:18px;padding-top:18px;}
.config-pw-section label{font-size:13px;font-weight:600;color:var(--texto);}
.form-error{font-size:13px;color:#dc2626;text-align:center;margin-top:10px;font-weight:600;}
.admin-form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:6px;}
.admin-form-group label{font-weight:700;font-size:12px;color:var(--texto);opacity:1;}
.admin-form-group input,.admin-form-group select{background:#fff;border:1.5px solid #d1d5db;color:var(--texto);border-radius:8px;padding:9px 11px;font-size:13px;font-family:'Poppins',sans-serif;}
.admin-form-group input:focus,.admin-form-group select:focus{border-color:var(--azul-claro);outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.1);}
.admin-form-group input::placeholder{color:#94a3b8;}
.admin-form-group select option{color:var(--texto);}
.manage-filters{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.manage-filter-btn{padding:6px 14px;border-radius:20px;border:1px solid #d1d5db;background:#fff;color:var(--texto-suave);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;font-family:'Poppins',sans-serif;}
.manage-filter-btn.active{background:var(--azul);border-color:var(--azul);color:#fff;box-shadow:0 2px 8px rgba(13,43,110,.2);}
.manage-filter-btn:hover:not(.active){border-color:var(--azul-claro);color:var(--azul);}
.admin-load-more{text-align:center;padding:16px;}
.admin-load-more button{background:#fff;color:var(--azul);border:1.5px solid var(--azul-suave);padding:8px 24px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s;font-family:'Poppins',sans-serif;}
.admin-load-more button:hover{background:var(--azul);color:#fff;border-color:var(--azul);}

[data-theme="dark"] .admin-content{background:var(--admin-bg);}
[data-theme="dark"] .admin-stat-card,
[data-theme="dark"] .admin-card,
[data-theme="dark"] .admin-tal-group,
[data-theme="dark"] .admin-panel-layout,
[data-theme="dark"] .manage-filter-btn,
[data-theme="dark"] .admin-load-more button,
[data-theme="dark"] .admin-gate-box,
[data-theme="dark"] .admin-range-btn,
[data-theme="dark"] .msg-card.msg-read,
[data-theme="dark"] .msg-card.msg-unread,
[data-theme="dark"] .bono-result-card,
[data-theme="dark"] .bono-result-card.in-cart{background:var(--admin-card-bg);}
[data-theme="dark"] .admin-stat-card,
[data-theme="dark"] .admin-card,
[data-theme="dark"] .admin-tal-group,
[data-theme="dark"] .admin-panel-layout,
[data-theme="dark"] .manage-filter-btn,
[data-theme="dark"] .admin-load-more button,
[data-theme="dark"] .admin-range-btn,
[data-theme="dark"] .admin-gate-box input,
[data-theme="dark"] .admin-main input:not([type="checkbox"]):not([type="radio"]),
[data-theme="dark"] .admin-main select,
[data-theme="dark"] .admin-main textarea,
[data-theme="dark"] .admin-form-group input,
[data-theme="dark"] .admin-form-group select,
[data-theme="dark"] .admin-gate-box,
[data-theme="dark"] .admin-tal-group-header,
[data-theme="dark"] .pay-opt,
[data-theme="dark"] .msg-card{border-color:var(--admin-border);}
[data-theme="dark"] .admin-tal-group-header{background:var(--admin-card-bg);}
[data-theme="dark"] .admin-tal-group-header:hover{background:var(--gris);}
[data-theme="dark"] .admin-bono-row:hover{background:var(--gris);}

[data-theme="dark"] .admin-tal-chip.sold{background:var(--gris);}
[data-theme="dark"] .admin-tal-chip.available{background:#064e3b;border-color:#047857;color:#6ee7b7;}
[data-theme="dark"] .admin-tal-chip.available:hover{background:var(--azul);color:#fff;}
[data-theme="dark"] .manage-filter-btn.active{background:var(--azul);color:#fff;}
[data-theme="dark"] .admin-table td{border-color:var(--admin-border);}
[data-theme="dark"] .admin-table th{border-color:var(--admin-border);}
[data-theme="dark"] .admin-toggle-slider{background:#475569;}
[data-theme="dark"] .admin-toggle-slider::before{background:var(--texto-suave);}
[data-theme="dark"] .admin-toggle-switch input:checked + .admin-toggle-slider{background:var(--azul-medio);}
[data-theme="dark"] .admin-toggle-switch input:checked + .admin-toggle-slider::before{background:#fff;}
[data-theme="dark"] .admin-main input[type="number"],
[data-theme="dark"] .admin-main select,
[data-theme="dark"] .admin-form-group input,
[data-theme="dark"] .admin-form-group select{background:var(--admin-card-bg);color:var(--texto);border-color:var(--admin-border);}
[data-theme="dark"] .admin-gate-box input{border-width:1.5px;}
[data-theme="dark"] #adminTalRangeSelect{background:var(--admin-card-bg);color:var(--texto);border-color:var(--admin-border);}
[data-theme="dark"] .msg-truncated::after{background:linear-gradient(transparent,var(--admin-card-bg));}
[data-theme="dark"] .pay-opt{background:var(--admin-card-bg);}
[data-theme="dark"] .pay-opt.on{background:var(--azul-suave);border-color:var(--azul-claro);}
[data-theme="dark"] .admin-tal-sticky-panel{background:var(--admin-card-bg);border-color:var(--admin-border);}
[data-theme="dark"] .admin-stat-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.3);}
[data-theme="dark"] .manual-sale-bono{background:var(--azul-suave);border-color:var(--azul-medio);}

[data-theme="dark"] .bono-result-card.in-cart{background:var(--azul-suave);}
[data-theme="dark"] .admin-tal-chip.in-sale{background:#374151;border-color:#6b7280;color:#9ca3af;}
[data-theme="dark"] .admin-tal-chip.in-sale:hover{background:#4b5563;color:#d1d5db;border-color:#9ca3af;}

/* ADMIN SIDEBAR DARK */
[data-theme="dark"] .admin-sidebar{background:var(--admin-card-bg);color:var(--texto);}
[data-theme="dark"] .admin-sidebar-header{border-bottom-color:var(--admin-border);}
[data-theme="dark"] .admin-sidebar-item{color:var(--texto);}
[data-theme="dark"] .admin-sidebar-item:hover{background:var(--gris);}
[data-theme="dark"] .admin-sidebar-item.active{background:var(--azul-suave);}
[data-theme="dark"] .admin-sidebar-footer{border-top-color:var(--admin-border);}
[data-theme="dark"] .admin-sidebar-footer .admin-sidebar-item{color:var(--texto-suave);}
[data-theme="dark"] .admin-sidebar-footer .admin-sidebar-item:hover{color:var(--dorado);}
[data-theme="dark"] .sidebar-badge{color:#000;}
[data-theme="dark"] .admin-page-title{color:var(--texto);}

/* VENTA DETAIL DARK */
[data-theme="dark"] .venta-detail-header{border-bottom-color:var(--admin-border);}
[data-theme="dark"] .venta-detail-close{color:var(--texto-suave);}
[data-theme="dark"] .venta-detail-close:hover{color:var(--texto);}
[data-theme="dark"] .venta-detail-grid .sale-label,
[data-theme="dark"] .venta-detail-bonos .sale-label{color:var(--admin-border);}
[data-theme="dark"] .venta-num-chip{background:var(--gris);color:var(--azul-claro);}
[data-theme="dark"] .venta-detail-bono-label{color:var(--texto-suave);}
[data-theme="dark"] .venta-detail-total{border-top-color:var(--admin-border);}
[data-theme="dark"] .admin-panel-layout{box-shadow:0 4px 24px rgba(0,0,0,.4);}

/* PAGE BG DARK */
[data-theme="dark"] body,
[data-theme="dark"] #view-admin{background:var(--admin-bg);}

/* NAV DARK */
[data-theme="dark"] .nav-wrap{background:var(--admin-card-bg);border-bottom-color:var(--admin-border);}
[data-theme="dark"] .nav-links a{color:var(--texto);}
[data-theme="dark"] .nav-links a:hover{color:var(--azul);}
[data-theme="dark"] .nav-links a.active{color:#fff;}
[data-theme="dark"] .nav-logo-icon span{color:var(--texto-suave);}
[data-theme="dark"] .nav-cart-link{color:var(--texto);}
[data-theme="dark"] .nav-cart-link:hover{color:var(--azul);}
[data-theme="dark"] .nav-hamburger{color:var(--texto);}
[data-theme="dark"] .bottom-nav{background:var(--admin-card-bg);border-top-color:var(--admin-border);}
[data-theme="dark"] .bottom-nav a{color:var(--texto-suave);}
[data-theme="dark"] .bottom-nav a.active{color:var(--azul);}

/* ADMIN SHARED COMPONENTS DARK */
[data-theme="dark"] .club-bond-overlay{background:rgba(2,6,23,.6);}
[data-theme="dark"] .club-bond-modal,
[data-theme="dark"] .club-reg-modal,
[data-theme="dark"] .bases-modal-box{background:var(--admin-card-bg);}
[data-theme="dark"] .club-bond-modal-header,
[data-theme="dark"] .club-bond-modal-body,
[data-theme="dark"] .club-bond-modal-footer{border-color:var(--admin-border);}
[data-theme="dark"] .club-bond-modal-close{color:var(--texto-suave);}
[data-theme="dark"] .club-bond-modal-close:hover{color:var(--texto);}
[data-theme="dark"] .club-bond-modal input:not([type="checkbox"]):not([type="radio"]),
[data-theme="dark"] .club-bond-modal select,
[data-theme="dark"] .club-bond-modal textarea,
[data-theme="dark"] .bases-modal-cancel{background:var(--admin-card-bg);color:var(--texto);border-color:var(--admin-border);}
[data-theme="dark"] .club-bond-modal input:not([type="checkbox"]):not([type="radio"]):focus,
[data-theme="dark"] .club-bond-modal select:focus,
[data-theme="dark"] .club-bond-modal textarea:focus{border-color:var(--azul-claro);outline:none;}
[data-theme="dark"] .admin-tal-toolbar .tal-search-wrap input{background:var(--admin-card-bg);color:var(--texto);border-color:var(--admin-border);}
[data-theme="dark"] .toast{background:var(--admin-card-bg);color:var(--texto);border-color:var(--admin-border);box-shadow:0 8px 32px rgba(0,0,0,.5);}
[data-theme="dark"] .btn-cpsl.outline{background:var(--admin-card-bg);color:var(--texto);box-shadow:inset 0 0 0 1.5px var(--admin-border),0 2px 8px rgba(0,0,0,.3);}
[data-theme="dark"] .btn-cpsl.outline:hover{background:var(--gris);}
[data-theme="dark"] .btn-cpsl-circle{background:var(--admin-card-bg);color:var(--azul-claro);border-color:var(--azul-claro);}

/* ADMIN SIDEBAR/Nav hierarchy DARK */
[data-theme="dark"] .admin-sidebar-item.active{background:var(--azul);color:#fff;}
[data-theme="dark"] .admin-sidebar-item.active i{color:#fff;}
[data-theme="dark"] .nav-links a.active{color:#fff;}

/* ADMIN MAIN OVERRIDES (light background context) */
.admin-main input:not([type="checkbox"]):not([type="radio"]),
.admin-main select,
.admin-main textarea{background:#fff;border:1.5px solid #d1d5db;color:var(--texto);border-radius:8px;padding:9px 12px;font-size:13px;font-family:'Poppins',sans-serif;}
.admin-main input:not([type="checkbox"]):not([type="radio"]):focus,
.admin-main select:focus,
.admin-main textarea:focus{border-color:var(--azul-claro);outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.1);}
.admin-main input::placeholder{color:#94a3b8;}
.admin-main .admin-stat-card.revenue .admin-stat-num{color:var(--azul);}

/* PAYMENT METHOD SELECTOR */
.pay-opts{display:flex;gap:8px;margin-bottom:14px;}
.pay-opt{flex:1;border:1.5px solid #d1d5db;border-radius:8px;padding:10px;text-align:center;cursor:pointer;font-size:13px;font-weight:600;color:var(--texto-suave);transition:all .15s;font-family:'Poppins',sans-serif;background:#fff;}
.pay-opt.on{border-color:var(--azul-claro);color:var(--azul);background:var(--azul-suave);}
.pay-opt:hover:not(.on){border-color:var(--azul);}

/* PAYMENT OVERLAY */
.payment-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:3000;display:none;align-items:center;justify-content:center;}
.payment-overlay.open{display:flex;}
.payment-modal{background:#fff;border-radius:16px;padding:32px;max-width:440px;width:90%;text-align:center;box-shadow:var(--shadow-lg);}
.payment-modal-header{font-family:'Poppins',sans-serif;font-size:20px;color:var(--azul);margin-bottom:16px;}
.payment-logo{font-size:28px;font-weight:800;color:#009ee3;margin-bottom:16px;}
.payment-summary{text-align:left;font-size:13px;color:var(--texto-suave);margin-bottom:12px;}
.payment-item{padding:4px 0;}
.payment-total{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--azul);padding:12px 0 16px;border-top:1px solid var(--azul-suave);}
.payment-qr-placeholder{background:var(--gris);border-radius:12px;padding:20px;margin-bottom:16px;}
.payment-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.payment-cancel{background:transparent;border:2px solid #e2e8f0;color:var(--texto-suave);font-size:14px;cursor:pointer;padding:10px;border-radius:8px;font-weight:700;transition:all .2s;font-family:'Poppins',sans-serif;}
.payment-cancel:hover{border-color:var(--texto-suave);color:var(--texto);}
.payment-modal .fg{margin-bottom:10px;}
.payment-modal .fg label{display:block;font-size:12px;font-weight:600;color:var(--texto);margin-bottom:3px;text-transform:uppercase;letter-spacing:.3px;}
.payment-modal .fg input{width:100%;padding:9px 12px;border:1.5px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;font-family:'Poppins',sans-serif;transition:border .15s;background:#fff;color:var(--texto);}
.payment-modal .fg input:focus{border-color:var(--azul-claro);}

/* LOADING OVERLAY */
.loading-overlay {
  position: fixed; inset: 0; z-index: 99999;
  background: #fff; display: none;
  flex-direction: column; align-items: center; justify-content: center;
}
.loading-overlay.open { display: flex; }
.loading-spinner {
  width: 48px; height: 48px;
  border: 4px solid var(--azul-suave);
  border-top-color: var(--azul);
  border-radius: 50%; animation: spin .8s linear infinite;
}
.loading-text {
  margin-top: 16px; font-size: 14px; color: var(--texto-suave); font-weight: 600;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* TRANSITION OVERLAY */
.transition-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9998;background:var(--azul);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s ease;}
.transition-overlay.active{opacity:1;pointer-events:auto;}
.transition-overlay-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;margin-bottom:16px;}
.transition-overlay-icon{color:#fff;margin-bottom:12px;}
.transition-overlay-msg{color:#fff;font-size:20px;font-weight:700;font-family:'Poppins',sans-serif;}

/* TOAST */
.toast{position:fixed;bottom:24px;right:24px;background:#fff;color:var(--azul);padding:12px 16px;border-radius:10px;font-weight:600;font-size:13px;z-index:9999;transform:translateY(100px);opacity:0;transition:all .3s;max-width:420px;box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid #e2e8f0;display:flex;align-items:center;gap:10px;line-height:1.4;}
.toast.show{transform:translateY(0);opacity:1;}
.toast-icon{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--azul-suave),#eff6ff);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.toast-bono-icon{width:56px;height:56px;object-fit:contain;display:block;}
.toast-content{display:flex;flex-direction:column;gap:1px;}
.toast-nums{font-size:13px;font-weight:600;color:var(--azul);}
.toast-label{font-size:11px;font-weight:400;color:var(--texto-suave);}

@media(max-width:640px){
  .toast{padding:8px 12px;font-size:12px;gap:8px;right:12px;bottom:16px;max-width:calc(100vw - 24px);}
  .toast-icon{width:40px;height:40px;}
  .toast-bono-icon{width:40px;height:40px;}
  .toast-content{gap:0;}
  .toast-nums{font-size:12px;}
  .toast-label{font-size:10px;}
}

/* RESPONSIVE */
@media(max-width:768px){
  body{padding-bottom:64px;}
  .bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:99;background:#fff;border-top:2px solid var(--azul-suave);padding:4px 0 env(safe-area-inset-bottom,4px);align-items:stretch;justify-content:space-around;box-shadow:0 -4px 16px rgba(0,0,0,.08);}
  .bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 8px;color:var(--texto-suave);text-decoration:none;font-size:10px;font-weight:500;cursor:pointer;transition:color .15s;position:relative;min-width:52px;}
  .bottom-nav a i{width:20px;height:20px;}
  .bottom-nav a.active{color:var(--azul);}
  .bottom-nav a.active i{color:var(--azul);}
  .bottom-nav a::after{content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:0;height:2px;background:var(--azul);border-radius:2px;transition:width .2s ease;}
  .bottom-nav a.active::after{width:20px;}
  .bottom-nav a .cart-badge{position:absolute;top:-2px;left:50%;margin-left:14px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#dc2626;color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;}
  .nav-actions .admin-quick-btn,.nav-actions .user-dropdown-btn{display:none !important;}
  .nav-cart-link{display:none !important;}
  .view{padding-bottom:56px;}
  nav{padding:0 12px;}
  .nav-logo{flex:1;justify-content:center;}
  .nav-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1000;opacity:0;pointer-events:none;transition:opacity .25s;}
  .nav-drawer-overlay.open{opacity:1;pointer-events:auto;}
  .nav-links{display:flex!important;position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;background:#fff;z-index:1001;flex-direction:column;justify-content:flex-start;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding:0;box-shadow:4px 0 24px rgba(0,0,0,.15);}
  .nav-links.open{transform:translateX(0);}
  .nav-links a{padding:14px 20px;color:var(--texto-suave);font-size:13px;}
  .nav-links .nav-indicator{display:none;}
  .nav-links a.active,.nav-links a:hover{background:var(--azul);color:#fff;}
  .nav-links .nav-tabs{display:flex;border-bottom:1px solid var(--azul-suave);position:relative;}
  .nav-links .nav-tab{flex:1;text-align:center;padding:10px 8px;font-size:12px;font-weight:500;color:var(--texto-suave);cursor:pointer;transition:color .15s;}
  .nav-links .nav-tab.active{color:var(--azul);font-weight:600;}
  .nav-links .nav-admin a{display:flex;align-items:center;gap:10px;padding:14px 20px;font-size:13px;color:var(--texto-suave);text-decoration:none;}
  .nav-links .nav-admin a:hover{background:var(--azul);color:#fff;}
  .nav-links .nav-admin-footer{border-top:1px solid var(--azul-suave);margin-top:4px;padding-top:4px;}
  .nav-links.admin-active > a{display:none;}
  .nav-links.admin-active .nav-admin{display:block!important;}
  .toast{bottom:68px;}
  .nav-drawer-close{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--azul-suave);}
  .nav-drawer-close button{background:none;border:none;font-size:22px;cursor:pointer;color:var(--texto-suave);padding:2px 6px;line-height:1;border-radius:4px;}
  .nav-drawer-close button:hover{background:var(--azul-suave);}
  .nav-drawer-title{font-size:14px;font-weight:700;color:var(--azul);}
  .nav-hamburger{display:inline-flex;}
  .cdown-num{font-size:18px;min-width:20px;}
  .countdown-bar{padding:6px 12px;gap:6px;flex-wrap:wrap;}
  .cd-msg{font-size:11px;white-space:normal;text-align:center;}
  .bonos-hscroll{gap:12px;padding:8px 2px 12px;}
  .bonos-hscroll .bono-card{min-width:280px;max-width:300px;}
  .bonos-hscroll .club-card{width:260px;}
  .comprar-layout{grid-template-columns:1fr;}
  .club-card-img{height:120px;}
  .club-card-body{padding:12px 14px;}
  .how-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .footer-bottom-logo{height:40px;}
  .club-publish-banner{flex-direction:column;padding:24px;}
  #view-admin{padding:8px;}
  .admin-stats-grid{grid-template-columns:repeat(2,1fr);}
  .admin-panel-layout{flex-direction:column;}
  .admin-sidebar{display:none!important;}
  .admin-main{padding:12px;width:100%;}
  .about-grid{grid-template-columns:1fr;}
  .admin-tal-grid{grid-template-columns:1fr;}
  .admin-tal-scroll{max-height:360px;}
  .admin-tal-chip-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));max-height:360px;}
  .admin-tal-sticky-panel{display:none!important;}
  .nav-tabs{display:flex;border-bottom:1px solid var(--azul-suave);margin:0 0 4px;position:relative;}
  .nav-tab{flex:1;text-align:center;padding:10px 8px;font-size:12px;font-weight:500;color:var(--texto-suave);cursor:pointer;transition:all .15s;user-select:none;}
  .nav-tab.active{color:var(--azul);}
  .nav-tab:not(.active):hover{background:var(--azul-suave);}
  .nav-tab-indicator{position:absolute;bottom:0;height:2px;background:var(--azul);transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);border-radius:2px;}
  .nav-pages a{padding:14px 20px;font-weight:500;font-size:13px;color:var(--texto-suave);cursor:pointer;display:flex;align-items:center;gap:8px;text-decoration:none;}
  .nav-pages a:hover{background:var(--azul-suave);color:var(--azul);}
  .nav-admin a{padding:14px 20px;font-weight:500;font-size:13px;color:var(--azul);cursor:pointer;display:flex;align-items:center;gap:10px;text-decoration:none;}
  .nav-admin a:hover{background:var(--azul-suave);color:var(--azul-claro);}
  .nav-admin-footer{border-top:1px solid var(--azul-suave);margin-top:4px;padding-top:4px;}
  .nav-admin-footer a{color:rgba(100,116,139,.5)!important;}
  .nav-admin-footer a:hover{color:var(--azul-claro)!important;}
  .payment-modal{padding:24px;}
  .admin-quick-btn span{display:none;}
}

/* Badges */
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700;line-height:1.6;}
.badge-ok{background:var(--azul-suave);color:var(--azul);}
.badge-canceled{background:#e2e8f0;color:var(--texto-suave);}
.badge-error{background:#f1f5f9;color:var(--texto-suave);}
.badge-pending{background:rgba(245,158,11,.12);color:var(--dorado);}

/* Status banner (public site) */
.status-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;margin-bottom:16px;}
.status-pending{background:rgba(245,158,11,.1);color:var(--dorado);border:1px solid rgba(245,158,11,.3);}
.status-rejected{background:#f1f5f9;color:var(--texto-suave);border:1px solid #d1d5db;}

/* Admin quick button */
.admin-quick-btn{display:inline-flex;align-items:center;gap:6px;background:var(--azul);color:#fff;padding:8px 16px;border-radius:20px;font-weight:500;font-size:13px;cursor:pointer;transition:background .2s;border:none;font-family:'Poppins',sans-serif;text-decoration:none;}
.admin-quick-btn:hover{background:var(--azul-medio);}

/* Nav lucide icons */
.nav-links a i{width:16px;height:16px;vertical-align:middle;margin-right:4px;display:inline-block;}
.nav-links a.active i{color:#fff;}

/* Nav actions */
.nav-actions{display:flex;align-items:center;gap:12px;margin-left:auto;}

/* User dropdown */
.user-dropdown{position:relative;}
.user-dropdown-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1.5px solid var(--azul);border-radius:20px;padding:8px 14px;font-size:13px;font-weight:500;cursor:pointer;color:var(--azul);font-family:'Poppins',sans-serif;transition:border-color .2s,box-shadow .2s;white-space:nowrap;}
.user-dropdown-btn:hover{border-color:var(--azul-claro);box-shadow:0 0 0 3px rgba(13,43,110,.08);}
.user-dropdown-menu{display:none;position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.12);padding:6px;z-index:200;}
.user-dropdown-menu.open{display:block;}
@media(max-width:768px){.user-dropdown-menu{position:fixed;bottom:calc(56px + 8px);right:12px;top:auto;}}
.user-dropdown-header{padding:8px 10px;font-size:13px;font-weight:500;color:var(--texto);border-bottom:1px solid #e2e8f0;margin-bottom:4px;}
.user-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;font-weight:600;color:var(--texto-suave);cursor:pointer;transition:all .1s;text-decoration:none;}
.user-dropdown-item:hover{background:var(--gris);color:var(--azul);}
.user-dropdown-menu hr{border:none;border-top:1px solid #e2e8f0;margin:4px 0;}

/* Admin panel layout */
#view-admin{padding:20px;}
.admin-panel-layout{display:flex;min-height:calc(100vh - 120px);max-width:1400px;margin:0 auto;background:#fff;border-radius:16px;overflow:hidden;border:1px solid #e2e8f0;box-shadow:0 4px 24px rgba(13,43,110,.06);}
.admin-sidebar{width:220px;flex-shrink:0;background:var(--azul);color:#fff;display:flex;flex-direction:column;padding:16px 0;}
.admin-sidebar-header{font-family:'Poppins',sans-serif;font-size:16px;padding:12px 20px 20px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:8px;}
.admin-sidebar-nav{flex:1;position:relative;}
.admin-sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;color:rgba(255,255,255,.7);transition:all .1s;text-decoration:none;border:none;background:none;width:100%;text-align:left;font-family:'Poppins',sans-serif;}
.admin-sidebar-item:hover{background:rgba(255,255,255,.1);color:#fff;}
.admin-sidebar-item.active{background:rgba(255,255,255,.15);color:#fff;}
.admin-sidebar-indicator{position:absolute;right:0;top:0;width:3px;background:var(--dorado);border-radius:2px;pointer-events:none;z-index:1;transition:transform .35s cubic-bezier(.34,1.56,.64,1),height .35s cubic-bezier(.34,1.56,.64,1);}
.admin-sidebar-footer{border-top:1px solid rgba(255,255,255,.1);padding-top:8px;margin-top:8px;}
.admin-sidebar-footer .admin-sidebar-item{color:rgba(255,255,255,.5);}
.admin-sidebar-footer .admin-sidebar-item:hover{color:var(--dorado);}
.admin-main{flex:1;padding:24px;overflow-y:auto;}

/* Sidebar notification badges */
.sidebar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--dorado);color:#000;font-size:10px;font-weight:800;margin-left:auto;line-height:1;}

/* Mensajes cards */
.msg-card{border:1px solid #e2e8f0;border-radius:10px;margin-bottom:8px;overflow:hidden;transition:box-shadow .15s;}
.msg-card.msg-unread{background:#fefce8;border-left:3px solid var(--dorado);}
.msg-card.msg-read{background:#fff;}
.msg-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.06);}
.msg-card-inner{padding:12px 14px;}
.msg-card-header{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;}
.msg-meta{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0;}
.msg-name{font-weight:700;font-size:13px;color:var(--azul);}
.msg-email-date{font-size:11px;color:var(--texto-suave);}
.msg-actions{display:flex;gap:4px;flex-shrink:0;align-items:center;}
.msg-actions .admin-btn-sm{display:inline-flex;align-items:center;gap:4px;background:#fff;color:var(--texto-suave);border:1px solid #d1d5db;padding:4px 8px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;font-family:'Poppins',sans-serif;white-space:nowrap;}
.msg-actions .admin-btn-sm:hover{border-color:var(--azul);color:var(--azul);}
.msg-body{font-size:13px;line-height:1.5;white-space:pre-wrap;word-break:break-word;padding:8px 0 0;color:var(--texto-suave);display:none;}
.msg-body.open{display:block;}
.msg-body.msg-truncated{max-height:80px;overflow:hidden;position:relative;display:block;}
.msg-body.msg-truncated::after{content:'';position:absolute;bottom:0;left:0;right:0;height:24px;pointer-events:none;background:linear-gradient(transparent,#fff);}
.msg-expand-btn{background:none;border:none;font-size:11px;font-weight:600;cursor:pointer;padding:4px 0 0;font-family:'Poppins',sans-serif;color:var(--azul-claro);display:block;}
.msg-expand-btn:hover{text-decoration:underline;}
.msg-toggle-icon{color:var(--texto-suave);font-size:10px;transition:transform .15s;}
.msg-toggle-icon.open{transform:rotate(180deg);}

/* BIG SEARCH */
.search-big-wrap{text-align:center;padding:24px 0 16px;}
.search-big-label{font-size:14px;font-weight:700;color:var(--azul);margin-bottom:12px;}
/* BONO RESULT CARDS */
.bono-result-card{background:#fff;border:none;border-radius:14px;padding:16px 20px;margin-bottom:10px;display:flex;align-items:center;gap:24px;box-shadow:0 2px 12px rgba(13,43,110,.06);transition:box-shadow .2s,transform .15s;}
.bono-result-card:hover{box-shadow:0 8px 32px rgba(13,43,110,.1);transform:translateY(-1px);}
.bono-result-card.sold{opacity:.5;filter:grayscale(.7);}
.bono-result-card.in-cart{background:#f0f4ff;box-shadow:0 4px 20px rgba(13,43,110,.12);}

.bono-result-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--azul-suave),#eff6ff);display:flex;align-items:center;justify-content:center;color:var(--azul);flex-shrink:0;}
.bono-result-icon-img{width:64px;height:64px;object-fit:contain;position:relative;z-index:1;}
.avail-bono-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--azul-suave),#eff6ff);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:8px;}


.bono-result-info{flex:1;min-width:0;}
.bono-result-nums{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px;}
.bono-result-main{font-size:26px;font-weight:800;color:var(--azul);letter-spacing:1px;line-height:1.1;font-family:'Poppins',sans-serif;font-variant-numeric:tabular-nums;}
.bono-result-others{font-size:28px;font-weight:400;color:var(--azul);letter-spacing:1px;font-family:'Poppins',sans-serif;font-variant-numeric:tabular-nums;}
.bono-result-meta{font-size:12px;color:var(--texto-suave);margin-top:3px;}

.bono-result-action{flex-shrink:0;}
.bono-result-action .similar-bonos{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px;}
.bono-result-action .similar-bonos button{background:var(--gris);border:1px solid #e2e8f0;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;color:var(--azul);transition:all .12s;font-family:'Poppins',sans-serif;}
.bono-result-action .similar-bonos button:hover{background:var(--azul-suave);border-color:var(--azul-claro);}

/* CART BADGE IN NAV */
.nav-cart-link{position:relative;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;color:var(--azul);transition:color .2s,box-shadow .2s;text-decoration:none;font-weight:500;font-size:13px;white-space:nowrap;cursor:pointer;margin-left:12px;}
.nav-cart-link:hover{color:var(--azul);box-shadow:inset 0 0 0 1.5px var(--azul);}
.nav-cart-link.active{background:var(--azul);border-radius:20px;color:#fff;}
.nav-cart-link.active i{color:#fff;}
.nav-cart-link i{width:15px;height:15px;}
.cart-badge{position:absolute;top:-3px;right:-2px;min-width:14px;height:14px;border-radius:7px;background:#dc2626;color:#fff;font-size:8px;font-weight:800;align-items:center;justify-content:center;display:none;padding:0 3px;line-height:1;}

/* CART DRAWER */
.cart-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:999;opacity:0;pointer-events:none;transition:opacity .25s;}
.cart-drawer-overlay.open{opacity:1;pointer-events:auto;}
.cart-drawer{position:fixed;top:0;right:0;width:320px;height:100%;background:#fff;z-index:1000;box-shadow:-4px 0 24px rgba(0,0,0,.12);transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;}
.cart-drawer.open{transform:translateX(0);}
.cart-drawer-header{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid var(--azul-suave);}
.cart-drawer-header h3{font-size:15px;font-weight:700;color:var(--azul);margin:0;font-family:'Poppins',sans-serif;}
.cart-drawer-close{background:none;border:none;font-size:22px;cursor:pointer;color:var(--texto-suave);padding:2px 6px;line-height:1;border-radius:4px;}
.cart-drawer-close:hover{background:var(--azul-suave);}
.cart-drawer-items{flex:1;overflow-y:auto;padding:12px 20px;}
.cart-drawer-empty{text-align:center;color:var(--texto-suave);font-size:13px;padding:40px 0;}
.cart-drawer-item{display:flex;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid var(--azul-suave);}
.cart-drawer-item:last-child{border-bottom:none;}
.cart-drawer-item-icon{width:36px;height:36px;border-radius:10px;background:var(--azul-suave);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--azul);}
.cart-drawer-item-icon-img{width:64px;height:64px;object-fit:contain;position:relative;z-index:1;}
.cart-drawer-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;}
.cart-drawer-item-nums{font-size:13px;font-family:'Poppins',sans-serif;font-weight:600;color:var(--azul);letter-spacing:1px;line-height:1.4;}
.cart-drawer-item-meta{font-size:11px;color:var(--texto-suave);font-weight:400;}
.cart-drawer-item-price{font-size:13px;font-weight:700;color:var(--texto-suave);white-space:nowrap;}
.cart-drawer-item-remove{width:24px;height:24px;border:none;background:transparent;color:#dc2626;font-size:14px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;line-height:1;transition:background .12s;}
.cart-drawer-item-remove:hover{background:#fee2e2;}
.cart-drawer-footer{padding:16px 20px;border-top:1px solid var(--azul-suave);}
.cart-drawer-total{font-size:16px;font-weight:800;color:var(--azul);margin-bottom:12px;text-align:right;}


/* CARRITO VIEW */
.carrito-layout{display:grid;grid-template-columns:1fr 280px;gap:24px;align-items:start;}

/* LEFT COLUMN */
.carrito-left{display:flex;flex-direction:column;gap:16px;}
.carrito-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(13,43,110,.08);border:1px solid var(--azul-suave);}
.carrito-card-head{background:linear-gradient(135deg,var(--azul),var(--azul-medio));color:#fff;padding:14px 20px;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px;}
.carrito-card-body{padding:12px 14px;display:flex;flex-direction:column;gap:6px;}

/* CARRITO TICKET ITEMS */
.carrito-ticket-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed var(--azul-suave);border-radius:10px;background:linear-gradient(135deg,#f8fafc,#fff);position:relative;}
.carrito-ticket-badge{position:relative;display:inline-flex;flex-shrink:0;align-self:flex-start;}
.carrito-ticket-bono-icon{width:58px;height:58px;object-fit:contain;display:block;}
.carrito-ticket-idx-badge{position:absolute;top:-4px;left:-4px;width:20px;height:20px;border-radius:50%;background:#dc2626;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1;}
.carrito-ticket-icon{width:24px;height:24px;object-fit:contain;flex-shrink:0;opacity:.12;}
.carrito-ticket-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;}
.carrito-ticket-nums{font-size:15px;font-weight:700;color:var(--azul);font-family:'Poppins',sans-serif;letter-spacing:.5px;display:flex;align-items:center;gap:5px;}

.carrito-ticket-meta{font-size:11px;color:var(--texto-suave);}
.carrito-ticket-price{font-size:14px;font-weight:800;color:var(--texto);white-space:nowrap;flex-shrink:0;}
.carrito-ticket-remove{width:24px;height:24px;border:none;background:transparent;color:#94a3b8;font-size:15px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;line-height:1;transition:all .12s;}
.carrito-ticket-remove:hover{background:#fee2e2;color:#dc2626;}

/* RIGHT COLUMN — SUMMARY */
.carrito-right{position:sticky;top:90px;}
.carrito-summary{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(13,43,110,.08);border:1px solid var(--azul-suave);display:flex;flex-direction:column;}
.carrito-summary-head{background:linear-gradient(135deg,var(--azul),var(--azul-medio));color:#fff;padding:14px 18px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;}
.carrito-summary-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px;}
.carrito-summary-total{display:flex;flex-direction:column;gap:2px;text-align:center;padding-bottom:12px;border-bottom:2px dashed var(--azul-suave);}
.carrito-summary-total-label{font-size:11px;font-weight:600;color:var(--texto-suave);text-transform:uppercase;letter-spacing:1px;}
.carrito-summary-total-val{font-family:'Poppins',sans-serif;font-size:24px;font-weight:700;color:var(--azul);line-height:1.2;}
.carrito-summary-count{font-size:12px;color:var(--texto-suave);text-align:center;}
.carrito-summary-actions{display:flex;flex-direction:column;gap:12px;}

/* CHECKOUT VIEW */
.checkout-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start;}
.checkout-left{display:flex;flex-direction:column;gap:16px;}

/* CHECKOUT FORM CARD */
.checkout-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(13,43,110,.08);border:1px solid var(--azul-suave);}
.guia-page .checkout-card{background:rgba(255,255,255,.75);backdrop-filter:blur(8px);padding:16px 20px;}
.checkout-card-head{background:linear-gradient(135deg,var(--azul),var(--azul-medio));color:#fff;padding:14px 20px;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px;}
.checkout-card-body{padding:16px 20px;display:flex;flex-direction:column;gap:12px;}
.checkout-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.checkout-field{display:flex;flex-direction:column;gap:4px;}
.checkout-field label{font-size:12px;font-weight:600;color:var(--texto-suave);display:flex;align-items:center;gap:5px;}
.checkout-field label i{width:14px;height:14px;flex-shrink:0;color:var(--azul-claro);}
.checkout-field input,.checkout-field select{width:100%;padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;background:#fff;color:var(--texto);}
.checkout-field input:focus,.checkout-field select:focus{border-color:var(--azul-claro);box-shadow:0 0 0 3px rgba(59,130,246,.1);}
.checkout-field select{appearance:auto;cursor:pointer;}
.checkout-card-body .checkout-field input.field-error,
.checkout-card-body .checkout-field select.field-error{border-color:#dc2626!important;background:#fef2f2!important;}
.checkout-card-body .checkout-field input.field-error:focus,
.checkout-card-body .checkout-field select.field-error:focus{border-color:#dc2626!important;background:#fef2f2!important;box-shadow:0 0 0 3px rgba(220,38,38,.15);}

/* TERMS CHECKBOX WRAP */
.checkout-terms-wrap{background:#fff;border-radius:14px;padding:14px 18px;border:1px solid var(--azul-suave);box-shadow:0 2px 12px rgba(13,43,110,.06);display:flex;flex-direction:column;gap:10px;}

.checkout-terms-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--texto-suave);cursor:pointer;line-height:1.4;}
.checkout-terms-check input{width:16px;height:16px;cursor:pointer;accent-color:var(--azul);flex-shrink:0;}
.checkout-terms-check a{color:var(--azul);text-decoration:underline;cursor:pointer;}
.checkout-terms-check a:hover{color:var(--azul-claro);}

.payment-checks{display:flex;gap:12px;}
.payment-check-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--texto-suave);cursor:pointer;line-height:1.4;}
.payment-check-label input{width:16px;height:16px;cursor:pointer;accent-color:var(--azul);flex-shrink:0;}



/* CHECKOUT RIGHT — TICKET */
.checkout-right{position:sticky;top:90px;}
.checkout-ticket{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(13,43,110,.08);border:1px solid var(--azul-suave);}
.checkout-ticket-head{background:linear-gradient(135deg,var(--azul),var(--azul-medio));color:#fff;padding:14px 18px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;}
.checkout-ticket-items{padding:12px 14px;display:flex;flex-direction:column;gap:6px;}
.checkout-ticket-item{padding:10px 12px;border:1px dashed var(--azul-suave);border-radius:10px;background:linear-gradient(135deg,#f8fafc,#fff);position:relative;}
.checkout-ticket-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.checkout-ticket-item-nums{font-size:15px;font-weight:700;color:var(--azul);font-family:'Poppins',sans-serif;letter-spacing:.5px;display:flex;align-items:center;gap:6px;}

.checkout-ticket-item-price{font-size:14px;font-weight:800;color:var(--texto);white-space:nowrap;}
.checkout-ticket-item-meta{font-size:11px;color:var(--texto-suave);margin-top:4px;padding-left:20px;}
.checkout-ticket-divider{height:2px;background:repeating-linear-gradient(90deg,var(--azul-suave) 0,var(--azul-suave) 6px,transparent 6px,transparent 12px);margin:4px 14px;}
.checkout-ticket-total{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;font-size:13px;font-weight:600;color:var(--texto-suave);text-transform:uppercase;letter-spacing:.5px;}
.checkout-ticket-total span{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--azul);letter-spacing:0;text-transform:none;}
.checkout-ticket-footer{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;font-size:11px;font-weight:600;color:var(--texto-suave);border-top:1px solid var(--azul-suave);}
.checkout-ticket-footer i{width:12px;height:12px;}

/* MODAL ACTIONS (bases checkout modal) */
.bases-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--azul-suave);}
.bases-modal-cancel{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;transition:all .15s;background:#fff;color:var(--texto-suave);}
.bases-modal-cancel:hover{border-color:var(--texto-suave);color:var(--texto);}
.bases-modal-accept{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;background:var(--azul);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;font-family:'Poppins',sans-serif;transition:all .2s;box-shadow:0 4px 12px rgba(13,43,110,.2);}
.bases-modal-accept:hover{background:var(--azul-claro);transform:translateY(-1px);box-shadow:0 6px 18px rgba(13,43,110,.3);}

/* MOBILE: stack columns */
@media(max-width:768px){
  .checkout-layout{grid-template-columns:1fr;}
  .checkout-right{position:static;order:-1;}
  .checkout-ticket-item-nums{font-size:14px;}
  .checkout-ticket-total span{font-size:18px;}
  .checkout-row{grid-template-columns:1fr;}
  .checkout-card-body{padding:12px 14px;}
  .checkout-card-head{padding:12px 14px;font-size:14px;}
  .checkout-field input,.checkout-field select{padding:8px 10px;font-size:13px;}
  .checkout-terms-wrap{padding:12px 14px;}
  .bases-modal-actions{flex-direction:column-reverse;}
  .bases-modal-cancel,.bases-modal-accept{width:100%;justify-content:center;}
}

/* BASES & CONDITIONS */
.bases-content{padding:4px 0;}
.bases-clausula{font-size:14px;line-height:1.7;color:var(--texto);margin-bottom:18px;padding-left:4px;}
.bases-clausula strong{color:var(--azul);}
.bases-contacto{margin-top:24px;padding:14px 18px;background:var(--azul-suave);border-radius:10px;font-size:14px;font-weight:600;color:var(--azul);text-align:center;}
.bases-iplyc{font-size:11px;font-weight:600;color:var(--azul-claro);text-align:center;margin-bottom:14px;padding:6px 12px;background:var(--azul-suave);border-radius:8px;}
.checkout-iplyc{font-size:10px;color:var(--texto-suave);text-align:center;padding:6px 0 2px;}

/* BASES MODAL */
.bases-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;}
.bases-modal-box{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:80vh;overflow-y:auto;padding:28px 32px;box-shadow:0 20px 60px rgba(0,0,0,.25);position:relative;}
.bases-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;cursor:pointer;color:var(--texto-suave);padding:4px;}
.bases-modal-close:hover{color:var(--texto);}
.bases-modal-title{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--azul);margin-bottom:4px;}
.bases-modal-back{display:inline-flex;align-items:center;gap:6px;margin-top:20px;padding:10px 20px;background:var(--azul);color:#fff;border:none;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;transition:opacity .2s;font-family:'Poppins',sans-serif;}
.bases-modal-back:hover{opacity:.85;}

/* FAQ ACCORDION */
/* FAQ section */
.faq-item{border-bottom:1px solid rgba(0,0,0,.06);}
.faq-question{width:100%;background:none;border:none;padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:14px;font-weight:700;color:var(--azul);text-align:left;font-family:'Poppins',sans-serif;line-height:1.4;transition:color .2s;}
.faq-question:hover{color:var(--azul-claro);}
.faq-icon{width:18px;height:18px;flex-shrink:0;transition:transform .3s ease;color:var(--azul-claro);}
.faq-item.open .faq-icon{transform:rotate(180deg);}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease;padding:0;font-size:14px;line-height:1.7;color:var(--texto-suave);}
.faq-item.open .faq-answer{max-height:500px;padding:0 0 14px 0;}

/* BASES INLINE */
.bases-text{font-size:12px;line-height:1.7;color:var(--texto-suave);margin-bottom:10px;text-align:justify;}

/* FAQ CARD */
.faq-card{border:1.5px solid var(--azul-suave);border-radius:14px;padding:24px;text-align:center;cursor:pointer;background:#fff;transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.faq-card:hover{border-color:var(--azul);box-shadow:0 8px 32px rgba(13,43,110,.1);}
.faq-card-title{font-size:17px;font-weight:700;color:var(--azul);margin-bottom:4px;font-family:'Poppins',sans-serif;}
.faq-card-sub{font-size:12px;color:var(--texto-suave);}

/* FAQ MODAL */
.faq-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;}
.faq-modal-box{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:80vh;overflow-y:auto;padding:28px 32px;box-shadow:0 20px 60px rgba(0,0,0,.25);position:relative;}
.faq-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;cursor:pointer;color:var(--texto-suave);padding:4px;}
.faq-modal-close:hover{color:var(--texto);}
.faq-modal-title{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--azul);margin-bottom:12px;}
.faq-modal-accept{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:10px 20px;background:var(--azul);color:#fff;border:none;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;transition:opacity .2s;font-family:'Poppins',sans-serif;}
.faq-modal-accept:hover{opacity:.85;}

/* AVAILABLE NUMBERS */
.avail-wrap{max-height:400px;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:2px;scrollbar-width:thin;align-content:start;margin-bottom:8px;}
.avail-wrap::-webkit-scrollbar{width:5px;}
.avail-wrap::-webkit-scrollbar-thumb{background:var(--azul-suave);border-radius:4px;}
.avail-bono{display:flex;align-items:center;gap:4px;padding:6px 8px;border:1px dashed var(--azul-suave);border-radius:10px;cursor:pointer;transition:all .15s;background:linear-gradient(135deg,#f8fafc,#fff);user-select:none;flex-wrap:nowrap;position:relative;}
.avail-bono:hover{border-color:var(--azul);background:var(--azul);}
.avail-bono:hover .avail-bono-head,.avail-bono:hover .avail-bono-num,.avail-bono:hover .avail-bono-sep{color:#fff;}
.avail-bono.in-cart{opacity:.35;pointer-events:none;background:#f2f2f2;border-color:#ddd;}
.avail-bono.in-cart .avail-bono-head,.avail-bono.in-cart .avail-bono-num,.avail-bono.in-cart .avail-bono-sep{color:#bbb;}
.avail-bono-head{font-size:16px;font-weight:800;color:var(--azul);font-family:'Poppins',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.3px;}
.avail-bono-icon-img{width:56px;height:56px;object-fit:contain;}
.avail-bono-sep{font-size:13px;color:var(--texto-suave);font-weight:400;margin:0 1px;}
.avail-bono-num{font-size:16px;font-weight:600;color:var(--texto-suave);font-family:'Poppins',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.2px;}
.avail-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:4px 0;}

.avail-page-info{font-size:12px;font-weight:600;color:var(--texto-suave);white-space:nowrap;}

/* COMPRAR CARDS */
.comprar-layout{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.comprar-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(13,43,110,.08);border:1px solid var(--azul-suave);}
.comprar-card-head{background:linear-gradient(135deg,var(--azul),var(--azul-medio));color:#fff;padding:14px 20px;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px;}
.comprar-card-body{padding:16px 20px;display:flex;flex-direction:column;}
.comprar-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}

.comprar-card-sub{font-size:12px;color:var(--azul);text-align:center;padding:10px 14px;margin:0 14px 10px;background:#f0f5ff;border-radius:10px;line-height:1.5;border:1px solid var(--azul-suave);}

/* NUMERO MODAL */
.numero-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;}
.numero-modal-box{background:#fff;border-radius:20px;max-width:360px;width:100%;padding:32px 24px 28px;box-shadow:0 20px 60px rgba(0,0,0,.25);text-align:center;}
.numero-modal-icon{color:var(--azul);margin-bottom:10px;}
.numero-modal-title{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--azul);}
.numero-modal-sub{font-size:14px;color:var(--texto-suave);margin-top:4px;}
.numero-modal-sub strong{color:var(--azul);}

@keyframes suggestionFadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.suggestion-enter{animation:suggestionFadeIn .35s ease both;}

@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}

/* AGE GATE */
.age-gate-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px);}
.age-gate-modal{background:#fff;border-radius:20px;max-width:380px;width:100%;padding:32px 28px 28px;box-shadow:0 20px 60px rgba(0,0,0,.3);text-align:center;}
.age-gate-icon{color:var(--azul);margin-bottom:12px;}
.age-gate-title{font-size:20px;font-weight:700;color:var(--texto);margin:0 0 4px;font-family:'Poppins',sans-serif;}
.age-gate-sub{font-size:13px;color:var(--texto-suave);margin:0 0 20px;line-height:1.5;}
.age-gate-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;text-align:left;}
.age-gate-field label{font-size:12px;font-weight:600;color:var(--texto-suave);}
.age-gate-field input,.age-gate-field select{padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s;}
.age-gate-field input:focus,.age-gate-field select:focus{border-color:var(--azul-claro);box-shadow:0 0 0 3px rgba(59,130,246,.1);}
.age-gate-field input.field-error{border-color:#dc2626!important;}
.price-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.price-chip{padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:20px;background:#fff;font-size:13px;font-weight:600;color:var(--texto);cursor:pointer;font-family:'Poppins',sans-serif;transition:all .15s;white-space:nowrap;}
.price-chip:hover{border-color:var(--azul-claro);}
.price-chip.active{border-color:var(--azul);background:var(--azul);color:#fff;}
.price-chip-other{color:var(--azul);border-color:var(--azul);background:transparent;width:98px;}
.price-chip-other.active{background:var(--azul);color:#fff;}
.price-chip-other input{background:transparent;border:none;color:var(--azul);font-weight:600;text-align:center;width:100%;outline:none;font-family:'Poppins',sans-serif;font-size:13px;display:inline-block;padding:0;margin:0;}
.price-chip-other input::placeholder{color:rgba(59,130,246,.5);}
.price-chip-other.active input{color:#fff;}
.price-chip-other.active input::placeholder{color:rgba(255,255,255,.6);}

/* Stepper */
.stepper-wrap{display:flex;align-items:center;gap:6px;}
.stepper-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid #cbd5e1;background:#fff;color:var(--azul);font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-family:'Poppins',sans-serif;flex-shrink:0;padding:0;line-height:1;}
.stepper-btn:hover{border-color:var(--azul);background:var(--azul-suave);}
.stepper-input{width:170px;padding:8px 4px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:16px;font-weight:700;font-family:'Poppins',sans-serif;text-align:center;outline:none;transition:border-color .2s;background:#fff;color:var(--texto);}
.stepper-input:focus{border-color:var(--azul-claro);}

/* Max slider compact */
.max-slider-compact{position:relative;height:16px;cursor:pointer;touch-action:none;margin-top:5px;}
.max-slider-compact::before{content:'';position:absolute;left:0;right:0;top:50%;height:4px;background:#e2e8f0;border-radius:2px;transform:translateY(-50%);}
.max-meter{position:absolute;left:0;top:50%;height:4px;background:var(--azul);border-radius:2px;transform:translateY(-50%);pointer-events:none;width:0;}
.max-handle{position:absolute;top:50%;width:16px;height:16px;margin:-8px;border-radius:50%;background:var(--azul);box-shadow:0 1px 4px rgba(0,0,0,.3);z-index:2;cursor:grab;touch-action:none;left:0;}
.max-handle:active{cursor:grabbing;}
.max-labels{display:flex;justify-content:space-between;padding:0;margin-top:0;font-size:11px;color:#94a3b8;}
.max-labels span{cursor:pointer;transition:color .15s;user-select:none;padding:2px 0;}
.max-labels span.active{color:var(--azul);font-weight:700;}

/* Date picker dropdown */
.cal-drop-wrap{position:relative;}
.cal-input{width:100%;padding:10px 13px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s;background:#fff;color:var(--texto);text-align:center;letter-spacing:1px;font-weight:600;}
.cal-input:focus{border-color:var(--azul-claro);}
.cal-dropdown{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:8px;margin-top:4px;box-shadow:0 8px 24px rgba(0,0,0,.12);}
.cal-dropdown.open{display:block;}
.cal-header{text-align:center;font-size:13px;font-weight:700;color:var(--texto);margin-bottom:4px;cursor:pointer;user-select:none;}
.cal-header:hover{color:var(--azul);}
.cal-nav{display:flex;justify-content:space-between;position:absolute;top:8px;left:8px;right:8px;pointer-events:none;}
.cal-nav-btn{border:1px solid #e2e8f0;border-radius:50%;background:#fff;width:22px;height:22px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--azul);pointer-events:auto;padding:0;line-height:1;font-family:'Poppins',sans-serif;transition:all .15s;}
.cal-nav-btn:hover{background:var(--azul-suave);border-color:var(--azul);}
.cal-dow-row{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:10px;color:#94a3b8;font-weight:600;margin-bottom:2px;}
.cal-grid .cal-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;}
.cal-grid .cal-day{border:none;background:transparent;padding:4px 0;font-size:13px;font-weight:500;color:var(--texto);cursor:pointer;border-radius:4px;text-align:center;font-family:'Poppins',sans-serif;transition:all .1s;}
.cal-grid .cal-day:hover{background:var(--azul-suave);}
.cal-grid .cal-day.selected{background:var(--azul);color:#fff;font-weight:700;}
.cal-grid .cal-day.disabled{color:#d1d5db;pointer-events:none;cursor:default;}
.cal-month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px 0;}
.cal-month-pill{padding:6px 8px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:12px;font-weight:600;color:var(--texto);cursor:pointer;font-family:'Poppins',sans-serif;transition:all .1s;text-align:center;}
.cal-month-pill:hover{border-color:var(--azul-claro);}
.cal-month-pill.selected{border-color:var(--azul);background:var(--azul);color:#fff;}

.age-gate-date-row{display:flex;gap:8px;}
.age-gate-date-row select{flex:1;min-width:0;cursor:pointer;}
.age-gate-error{color:#dc2626;font-size:13px;margin-bottom:12px;min-height:20px;}

/* CHECKOUT ERROR CARD */
#fg-price,#fg-date{margin-bottom:16px;}
.checkout-error-card{background:#fef2f2;border:1.5px solid #dc2626;border-radius:10px;padding:12px 14px;margin:0 0 12px;display:flex;align-items:center;gap:8px;}
.checkout-error-card svg{width:20px;height:20px;flex-shrink:0;color:#dc2626;}
.checkout-error-card span{font-size:13px;font-weight:600;color:#991b1b;line-height:1.4;}

/* RESPONSIVE OVERRIDES */
@media(max-width:768px){
  .bono-result-card{flex-wrap:nowrap;gap:8px;padding:8px 12px;align-items:center;}
  .bono-result-action{width:auto;}
  .bono-result-icon{width:32px;height:32px;border-radius:8px;}
  .bono-result-icon-img{width:48px;height:48px;}
  .bono-result-info{display:flex;align-items:center;gap:4px;min-width:0;}
  .bono-result-nums{display:flex;align-items:baseline;gap:2px;flex-wrap:nowrap;}
  .bono-result-main{font-size:13px;font-weight:700;}
  .bono-result-others{font-size:13px;font-weight:500;}
  .bono-result-meta{display:none;}
  .bono-result-action .btn-cpsl{padding:6px 14px;font-size:12px;white-space:nowrap;}
  .bono-result-action .btn-cpsl i{width:12px;height:12px;}
  .comprar-layout{grid-template-columns:1fr;}
  .comprar-card-body{padding:12px 14px;}
  .comprar-card-head{padding:12px 14px;font-size:14px;}
  .avail-wrap{grid-template-columns:1fr;}
  .avail-bono{display:flex;align-items:center;gap:4px;padding:6px 10px;font-size:12px;}
  .avail-bono-head{font-size:16px;}
  .avail-bono-sep{font-size:11px;}
  .avail-bono-num{font-size:14px;}
  .avail-bono-icon{width:36px;height:36px;border-radius:6px;background:linear-gradient(135deg,var(--azul-suave),#eff6ff);display:flex;align-items:center;justify-content:center;color:var(--azul);flex-shrink:0;}
  .avail-pagination{gap:8px;flex-wrap:wrap;}
  .avail-page-info{font-size:11px;}
  .carrito-layout{grid-template-columns:1fr;}
  .carrito-right{position:static;order:-1;}
  .carrito-ticket-item{padding:8px 10px;gap:8px;}
  .carrito-ticket-icon{width:20px;height:20px;}
  .carrito-ticket-bono-icon{width:40px;height:40px;}
  .carrito-ticket-idx-badge{width:16px;height:16px;font-size:9px;top:-3px;left:-3px;}
  .carrito-ticket-nums{font-size:14px;}
  .carrito-ticket-meta{font-size:10px;}
  .carrito-ticket-price{font-size:13px;}
  .carrito-bottom-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fff;border-top:2px solid var(--azul-suave);padding:10px 16px;align-items:center;justify-content:space-between;box-shadow:0 -4px 12px rgba(0,0,0,.08);}
  .carrito-bottom-bar .carrito-bottom-total{font-size:16px;font-weight:800;color:var(--azul);font-family:'Poppins',sans-serif;}
  .coverflow-viewport{height:300px;}
  .coverflow-card{width:180px;}
  .coverflow-card .bcard-img,
  .coverflow-card .bcard-img-gen{height:50px;}
  .coverflow-card .bcard-body{padding:6px 10px;gap:3px;font-size:10px;}
  .coverflow-card .bcard-body .bcard-row{font-size:10px;}
  .coverflow-card .bcard-body .bcard-val{font-size:11px;}
  .coverflow-card .prog-wrap{display:none;}
  .coverflow-card .bcard-foot .btn-cpsl{font-size:10px;padding:4px 8px;}
  .coverflow-card .bcard-head{padding:8px 10px;}
  .coverflow-card .bcard-head h4{font-size:11px;}
  .coverflow-card .bcard-sub{font-size:9px;}
.coverflow-card.center{transform:translateX(-50%) translateY(-50%) scale(1);}
.coverflow-card.left{transform:translateX(calc(-50% - 70px)) translateY(-50%) scale(0.7);}
.coverflow-card.right{transform:translateX(calc(-50% + 70px)) translateY(-50%) scale(0.7);}
.coverflow-card.far-left{transform:translateX(calc(-50% - 150px)) translateY(-50%) scale(0.5);}
.coverflow-card.far-right{transform:translateX(calc(-50% + 150px)) translateY(-50%) scale(0.5);}
  .coverflow-wrap{max-width:400px;}
  .form-row-2col{grid-template-columns:1fr;}
  .form-row-half{flex-direction:column;align-items:stretch;}
}
@media(max-width:390px){
  .bono-result-card{padding:8px 10px;gap:6px;}
  .bono-result-icon{width:32px;height:32px;min-width:32px;}
  .bono-result-icon-img{width:44px;height:44px;}
  .bono-result-main{font-size:14px;}
  .bono-result-others{font-size:12px;}
  .bono-result-info{overflow:hidden;}
  .bono-result-nums{flex-wrap:nowrap;overflow:hidden;}
  .bono-result-action .btn-cpsl{width:32px;height:32px;padding:0;justify-content:center;border-radius:50%;font-size:0;min-width:0;gap:0;}
  .bono-result-action .btn-cpsl i{width:14px;height:14px;margin:0;}
  #availPrevBtn,#availNextBtn{width:32px;height:32px;padding:0;border-radius:50%;font-size:0;min-width:0;gap:0;}
  #view-admin{padding:4px;}
  .admin-panel-layout{max-width:100%;}
  .admin-main{padding:8px;width:100%;}
  .admin-tal-chip-grid{grid-template-columns:1fr;}
  .admin-mobile-item{flex-direction:column;align-items:stretch;}
  .admin-user-item{flex-direction:column;align-items:stretch;}
  .admin-user-item .btn-cpsl{width:100%;}
  #view-admin .admin-stats-grid{grid-template-columns:1fr;}
}
.carrito-bottom-bar{display:none;}
@media(max-width:768px){
  .carrito-bottom-bar{display:flex;}
}

/* Club bond buyers table */
.compradores-table{font-size:12px;}
.compradores-table th{background:var(--gris);padding:6px 8px;white-space:nowrap;}
.compradores-table td{padding:6px 8px;border-bottom:1px solid var(--gris);}

/* MP connect section in wizard */
#wizMpSection{margin-top:12px;}

/* MIS BONOS TABLE — desktop padding ajustado */
.misbonos-table th,
.misbonos-table td{padding:10px 6px;}
.mb-vendido{display:none;}
/* mobile: fila colapsada con vendido inline, tap expande label:valor */
@media(max-width:768px){
  .misbonos-table thead{display:none;}
  .misbonos-table tr{display:block;margin-bottom:8px;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px;background:#fff;cursor:pointer;}
  .misbonos-table td{display:none;border:none;padding:4px 0;font-size:13px;}
  .misbonos-table td:first-child{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:14px;padding:0;width:100%;}
  .mb-vendido{display:inline;font-weight:400;font-size:12px;color:var(--texto-suave);white-space:nowrap;}
  .misbonos-table tr.expanded td[data-label]{display:flex;justify-content:space-between;align-items:center;}
  .misbonos-table tr.expanded td[data-label]::before{content:attr(data-label);font-weight:600;font-size:11px;color:var(--texto-suave);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;margin-right:12px;}
  .misbonos-table tr.expanded td:first-child{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid #e2e8f0;}
}

/* Club Bond Detail — responsive */
@media(max-width:768px){
  .club-bond-hero{height:140px;}
  .club-bond-mini-info{font-size:11px;gap:6px;padding:8px 10px;}
  .club-bond-confirm-form .checkout-row{grid-template-columns:1fr;}
}
@media(max-width:390px){
  .club-bond-hero{height:100px;}
  .club-bond-hero-title{font-size:16px;}
  .num-circle{width:26px;height:26px;font-size:8px;}
  .club-bond-mini-info{font-size:10px;gap:4px;padding:6px 8px;}
  .club-bond-mini-info .club-bond-info-chip i{width:12px;height:12px;}
}

/* WIZARD AVISO LEGAL STATUS */
/* AVISO LEGAL MODAL */
.aviso-legal-overlay{position:fixed;inset:0;z-index:2600;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;animation:authFadeIn .2s ease;}
.aviso-legal-modal{background:#fff;border-radius:16px;max-width:600px;width:90%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.aviso-legal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid #e2e8f0;flex-shrink:0;}
.aviso-legal-header h3{margin:0;font-size:16px;font-weight:700;color:var(--azul);}
.aviso-legal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--texto-suave);padding:0;line-height:1;transition:color .15s;}
.aviso-legal-close:hover{color:var(--texto);}
.aviso-legal-content{overflow-y:auto;padding:16px 20px;flex:1;font-size:13px;line-height:1.8;color:#374151;min-height:200px;}
.aviso-legal-content p{margin:0 0 12px;}
.aviso-legal-content p:last-child{margin-bottom:0;}
.aviso-legal-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 18px;border-top:1px solid #e2e8f0;flex-shrink:0;}
.aviso-legal-bar-right{display:flex;align-items:center;gap:10px;}
.aviso-legal-bar input[type="checkbox"]{width:18px;height:18px;accent-color:var(--azul);cursor:pointer;}
.aviso-legal-bar label{font-size:13px;font-weight:500;color:var(--texto);}

/* ADMIN DARK INPUTS OVERRIDE — al final para ganar cascade sobre reglas base blancas */
[data-theme="dark"] .admin-main input:not([type="checkbox"]):not([type="radio"]),
[data-theme="dark"] .admin-main select,
[data-theme="dark"] .admin-main textarea,
[data-theme="dark"] .admin-tal-toolbar input,
[data-theme="dark"] .admin-tal-toolbar select,
[data-theme="dark"] .admin-tal-sticky-panel input,
[data-theme="dark"] .admin-tal-sticky-panel select,
[data-theme="dark"] .admin-form-group input,
[data-theme="dark"] .admin-form-group select,
[data-theme="dark"] .admin-gate-box input{
  background:var(--admin-card-bg)!important;
  color:var(--texto);
  border-color:var(--admin-border)!important;
}
[data-theme="dark"] .admin-bono-checkmark{background:var(--admin-card-bg);border-color:var(--admin-border-light);}
