/* ═══════════════════════════════════════════════════════════════
   RIFAS & LOTERIA — CSS Premium Beterraba (Betaco)
   Visual refinado, Dark Glassmorphism, 100% responsivo e integrado.
   ═══════════════════════════════════════════════════════════════ */

.btr-rifas-page,
.btr-loteria-page {
   --rifa-bg: #0a0c0f;
   --rifa-card: #131924;
   --rifa-card-hover: #1c2436;
   --rifa-accent: var(--btr-accent, #f05000);
   --rifa-lime: var(--btr-lime, #00d07c);
   --rifa-text: #ffffff;
   --rifa-muted: #8a99ad;
   --rifa-border: rgba(255, 255, 255, 0.08);
   --rifa-success: #00d07c;
   --rifa-warning: #f59e0b;
   --rifa-danger: #ef4444;
   --rifa-info: #3b82f6;
   --rifa-radius: 16px;
   --rifa-radius-sm: 10px;
   width: 100%;
   max-width: 100%;
   color: var(--rifa-text);
   font-family: 'Outfit', 'Inter', sans-serif;
   display: flex;
   flex-direction: column;
   gap: 24px;
   box-sizing: border-box;
}

/* ─── HERO BANNER DE SEÇÃO ─── */
.btr-sec-hero {
   position: relative;
   border-radius: var(--rifa-radius);
   padding: 28px 24px;
   overflow: hidden;
   background: linear-gradient(135deg, rgba(240, 80, 0, 0.15) 0%, rgba(19, 25, 36, 0.95) 100%);
   border: 1px solid rgba(240, 80, 0, 0.25);
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 20px;
   flex-wrap: wrap;
}
.btr-sec-hero.loteria {
   background: linear-gradient(135deg, rgba(0, 208, 124, 0.15) 0%, rgba(19, 25, 36, 0.95) 100%);
   border-color: rgba(0, 208, 124, 0.25);
}
.btr-sec-hero-content {
   display: flex;
   align-items: center;
   gap: 16px;
}
.btr-sec-hero-icon {
   width: 56px;
   height: 56px;
   border-radius: 16px;
   background: linear-gradient(135deg, var(--rifa-accent), rgba(240, 80, 0, 0.6));
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 1.6rem;
   color: #fff;
   box-shadow: 0 8px 24px rgba(240, 80, 0, 0.4);
   flex-shrink: 0;
}
.btr-sec-hero.loteria .btr-sec-hero-icon {
   background: linear-gradient(135deg, var(--rifa-lime), #059669);
   box-shadow: 0 8px 24px rgba(0, 208, 124, 0.35);
}
.btr-sec-hero-title h1 {
   font-size: 1.6rem;
   font-weight: 900;
   color: #fff;
   margin: 0;
   text-transform: uppercase;
   letter-spacing: -0.5px;
   line-height: 1.2;
}
.btr-sec-hero-title p {
   font-size: 0.9rem;
   color: var(--rifa-muted);
   margin: 4px 0 0;
   font-weight: 500;
}
.btr-sec-hero-actions {
   display: flex;
   gap: 10px;
   flex-wrap: wrap;
}
.btr-hero-action-btn {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: rgba(255, 255, 255, 0.06);
   border: 1px solid var(--rifa-border);
   border-radius: 24px;
   padding: 8px 18px;
   color: #fff !important;
   font-size: 0.82rem;
   font-weight: 800;
   text-decoration: none !important;
   transition: all 0.2s ease;
}
.btr-hero-action-btn:hover {
   background: var(--rifa-accent);
   border-color: var(--rifa-accent);
   transform: translateY(-2px);
}
.btr-sec-hero.loteria .btr-hero-action-btn:hover {
   background: var(--rifa-lime);
   border-color: var(--rifa-lime);
   color: #000 !important;
}

/* ─── ESTADOS VAZIOS ─── */
.btr-empty-state {
   text-align: center;
   padding: 4.5rem 1.5rem;
   background: linear-gradient(180deg, #131924 0%, #0a0c0f 100%);
   border-radius: var(--rifa-radius);
   border: 1px solid var(--rifa-border);
   color: var(--rifa-muted);
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
}
.btr-empty-ico {
   width: 72px;
   height: 72px;
   border-radius: 20px;
   background: rgba(240, 80, 0, 0.1);
   border: 1px solid rgba(240, 80, 0, 0.25);
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 2rem;
   color: var(--rifa-accent);
   margin-bottom: 1.25rem;
   box-shadow: 0 0 30px rgba(240, 80, 0, 0.2);
}
.btr-empty-state h3 {
   color: var(--rifa-text);
   font-size: 1.35rem;
   font-weight: 900;
   margin-bottom: 0.5rem;
   text-transform: uppercase;
   letter-spacing: -0.3px;
}
.btr-empty-state p {
   color: var(--rifa-muted);
   font-size: 0.9rem;
   max-width: 400px;
   margin-bottom: 1.5rem;
}
.btr-empty-btn {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   background: var(--rifa-accent);
   color: #fff !important;
   font-size: 0.85rem;
   font-weight: 800;
   padding: 10px 22px;
   border-radius: 30px;
   text-decoration: none !important;
   transition: all 0.2s;
   box-shadow: 0 4px 15px rgba(240, 80, 0, 0.35);
}
.btr-empty-btn:hover {
   filter: brightness(1.15);
   transform: translateY(-2px);
}

/* ═══════════════════════════════════════
   RIFAS — Grid de Cards
   ═══════════════════════════════════════ */
.rifa-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
   gap: 20px;
   width: 100%;
}

.rifa-card {
   background: var(--rifa-card);
   border-radius: var(--rifa-radius);
   overflow: hidden;
   text-decoration: none !important;
   color: var(--rifa-text) !important;
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   border: 1px solid var(--rifa-border);
   display: flex;
   flex-direction: column;
}
.rifa-card:hover {
   transform: translateY(-6px);
   background: var(--rifa-card-hover);
   border-color: rgba(240, 80, 0, 0.5);
   box-shadow: 0 16px 36px rgba(0, 0, 0, 0.6), 0 0 25px rgba(240, 80, 0, 0.25);
}

.rifa-card-img {
   position: relative;
   aspect-ratio: 16/10;
   overflow: hidden;
   background: #000;
}
.rifa-card-img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform 0.5s ease;
}
.rifa-card:hover .rifa-card-img img {
   transform: scale(1.08);
}
.rifa-badge-premio {
   position: absolute;
   bottom: 10px;
   left: 10px;
   background: rgba(10, 12, 15, 0.9);
   backdrop-filter: blur(8px);
   border: 1px solid var(--rifa-accent);
   color: var(--rifa-lime);
   font-size: 0.72rem;
   font-weight: 800;
   padding: 5px 12px;
   border-radius: 20px;
   text-transform: uppercase;
   letter-spacing: 0.5px;
}

.rifa-card-body {
   padding: 1.25rem;
   display: flex;
   flex-direction: column;
   flex-grow: 1;
   gap: 12px;
}
.rifa-card-title {
   font-size: 1.15rem;
   font-weight: 900;
   margin: 0;
   line-height: 1.35;
}
.rifa-card-price {
   display: flex;
   align-items: baseline;
   justify-content: space-between;
   background: rgba(255, 255, 255, 0.03);
   padding: 0.6rem 1rem;
   border-radius: var(--rifa-radius-sm);
   border: 1px solid var(--rifa-border);
}
.rifa-price-label {
   font-size: 0.75rem;
   color: var(--rifa-muted);
   text-transform: uppercase;
   font-weight: 700;
}
.rifa-price-value {
   font-size: 1.35rem;
   font-weight: 900;
   color: var(--rifa-lime);
}

.rifa-progress-wrap {
   margin-top: auto;
}
.rifa-progress-bar {
   height: 8px;
   background: rgba(255, 255, 255, 0.08);
   border-radius: 10px;
   overflow: hidden;
   margin-bottom: 6px;
}
.rifa-progress-fill {
   height: 100%;
   background: linear-gradient(90deg, var(--rifa-accent), var(--rifa-lime));
   border-radius: 10px;
   transition: width 0.5s ease;
}
.rifa-progress-info {
   display: flex;
   justify-content: space-between;
   font-size: 0.75rem;
   color: var(--rifa-muted);
   font-weight: 700;
}

.rifa-countdown {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   font-size: 0.78rem;
   color: var(--rifa-warning);
   font-weight: 800;
   background: rgba(245, 158, 11, 0.1);
   border: 1px solid rgba(245, 158, 11, 0.2);
   padding: 6px 12px;
   border-radius: 8px;
}

/* ═══════════════════════════════════════
   RIFAS — Detalhes
   ═══════════════════════════════════════ */
.rifa-back-link {
   display: inline-flex;
   align-items: center;
   gap: 0.5rem;
   color: var(--rifa-muted);
   font-size: 0.85rem;
   font-weight: 800;
   text-decoration: none !important;
   transition: color 0.2s;
}
.rifa-back-link:hover { color: #fff; }

.rifa-detail-layout {
   display: grid;
   grid-template-columns: 360px 1fr;
   gap: 20px;
   align-items: start;
   width: 100%;
}
@media (max-width: 960px) {
   .rifa-detail-layout { grid-template-columns: 1fr; }
}

.rifa-detail-info {
   background: var(--rifa-card);
   border-radius: var(--rifa-radius);
   padding: 1.5rem;
   border: 1px solid var(--rifa-border);
}
.rifa-detail-img {
   width: 100%;
   border-radius: var(--rifa-radius-sm);
   margin-bottom: 1.25rem;
   aspect-ratio: 16/10;
   object-fit: cover;
}
.rifa-detail-title {
   font-size: 1.5rem;
   font-weight: 900;
   margin-bottom: 0.75rem;
   line-height: 1.25;
}
.rifa-detail-desc {
   color: var(--rifa-muted);
   font-size: 0.9rem;
   margin-bottom: 1.5rem;
   line-height: 1.6;
}
.rifa-detail-meta {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 0.75rem;
   margin-bottom: 1.5rem;
}
.rifa-meta-item {
   background: rgba(255, 255, 255, 0.03);
   border: 1px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.85rem;
}
.rifa-meta-label {
   display: block;
   font-size: 0.68rem;
   color: var(--rifa-muted);
   margin-bottom: 4px;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   font-weight: 700;
}
.rifa-meta-value {
   font-size: 1.05rem;
   font-weight: 900;
}

.rifa-quick-buy {
   background: rgba(240, 80, 0, 0.05);
   border: 1px dashed rgba(240, 80, 0, 0.3);
   border-radius: var(--rifa-radius-sm);
   padding: 1.25rem;
}
.rifa-quick-buy h3 {
   font-size: 0.95rem;
   font-weight: 800;
   margin-bottom: 1rem;
   color: var(--rifa-lime);
   display: flex;
   align-items: center;
   gap: 0.5rem;
}
.rifa-quick-buttons {
   display: flex;
   gap: 0.5rem;
   flex-wrap: wrap;
}
.rifa-quick-btn {
   flex: 1;
   min-width: 75px;
   background: var(--rifa-card);
   border: 1px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.65rem 0.5rem;
   color: var(--rifa-text);
   font-weight: 800;
   font-size: 0.85rem;
   cursor: pointer;
   transition: all 0.2s;
   display: flex;
   flex-direction: column;
   align-items: center;
}
.rifa-quick-btn small {
   font-size: 0.68rem;
   color: var(--rifa-lime);
   font-weight: 700;
   margin-top: 2px;
}
.rifa-quick-btn:hover {
   background: var(--rifa-accent);
   border-color: var(--rifa-accent);
   transform: translateY(-2px);
}

.rifa-detail-grid-area {
   background: var(--rifa-card);
   border-radius: var(--rifa-radius);
   padding: 1.5rem;
   border: 1px solid var(--rifa-border);
}
.rifa-grid-header {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 1.25rem;
   flex-wrap: wrap;
   gap: 0.75rem;
}
.rifa-grid-header h3 {
   font-size: 1.1rem;
   font-weight: 900;
   margin: 0;
}
.rifa-grid-legend {
   display: flex;
   gap: 1rem;
   font-size: 0.75rem;
   color: var(--rifa-muted);
   font-weight: 700;
}
.rifa-grid-legend span span {
   display: inline-block;
   width: 12px;
   height: 12px;
   border-radius: 4px;
   margin-right: 5px;
   vertical-align: middle;
}
.leg-disp span { background: var(--rifa-success); }
.leg-sel span { background: var(--rifa-accent); }
.leg-res span { background: var(--rifa-warning); }
.leg-vend span { background: var(--rifa-danger); }

.rifa-numbers-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
   gap: 6px;
   max-height: 580px;
   overflow-y: auto;
   padding: 4px;
}
.rifa-num {
   aspect-ratio: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 0.75rem;
   font-weight: 800;
   border-radius: 8px;
   border: 1px solid rgba(0, 208, 124, 0.25);
   background: rgba(0, 208, 124, 0.08);
   color: var(--rifa-success);
   cursor: pointer;
   transition: all 0.15s ease;
   font-family: 'Outfit', monospace;
}
.rifa-num:hover:not(:disabled):not(.vendido):not(.reservado) {
   background: rgba(0, 208, 124, 0.25);
   transform: scale(1.12);
   z-index: 2;
}
.rifa-num.selecionado {
   background: var(--rifa-accent) !important;
   color: white !important;
   border-color: var(--rifa-accent) !important;
   box-shadow: 0 0 12px rgba(240, 80, 0, 0.5);
   transform: scale(1.08);
}
.rifa-num.reservado {
   background: rgba(245, 158, 11, 0.12);
   border-color: rgba(245, 158, 11, 0.3);
   color: var(--rifa-warning);
   cursor: not-allowed;
   opacity: 0.6;
}
.rifa-num.vendido {
   background: rgba(239, 68, 68, 0.08);
   border-color: rgba(239, 68, 68, 0.2);
   color: rgba(239, 68, 68, 0.4);
   cursor: not-allowed;
   opacity: 0.35;
}
.rifa-num:disabled { cursor: not-allowed; }

.rifa-cart {
   position: sticky;
   bottom: 1rem;
   background: #182030;
   border-radius: var(--rifa-radius);
   padding: 1.25rem;
   border: 2px solid var(--rifa-accent);
   box-shadow: 0 12px 40px rgba(0, 0, 0, 0.6);
   margin-top: 1.5rem;
}
.rifa-cart-header {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 1rem;
}
.rifa-cart-header h4 {
   font-size: 1.05rem;
   font-weight: 800;
   margin: 0;
}
.rifa-cart-clear {
   background: none;
   border: none;
   color: var(--rifa-danger);
   cursor: pointer;
   font-size: 0.85rem;
   font-weight: 700;
}
.rifa-cart-nums {
   display: flex;
   flex-wrap: wrap;
   gap: 6px;
   margin-bottom: 1rem;
   max-height: 120px;
   overflow-y: auto;
}
.cart-num {
   background: var(--rifa-accent);
   color: white;
   font-size: 0.78rem;
   font-weight: 800;
   padding: 4px 10px;
   border-radius: 6px;
   font-family: 'Outfit', monospace;
}
.rifa-cart-total {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 0.85rem 0;
   border-top: 1px solid var(--rifa-border);
   margin-bottom: 1rem;
   font-size: 1.15rem;
   font-weight: 900;
}
.rifa-cart-total span:last-child {
   color: var(--rifa-lime);
   font-size: 1.35rem;
}
.rifa-cart-actions {
   display: flex;
   gap: 0.75rem;
}
.rifa-btn-saldo, .rifa-btn-pix {
   flex: 1;
   padding: 0.85rem;
   border-radius: var(--rifa-radius-sm);
   font-weight: 800;
   font-size: 0.85rem;
   cursor: pointer;
   border: none;
   transition: all 0.2s;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 0.5rem;
}
.rifa-btn-saldo { background: var(--rifa-accent); color: white; }
.rifa-btn-pix { background: #32bcad; color: white; }

/* ═══════════════════════════════════════
   LOTERIA / JOGO DO BICHO
   ═══════════════════════════════════════ */
.loteria-sub-title {
   font-size: 0.95rem;
   font-weight: 900;
   margin: 0 0 12px 0;
   display: flex;
   align-items: center;
   gap: 0.6rem;
   color: var(--rifa-text);
   text-transform: uppercase;
   letter-spacing: 0.5px;
}
.loteria-sub-title i {
   color: var(--rifa-lime);
}

.loteria-horarios-grid {
   display: flex;
   gap: 10px;
   overflow-x: auto;
   padding-bottom: 6px;
   width: 100%;
}
.loteria-horario-card {
   cursor: pointer;
   flex-shrink: 0;
}
.loteria-horario-card input { display: none; }
.loteria-horario-inner {
   background: var(--rifa-card);
   border: 2px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.75rem 1.4rem;
   text-align: center;
   transition: all 0.2s ease;
   min-width: 110px;
}
.loteria-horario-card input:checked + .loteria-horario-inner {
   border-color: var(--rifa-lime);
   background: rgba(0, 208, 124, 0.15);
   box-shadow: 0 0 20px rgba(0, 208, 124, 0.3);
   transform: translateY(-2px);
}
.loteria-horario-time {
   display: block;
   font-size: 1.35rem;
   font-weight: 900;
   color: var(--rifa-text);
}
.loteria-horario-name {
   display: block;
   font-size: 0.7rem;
   color: var(--rifa-muted);
   text-transform: uppercase;
   letter-spacing: 0.5px;
   font-weight: 700;
}

.loteria-mod-tabs {
   display: flex;
   gap: 10px;
   overflow-x: auto;
   padding-bottom: 6px;
   width: 100%;
}
.loteria-mod-tab {
   background: var(--rifa-card);
   border: 1px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 10px 16px;
   color: var(--rifa-text);
   font-weight: 800;
   font-size: 0.85rem;
   cursor: pointer;
   transition: all 0.2s;
   white-space: nowrap;
   display: flex;
   flex-direction: column;
   align-items: center;
   flex-shrink: 0;
}
.loteria-mod-tab small {
   font-size: 0.72rem;
   color: var(--rifa-lime);
   font-weight: 700;
   margin-top: 2px;
}
.loteria-mod-tab.active {
   background: linear-gradient(135deg, var(--rifa-lime), #059669);
   border-color: var(--rifa-lime);
   color: #000;
   box-shadow: 0 4px 16px rgba(0, 208, 124, 0.35);
}
.loteria-mod-tab.active small {
   color: rgba(0, 0, 0, 0.85);
   font-weight: 900;
}

.loteria-animais-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
   gap: 12px;
   width: 100%;
}
.loteria-animal-card {
   background: var(--rifa-card);
   border: 2px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 14px 8px;
   text-align: center;
   cursor: pointer;
   transition: all 0.2s;
   color: var(--rifa-text);
   outline: none;
   display: flex;
   flex-direction: column;
   align-items: center;
}
.loteria-animal-card:hover {
   border-color: var(--rifa-lime);
   background: var(--rifa-card-hover);
   transform: translateY(-3px);
}
.loteria-animal-card.selected {
   border-color: var(--rifa-lime);
   background: rgba(0, 208, 124, 0.18);
   box-shadow: 0 6px 20px rgba(0, 208, 124, 0.4);
   transform: translateY(-2px);
}
.loteria-animal-emoji {
   display: block;
   font-size: 2.4rem;
   margin-bottom: 8px;
   line-height: 1;
}
.loteria-animal-name {
   display: block;
   font-size: 0.85rem;
   font-weight: 800;
   color: #fff;
}
.loteria-animal-dezenas {
   display: block;
   font-size: 0.72rem;
   color: var(--rifa-lime);
   margin-top: 4px;
   font-weight: 700;
   background: rgba(0, 208, 124, 0.1);
   padding: 2px 8px;
   border-radius: 10px;
}

.loteria-numero-input-wrap {
   display: flex;
   align-items: center;
   gap: 1.25rem;
   max-width: 450px;
   background: var(--rifa-card);
   padding: 1.25rem 1.5rem;
   border-radius: var(--rifa-radius);
   border: 1px solid var(--rifa-border);
}
.loteria-numero-input {
   background: rgba(0, 0, 0, 0.4);
   border: 2px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.75rem 1rem;
   font-size: 2rem;
   font-weight: 900;
   color: var(--rifa-text);
   text-align: center;
   width: 180px;
   font-family: 'Outfit', monospace;
   letter-spacing: 6px;
   outline: none;
   transition: border-color 0.2s;
}
.loteria-numero-input:focus { border-color: var(--rifa-lime); }
.loteria-numero-grupo { font-size: 1.2rem; color: var(--rifa-lime); font-weight: 800; }

.loteria-aposta-area {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 20px;
   align-items: stretch;
   width: 100%;
}
@media (max-width: 768px) {
   .loteria-aposta-area { grid-template-columns: 1fr; }
}
.loteria-valor-wrap {
   background: var(--rifa-card);
   border-radius: var(--rifa-radius);
   padding: 1.5rem;
   border: 1px solid var(--rifa-border);
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   gap: 14px;
}
.loteria-valor-buttons {
   display: flex;
   gap: 0.5rem;
   flex-wrap: wrap;
}
.loteria-valor-btn {
   background: rgba(255, 255, 255, 0.05);
   border: 1px solid var(--rifa-border);
   border-radius: 8px;
   padding: 0.6rem 1rem;
   color: var(--rifa-text);
   font-weight: 800;
   font-size: 0.85rem;
   cursor: pointer;
   transition: all 0.2s;
}
.loteria-valor-btn:hover { border-color: var(--rifa-lime); background: var(--rifa-lime); color: #000; }
.loteria-valor-custom {
   width: 100%;
}
.loteria-valor-input {
   background: rgba(0, 0, 0, 0.4);
   border: 2px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.75rem 1rem;
   font-size: 1.35rem;
   font-weight: 900;
   color: var(--rifa-text);
   width: 100%;
   outline: none;
   transition: border-color 0.2s;
   box-sizing: border-box;
}
.loteria-valor-input:focus { border-color: var(--rifa-lime); }

.loteria-premio-box {
   background: linear-gradient(135deg, rgba(0, 208, 124, 0.15), rgba(19, 25, 36, 0.95));
   border: 1px solid rgba(0, 208, 124, 0.35);
   border-radius: var(--rifa-radius);
   padding: 1.5rem;
   text-align: center;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 8px;
}
.loteria-premio-label {
   font-size: 0.75rem;
   color: var(--rifa-muted);
   text-transform: uppercase;
   letter-spacing: 1px;
   font-weight: 700;
}
.loteria-premio-valor {
   font-size: 2.4rem;
   font-weight: 900;
   color: var(--rifa-lime);
   line-height: 1.1;
}
.loteria-premio-mult {
   font-size: 0.85rem;
   color: var(--rifa-muted);
   font-weight: 700;
}

.loteria-confirmar {
   width: 100%;
}
.loteria-resumo {
   background: var(--rifa-card);
   border-radius: var(--rifa-radius-sm);
   padding: 1rem 1.25rem;
   font-size: 0.95rem;
   color: var(--rifa-text);
   margin-bottom: 1rem;
   border: 1px solid var(--rifa-border);
}
.loteria-btn-apostar {
   width: 100%;
   padding: 1.2rem;
   background: linear-gradient(135deg, var(--rifa-lime), #059669);
   color: #000;
   border: none;
   border-radius: var(--rifa-radius);
   font-size: 1.15rem;
   font-weight: 900;
   cursor: pointer;
   transition: all 0.25s;
   text-transform: uppercase;
   letter-spacing: 1px;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 0.6rem;
   box-shadow: 0 8px 24px rgba(0, 208, 124, 0.35);
}
.loteria-btn-apostar:not(:disabled):hover {
   filter: brightness(1.15);
   transform: translateY(-2px);
   box-shadow: 0 12px 32px rgba(0, 208, 124, 0.45);
}
.loteria-btn-apostar:disabled {
   opacity: 0.4;
   cursor: not-allowed;
   box-shadow: none;
}

.loteria-links {
   display: flex;
   gap: 12px;
   flex-wrap: wrap;
   width: 100%;
}
.loteria-link {
   background: var(--rifa-card);
   border: 1px solid var(--rifa-border);
   border-radius: var(--rifa-radius-sm);
   padding: 0.85rem 1.5rem;
   color: var(--rifa-text) !important;
   text-decoration: none !important;
   font-weight: 800;
   font-size: 0.85rem;
   transition: all 0.2s;
   display: flex;
   align-items: center;
   gap: 0.6rem;
}
.loteria-link:hover {
   border-color: var(--rifa-lime);
   background: var(--rifa-card-hover);
   transform: translateY(-2px);
}
