:root{--mega-sena-bg:#ffffff;--mega-sena-text:#343a40;--mega-sena-border:#e9ecef;--mega-sena-gradient-light:#f8f9fa;--mega-sena-secondary-text:#6c757d;--mega-sena-tertiary-text:#adb5bd;--mega-sena-tertiary-border:#dee2e6;--mega-sena-button-danger:#dc3545;--mega-sena-button-success:#28a745;}
[data-theme="dark"]{--mega-sena-bg:#2d2d2d;--mega-sena-text:#e9ecef;--mega-sena-border:#495057;--mega-sena-gradient-light:#3a3a3a;--mega-sena-secondary-text:#adb5bd;--mega-sena-tertiary-text:#6c757d;--mega-sena-tertiary-border:#495057;--mega-sena-button-danger:#dc3545;--mega-sena-button-success:#28a745;}
.mega-sena-container{background:var(--mega-sena-bg);border-radius:1rem;box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);padding:2rem;margin:1.5rem auto;max-width:800px;transition:all 0.3s ease;overflow:hidden;position:relative;border:2px solid transparent;}
.mega-sena-container:hover{box-shadow:0 8px 25px rgba(0,0,0,0.1);transform:translateY(-2px);}
.mega-sena-controles{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:0;padding:1.5rem;background:linear-gradient(135deg,var(--mega-sena-gradient-light),var(--mega-sena-border));border-radius:0.75rem;border:1px solid var(--mega-sena-border);align-items:flex-end;}
.mega-sena-controles label{display:flex;flex-direction:column;gap:0.5rem;font-weight:600;color:var(--mega-sena-text);font-size:0.95rem;flex:1;min-width:120px;}
.mega-sena-select{padding:0.875rem 1rem;font-size:1rem;border:2px solid var(--mega-sena-border);border-radius:0.5rem;background-color:var(--mega-sena-bg);color:var(--mega-sena-text);transition:all 0.3s ease;font-family:inherit;font-weight:500;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 0.5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;}
.mega-sena-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px rgba(0,166,81,0.1);transform:translateY(-1px);background-color:var(--mega-sena-gradient-light);}
.mega-sena-select:hover{border-color:var(--primary-blue);background-color:var(--mega-sena-gradient-light);}
.mega-sena-select.error{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,0.1);background-color:rgba(220,53,69,0.05);}
.mega-sena-select.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,0.2);}
.mega-sena-error-message{display:block;color:#dc3545;font-size:0.875rem;margin-top:0.25rem;font-weight:500;animation:slideInFromTop 0.3s ease-out;}
@keyframes slideInFromTop{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}
.mega-sena-button-gerar{min-width:140px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0.875rem 2rem;height:fit-content;position:relative;}
.mega-sena-button-gerar.loading{pointer-events:none;opacity:0.8;position:relative;}
.mega-sena-button-gerar.loading::after{content:'';position:absolute;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:mega-sena-spin 1s linear infinite;right:1rem;top:50%;transform:translateY(-50%);}
@keyframes mega-sena-spin{from{transform:translateY(-50%) rotate(0deg);}to{transform:translateY(-50%) rotate(360deg);}}
.mega-sena-progresso{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:3rem 2rem;min-height:200px;text-align:center;}
.mega-sena-spinner{display:flex;align-items:center;justify-content:center;color:var(--primary-green);animation:mega-sena-spin 1.5s linear infinite;}
.mega-sena-spinner svg{width:48px;height:48px;}
.mega-sena-progresso-texto{font-size:1.1rem;font-weight:600;color:var(--mega-sena-text);margin:0;animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.6;}}
.mega-sena-aviso-memoria{background:linear-gradient(135deg,rgba(255,193,7,0.1),rgba(255,152,0,0.1));border:1px solid rgba(255,193,7,0.3);border-radius:0.75rem;padding:1rem 1.5rem;margin:1rem 0;animation:slideInFromTop 0.3s ease-out;}
.mega-sena-aviso-memoria-content{display:flex;align-items:center;gap:0.75rem;color:var(--mega-sena-text);font-size:0.9rem;line-height:1.5;}
.mega-sena-aviso-memoria-content svg{flex-shrink:0;color:#ff9800;width:20px;height:20px;}
.mega-sena-aviso-memoria-content span{flex:1;}
.mega-sena-resultados{background:var(--mega-sena-bg);border-radius:1rem;padding:2rem;border:1px solid var(--mega-sena-border);position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem;}
.mega-sena-resultados.empty{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--mega-sena-secondary-text);font-size:1.1rem;flex-direction:column;gap:1rem;}
.mega-sena-resultados.empty p{margin:0;font-weight:600;}
.mega-sena-resultados.empty span{font-size:0.9rem;color:var(--mega-sena-tertiary-text);}
.mega-sena-linha{display:flex;flex-direction:column;flex-wrap:wrap;gap:0.75rem;padding:1rem;background:linear-gradient(135deg,var(--mega-sena-gradient-light),var(--mega-sena-bg));border-radius:0.75rem;border:1px solid var(--mega-sena-border);transition:all 0.3s ease;align-items:center;justify-content:center;position:relative;animation:slideInFromBottom 0.5s ease-out;overflow:hidden;}
@keyframes slideInFromBottom{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
.mega-sena-linha:hover{background:linear-gradient(135deg,var(--mega-sena-bg),var(--mega-sena-gradient-light));box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-2px);}
.mega-sena-numero{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--primary-green);border-radius:50%;font-size:1rem;font-weight:700;color:var(--primary-green);background:var(--mega-sena-bg);transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,166,81,0.1);position:relative;overflow:hidden;cursor:pointer;}
.mega-sena-numero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,166,81,0.1),rgba(0,114,188,0.1));opacity:0;transition:opacity 0.3s ease;border-radius:50%;}
.mega-sena-numero:hover{background:linear-gradient(135deg,var(--primary-green),var(--primary-blue));color:var(--white);border-color:var(--dark-green);transform:scale(1.1);box-shadow:0 4px 15px rgba(0,166,81,0.3);}
.mega-sena-numero:hover::before{opacity:1;}
.mega-sena-numero.animate{animation:pulseNumber 0.6s ease-out;}
.mega-sena-numero-vazio{border-color:var(--mega-sena-border);background:var(--mega-sena-gradient-light);color:transparent;opacity:0.6;animation:aparecerCirculo 0.3s ease-out;}
.mega-sena-numero-sorteando{border-color:var(--primary-green);background:var(--mega-sena-bg);color:var(--primary-green);animation:sorteioNumber 0.8s ease-in-out;font-weight:700;}
.mega-sena-numero-final{animation:finalNumber 0.5s ease-out;box-shadow:0 4px 20px rgba(0,166,81,0.4);border-color:var(--primary-green);background:linear-gradient(135deg,var(--primary-green),var(--primary-blue));color:var(--white);font-weight:700;}
@keyframes aparecerCirculo{0%{transform:scale(0);opacity:0;}100%{transform:scale(1);opacity:0.6;}}
@keyframes pulseNumber{0%{transform:scale(1);opacity:1;}50%{transform:scale(1.2);opacity:0.8;}100%{transform:scale(1);opacity:1;}}
@keyframes sorteioNumber{0%{transform:scale(1);opacity:0.8;}50%{transform:scale(1.1);opacity:1;}100%{transform:scale(1);opacity:1;}}
@keyframes finalNumber{0%{transform:scale(0.8) rotateY(0deg);opacity:0.8;box-shadow:0 2px 8px rgba(0,166,81,0.1);}50%{transform:scale(1.15) rotateY(0deg);opacity:1;box-shadow:0 6px 25px rgba(0,166,81,0.5);}100%{transform:scale(1) rotateY(0deg);opacity:1;box-shadow:0 4px 20px rgba(0,166,81,0.4);}}
.mega-sena-numeros-container{display:flex;flex-wrap:wrap;gap:0.75rem;justify-content:center;}
.mega-sena-linha-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:0 0.5rem;}
.mega-sena-linha-numero{font-size:0.875rem;font-weight:600;color:var(--mega-sena-secondary-text);background:var(--mega-sena-gradient-light);padding:0.25rem 0.75rem;border-radius:1rem;border:1px solid var(--mega-sena-tertiary-border);}
.mega-sena-linha-info{font-size:0.8rem;color:var(--mega-sena-secondary-text);display:flex;align-items:center;gap:0.5rem;}
.mega-sena-linha-info svg{width:14px;height:14px;color:var(--mega-sena-tertiary-text);}
.mega-sena-button-copiar-jogo{display:flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.5rem 1rem;margin-top:0.75rem;background:var(--primary-green);color:var(--white);border:none;border-radius:0.5rem;font-size:0.875rem;font-weight:600;cursor:pointer;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,166,81,0.2);}
.mega-sena-button-copiar-jogo:hover{background:var(--dark-green);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,166,81,0.3);}
.mega-sena-button-copiar-jogo:active{transform:translateY(0);box-shadow:0 2px 8px rgba(0,166,81,0.2);}
.mega-sena-button-copiar-jogo.loading{pointer-events:none;opacity:0.7;position:relative;}
.mega-sena-button-copiar-jogo.loading::after{content:'';position:absolute;right:0.5rem;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:mega-sena-spin 1s linear infinite;}
.mega-sena-button-copiar-jogo svg{flex-shrink:0;width:14px;height:14px;}
.mega-sena-acoes{display:flex;gap:0.75rem;margin-top:1rem;justify-content:center;flex-wrap:wrap;}
.mega-sena-button-copiar,.mega-sena-button-exportar,.mega-sena-button-limpar{min-width:140px;flex:1;max-width:180px;font-size:0.875rem;padding:0.75rem 1.25rem;display:flex;align-items:center;justify-content:center;gap:0.5rem;}
.mega-sena-button-copiar.loading,.mega-sena-button-exportar.loading,.mega-sena-button-limpar.loading,.mega-sena-button-salvar.loading{pointer-events:none;opacity:0.7;position:relative;}
.mega-sena-button-copiar.loading::after,.mega-sena-button-exportar.loading::after,.mega-sena-button-limpar.loading::after,.mega-sena-button-salvar.loading::after{content:'';position:absolute;right:0.5rem;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:mega-sena-spin 1s linear infinite;}
.mega-sena-button-historico{min-width:120px;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:0.5rem;margin-bottom:1rem;}
.mega-sena-historico-container{background:var(--mega-sena-bg);border-radius:1rem;padding:2rem;margin:1.5rem auto;max-width:800px;border:1px solid var(--mega-sena-border);box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);display:block;}
.mega-sena-historico-header{display:flex;align-items:center;justify-content:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--mega-sena-border);}
.mega-sena-historico-header h3{margin:0;color:var(--mega-sena-text);font-size:1.5rem;font-weight:700;}
.mega-sena-button-fechar{background:none;border:none;cursor:pointer;padding:0.5rem;color:var(--mega-sena-secondary-text);transition:all 0.3s ease;border-radius:0.5rem;}
.mega-sena-button-fechar:hover{background:var(--mega-sena-gradient-light);color:var(--mega-sena-text);transform:scale(1.1);}
.mega-sena-historico-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:var(--mega-sena-secondary-text);gap:1rem;}
.mega-sena-historico-empty svg{color:var(--mega-sena-tertiary-text);opacity:0.5;}
.mega-sena-historico-empty p{margin:0;font-size:1.1rem;font-weight:600;color:var(--mega-sena-text);}
.mega-sena-historico-empty span{font-size:0.9rem;color:var(--mega-sena-tertiary-text);}
.mega-sena-historico-lista{display:flex;flex-direction:column;gap:1rem;}
.mega-sena-historico-item{background:linear-gradient(135deg,var(--mega-sena-gradient-light),var(--mega-sena-bg));border:1px solid var(--mega-sena-border);border-radius:0.75rem;padding:1.25rem;transition:all 0.3s ease;}
.mega-sena-historico-item:hover{box-shadow:0 4px 12px rgba(0,0,0,0.08);transform:translateY(-2px);}
.mega-sena-historico-item.favorito{border-color:var(--primary-green);background:linear-gradient(135deg,rgba(0,166,81,0.05),var(--mega-sena-bg));}
.mega-sena-historico-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;}
.mega-sena-historico-item-info{display:flex;flex-direction:column;gap:0.25rem;flex:1;}
.mega-sena-historico-item-data{font-size:0.875rem;font-weight:600;color:var(--mega-sena-text);}
.mega-sena-historico-item-detalhes{font-size:0.8rem;color:var(--mega-sena-secondary-text);}
.mega-sena-historico-item-acoes{display:flex;gap:0.5rem;align-items:center;}
.mega-sena-button-favorito{background:none;border:none;cursor:pointer;padding:0.5rem;color:var(--mega-sena-secondary-text);transition:all 0.3s ease;border-radius:0.5rem;display:flex;align-items:center;justify-content:center;}
.mega-sena-button-favorito:hover{background:var(--mega-sena-gradient-light);transform:scale(1.1);}
.mega-sena-button-favorito.ativo{color:#ff6b6b;}
.mega-sena-button-favorito.ativo:hover{color:#ff5252;}
.mega-sena-button-remover{background:none;border:none;cursor:pointer;padding:0.5rem;color:var(--mega-sena-secondary-text);transition:all 0.3s ease;border-radius:0.5rem;display:flex;align-items:center;justify-content:center;}
.mega-sena-button-remover:hover{background:rgba(220,53,69,0.1);color:#dc3545;transform:scale(1.1);}
.mega-sena-historico-item-numeros{display:flex;flex-direction:column;gap:0.75rem;margin-bottom:1rem;}
.mega-sena-historico-jogo{display:flex;flex-direction:column;gap:0.5rem;}
.mega-sena-historico-jogo-numero{font-size:0.875rem;font-weight:600;color:var(--mega-sena-secondary-text);}
.mega-sena-historico-numeros-container{display:flex;flex-wrap:nowrap;gap:0.5rem;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--primary-green) var(--mega-sena-border);-webkit-overflow-scrolling:touch;}
.mega-sena-historico-numeros-container::-webkit-scrollbar{height:8px;}
.mega-sena-historico-numeros-container::-webkit-scrollbar-track{background:var(--mega-sena-border);border-radius:4px;}
.mega-sena-historico-numeros-container::-webkit-scrollbar-thumb{background:var(--primary-green);border-radius:4px;}
.mega-sena-historico-numeros-container::-webkit-scrollbar-thumb:hover{background:var(--dark-green);}
.mega-sena-historico-numero{width:40px;height:40px;min-width:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:2px solid var(--primary-green);border-radius:50%;font-size:0.9rem;font-weight:700;color:var(--primary-green);background:var(--mega-sena-bg);box-shadow:0 2px 8px rgba(0,166,81,0.1);}
.mega-sena-button-carregar{width:100%;padding:0.75rem 1.25rem;background:var(--primary-green);color:var(--white);border:none;border-radius:0.5rem;font-weight:600;cursor:pointer;transition:all 0.3s ease;font-size:0.875rem;}
.mega-sena-button-carregar:hover{background:var(--dark-green);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,166,81,0.3);}
@media (max-width:768px){.mega-sena-container{margin:1rem;padding:1.5rem;max-width:none;}
.mega-sena-controles{flex-direction:column;gap:1rem;padding:1.25rem;}
.mega-sena-controles label{min-width:100%;}
.mega-sena-select{padding:0.75rem;font-size:0.95rem;}
.mega-sena-button-gerar{width:100%;padding:1rem 1.5rem;font-size:0.95rem;}
.mega-sena-resultados{padding:1.5rem;min-height:150px;}
.mega-sena-progresso{padding:2rem 1.5rem;min-height:150px;}
.mega-sena-spinner svg{width:40px;height:40px;}
.mega-sena-progresso-texto{font-size:1rem;}
.mega-sena-linha{gap:0.5rem;padding:0.875rem;justify-content:center;}
.mega-sena-numeros-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:0.625rem;justify-items:center;width:100%;max-width:100%;}
.mega-sena-numero{width:44px;height:44px;font-size:0.9rem;}
.mega-sena-linha-header{flex-direction:column;gap:0.5rem;align-items:flex-start;}
.mega-sena-button-copiar-jogo{padding:0.5rem 0.875rem;font-size:0.85rem;margin-top:0.625rem;}
.mega-sena-button-copiar-jogo svg{width:12px;height:12px;}
.mega-sena-acoes{flex-direction:column;align-items:center;}
.mega-sena-button-copiar,.mega-sena-button-exportar,.mega-sena-button-limpar,.mega-sena-button-salvar{width:100%;max-width:300px;flex:none;}
.mega-sena-aviso-memoria{padding:0.875rem 1.25rem;margin:0.875rem 0;}
.mega-sena-aviso-memoria-content{font-size:0.85rem;gap:0.625rem;}
.mega-sena-aviso-memoria-content svg{width:18px;height:18px;}
.mega-sena-historico-container{padding:1.5rem;margin:1rem;}
.mega-sena-historico-header h3{font-size:1.25rem;}
.mega-sena-historico-item{padding:1rem;}
.mega-sena-historico-item-header{flex-direction:column;align-items:flex-start;gap:0.75rem;}
.mega-sena-historico-item-acoes{width:100%;justify-content:flex-end;}
.mega-sena-historico-numero{width:36px;height:36px;min-width:36px;font-size:0.85rem;}}
@media (max-width:480px){.mega-sena-container{margin:0.5rem;padding:1rem;}
.mega-sena-controles{padding:1rem;}
.mega-sena-select{padding:0.625rem;font-size:0.9rem;}
.mega-sena-button-gerar{padding:0.875rem 1.25rem;font-size:0.9rem;}
.mega-sena-resultados{padding:1rem;}
.mega-sena-progresso{padding:1.5rem 1rem;min-height:120px;}
.mega-sena-spinner svg{width:36px;height:36px;}
.mega-sena-progresso-texto{font-size:0.95rem;}
.mega-sena-linha{gap:0.375rem;padding:0.75rem;}
.mega-sena-numeros-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:0.5rem;justify-items:center;width:100%;max-width:100%;}
.mega-sena-numero{width:40px;height:40px;font-size:0.85rem;}
.mega-sena-button-copiar-jogo{padding:0.5rem 0.75rem;font-size:0.8rem;margin-top:0.5rem;}
.mega-sena-button-copiar-jogo svg{width:12px;height:12px;}
.mega-sena-aviso-memoria{padding:0.75rem 1rem;margin:0.75rem 0;}
.mega-sena-aviso-memoria-content{font-size:0.8rem;gap:0.5rem;flex-direction:column;align-items:flex-start;}
.mega-sena-aviso-memoria-content svg{width:16px;height:16px;}
.mega-sena-historico-container{padding:1rem;margin:0.5rem;}
.mega-sena-historico-header h3{font-size:1.1rem;}
.mega-sena-historico-item{padding:0.875rem;}
.mega-sena-historico-numero{width:32px;height:32px;min-width:32px;font-size:0.8rem;}}
@media (prefers-reduced-motion:reduce){.mega-sena-container,.mega-sena-button-gerar:hover,.mega-sena-select:focus,.mega-sena-linha:hover,.mega-sena-numero:hover,.mega-sena-numero.animate,.mega-sena-numero-vazio,.mega-sena-numero-sorteando,.mega-sena-numero-final,.mega-sena-linha,.mega-sena-spinner,.mega-sena-progresso-texto{animation:none;transform:none;transition:opacity 0.2s ease;}}
