:root{--color-naranja: #E67E22;--color-naranja-hover: #D35400;--color-verde-oscuro: #628141;--color-verde-claro: #8BAE66;--color-beige: #F5E6D3;--color-beige-oscuro: #E8D4B8;--color-texto-principal: #2C3E50;--color-texto-claro: #FFFFFF;--color-fondo-principal: #F8F5F0;--color-error: #E74C3C;--color-exito: #27AE60;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html{height:100%;width:100%;scroll-behavior:smooth}body{width:100%;min-height:100vh;background:linear-gradient(135deg,var(--color-beige) 0%,var(--color-fondo-principal) 100%);color:var(--color-texto-principal);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow-x:hidden;margin:0;padding:0}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{color:var(--color-verde-oscuro);font-weight:700;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.1rem}h6{font-size:1rem}p{line-height:1.6}a{color:var(--color-naranja);text-decoration:none;font-weight:500;transition:color .3s ease}a:hover{color:var(--color-naranja-hover)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-beige);border-radius:6px}::-webkit-scrollbar-thumb{background:var(--color-verde-claro);border-radius:6px;border:2px solid var(--color-beige);transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:var(--color-verde-oscuro)}*{scrollbar-width:thin;scrollbar-color:var(--color-verde-claro) var(--color-beige)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}*:focus-visible{outline:2px solid var(--color-naranja);outline-offset:2px}::selection{background-color:var(--color-naranja);color:#fff}::-moz-selection{background-color:var(--color-naranja);color:#fff}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 2rem}.container-fluid{width:100%;padding:0 2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.pt-1{padding-top:.5rem}.pt-2{padding-top:1rem}.pt-3{padding-top:1.5rem}.pt-4{padding-top:2rem}.pb-1{padding-bottom:.5rem}.pb-2{padding-bottom:1rem}.pb-3{padding-bottom:1.5rem}.pb-4{padding-bottom:2rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-bold{font-weight:700}.text-semibold{font-weight:600}.text-normal{font-weight:400}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .3s ease-in}.fade-in-up{animation:fadeInUp .5s ease-out}.fade-in-down{animation:fadeInDown .5s ease-out}@media(max-width:1024px){.container{max-width:960px;padding:0 1.5rem}h1{font-size:2.2rem}h2{font-size:1.8rem}h3{font-size:1.4rem}}@media(max-width:768px){.container{max-width:720px;padding:0 1rem}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.3rem}.hide-mobile{display:none!important}}@media(max-width:640px){.container{padding:0 .75rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.2rem}}@media(max-width:480px){.container{padding:0 .5rem}h1{font-size:1.5rem}h2{font-size:1.3rem}h3{font-size:1.1rem}}@media(min-width:769px){.hide-desktop{display:none!important}}.skip-to-main{position:absolute;top:-100px;left:0;background:var(--color-naranja);color:#fff;padding:1rem;text-decoration:none;z-index:9999}.skip-to-main:focus{top:0}@media print{body{background:#fff}.no-print{display:none!important}a[href]:after{content:" (" attr(href) ")"}}.error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:#943126;padding:1rem;border-radius:8px;border-left:4px solid var(--color-error);margin-bottom:1rem;font-weight:600;box-shadow:0 2px 8px #e74c3c33}.success-message{background:linear-gradient(135deg,#d5f4e6,#abebc6);color:#186a3b;padding:1rem;border-radius:8px;border-left:4px solid var(--color-exito);margin-bottom:1rem;font-weight:600;box-shadow:0 2px 8px #27ae6033}.loading-message{background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));color:var(--color-verde-oscuro);padding:1rem;border-radius:8px;margin-bottom:1rem;text-align:center;font-weight:600;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.no-data-message{background:#fff;color:var(--color-texto-principal);padding:2rem;border-radius:12px;text-align:center;border:2px dashed var(--color-beige-oscuro);margin:2rem 0}section{width:100%;padding:3rem 5%;background:#fff;border-bottom:3px solid var(--color-beige)}body>#root section:nth-child(2n){background:linear-gradient(135deg,#FDFEFE 0%,var(--color-beige) 100%)}section>img{max-width:200px;height:auto;margin:0 auto 1.5rem;display:block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));transition:transform .3s ease}section>img:hover{transform:scale(1.05)}section h2{color:var(--color-verde-oscuro);text-align:center;margin-bottom:1rem;font-size:2rem}section p{text-align:center;color:var(--color-texto-principal);font-size:1.1rem;margin-bottom:2rem}.tabla-container{width:100%;overflow-x:auto;margin:2rem 0;border-radius:12px;box-shadow:0 4px 12px #0000001a;-webkit-overflow-scrolling:touch}.tabla-torneos{width:100%;border-collapse:collapse;background:#fff;min-width:800px}.tabla-torneos thead{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.tabla-torneos th{padding:1rem;text-align:left;font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.tabla-torneos tbody tr{border-bottom:1px solid var(--color-beige);transition:all .3s ease}.tabla-torneos tbody tr:hover{background:linear-gradient(135deg,var(--color-beige) 0%,#F8F5F0 100%);transform:scale(1.01);box-shadow:0 2px 8px #0000000d}.tabla-torneos td{padding:1rem;color:var(--color-texto-principal)}.tabla-torneos td strong{color:var(--color-verde-oscuro);font-size:1.05rem}.tabla-torneos td small{display:block;color:#7f8c8d;font-size:.85rem;margin-top:.25rem}.participantes-badge{display:inline-block;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:.4rem .8rem;border-radius:20px;font-weight:700;font-size:.9rem;box-shadow:0 2px 4px #e67e224d}.acciones-cell{display:flex;gap:.5rem;flex-wrap:wrap}.btn-administrar{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #6281414d}.btn-administrar:hover{transform:translateY(-2px);box-shadow:0 4px 8px #62814166}.btn-apuntarse{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #e67e224d}.btn-apuntarse:hover{transform:translateY(-2px);box-shadow:0 4px 8px #e67e2266}.btn-inscrito{background:linear-gradient(135deg,var(--color-verde-claro),var(--color-verde-oscuro));color:#fff;padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #8bae664d}.btn-inscrito:hover{transform:translateY(-2px);box-shadow:0 4px 8px #8bae6666}.btn-ver-detalles{background:linear-gradient(135deg,var(--color-beige-oscuro),var(--color-beige));color:var(--color-verde-oscuro);padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #d4bc8f4d}.btn-ver-detalles:hover{transform:translateY(-2px);box-shadow:0 4px 8px #d4bc8f66}footer{width:100%;background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));padding:2rem 5%;text-align:center;color:#fff;margin-top:auto}footer a{color:var(--color-beige);font-weight:700;font-size:1.1rem;transition:all .3s ease}footer a:hover{color:#fff;text-decoration:none;text-shadow:0 2px 4px rgba(0,0,0,.3)}@media(max-width:1024px){section>img{max-width:180px}section img{max-width:180px}section h2{font-size:1.8rem}section p{font-size:1rem}.tabla-container{margin:1.5rem 0}.tabla-torneos{font-size:.9rem}}@media(max-width:768px){section{padding:2rem 3%!important}section>img{max-width:150px!important}section h2{font-size:1.5rem!important;margin-bottom:.8rem!important}section p{font-size:.95rem!important;margin-bottom:1.5rem!important}.tabla-container{border-radius:8px!important;margin:1.5rem 0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.tabla-torneos{font-size:.85rem!important}.tabla-torneos th,.tabla-torneos td{padding:.6rem .4rem!important}.tabla-torneos th{font-size:.8rem!important}.acciones-cell{flex-direction:column!important;gap:.4rem!important}.acciones-cell button{width:100%!important;padding:.6rem .8rem!important;font-size:.85rem!important}.participantes-badge{padding:.3rem .6rem!important;font-size:.85rem!important}.error-message,.success-message,.loading-message{padding:.8rem!important;font-size:.9rem!important}.no-data-message{padding:1.5rem!important;font-size:.95rem!important;margin:1.5rem 0!important}footer{padding:1.5rem 3%!important}footer a{font-size:1rem!important}}@media(max-width:480px){section{padding:1.5rem 2%!important}section>img{max-width:120px!important}section h2{font-size:1.3rem!important}section p{font-size:.9rem!important}.tabla-container{margin:1rem 0!important}.tabla-torneos{font-size:.8rem!important;min-width:100%!important}.tabla-torneos th,.tabla-torneos td{padding:.5rem .3rem!important}.tabla-torneos th{font-size:.75rem!important}.tabla-torneos td strong{font-size:.9rem!important}.tabla-torneos td small{font-size:.75rem!important}.acciones-cell button{padding:.5rem .6rem!important;font-size:.8rem!important}.participantes-badge{padding:.25rem .5rem!important;font-size:.8rem!important}.error-message,.success-message,.loading-message{padding:.7rem!important;font-size:.85rem!important}.no-data-message{padding:1.2rem!important;font-size:.9rem!important}footer{padding:1.2rem 2%!important}footer a{font-size:.95rem!important}}@media(max-width:360px){section{padding:1rem 1.5%!important}section>img{max-width:100px!important}section h2{font-size:1.2rem!important}section p{font-size:.85rem!important}.tabla-torneos{font-size:.75rem!important}.tabla-torneos th{font-size:.7rem!important}.tabla-torneos th,.tabla-torneos td{padding:.4rem .2rem!important}.acciones-cell button{padding:.45rem .5rem!important;font-size:.75rem!important}.participantes-badge{padding:.2rem .4rem!important;font-size:.75rem!important}}@media(max-width:768px){.tabla-torneos tbody tr:hover{transform:none!important}button{min-height:44px!important}*{-webkit-tap-highlight-color:rgba(0,0,0,.1)}}.tabla-container{background:linear-gradient(90deg,#fff 30%,#fff0),linear-gradient(90deg,#fff0,#fff 70%) 0 100%,radial-gradient(farthest-side at 0 50%,#0003,#0000),radial-gradient(farthest-side at 100% 50%,#0003,#0000) 0 100%;background-repeat:no-repeat;background-color:#fff;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}.recuperar-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1001;padding:20px}.recuperar-modal-content{background:#fff;border-radius:12px;padding:30px;max-width:450px;width:100%;position:relative;box-shadow:0 10px 40px #0003;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.recuperar-description{color:#666;margin-bottom:25px;font-size:.95rem;line-height:1.5;text-align:center}.recuperar-form{display:flex;flex-direction:column;gap:20px}.forgot-password-link{text-align:right;margin-top:-5px;margin-bottom:10px}.link-button{background:none;border:none;color:#007bff;cursor:pointer;font-size:.9rem;padding:0;text-decoration:underline;transition:color .3s ease}.link-button:hover{color:#0056b3}.link-button:disabled{color:#999;cursor:not-allowed;text-decoration:none}.success-icon{width:60px;height:60px;background-color:#28a745;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:2rem;color:#fff;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-message p{font-size:1.1rem;color:#333;margin-bottom:10px}.success-subtitle{font-size:.9rem!important;color:#666!important}@media(max-width:768px){.recuperar-modal-content{padding:25px 20px;max-width:95%}.recuperar-description{font-size:.9rem}}.login-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeIn .3s ease-out}.login-modal-overlay.hidden-temp{visibility:hidden}.login-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;width:100%;max-height:90vh;overflow-y:auto;position:relative;padding:2.5rem;border:3px solid var(--color-beige-oscuro);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:2rem;color:var(--color-verde-oscuro);cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;line-height:1;padding:0}.modal-close-btn:hover{background:var(--color-beige);color:var(--color-naranja);transform:rotate(90deg)}.modal-title{text-align:center;margin-bottom:2rem;color:var(--color-verde-oscuro);font-size:1.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.login-form-modal{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-weight:600;color:var(--color-verde-oscuro);font-size:.95rem}.form-group input{padding:.9rem;font-size:1rem;border:2px solid var(--color-beige-oscuro);border-radius:8px;background-color:#fff;transition:all .3s ease}.form-group input:focus{border-color:var(--color-naranja);background-color:#fffaf0;box-shadow:0 0 0 4px #e67e2226;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.checkbox-group{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));border-radius:8px;border:2px solid var(--color-beige-oscuro)}.checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-naranja)}.checkbox-group label{font-weight:500;margin-bottom:0;color:var(--color-verde-oscuro);cursor:pointer;font-size:.95rem}.error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:#943126;padding:1rem;border-radius:8px;border-left:4px solid #E74C3C;font-weight:600;text-align:center;box-shadow:0 2px 8px #e74c3c33}.btn-primary{width:100%;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:2px solid transparent;padding:1rem;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #e67e224d}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #e67e224d}.btn-primary:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.register-link{text-align:center;margin-top:.5rem;font-size:1rem;color:var(--color-verde-oscuro);font-weight:500}.register-link a{color:var(--color-naranja);font-weight:700;text-decoration:none;transition:all .3s ease}.register-link a:hover{color:var(--color-naranja-hover);text-decoration:underline}@media(max-width:768px){.login-modal-content{padding:2rem;max-width:400px}.modal-title{font-size:1.5rem}}@media(max-width:480px){.login-modal-overlay{padding:.5rem}.login-modal-content{padding:1.5rem;max-width:100%}.modal-title{font-size:1.3rem;margin-bottom:1.5rem}.form-group input,.btn-primary{padding:.8rem;font-size:.95rem}.modal-close-btn{width:35px;height:35px;font-size:1.75rem}}.principal-container{width:100%;min-width:fit-content;min-height:100vh}.navegacion-juegos{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:2rem 1rem;margin:1rem auto;max-width:1200px;flex-wrap:wrap}.navegacion-juegos button{padding:1rem 2.5rem;font-size:1rem;font-weight:700;letter-spacing:.5px;color:var(--color-verde-oscuro);background-color:#fff;border:3px solid var(--color-beige);border-radius:12px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 2px 8px #0000001a;min-width:180px}.navegacion-juegos button:hover{background-color:var(--color-beige);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.navegacion-juegos button.activo{background-color:var(--color-verde-oscuro);color:#fff;border-color:var(--color-verde-oscuro);box-shadow:0 4px 15px #0003}.navegacion-juegos button.activo:hover{background-color:var(--color-verde-oscuro);opacity:.95}@media(max-width:1024px){.navegacion-juegos{gap:1rem;padding:1.5rem 1rem}.navegacion-juegos button{padding:.9rem 2rem;font-size:.95rem;min-width:160px}}@media(max-width:768px){.navegacion-juegos{flex-direction:column;gap:1rem;padding:1.5rem 1rem}.navegacion-juegos button{width:100%;max-width:400px;padding:1rem 2rem;font-size:1rem;min-width:auto}}@media(max-width:480px){.navegacion-juegos{padding:1rem .5rem;gap:.8rem}.navegacion-juegos button{padding:.9rem 1.5rem;font-size:.9rem;max-width:100%}}@media(max-width:360px){.navegacion-juegos button{padding:.8rem 1rem;font-size:.85rem}}.imagenes-principales{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px}.imagenes-principales div{flex:1;text-align:center;margin:0 20px}.imagenes-principales img{width:250px;height:auto}.imagenes-principales h2,.imagenes-principales p{margin:10px 0}.tabla-container{margin:2rem 0}.tabla-torneos td small{color:var(--color-verde-oscuro)!important}.torneo-info-extra{display:block;color:#7f8c8d;font-size:.85rem;margin-top:.25rem}.epocas-cell{font-size:.9rem;color:var(--color-verde-oscuro)}.club-info{display:block;color:#fffc;font-size:.85rem;margin-top:.25rem}.bandos-desglose{display:flex;flex-direction:column;gap:5px;margin-top:8px}.bando-eje{display:block;padding:4px 10px;background-color:#ffe0e0;color:#c41e3a;border-radius:4px;font-size:.85em;font-weight:500}.bando-aliados{display:block;padding:4px 10px;background-color:#e3f2fd;color:#1976d2;border-radius:4px;font-size:.85em;font-weight:500}@media(max-width:1024px){.imagenes-principales{gap:15px;padding:15px}.imagenes-principales img{width:200px}.imagenes-principales div{margin:0 15px}.tabla-torneos{font-size:.9rem}}@media(max-width:768px){.imagenes-principales{flex-direction:column!important;gap:1.5rem!important;padding:1.5rem 1rem!important}.imagenes-principales img{width:150px!important;max-width:150px!important}.imagenes-principales div{margin:0!important}.imagenes-principales h2{font-size:1.3rem!important;line-height:1.4!important}.imagenes-principales p{font-size:.95rem!important;line-height:1.5!important}.imagenes-principales img:last-of-type{display:none!important}.tabla-container{overflow:visible!important;margin:1rem 0!important}.tabla-torneos thead{display:none!important}.tabla-torneos,.tabla-torneos tbody{display:block!important;width:100%!important}.tabla-torneos tr{display:block!important;margin-bottom:1.5rem!important;border:2px solid var(--color-beige)!important;border-radius:12px!important;padding:1.2rem!important;background:#fff!important;box-shadow:0 3px 8px #0000001a!important}.tabla-torneos tr:hover{transform:none!important;box-shadow:0 4px 12px #00000026!important}.tabla-torneos td{display:block!important;text-align:left!important;padding:.6rem 0!important;border:none!important;position:relative!important;padding-left:50%!important;min-height:2rem!important}.tabla-torneos td:before{content:attr(data-label);position:absolute!important;left:0!important;font-weight:700!important;color:var(--color-verde-oscuro)!important;width:45%!important;padding-right:1rem!important;text-align:left!important}.tabla-torneos td.acciones-cell{padding-left:0!important;margin-top:1.5rem!important;padding-top:1.5rem!important;border-top:2px solid var(--color-beige)!important}.tabla-torneos td.acciones-cell:before{display:none!important}.acciones-cell{display:flex!important;flex-direction:column!important;gap:1rem!important;width:100%!important}.acciones-cell button{width:100%!important;padding:.8rem!important;font-size:.9rem!important}.participantes-badge{display:inline-block!important;padding:.3rem .7rem!important;font-size:.85rem!important}.torneo-info-extra,.club-info{font-size:.8rem!important;margin-top:.3rem!important}}@media(max-width:480px){.imagenes-principales{padding:1rem .5rem!important;gap:1rem!important}.imagenes-principales img{width:120px!important;max-width:120px!important}.imagenes-principales h2{font-size:1.1rem!important}.imagenes-principales p{font-size:.9rem!important}.tabla-torneos tr{padding:1rem!important;margin-bottom:1.2rem!important}.tabla-torneos td{padding:.5rem 0!important;padding-left:45%!important;font-size:.85rem!important}.tabla-torneos td:before{width:42%!important;font-size:.85rem!important}.tabla-torneos td:nth-child(2){font-size:1rem!important}.acciones-cell{gap:.8rem!important}.acciones-cell button{padding:.7rem!important;font-size:.85rem!important}.participantes-badge{padding:.25rem .6rem!important;font-size:.8rem!important}}@media(max-width:360px){.imagenes-principales img{width:100px!important;max-width:100px!important}.imagenes-principales h2{font-size:1rem!important}.imagenes-principales p{font-size:.85rem!important}.tabla-torneos tr{padding:.8rem!important}.tabla-torneos td{padding:.4rem 0!important;padding-left:42%!important;font-size:.8rem!important}.tabla-torneos td:before{font-size:.8rem!important}.tabla-torneos td:nth-child(2){font-size:.95rem!important}.acciones-cell button{padding:.6rem!important;font-size:.8rem!important}}@media(max-width:768px){.error-message,.success-message,.loading-message,.no-data-message{padding:.8rem!important;font-size:.9rem!important;margin-bottom:.8rem!important}}@media(max-width:480px){.error-message,.success-message,.loading-message,.no-data-message{padding:.7rem!important;font-size:.85rem!important}}.seccion-ranking-destacada{display:contents;background:linear-gradient(135deg,var(--color-verde-oscuro) 0%,var(--color-verde-claro) 100%);padding:3rem 5%;margin:2rem 0}.ranking-hero{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr;gap:3rem;align-items:center}.ranking-hero-contenido{color:#000}.ranking-badge{display:inline-block;background:var(--color-naranja);color:#fffdfd;padding:.4rem 1rem;border-radius:20px;font-weight:700;font-size:.9rem;margin-bottom:1rem;box-shadow:0 4px 8px #e67e224d;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.ranking-hero-contenido h2{font-size:2.5rem;margin-bottom:1rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.ranking-hero-contenido p{font-size:1.2rem;margin-bottom:2rem;opacity:.95;line-height:1.6}.ranking-hero-botones{display:flex;gap:1rem;flex-wrap:wrap}.btn-ver-ranking,.btn-info-ranking{padding:1rem 2rem;border:none;border-radius:8px;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0003}.btn-ver-ranking{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff}.btn-ver-ranking:hover{transform:translateY(-4px);box-shadow:0 8px 16px #e67e2266}.btn-info-ranking{background:#fff3;color:#080808;border:2px solid white;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-info-ranking:hover{background:#ffffff4d;transform:translateY(-4px)}.ranking-hero-stats{display:flex;background:#fff;border-radius:25%;grid-template-columns:1fr;gap:1rem}.stat-destacada{background:#ffffff26;padding:1.5rem;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.stat-destacada:hover{background:#ffffff40;transform:translateY(-4px)}.stat-destacada .stat-icono{font-size:3rem}.stat-destacada .stat-numero{font-size:2.5rem;font-weight:700;color:#060606}.stat-destacada .stat-texto{font-size:1rem;color:#060606;opacity:.9;text-transform:uppercase;letter-spacing:1px}.seccion-info-ranking{display:inline;max-width:1200px;margin:0 auto;padding:3rem 5%}.seccion-info-ranking h2{text-align:center;font-size:2.2rem;color:var(--color-verde-oscuro);margin-bottom:2rem}.info-ranking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.info-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a;text-align:center;transition:all .3s ease;border-top:4px solid var(--color-verde-oscuro)}.info-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #00000026}.info-icono{font-size:3rem;display:block;margin-bottom:1rem}.info-card h3{font-size:1.4rem;color:var(--color-verde-oscuro);margin-bottom:1rem}.info-card p{color:var(--color-texto-principal);line-height:1.6}.categorias-elo{background:linear-gradient(135deg,var(--color-beige) 0%,white 100%);padding:2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a}.categorias-elo h3{text-align:center;font-size:1.8rem;color:var(--color-verde-oscuro);margin-bottom:2rem}.categorias-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.categoria-item{background:#fff;padding:1.5rem;border-radius:10px;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;border-left:4px solid}.categoria-item:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000026}.categoria-item.gran-maestro{border-left-color:gold;background:linear-gradient(to right,#ffd7001a,#fff)}.categoria-item.maestro{border-left-color:silver;background:linear-gradient(to right,#c0c0c01a,#fff)}.categoria-item.experto{border-left-color:#cd7f32;background:linear-gradient(to right,#cd7f321a,#fff)}.categoria-item.avanzado{border-left-color:#3498db;background:linear-gradient(to right,#3498db1a,#fff)}.categoria-item.intermedio{border-left-color:#2ecc71;background:linear-gradient(to right,#2ecc711a,#fff)}.categoria-item.principiante{border-left-color:#95a5a6;background:linear-gradient(to right,#95a5a61a,#fff)}.categoria-item.novato{border-left-color:#ecf0f1;background:linear-gradient(to right,#ecf0f11a,#fff)}.categoria-item .categoria-icono{font-size:2.5rem}.categoria-item .categoria-nombre{font-size:1.1rem;font-weight:700;color:var(--color-verde-oscuro)}.categoria-item .categoria-rango{font-size:.9rem;color:#7f8c8d;font-weight:600}@media(max-width:1024px){.ranking-hero{grid-template-columns:1fr;gap:2rem}.ranking-hero-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.seccion-ranking-destacada{padding:2rem 3%}.ranking-hero-contenido h2{font-size:2rem}.ranking-hero-contenido p{font-size:1rem}.ranking-hero-botones{flex-direction:column}.btn-ver-ranking,.btn-info-ranking{width:100%;padding:.8rem 1.5rem;font-size:1rem}.ranking-hero-stats{grid-template-columns:1fr}.info-ranking-grid{grid-template-columns:1fr;gap:1rem}.categorias-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.ranking-hero-contenido h2{font-size:1.5rem}.ranking-hero-contenido p{font-size:.95rem}.stat-destacada .stat-icono,.stat-destacada .stat-numero{font-size:2rem}.categorias-grid{grid-template-columns:1fr}.seccion-info-ranking h2{font-size:1.8rem}.info-card,.categorias-elo{padding:1.5rem}}.estado-torneos{padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.estado-pendiente{background:#fff3cd;color:#856404}.estado-en-curso{background:#d1ecf1;color:#0c5460}.estado-finalizado{background:#d4edda;color:#155724}.grid-torneos{display:grid;grid-template-columns:repeat(1,1fr);max-width:1400px;margin:2rem auto;gap:3rem;padding:0 2rem}.card-torneo{cursor:pointer;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px #0000001f;transition:transform .3s ease,box-shadow .3s ease;background:#fff}.card-torneo:hover{transform:translateY(-6px);box-shadow:0 12px 36px #0000002e}.card-imagen-wrapper{position:relative;width:100%}.card-imagen-wrapper .torneo-imagen{width:100%!important;height:auto!important;max-width:none!important;min-height:300px;object-fit:cover;display:block!important;margin:0!important;filter:none!important;transition:transform .4s ease}.card-torneo:hover .torneo-imagen{transform:scale(1.02)}.torneo-badge{position:absolute;top:1rem;right:1rem;background:var(--color-verde-oscuro);color:#fff;padding:.5rem 1rem;border-radius:8px;font-weight:700;font-size:.9rem;text-transform:uppercase;box-shadow:0 2px 8px #0003;z-index:2}.torneo-sin-imagen{width:100%;height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f0ede8}.icono-sin-imagen{font-size:5rem;opacity:.5}.torneo-sin-imagen p{font-size:1.1rem;color:#7f8c8d}.torneo-info{padding:2rem;display:flex;flex-direction:column;gap:1rem;border-top:4px solid var(--color-verde-oscuro);background:#fff}.torneo-info h3{font-size:1.8rem;color:var(--color-verde-oscuro);margin:0;font-weight:700}.torneo-descripcion{color:#666;font-size:1rem;line-height:1.6;margin:0}.torneo-detalles{display:flex;flex-direction:column;gap:.5rem}.torneo-detalle{font-size:1rem;color:#444}.torneo-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #eee;margin-top:.5rem}.torneo-creador{font-size:.9rem;color:#7f8c8d;font-style:italic}@media(max-width:768px){.grid-torneos{max-width:100%;gap:3rem;padding:0 .5rem}.torneo-info h3{font-size:1.4rem}.torneo-info{padding:1.5rem}}.main-footer{background-color:#2c3e50;color:#ecf0f1;padding:30px 20px;margin-top:50px;width:100%}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px}.legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;padding:0;margin:0}.legal-links a{color:#ecf0f1;text-decoration:none;font-size:14px;transition:color .3s ease;position:relative}.legal-links a:hover{color:#3498db}.legal-links a:after{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#3498db;transition:width .3s ease}.legal-links a:hover:after{width:100%}.footer-divider{width:100%;max-width:600px;height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,.3),transparent)}.copyright{font-size:14px;color:#bdc3c7;margin:0;text-align:center}@media(max-width:768px){.main-footer{padding:25px 15px}.legal-links{flex-direction:column;gap:12px;text-align:center}.legal-links a{font-size:13px}.copyright{font-size:12px}}.register-container{width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 10%;background:linear-gradient(135deg,var(--color-beige) 0%,#FFFFFF 100%)}.register-container h1{color:var(--color-verde-oscuro);font-size:2rem;margin-bottom:1.5rem;text-align:center;text-shadow:2px 2px 4px rgba(98,129,65,.2);font-weight:700}.register-form{display:flex;flex-direction:column;gap:1.2rem;width:100%;max-width:900px;padding:2.5rem 3rem;background:#fff;border-radius:12px;box-shadow:0 8px 32px #62814126;border:2px solid var(--color-beige-oscuro)}.register-form h2{text-align:center;margin-bottom:1.5rem;color:var(--color-verde-oscuro);font-size:1.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%}.form-row-full{display:flex;flex-direction:column;width:100%}.form-group{display:flex;flex-direction:column;gap:.5rem;width:100%}.form-group label{font-weight:600;color:var(--color-verde-oscuro);font-size:.95rem;display:flex;align-items:center;gap:.25rem}.form-group input,.form-group select{padding:.75rem;font-size:1rem;border:2px solid var(--color-beige-oscuro);border-radius:8px;background-color:#fff;transition:all .3s ease;width:100%;font-family:inherit}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23628141' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.field-hint{color:#666;font-size:.85rem;font-style:italic;margin-top:4px}.input-loader{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:1.2rem;animation:spin-loader 1s linear infinite}@keyframes spin-loader{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.checkbox-container{display:flex;justify-content:flex-start;width:100%;margin:.5rem 0}.checkbox-group{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));border-radius:8px;border:2px solid var(--color-beige-oscuro);transition:all .3s ease;cursor:pointer}.button-group{display:flex;gap:1rem;justify-content:center;width:100%;margin-top:1rem}.btn-primary,.btn-secondary{padding:.85rem 2rem;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;border:none;flex:1;max-width:250px}.btn-primary{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;box-shadow:0 4px 12px #e67e224d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-naranja-hover),var(--color-naranja));transform:translateY(-2px);box-shadow:0 6px 16px #e67e2266}.btn-primary:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;box-shadow:none;position:relative;overflow:hidden}.btn-primary:disabled:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:loading-btn 1.5s infinite}@keyframes loading-btn{0%{left:-100%}to{left:100%}}.btn-secondary{background:#fff;color:var(--color-verde-oscuro);border:2px solid var(--color-verde-oscuro);box-shadow:0 2px 8px #62814133}.btn-secondary:hover:not(:disabled){background:var(--color-verde-oscuro);color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #6281414d}.btn-secondary:disabled{background:#f5f5f5;color:#bdc3c7;border-color:#bdc3c7;cursor:not-allowed;box-shadow:none}.error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:#943126;padding:1rem;border-radius:8px;border-left:4px solid var(--color-error);font-weight:600;font-size:.95rem;text-align:center;box-shadow:0 4px 12px #e74c3c33;animation:shake-error .5s;display:flex;align-items:center;justify-content:center;gap:.5rem}@keyframes shake-error{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.success-message{background:linear-gradient(135deg,#d5f4e6,#abebc6);color:#186a3b;padding:1rem;border-radius:8px;border-left:4px solid var(--color-exito);font-weight:600;font-size:.95rem;text-align:center;box-shadow:0 4px 12px #27ae6033;animation:slideDown-success .5s;display:flex;align-items:center;justify-content:center;gap:.5rem}@keyframes slideDown-success{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.login-link{text-align:center;margin-top:1rem;font-size:.95rem;color:var(--color-verde-oscuro);font-weight:500}.link-button{background:none;border:none;color:var(--color-naranja);font-weight:700;font-size:.95rem;cursor:pointer;text-decoration:underline;padding:0;transition:all .3s ease}.link-button:hover:not(:disabled){color:var(--color-naranja-hover);transform:translateY(-1px)}.link-button:disabled{color:#bdc3c7;cursor:not-allowed}@media(max-width:1024px){.register-container{padding:2rem 8%}.register-form{max-width:750px;padding:2rem 2.5rem}}@media(max-width:768px){.register-container{padding:2rem 5%}.register-container h1{font-size:1.75rem}.register-form{max-width:650px;padding:2rem;gap:1rem}.register-form h2{font-size:1.5rem}.form-row{gap:1rem}}@media(max-width:640px){.register-container{padding:1.5rem 4%}.register-form{padding:1.5rem}.form-row{grid-template-columns:1fr;gap:1rem}.button-group{flex-direction:column;gap:.75rem}.btn-primary,.btn-secondary{max-width:100%;width:100%}.checkbox-container{justify-content:center}}@media(max-width:480px){.register-container{padding:1rem 3%}.register-container h1{font-size:1.5rem}.register-form{padding:1.25rem;gap:.9rem}.register-form h2{font-size:1.25rem}.form-group input,.form-group select{padding:.65rem;font-size:.95rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;font-size:.9rem}}.terms-checkbox-container{margin:25px 0;padding:20px;background-color:#f8f9fa;border-radius:8px;border:1px solid #dee2e6;transition:border-color .3s ease}.terms-checkbox-container:has(.error){border-color:#e74c3c;background-color:#fff5f5}.terms-checkbox-label{display:flex;align-items:flex-start;cursor:pointer;-webkit-user-select:none;user-select:none;gap:12px}.terms-checkbox-label.error{color:#e74c3c}.terms-checkbox-input{margin-top:4px;cursor:pointer;width:20px;height:20px;accent-color:#3498db;flex-shrink:0}.terms-checkbox-input:hover{opacity:.8}.terms-checkbox-input:disabled{cursor:not-allowed;opacity:.5}.checkbox-text{color:#495057;font-size:14px;line-height:1.6;flex:1}.checkbox-text a{color:#3498db;text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:all .3s ease}.checkbox-text a:hover{border-bottom-color:#3498db;color:#2980b9}.checkbox-text a:active{color:#1f6391}.terms-error-message{display:block;color:#e74c3c;font-size:13px;margin-top:10px;padding-left:32px;font-weight:500;animation:shake .3s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@media(max-width:768px){.terms-checkbox-container{padding:15px;margin:20px 0}.checkbox-text{font-size:13px}.terms-checkbox-input{width:18px;height:18px}.terms-error-message{font-size:12px;padding-left:30px}}@media(max-width:480px){.terms-checkbox-container{padding:12px}.terms-checkbox-label{gap:10px}.checkbox-text{font-size:12px}.terms-checkbox-input{width:16px;height:16px}}.terms-checkbox-input:focus{outline:2px solid #3498db;outline-offset:2px}.terms-checkbox-input:focus-visible{outline:2px solid #3498db;outline-offset:2px}.terms-checkbox-label:hover .checkbox-text{color:#2c3e50}.terms-checkbox-input:checked+.checkbox-text{color:#2c3e50}.crear-torneo-container{width:100%;max-width:1400px;margin:0 auto;padding:2rem;text-align:center}.crear-torneo-container h1{color:#5d4037;font-size:2.5rem;margin-bottom:2rem;text-shadow:2px 2px 4px rgba(93,64,55,.2);font-weight:700}.error-message{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;padding:15px 20px;border-radius:8px;margin-bottom:20px;border-left:4px solid #f44336;font-weight:500;animation:slideDown .3s ease;box-shadow:0 2px 8px #f4433633;text-align:left}.torneo-form{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;padding:2rem;margin:0 auto;background:linear-gradient(145deg,beige,#faf8f5);border-radius:12px;border:1px solid #d7ccc8;box-shadow:0 8px 25px #5d403726}.torneo-form fieldset{background:linear-gradient(145deg,#fafafa,#f9f9f9);border:2px solid #d7ccc8;border-radius:10px;padding:1.5rem;transition:all .3s ease}.torneo-form fieldset:nth-child(1){grid-column:1 / -1}.torneo-form fieldset:nth-child(2){grid-column:1;grid-row:2}.torneo-form fieldset:nth-child(3){grid-column:2;grid-row:2}.torneo-form fieldset:nth-child(4){grid-column:1;grid-row:3}.torneo-form fieldset:nth-child(5){grid-column:2;grid-row:3}.torneo-form fieldset:hover{border-color:#8d6e63;background:linear-gradient(145deg,#fff,#fafafa);box-shadow:0 4px 12px #5d40371a}.torneo-form legend{font-weight:700;font-size:1.1rem!important;color:#5d4037;padding:0 10px!important;background:linear-gradient(135deg,beige,#faf8f5);border-radius:6px;border:1px solid #d7ccc8}.torneo-form label{display:block;font-weight:600;color:#5d4037;margin-top:.75rem!important;margin-bottom:.4rem!important;font-size:.9rem!important}.torneo-form label:first-of-type{margin-top:0}.tipo-torneo-container{display:flex;gap:20px;margin-bottom:15px;flex-wrap:wrap}.tipo-torneo-option{display:flex!important;align-items:center;cursor:pointer;margin:0!important;flex:1;min-width:150px}.tipo-torneo-option input{margin-right:8px}.torneo-form input[type=radio]{appearance:none;width:20px;height:20px;border:2px solid #8d6e63;border-radius:50%;background-color:#fafafa;cursor:pointer;position:relative;transition:all .3s ease;vertical-align:middle;flex-shrink:0}.torneo-form input[type=radio]:checked{border-color:#4caf50;background-color:#e8f5e9}.torneo-form input[type=radio]:checked:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background-color:#4caf50}.torneo-form input[type=radio]:hover:not(:disabled){border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.torneo-form input[type=radio]:disabled{opacity:.5;cursor:not-allowed}.torneo-form input[type=checkbox]{appearance:none;width:18px;height:18px;border:2px solid #8d6e63;border-radius:4px;background-color:#fafafa;cursor:pointer;position:relative;transition:all .3s ease;vertical-align:middle;flex-shrink:0}.torneo-form input[type=checkbox]:checked{border-color:#4caf50;background-color:#4caf50}.torneo-form input[type=checkbox]:checked:before{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700}.torneo-form input[type=checkbox]:hover:not(:disabled){border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.torneo-form input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.epocas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;padding:12px;border:2px solid #d7ccc8;border-radius:8px;background:linear-gradient(145deg,#fafafa,#f9f9f9);margin-bottom:15px;max-height:280px;overflow-y:auto}.epocas-grid::-webkit-scrollbar{width:8px}.epocas-grid::-webkit-scrollbar-track{background:#efebe9;border-radius:4px}.epocas-grid::-webkit-scrollbar-thumb{background:#8d6e63;border-radius:4px}.epocas-grid::-webkit-scrollbar-thumb:hover{background:#6d4c41}.epocas-grid label,.epoca-option{display:flex!important;align-items:center;cursor:pointer;padding:8px;border-radius:6px;transition:background-color .2s ease;margin:0!important;font-size:.85rem!important}.epocas-grid label:hover,.epoca-option:hover{background-color:#8d6e630d}.epoca-option input{margin-right:8px}.epocas-seleccionadas{padding:10px 12px;background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border:2px solid #4caf50;border-radius:8px;margin-bottom:12px;color:#2e7d32;font-size:.85rem;line-height:1.4;box-shadow:0 2px 6px #4caf5026;animation:fadeIn .3s ease-out}.epocas-seleccionadas strong{font-weight:600}.torneo-form input[type=text],.torneo-form input[type=email],.torneo-form input[type=date],.torneo-form input[type=number],.torneo-form input[type=file],.torneo-form select{padding:.6em;font-size:.95em;border:1px solid #a1887f;border-radius:6px;width:100%;box-sizing:border-box;transition:all .3s ease;background-color:#fafafa;color:#000;font-family:inherit}.torneo-form input:focus,.torneo-form select:focus{outline:none;border-color:#4caf50;background-color:#f9fff9;box-shadow:0 0 0 3px #4caf501a;color:#000}.torneo-form input:disabled,.torneo-form select:disabled{background-color:#efebe9;cursor:not-allowed;opacity:.7}.torneo-form input::placeholder{color:#a1887f;font-style:italic}.torneo-form input[type=number]{-moz-appearance:textfield}.torneo-form input[type=number]::-webkit-inner-spin-button,.torneo-form input[type=number]::-webkit-outer-spin-button{opacity:1;height:30px}.duracion-torneo-container{display:flex;gap:12px;margin:10px 0 15px;flex-wrap:wrap}.duracion-option{flex:1;min-width:140px;padding:10px 12px;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;background:#fff}.duracion-option:hover{border-color:#4a90e2;background-color:#f0f7ff}.duracion-option input[type=radio]{cursor:pointer;width:18px;height:18px;margin:0}.duracion-option:has(input:checked){border-color:#4a90e2;background-color:#e3f2fd;box-shadow:0 0 10px #4a90e24d;font-weight:600}.organizador-input-container{display:flex;gap:10px;margin-bottom:12px;align-items:stretch}.organizador-input-container input{flex:1;min-width:0}.btn-añadir-organizador{padding:.6em 1.2em;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;white-space:nowrap;transition:all .3s ease;font-weight:600;box-shadow:0 2px 6px #4caf504d}.btn-añadir-organizador:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#388e3c);transform:translateY(-1px);box-shadow:0 4px 10px #4caf5066}.btn-añadir-organizador:disabled{background:linear-gradient(135deg,#ccc,#bbb);cursor:not-allowed;transform:none;box-shadow:none}.organizadores-lista{margin-top:12px;padding:12px;background-color:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0}.organizadores-titulo{margin:0 0 10px;color:#333;font-size:.9rem;font-weight:600}.organizadores-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.organizador-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background-color:#fff;border-radius:6px;border:1px solid #e0e0e0;transition:all .2s ease;gap:10px}.organizador-item:hover{box-shadow:0 2px 6px #00000014;border-color:#d0d0d0}.organizador-email{flex:1;color:#555;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-eliminar-organizador{padding:4px 10px;background:linear-gradient(135deg,#f44336,#e53935);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.btn-eliminar-organizador:hover:not(:disabled){background:linear-gradient(135deg,#e53935,#c62828);transform:scale(1.05)}.btn-eliminar-organizador:disabled{background:linear-gradient(135deg,#ccc,#bbb);cursor:not-allowed;transform:none}.torneo-form input[type=file]{padding:12px;border:2px dashed #8d6e63;border-radius:8px;cursor:pointer;background:linear-gradient(145deg,#fafafa,#f9f9f9);transition:all .3s ease;font-size:.9rem}.torneo-form input[type=file]:hover:not(:disabled){border-color:#4caf50;background:linear-gradient(145deg,#f9fff9,#f1f8e9)}.torneo-form input[type=file]::-webkit-file-upload-button{padding:8px 14px;background:linear-gradient(135deg,#8d6e63,#6d4c41);color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:600;margin-right:10px;transition:all .3s ease;font-size:.85rem}.torneo-form input[type=file]::-webkit-file-upload-button:hover{background:linear-gradient(135deg,#6d4c41,#5d4037)}.archivo-seleccionado-container{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border:2px solid #4caf50;border-radius:8px;padding:12px;margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;animation:fadeIn .3s ease-out;box-shadow:0 2px 8px #4caf5026}.archivo-info{flex:1;min-width:0}.archivo-nombre{margin:0 0 6px;font-size:.9rem;color:#2e7d32;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archivo-nombre strong{color:#1b5e20;font-weight:600}.archivo-tamaño{margin:0;font-size:.8rem;color:#558b2f}.btn-eliminar-pdf{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff;border:none;padding:8px 14px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;box-shadow:0 2px 6px #f443364d;flex-shrink:0}.btn-eliminar-pdf:hover:not(:disabled){background:linear-gradient(135deg,#d32f2f,#c62828);transform:translateY(-1px);box-shadow:0 4px 10px #f4433666}.btn-eliminar-pdf:disabled{background:linear-gradient(135deg,#bcaaa4,#a1887f);cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.torneo-form select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235d4037' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}.torneo-form select:disabled{cursor:not-allowed;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1887f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}.torneo-form input+small,.torneo-form select+small,.help-text{display:block;margin-top:4px!important;font-size:.8rem;color:#666;font-style:italic;line-height:1.3}.help-text-file{display:block;margin-top:4px;font-size:.8rem;color:#666;font-style:italic}.label-hint{color:#666;font-size:.8rem;margin-left:8px;font-weight:400;font-style:italic}.form-actions{grid-column:1 / -1;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding-top:1.5rem;border-top:2px solid #d7ccc8}.btn-primary,.btn-secondary{border-radius:8px;border:none;padding:14px 32px;font-size:1.05rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s ease;min-width:160px}.btn-primary{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;box-shadow:0 4px 10px #4caf504d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#388e3c,#2e7d32);transform:translateY(-2px);box-shadow:0 6px 16px #4caf5066}.btn-primary:disabled{background:linear-gradient(135deg,#bcaaa4,#a1887f);cursor:not-allowed;transform:none;box-shadow:none;opacity:.7}.btn-secondary{background:linear-gradient(135deg,#8d6e63,#6d4c41);color:#fff;box-shadow:0 4px 10px #8d6e634d}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#6d4c41,#5d4037);transform:translateY(-2px);box-shadow:0 6px 16px #8d6e6366}.btn-secondary:disabled{background:linear-gradient(135deg,#bcaaa4,#a1887f);cursor:not-allowed;transform:none;box-shadow:none;opacity:.7}.torneo-form input:required:invalid:not(:placeholder-shown),.torneo-form select:required:invalid{border-color:#d32f2f;background-color:#ffebee}.torneo-form input:required:valid:not(:placeholder-shown){border-color:#4caf50;background-color:#f1f8e9}@media(max-width:1024px){.torneo-form{grid-template-columns:1fr}.torneo-form fieldset:nth-child(1),.torneo-form fieldset:nth-child(2),.torneo-form fieldset:nth-child(3),.torneo-form fieldset:nth-child(4),.torneo-form fieldset:nth-child(5){grid-column:1!important;grid-row:auto!important}.epocas-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media(max-width:768px){.crear-torneo-container{padding:1rem}.crear-torneo-container h1{font-size:2rem}.torneo-form{padding:1.5rem;gap:1.2rem}.torneo-form fieldset{padding:1.2rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;min-width:auto}.organizador-input-container{flex-direction:column}.btn-añadir-organizador{width:100%}.archivo-seleccionado-container{flex-direction:column;align-items:stretch}.btn-eliminar-pdf{width:100%}}@media(max-width:480px){.crear-torneo-container h1{font-size:1.6rem}.torneo-form,.torneo-form fieldset{padding:1rem}.epocas-grid{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.torneo-form{animation:fadeIn .4s ease-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.torneo-form input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(32%) sepia(20%) saturate(900%) hue-rotate(346deg) brightness(94%) contrast(90%)}.torneo-form input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert(45%) sepia(65%) saturate(450%) hue-rotate(75deg) brightness(96%) contrast(90%)}.unidades-legendarias-container{display:flex;flex-direction:column;gap:.5rem}.checkbox-container{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background-color:#f9f9f9;border-radius:8px;border:2px solid #ddd;transition:all .3s ease}.checkbox-container:hover{background-color:#f0f8ff;border-color:#4caf50}.checkbox-container input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#4CAF50}.checkbox-container input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.checkbox-label{flex:1;font-size:1rem;color:#333}.checkbox-container:has(input:checked){background-color:#e8f5e9;border-color:#4caf50}.unidades-legendarias-container{background-color:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;padding:15px;margin-bottom:15px}.checkbox-container{display:flex;align-items:center;cursor:pointer}.checkbox-container input[type=checkbox]{width:20px;height:20px;margin-right:10px;cursor:pointer}.checkbox-label{font-size:1rem;color:#333}.badge-activo{display:inline-block;background-color:#28a745;color:#fff;padding:4px 12px;border-radius:12px;font-weight:700;font-size:.9rem}.badge-inactivo{display:inline-block;background-color:#6c757d;color:#fff;padding:4px 12px;border-radius:12px;font-weight:700;font-size:.9rem}.imagen-preview{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:2px dashed #ddd}.preview-titulo{font-size:.95rem;color:#666;margin-bottom:.75rem;font-weight:600;text-align:center}.imagen-preview-img{max-width:100%;max-height:400px;width:auto;height:auto;display:block;margin:0 auto;border-radius:8px;box-shadow:0 4px 6px #0000001a;object-fit:contain}.imagen-actual-container,.imagen-nueva-container,.sin-imagen-container{background:#f8f9fa;padding:1.5rem;border-radius:12px;border:2px dashed var(--color-beige)}.imagen-label{font-weight:700;color:var(--color-verde-oscuro);margin-bottom:1rem;font-size:1.1rem}.imagen-actual-preview,.imagen-preview{margin:1rem 0;text-align:center}.imagen-preview-img{max-width:100%;max-height:400px;border-radius:12px;box-shadow:0 4px 12px #00000026;object-fit:contain}.imagen-acciones{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem}.btn-cambiar-imagen,.btn-subir-imagen{display:inline-block;padding:.8rem 1.5rem;background:var(--color-verde-oscuro);color:#fff;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;text-align:center}.btn-cambiar-imagen:hover,.btn-subir-imagen:hover{background:var(--color-verde-claro);transform:translateY(-2px)}.btn-eliminar-imagen,.btn-cancelar-nueva-imagen,.btn-cancelar-eliminacion{padding:.8rem 1.5rem;border:2px solid #dc3545;background:#fff;color:#dc3545;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease}.btn-eliminar-imagen:hover,.btn-cancelar-nueva-imagen:hover{background:#dc3545;color:#fff}.btn-cancelar-eliminacion{border-color:var(--color-verde-oscuro);color:var(--color-verde-oscuro);width:100%;margin-top:1rem}.btn-cancelar-eliminacion:hover{background:var(--color-verde-oscuro);color:#fff}.aviso-eliminar{background:#fff3cd;color:#856404;padding:1rem;border-radius:8px;font-weight:600;text-align:center;margin-bottom:1rem}.sin-imagen-texto{text-align:center;color:#7f8c8d;font-size:1.1rem;margin-bottom:1.5rem}@media(max-width:768px){.imagen-acciones{flex-direction:column}.btn-cambiar-imagen,.btn-eliminar-imagen,.btn-subir-imagen{width:100%;text-align:center}}:root{--elo-gran-maestro: #FFD700;--elo-maestro: #C0C0C0;--elo-experto: #CD7F32;--elo-avanzado: #3498db;--elo-intermedio: #2ecc71;--elo-principiante: #95a5a6;--elo-novato: #bdc3c7}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.spinner{width:40px;height:40px;border:4px solid var(--color-beige);border-top-color:var(--color-verde-oscuro);border-radius:50%;animation:spin .9s linear infinite}.spinner-small{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;vertical-align:middle;margin-right:.4rem}.ranking-page{max-width:1200px;margin:0 auto;padding:2rem 1rem;min-height:100vh;animation:fadeIn .4s ease}.ranking-page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;color:var(--color-verde-oscuro);font-weight:600}.ranking-header{text-align:center;padding:2.5rem 1.5rem;margin-bottom:2.5rem;background:linear-gradient(135deg,var(--color-verde-oscuro) 0%,var(--color-verde-claro) 100%);border-radius:14px;box-shadow:0 8px 24px #62814147;color:#fff}.ranking-header h1{font-size:2.4rem;font-weight:800;margin:0 0 .75rem;color:#fff;text-shadow:1px 2px 4px rgba(0,0,0,.18)}.temporada-info{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:.5rem}.temporada-nombre{font-size:1.3rem;font-weight:600;background:#ffffff2e;padding:.4rem 1rem;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.temporada-año{font-size:1.3rem;opacity:.85;font-weight:500}.selector-sistema{margin-bottom:2.5rem}.selector-sistema h3{text-align:center;font-size:1.6rem;color:var(--color-verde-oscuro);margin-bottom:1.25rem;font-weight:700}.sistema-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.sistema-btn{background:#fff;border:2px solid var(--color-beige-oscuro);border-radius:12px;padding:1.25rem 1.5rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 3px 8px #00000014}.sistema-btn:hover{border-color:var(--color-verde-oscuro);transform:translateY(-3px);box-shadow:0 6px 16px #62814138}.sistema-btn.active{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));border-color:var(--color-verde-oscuro);color:#fff;box-shadow:0 6px 18px #62814159}.sistema-nombre{font-size:1.5rem;font-weight:700;color:var(--color-verde-oscuro)}.sistema-btn.active .sistema-nombre,.sistema-btn.active .sistema-stats{color:#fff}.sistema-stats{display:flex;gap:.75rem;font-size:.95rem;font-weight:600;color:var(--color-texto-principal);opacity:.85}.stat-item{display:flex;align-items:center;gap:.25rem}.selector-loading{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 3px 8px #00000014;color:var(--color-verde-oscuro);font-weight:600}.selector-error{text-align:center;padding:1.5rem;background:#fadbd8;color:var(--color-error);font-weight:600;border-radius:12px}.selector-error button{margin-top:.75rem;background:var(--color-error);color:#fff;border:none;padding:.45rem 1.25rem;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.selector-error button:hover{background:#c0392b}.ranking-estadisticas{display:flex;justify-content:center;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}.stat-card{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 3px 8px #00000014;display:flex;align-items:center;gap:.85rem;border-left:4px solid var(--color-verde-oscuro);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-3px);box-shadow:0 6px 14px #0000001f}.stat-card>div{display:flex;flex-direction:column}.stat-numero{font-size:1.8rem;font-weight:700;color:var(--color-verde-oscuro);line-height:1}.stat-texto{font-size:.85rem;color:#7f8c8d;margin-top:.2rem}.ranking-container{animation:fadeInUp .4s ease-out}.ranking-filtros{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 3px 8px #00000014;margin-bottom:1.5rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.filtro{display:flex;align-items:center;gap:.5rem}.filtro label{font-weight:600;color:var(--color-verde-oscuro);white-space:nowrap;font-size:.9rem}.filtro select{padding:.45rem .85rem;border:2px solid var(--color-beige-oscuro);border-radius:8px;background:#fff;color:var(--color-texto-principal);font-weight:600;cursor:pointer;transition:border-color .2s,box-shadow .2s;font-size:.9rem}.filtro select:hover,.filtro select:focus{border-color:var(--color-verde-oscuro);outline:none;box-shadow:0 0 0 3px #6281411a}.btn-actualizar{margin-left:auto;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:none;padding:.5rem 1.4rem;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 6px #e67e224d;font-size:.9rem}.btn-actualizar:hover{transform:translateY(-2px);box-shadow:0 4px 10px #e67e2266}.ranking-lista{display:flex;flex-direction:column;gap:.85rem}.ranking-vacio{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;border:2px dashed var(--color-beige-oscuro)}.ranking-vacio p{color:var(--color-texto-principal);font-size:1rem;margin:.4rem 0}.ranking-vacio .texto-secundario{color:#7f8c8d;font-size:.88rem}.ranking-loading,.ranking-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;gap:1rem;font-weight:600}.ranking-error{background:#fadbd8;color:var(--color-error);padding:2rem;border-radius:12px}.ranking-error button{background:var(--color-error);color:#fff;border:none;padding:.45rem 1.25rem;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.ranking-error button:hover{background:#c0392b}.tarjeta-jugador{background:#fff;border-radius:12px;border-left:5px solid transparent;box-shadow:0 3px 10px #00000014;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.tarjeta-jugador:hover{transform:translateY(-3px);box-shadow:0 8px 20px #00000021}.tarjeta-jugador.categoria-gran-maestro{border-left-color:var(--elo-gran-maestro)}.tarjeta-jugador.categoria-maestro{border-left-color:var(--elo-maestro)}.tarjeta-jugador.categoria-experto{border-left-color:var(--elo-experto)}.tarjeta-jugador.categoria-avanzado{border-left-color:var(--elo-avanzado)}.tarjeta-jugador.categoria-intermedio{border-left-color:var(--elo-intermedio)}.tarjeta-jugador.categoria-principiante{border-left-color:var(--elo-principiante)}.tarjeta-jugador.categoria-novato{border-left-color:var(--elo-novato)}.tarjeta-top-row{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem}.jugador-posicion{font-size:1.9rem;font-weight:800;color:var(--color-verde-oscuro);min-width:48px;text-align:center;flex-shrink:0;line-height:1}.jugador-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.jugador-nombre{font-size:1,5rem;font-weight:700;color:var(--color-texto-principal);margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jugador-club{font-size:.9rem;color:#7f8c8d;margin:0}.jugador-elo{display:flex;flex-direction:column;align-items:center;gap:.15rem;flex-shrink:0}.elo-principal{display:flex;flex-direction:column;align-items:center;line-height:1}.elo-valor{font-size:2rem;font-weight:800;color:var(--color-naranja)}.elo-label{font-size:.68rem;color:#7f8c8d;text-transform:uppercase;letter-spacing:1.5px;font-weight:700}.elo-max{font-size:.76rem;color:#27ae60;font-weight:600}.jugador-categoria{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:.6rem .9rem;background:var(--color-beige);border-radius:10px;min-width:100px;flex-shrink:0}.categoria-icono{font-size:1.6rem;line-height:1}.categoria-nombre{font-size:.75rem;font-weight:700;color:var(--color-verde-oscuro);text-align:center}.jugador-estadisticas{display:flex;border-top:1px solid var(--color-beige);background:#fafaf8}.stat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:.85rem .5rem;border-right:1px solid var(--color-beige);min-width:0}.stat:last-child{border-right:none}.stat-label{font-size:.65rem;color:#9b9b9b;text-transform:uppercase;letter-spacing:.6px;font-weight:700;text-align:center;line-height:1.2}.stat-valor{font-size:1rem;font-weight:700;color:var(--color-verde-oscuro);text-align:center;line-height:1.2;word-break:break-word}.stat-valor.epoca-stat{font-size:.82rem;font-weight:600}.stat-valor .victoria{color:#27ae60}.stat-valor .derrota{color:var(--color-error)}.stat-valor .empate{color:#95a5a6}.estadisticas-detalladas-compact{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--color-beige);display:flex;justify-content:center}.estadisticas-loading{display:flex;align-items:center;gap:.5rem;padding:.75rem;color:var(--color-verde-oscuro);font-size:.88rem;font-weight:600}.estadisticas-error{text-align:center;padding:.6rem 1rem;background:#fadbd8;border-radius:8px;color:var(--color-error);font-size:.82rem}.stats-inline-row{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.stat-inline-chip{display:flex;align-items:center;gap:.35rem;background:var(--color-beige);border-radius:20px;padding:.28rem .7rem;font-size:.78rem;white-space:nowrap}.stat-inline-chip.chip-grande{padding:.45rem 1rem;font-size:.9rem;border-radius:22px;background:#fff;border:2px solid var(--color-beige-oscuro);box-shadow:0 2px 5px #00000012}.stat-inline-chip.chip-grande .chip-label{font-size:.78rem}.stat-inline-chip.chip-grande .chip-valor{font-size:.95rem}@media(max-width:900px){.tarjeta-top-row{gap:1rem;padding:1rem 1.25rem}.jugador-nombre{font-size:.98rem}.elo-valor{font-size:1.7rem}.jugador-categoria{min-width:88px}}@media(max-width:640px){.ranking-header h1{font-size:1.8rem}.selector-sistema h3{font-size:1.3rem}.sistema-buttons{grid-template-columns:1fr}.ranking-filtros{flex-direction:column;padding:1rem}.filtro{width:100%;justify-content:space-between}.filtro select{flex:1}.btn-actualizar{width:100%;margin-left:0}.tarjeta-top-row{flex-wrap:wrap;padding:1rem;gap:.75rem}.jugador-posicion{font-size:1.5rem;min-width:36px}.jugador-info{flex:1}.jugador-nombre{font-size:.95rem;white-space:normal}.jugador-elo{order:3;flex:1;align-items:flex-start}.elo-valor{font-size:1.6rem}.jugador-categoria{order:4;min-width:80px;padding:.5rem .75rem}.stat{padding:.7rem .25rem}.stat-label{font-size:.6rem}.stat-valor{font-size:.88rem}.stat-valor.epoca-stat{font-size:.75rem}}@media(max-width:420px){.tarjeta-top-row{padding:.85rem}.jugador-estadisticas{flex-wrap:wrap}.stat{flex:1 1 calc(50% - 1px);border-right:none;border-bottom:1px solid var(--color-beige)}.stat:nth-child(odd){border-right:1px solid var(--color-beige)}.stat:last-child,.stat:nth-last-child(2):nth-child(odd){border-bottom:none}}.perfil-container{min-height:100vh;padding:2.5rem 1.25rem;background:linear-gradient(135deg,var(--color-beige) 0%,var(--color-fondo-principal) 100%)}.perfil-container h1{text-align:center;color:var(--color-verde-oscuro);margin-bottom:2rem;font-size:2.5rem;text-shadow:2px 2px 4px rgba(98,129,65,.2);font-weight:700}.perfil-card{max-width:1200px;margin:0 auto;padding:1.25rem}.perfil-card section{padding:2rem;margin-bottom:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 16px #6281411f;border:2px solid var(--color-beige-oscuro)}.perfil-card section:last-child{margin-bottom:0}.perfil-card h2{color:var(--color-verde-oscuro);margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.section-header h2{margin-bottom:0}.section-header .btn-primary,.section-header .btn-secondary{padding:.65rem 1.25rem;font-size:.95rem;width:auto;min-width:auto}.info-security-combined{padding:2rem;margin-bottom:2rem;background:#fff!important;border-radius:12px;box-shadow:0 4px 16px #6281411f;border:2px solid var(--color-beige-oscuro)}.headers-combined-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,var(--color-beige),#FFFFFF);border-radius:10px;border:2px solid var(--color-beige-oscuro)}.headers-combined-row .section-header{margin-bottom:0;padding:0}.headers-combined-row h2{font-size:1.3rem;margin-bottom:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.info-item{padding:1rem;background:linear-gradient(135deg,#fafafa,#fff);border-radius:8px;border:1px solid var(--color-beige-oscuro);transition:all .3s ease}.info-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6281411a}.info-item label{display:block;color:var(--color-verde-oscuro);font-size:.9rem;font-weight:600;margin-bottom:.5rem}.info-item p{color:var(--color-texto-principal);font-size:1.05rem;margin:0;word-wrap:break-word}.rol-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.9rem;box-shadow:0 2px 6px #0003;text-transform:uppercase;letter-spacing:.5px}.rol-badge.organizador{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff}.rol-badge.jugador{background:linear-gradient(135deg,var(--color-verde-claro),var(--color-verde-oscuro));color:#fff}.edit-form,.password-form{padding:1.5rem;background:#fff;border-radius:10px;border:2px solid var(--color-beige-oscuro);margin-top:1.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;margin-bottom:1.25rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;color:var(--color-verde-oscuro);margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group select{width:100%;padding:.75rem;font-size:1rem;border:2px solid var(--color-beige-oscuro);border-radius:8px;background-color:#fff;transition:all .3s ease;font-family:inherit;box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:var(--color-naranja);background-color:#fffaf0;box-shadow:0 0 0 3px #e67e221a;outline:none}.form-group input:disabled,.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23628141' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.input-error{border-color:var(--color-error)!important;background-color:#fff5f5!important}.field-error{color:var(--color-error);font-size:.85rem;font-weight:500;margin-top:4px;display:flex;align-items:center;gap:.25rem}.field-error:before{content:"⚠"}.field-hint{color:#666;font-size:.85rem;font-style:italic;margin-top:4px;display:block}.required{color:var(--color-naranja);font-weight:700;font-size:1.1rem}.input-with-loader{position:relative;width:100%}.input-loader{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:1.2rem;animation:spin-perfil 1s linear infinite}@keyframes spin-perfil{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.checkbox-group{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));border-radius:8px;border:2px solid var(--color-beige-oscuro);margin-bottom:1rem;cursor:pointer;transition:all .3s ease}.checkbox-group:hover{transform:translateY(-1px);box-shadow:0 4px 12px #62814126}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-naranja);margin:0}.checkbox-group label{font-weight:500;color:var(--color-verde-oscuro);cursor:pointer;font-size:.95rem;margin:0;-webkit-user-select:none;user-select:none}.button-group{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.btn-primary,.btn-secondary{flex:1;padding:.85rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;min-width:150px;text-transform:uppercase;letter-spacing:.3px}.btn-primary{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;box-shadow:0 4px 12px #e67e224d;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #e67e2266}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;opacity:.6;box-shadow:none}.btn-secondary{background:#fff;color:var(--color-naranja);border:2px solid var(--color-naranja);box-shadow:0 2px 8px #e67e2233}.btn-secondary:hover:not(:disabled){background:var(--color-beige);transform:translateY(-2px);box-shadow:0 4px 12px #e67e224d}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{padding:.85rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:700;background:linear-gradient(135deg,var(--color-error),#C0392B);color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #e74c3c4d;text-transform:uppercase;letter-spacing:.3px}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e74c3c66}.btn-danger:active{transform:translateY(0)}.btn-upgrade{width:100%;padding:1rem;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #e67e224d;text-transform:uppercase;letter-spacing:.5px}.btn-upgrade:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #e67e2266}.btn-upgrade:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:#943126;padding:1rem;border-radius:8px;border-left:4px solid var(--color-error);font-weight:600;font-size:.95rem;margin-bottom:1rem;box-shadow:0 4px 12px #e74c3c33;display:flex;align-items:center;gap:.5rem;animation:shake-perfil .5s}.error-message:before{content:"⚠️";font-size:1.2rem}@keyframes shake-perfil{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.success-message{background:linear-gradient(135deg,#d5f4e6,#abebc6);color:#186a3b;padding:1rem;border-radius:8px;border-left:4px solid var(--color-exito);font-weight:600;font-size:.95rem;margin-bottom:1rem;box-shadow:0 4px 12px #27ae6033;display:flex;align-items:center;gap:.5rem;animation:slideInDown-perfil .5s ease-out}@keyframes slideInDown-perfil{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.loading-message{text-align:center;padding:2rem;color:var(--color-verde-oscuro);font-size:1.1rem;font-weight:600}.empty-message{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;border:2px dashed var(--color-beige-oscuro);color:var(--color-texto-principal)}.empty-message p{font-size:1.1rem;margin-bottom:1.5rem;color:#7f8c8d}.torneos-section{background:#fff!important;padding-left:0!important;padding-right:0!important;overflow:hidden}.torneos-section .section-header{padding-left:2rem;padding-right:2rem}.torneos-section .empty-message,.torneos-section .loading-message,.torneos-section .error-message{margin:0 2rem}.torneos-tabla-wrapper{width:100%;overflow-x:auto;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.torneos-tabla{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;min-width:700px}.torneos-tabla thead tr{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.torneos-tabla th{padding:13px 16px;text-align:left;font-weight:600;font-size:.85rem;letter-spacing:.03em;white-space:nowrap}.torneos-tabla td{padding:12px 16px;color:#444;border-bottom:1px solid #f0f0f0;vertical-align:middle}.torneos-tabla tbody tr:last-child td{border-bottom:none}.torneos-tabla tbody tr:hover{background-color:#f5f5ff}.torneos-tabla tbody tr:nth-child(2n){background-color:#fafafa}.torneos-tabla tbody tr:nth-child(2n):hover{background-color:#f5f5ff}.torneo-nombre-cel{font-weight:600;color:#333;min-width:140px}.acciones-cel{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;white-space:nowrap}.btn-tabla{display:inline-block;padding:6px 12px;border-radius:6px;font-size:.8rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:all .2s ease;cursor:pointer;border:none;line-height:1.4}.btn-administrar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-administrar:hover{transform:translateY(-1px);box-shadow:0 3px 8px #667eea66}.btn-ver{background:linear-gradient(135deg,#43b89c,#2d9e84);color:#fff}.btn-ver:hover{transform:translateY(-1px);box-shadow:0 3px 8px #43b89c66}.btn-inscribir{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-inscribir:hover{transform:translateY(-1px);box-shadow:0 3px 8px #f5576c66}.estado-badge{display:inline-block;padding:.4rem .85rem;border-radius:20px;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;box-shadow:0 2px 6px #0003}.estado-pendiente{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.estado-encurso{background:linear-gradient(135deg,var(--color-verde-claro),var(--color-verde-oscuro));color:#fff}.estado-finalizado{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff}.organizador-section{background:linear-gradient(135deg,var(--color-beige) 0%,#FFF8E1 100%);border:2px solid var(--color-naranja)!important}.organizador-section h2{color:var(--color-verde-oscuro);margin-bottom:1rem}.organizador-section p{color:var(--color-texto-principal);margin-bottom:1.5rem;line-height:1.6;font-size:1.05rem}.logout-section{text-align:center;background:#fff!important}.ranking-section{margin-bottom:2rem}.ranking-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem}.ranking-tab{background:#fff;border:2px solid var(--color-beige-oscuro);border-radius:12px;padding:1rem;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:.5rem;text-align:center}.ranking-tab:hover{border-color:var(--color-verde-oscuro);transform:translateY(-2px);box-shadow:0 4px 8px #62814133}.ranking-tab.active{border-color:var(--color-verde-oscuro);background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;box-shadow:0 4px 12px #6281414d}.tab-sistema{font-size:1.1rem;font-weight:700}.tab-elo{font-size:1.5rem;font-weight:700;color:var(--color-naranja)}.ranking-tab.active .tab-elo{color:#fff}.tab-categoria{font-size:.9rem;opacity:.9}.ranking-content{animation:fadeIn .5s ease-in}.ranking-resumen{background:linear-gradient(135deg,var(--color-beige) 0%,white 100%);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px #0000001a}.ranking-principal{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:center;margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--color-beige-oscuro)}.elo-display{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 8px #0000001a;min-width:150px}.elo-numero{font-size:3rem;font-weight:700;color:var(--color-naranja);line-height:1}.elo-label{font-size:.9rem;color:#7f8c8d;text-transform:uppercase;letter-spacing:1px;margin-top:.5rem}.ranking-info{display:flex;justify-content:space-between;align-items:center;gap:2rem}.categoria-display{display:flex;align-items:center;gap:1rem}.categoria-icono{font-size:3rem;width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000001a}.categoria-icono.gran-maestro{background:linear-gradient(135deg,gold,orange)}.categoria-icono.maestro{background:linear-gradient(135deg,silver,gray)}.categoria-icono.experto{background:linear-gradient(135deg,#cd7f32,#8b4513)}.categoria-icono.avanzado{background:linear-gradient(135deg,#3498db,#2980b9)}.categoria-icono.intermedio{background:linear-gradient(135deg,#2ecc71,#27ae60)}.categoria-icono.principiante{background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.categoria-icono.novato{background:linear-gradient(135deg,#ecf0f1,#bdc3c7)}.categoria-nombre{font-size:1.5rem;font-weight:700;color:var(--color-verde-oscuro);display:block}.sistema-nombre{font-size:1rem;color:#7f8c8d;display:block;margin-top:.25rem}.posicion-ranking{display:flex;flex-direction:column;align-items:center;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.posicion-numero{font-size:2.5rem;font-weight:700;color:var(--color-verde-oscuro);line-height:1}.posicion-label{font-size:.85rem;color:#7f8c8d;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.stats-grid{display:flex;flex-wrap:nowrap;gap:.4rem;overflow-x:auto;padding-bottom:.25rem}.stat-box{display:flex;flex-direction:row;align-items:center;gap:.35rem;background:#fff;border:1px solid var(--color-beige-oscuro);border-left:3px solid var(--color-beige-oscuro);border-radius:8px;padding:.35rem .65rem;flex:1;min-width:0;white-space:nowrap;transition:all .2s ease}.stat-box:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0000001a}.stat-box.victoria{border-left-color:var(--color-exito)}.stat-box.derrota{border-left-color:var(--color-error)}.stat-box.empate{border-left-color:#95a5a6}.stat-box.destacado{border-left-color:var(--color-naranja)}.stat-box .stat-icono{font-size:.9rem;flex-shrink:0}.stat-box .stat-valor{font-size:.95rem;font-weight:700;color:var(--color-verde-oscuro);line-height:1}.stat-box.victoria .stat-valor{color:var(--color-exito)}.stat-box.derrota .stat-valor{color:var(--color-error)}.stat-box.empate .stat-valor{color:#95a5a6}.stat-box.destacado .stat-valor{color:var(--color-naranja)}.stat-box .stat-label{font-size:.65rem;color:#7f8c8d;text-transform:uppercase;letter-spacing:.3px;line-height:1}.estadisticas-detalladas-compact{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-beige)}.stats-inline-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.stat-inline-chip{display:flex;align-items:center;gap:.4rem;background:var(--color-beige);border-radius:20px;padding:.25rem .65rem;font-size:.78rem;white-space:nowrap}.chip-label{color:#7f8c8d;font-weight:600}.chip-valor{color:var(--color-verde-oscuro);font-weight:700;display:flex;gap:.4rem;align-items:center}.chip-item{display:flex;align-items:center;gap:.2rem}.chip-item+.chip-item:before{content:"·";color:#bdc3c7;margin-right:.15rem}.info-message{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;border:2px dashed var(--color-beige-oscuro)}.info-message p{font-size:1.2rem;color:var(--color-texto-principal);margin:0 0 .5rem}.info-message small{color:#7f8c8d;font-size:.95rem}.estadisticas-loading{text-align:center;padding:2rem;color:var(--color-verde-oscuro);font-size:1rem;font-weight:600}.estadisticas-error{text-align:center;padding:1.5rem;background:linear-gradient(135deg,#fadbd8,#f1948a);border-radius:12px;color:var(--color-error)}.torneos-sistema-bloque{margin-bottom:2rem}.torneos-sistema-bloque:last-child{margin-bottom:0}.torneos-sistema-titulo{font-size:1.1rem;font-weight:700;color:var(--color-verde-oscuro);padding:.75rem 2rem;background:linear-gradient(135deg,var(--color-beige),#fff);border-top:2px solid var(--color-beige-oscuro);margin:0}@media(max-width:1024px){.perfil-card{max-width:95%}.ranking-principal{grid-template-columns:1fr;gap:1.5rem}.elo-display{width:100%}.ranking-info{flex-direction:column;gap:1rem}.ranking-tabs{grid-template-columns:1fr}}@media(max-width:768px){.perfil-container{padding:1.5rem .75rem}.perfil-container h1{font-size:2rem}.perfil-card{padding:.75rem}.perfil-card section{padding:1.5rem;margin-bottom:1.5rem}.torneos-section .section-header,.torneos-section .empty-message,.torneos-section .loading-message,.torneos-section .error-message{padding-left:1.5rem;padding-right:1.5rem;margin-left:0;margin-right:0}.info-grid,.form-row{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:stretch}.section-header .btn-primary,.section-header .btn-secondary{width:100%}.headers-combined-row{grid-template-columns:1fr;gap:1.5rem}.button-group{flex-direction:column}.btn-primary,.btn-secondary{width:100%;min-width:auto}.ranking-resumen{padding:1.5rem}.elo-numero{font-size:2.5rem}.categoria-icono{font-size:2rem;width:60px;height:60px}.categoria-nombre{font-size:1.2rem}.posicion-numero{font-size:2rem}.stats-grid{gap:.3rem}.torneos-tabla th,.torneos-tabla td{padding:9px 12px;font-size:.82rem}.acciones-cel{flex-direction:column;flex-wrap:wrap;gap:4px}.btn-tabla{width:100%;text-align:center}}@media(max-width:480px){.perfil-container{padding:1rem .5rem}.perfil-container h1{font-size:1.75rem}.perfil-card h2{font-size:1.3rem}.perfil-card section{padding:1.25rem}.info-security-combined{padding:1.25rem}.headers-combined-row{padding:1rem}.headers-combined-row h2{font-size:1.15rem}.ranking-resumen{padding:1rem}.elo-display{padding:1.5rem}.elo-numero{font-size:2rem}.categoria-display{flex-direction:column;text-align:center}.stats-grid{flex-wrap:wrap}.stat-box{flex:1 1 calc(50% - .4rem)}.form-group input,.form-group select{padding:.65rem;font-size:.95rem}.checkbox-group{padding:.6rem .85rem}.checkbox-group label{font-size:.9rem}.torneos-section .section-header,.torneos-section .empty-message{padding-left:1.25rem;padding-right:1.25rem}}.vista-general{width:100%}.formulario-edicion{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.formulario-edicion fieldset{border:2px solid var(--color-beige-oscuro);border-radius:8px;padding:20px;margin-bottom:25px;background:linear-gradient(135deg,#FFFFFF,var(--color-fondo-principal))}.formulario-edicion legend{font-size:1.2em;font-weight:700;color:var(--color-verde-oscuro);padding:0 10px}.formulario-edicion label{display:block;margin-top:15px;margin-bottom:5px;font-weight:600;color:var(--color-verde-oscuro)}.formulario-edicion input,.formulario-edicion select,.formulario-edicion textarea{width:100%;padding:10px;border:2px solid var(--color-beige-oscuro);border-radius:8px;font-size:1em;transition:all .3s ease;background:#fff}.formulario-edicion input:focus,.formulario-edicion select:focus,.formulario-edicion textarea:focus{outline:none;border-color:var(--color-verde-claro);box-shadow:0 0 0 3px #8bae6633}.formulario-edicion input:disabled,.formulario-edicion select:disabled{background:linear-gradient(135deg,#ecf0f1,#bdc3c7);cursor:not-allowed}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:15px}.form-group{display:flex;flex-direction:column}.form-group small{font-size:.85em;color:#666;margin-top:5px}.seccion-organizadores{background:var(--card-bg);padding:20px;border-radius:8px;margin-bottom:20px}.seccion-organizadores h2{margin-bottom:20px;color:var(--text-primary)}.organizadores-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.organizador-card{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;padding:15px;display:flex;align-items:center;gap:15px;transition:all .3s ease}.organizador-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.organizador-avatar{font-size:2.5rem;min-width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--card-bg);border-radius:50%;border:2px solid var(--border-color)}.organizador-datos{flex:1}.organizador-datos h3{margin:0 0 5px;font-size:1.1rem;color:var(--text-primary);display:flex;align-items:center;gap:10px}.badge-creador{background:linear-gradient(135deg,gold,#ffed4e);color:#333;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:700;text-transform:uppercase}.organizador-email-display{margin:5px 0;color:var(--text-secondary);font-size:.9rem}.organizador-rol-display{margin:5px 0 0;color:var(--text-secondary);font-size:.85rem;font-style:italic}.invitaciones-pendientes-vista{background:var(--warning-light, #fff3cd);border:1px solid var(--warning, #ffc107);border-radius:8px;padding:15px}.invitaciones-pendientes-vista h3{margin:0 0 15px;color:var(--text-primary)}.invitaciones-list{display:flex;flex-direction:column;gap:10px}.invitacion-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border-radius:6px;border:1px solid var(--border-color)}.fecha-invitacion{color:var(--text-secondary);font-size:.85rem}.organizadores-section{margin-bottom:20px}.organizadores-section h4{margin:0 0 15px;color:var(--text-primary);font-size:1rem}.organizadores-list{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.organizador-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;transition:all .2s ease}.organizador-item:hover{background:var(--card-bg)}.organizador-item.pendiente{background:var(--warning-light, #fff3cd);border-color:var(--warning, #ffc107)}.organizador-info{display:flex;flex-direction:column;gap:5px;flex:1}.organizador-nombre{font-weight:700;color:var(--text-primary);font-size:1rem}.organizador-email{color:var(--text-secondary);font-size:.9rem}.organizador-rol{color:var(--text-secondary);font-size:.85rem;font-style:italic}.organizador-fecha{color:var(--text-secondary);font-size:.85rem}.btn-danger-small{background:var(--danger, #dc3545);color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .3s ease}.btn-danger-small:disabled{opacity:.6;cursor:not-allowed}.agregar-organizador-form{background:var(--success-light, #d4edda);border:1px solid var(--success, #28a745);border-radius:8px;padding:15px}.agregar-organizador-form h4{margin:0 0 15px;color:var(--text-primary);font-size:1rem}.input-email-organizador{flex:1;padding:10px;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.input-email-organizador:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}@media(max-width:768px){.organizadores-grid{grid-template-columns:1fr}.organizador-card{flex-direction:column;text-align:center}.organizador-datos h3{flex-direction:column;gap:5px}.form-row{flex-direction:column}.input-email-organizador{width:100%}}.epocas-seleccionadas{margin-top:15px;padding:15px;border:2px solid var(--color-beige-oscuro);border-radius:8px;background:linear-gradient(135deg,var(--color-fondo-principal),#FFFFFF)}.epocas-seleccionadas strong{display:block;margin-bottom:10px;color:var(--color-verde-oscuro)}.epocas-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.epoca-tag{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(135deg,var(--color-verde-claro),var(--color-verde-oscuro));color:#fff;border-radius:20px;font-size:.9rem;font-weight:600;box-shadow:0 2px 4px #6281414d}.btn-remove-epoca{background:#ffffff4d;border:none;color:#fff;cursor:pointer;font-size:1.2rem;padding:0;line-height:1;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-remove-epoca:hover{background:var(--color-error);transform:scale(1.1)}.info-text{color:#666;font-size:.9rem;margin-top:10px;font-style:italic}.error-text{color:var(--color-error);font-size:.9rem;margin-top:5px;font-weight:600}.seccion-info-torneo,.seccion-estado-control,.seccion-rondas,.seccion-bases{background:#fff;padding:25px;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #0000001a}.seccion-info-torneo h2,.seccion-estado-control h2,.seccion-rondas h2,.seccion-bases h2{margin:0;color:var(--color-verde-oscuro);font-size:1.5em}.section-header-inline{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid var(--color-beige);gap:20px}.section-header-inline h2{margin:0;padding:0;border:none}.botones-accion-grupo{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.botones-accion-grupo button{white-space:nowrap;padding:8px 16px;font-size:.9em;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #00000026}.botones-accion-grupo button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #0003}.botones-accion-grupo button:disabled{opacity:.6;cursor:not-allowed;transform:none}.info-torneo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.info-torneo-grid .info-item{padding:18px;background:linear-gradient(135deg,var(--color-fondo-principal),#FFFFFF);border-radius:10px;border-left:5px solid var(--color-verde-claro);box-shadow:0 2px 6px #0000000d;transition:all .3s ease}.info-torneo-grid .info-item:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.info-torneo-grid .info-item label{display:block;font-weight:700;color:var(--color-verde-oscuro);margin-bottom:8px;font-size:.9em;text-transform:uppercase;letter-spacing:.5px}.info-torneo-grid .info-item p,.info-torneo-grid .info-item span{margin:0;font-size:1em;color:var(--color-texto-principal);font-weight:600}.info-torneo-grid .info-item .info-item-destacado{display:block;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:10px 15px;border-radius:8px;margin-bottom:8px;font-size:1em;font-weight:700;box-shadow:0 2px 4px #e67e224d}.info-torneo-grid .info-item .info-item-secundario{display:block;background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));color:var(--color-verde-oscuro);padding:8px 12px;border-radius:6px;font-size:.85em;font-style:italic;margin-top:8px}.info-torneo-grid .info-item>span:not(:last-child){margin-bottom:8px}.rondas-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.ronda-item{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border-radius:8px;box-shadow:0 2px 8px #6281414d;transition:transform .3s ease;gap:15px}.ronda-item:hover{transform:translate(5px)}.ronda-numero{font-weight:700;font-size:1.05em;color:#fff;flex-shrink:0}.partidas-container{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;flex:1}.ronda-escenario{font-size:1em;font-weight:600;color:#fff;background:#fff3;padding:8px 15px;border-radius:6px;border:1px solid rgba(255,255,255,.3)}.ronda-escenario-equipos{display:inline-block;background:#fff3;padding:6px 12px;border-radius:6px;font-size:.9em;font-weight:500;color:#fff;border:1px solid rgba(255,255,255,.3);transition:all .3s ease}.ronda-escenario-equipos:hover{background:#ffffff4d;transform:scale(1.05)}.bases-existentes{background:linear-gradient(135deg,#d5f4e6,#abebc6);padding:20px;border-radius:8px;border:2px solid var(--color-exito);border-left:4px solid var(--color-exito);margin-bottom:20px;box-shadow:0 2px 8px #27ae6033}.bases-existentes p{margin:0 0 15px;font-size:1.05em;color:#186a3b;font-weight:600}.pdf-actual{border:2px solid var(--color-exito);background:linear-gradient(135deg,#d5f4e6,#abebc6);padding:15px;border-radius:8px;margin-bottom:15px}.pdf-actual p{margin:0 0 10px;color:#186a3b;font-weight:600}.input-file-pdf{padding:10px;border:2px dashed var(--color-verde-claro);border-radius:8px;margin-bottom:15px;width:100%;cursor:pointer;background:linear-gradient(135deg,var(--color-fondo-principal),#FFFFFF);transition:all .3s ease}.input-file-pdf:hover{background:linear-gradient(135deg,var(--color-beige),var(--color-fondo-principal));border-color:var(--color-verde-oscuro)}.advertencia-no-editable{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196F3;border-left:4px solid #2196F3;padding:15px 20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #2196f333}.advertencia-no-editable strong{display:block;font-size:1.05em;margin-bottom:8px;color:#1976d2}.advertencia-no-editable p{margin:0;font-size:.95em;color:#0d47a1}.advertencia-finalizado{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid var(--color-naranja);border-left:4px solid var(--color-naranja);padding:15px 20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #e67e2233}.advertencia-finalizado strong{display:block;font-size:1.05em;margin-bottom:8px;color:var(--color-naranja-hover)}.advertencia-finalizado p{margin:0;font-size:.95em;color:var(--color-naranja-hover)}.button-group{display:flex;gap:15px;margin-top:30px;justify-content:flex-start;flex-wrap:wrap}.button-group button{padding:12px 24px;font-size:1em}.mt-10{margin-top:10px}.mb-20{margin-bottom:20px}.success-message{background:linear-gradient(135deg,#d5f4e6,#abebc6);color:#186a3b;padding:12px 16px;border-radius:6px;border-left:4px solid var(--color-exito);font-weight:600}.vista-general .empty-message{background:#fff;padding:40px;border-radius:12px;text-align:center;color:#666;border:2px dashed var(--color-beige-oscuro)}.vista-general .error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:var(--color-error);padding:15px 20px;border-radius:8px;border-left:4px solid var(--color-error);margin-bottom:20px;font-weight:600;box-shadow:0 2px 8px #e74c3c33}@media(max-width:1024px){.section-header-inline{flex-direction:column;align-items:stretch;gap:15px}.botones-accion-grupo{justify-content:flex-start}}@media(max-width:768px){.formulario-edicion{padding:20px}.info-torneo-grid,.form-row{grid-template-columns:1fr}.button-group{flex-direction:column}.button-group button{width:100%}.botones-accion-grupo{flex-direction:column;width:100%}.botones-accion-grupo button{width:100%}.ronda-item{flex-direction:column;align-items:flex-start}.partidas-container{width:100%;justify-content:flex-start}.section-header-inline h2{font-size:1.3em}}@media(max-width:480px){.seccion-info-torneo,.seccion-rondas,.seccion-bases{padding:15px}.botones-accion-grupo button{font-size:.85em;padding:7px 14px}}.cartel-vista{margin:1.5rem 0;text-align:center}.cartel-vista h3{margin-bottom:1rem;color:var(--color-verde-oscuro)}.cartel-imagen-vista{width:100%!important;max-width:500px!important;height:auto!important;border-radius:10px;box-shadow:0 4px 15px #0003;display:block;margin:0 auto}@media(max-width:768px){.cartel-imagen-vista{max-height:300px}}.add-participants-container{max-width:900px;margin:20px auto;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.add-participants-page{max-width:100%;margin:0;box-shadow:none;border-radius:0}.loading-container{text-align:center;padding:40px 20px;font-size:18px;color:#666}.loading-text{color:#3a7ca5;font-style:italic;margin:10px 0}.seleccion-torneo-section{background:#f8f9fa;padding:25px;border-radius:8px;margin-bottom:25px;border:2px solid #e0e0e0}.seleccion-torneo-section .form-group{margin-bottom:20px}.seleccion-torneo-section .form-group:last-child{margin-bottom:0}.seleccion-torneo-section label{font-size:16px;font-weight:600;color:#2f5f7f;margin-bottom:10px;display:block}.tournament-info{background:#f0f8ff;padding:20px;border-radius:8px;margin-bottom:25px;border-left:4px solid #3a7ca5}.tournament-info h3{margin:0 0 10px;color:#2f5f7f;font-size:20px}.tournament-info p{margin:5px 0 0;color:#555;font-size:14px}.tournament-info strong{color:#2f5f7f;font-weight:600}.input-con-badge{position:relative;display:flex;align-items:center;gap:10px}.badge-registro{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0}.badge-registro.registrado{background-color:#d1fae5;color:#065f46;border:1px solid #34d399}.badge-registro.pendiente{background-color:#dbeafe;color:#1e40af;border:1px solid #60a5fa}.input-success{border-color:#34d399!important;background-color:#f0fdf4}.input-warning{border-color:#fbbf24!important;background-color:#fffbeb}.input-error{border-color:#f87171!important;background-color:#fef2f2}.add-participants-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #3a7ca5}.add-participants-header h2{color:#2f5f7f;margin:0;font-size:28px}.close-btn{background:none;border:none;font-size:28px;color:#666;cursor:pointer;padding:5px 10px;transition:color .3s ease}.close-btn:hover{color:#d32f2f}.error-message{background-color:#ffebee;color:#c62828;padding:12px 16px;border-radius:4px;margin-bottom:20px;border-left:4px solid #c62828}.success-message{background-color:#e8f5e9;color:#2e7d32;padding:12px 16px;border-radius:4px;margin-bottom:20px;border-left:4px solid #2e7d32}.add-participants-form{display:grid;flex-direction:row;gap:25px}.form-group label{font-weight:600;color:#2f5f7f;font-size:14px}.form-group input,.form-group select{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3a7ca5;box-shadow:0 0 0 3px #3a7ca51a}.radio-group{display:flex;gap:20px;padding:10px 0}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 16px;border:2px solid #ddd;border-radius:4px;transition:all .3s ease}.radio-label:hover{border-color:#3a7ca5;background-color:#f5f9fc}.radio-label input[type=radio]{cursor:pointer;width:18px;height:18px}.radio-label input[type=radio]:checked+span{color:#3a7ca5;font-weight:600}.radio-label span{font-size:14px;color:#333}.individual-form,.team-form{background:#f8fafc;padding:25px;border-radius:8px;border:1px solid #e0e0e0}.individual-form h3,.team-form h3{color:#2f5f7f;margin:0 0 20px;font-size:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.members-section{margin-top:20px}.members-section h5{color:#2f5f7f;margin:0 0 20px;font-size:18px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.members-header h4{color:#2f5f7f;margin:0;font-size:18px}.add-member-btn{background-color:#3a7ca5;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .3s ease}.add-member-btn:hover{background-color:#2f5f7f}.member-card{background:#fff;padding:20px;border-radius:8px;margin-bottom:15px;border:1px solid #ddd;box-shadow:0 1px 3px #0000000d;display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:start}.member-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.member-card-header h5{color:#2f5f7f;margin:0;font-size:16px}.member-card-header h6{color:#2f5f7f;margin:0;font-size:15px;font-weight:600}.member-card-actions{display:flex;align-items:center;gap:15px}.capitan-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 12px;background-color:#f0f8ff;border-radius:4px;border:1px solid #3a7ca5;transition:all .3s ease}.capitan-checkbox:hover{background-color:#e0f2ff}.capitan-checkbox input[type=radio]{cursor:pointer;width:16px;height:16px}.capitan-checkbox span{font-size:13px;font-weight:600;color:#3a7ca5}.remove-member-btn{background-color:#d32f2f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:600;transition:background-color .3s ease}.remove-member-btn:hover{background-color:#b71c1c}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.cancel-btn{background-color:#757575;color:#fff;border:none;padding:12px 30px;border-radius:4px;cursor:pointer;font-size:16px;font-weight:600;transition:background-color .3s ease}.cancel-btn:hover{background-color:#616161}.submit-btn{background-color:#3a7ca5;color:#fff;border:none;padding:12px 30px;border-radius:4px;cursor:pointer;font-size:16px;font-weight:600;transition:background-color .3s ease}.submit-btn:hover:not(:disabled){background-color:#2f5f7f}.submit-btn:disabled{background-color:#b0bec5;cursor:not-allowed}@media(max-width:768px){.add-participants-container{padding:20px;margin:10px}.add-participants-header h2{font-size:22px}.form-row{grid-template-columns:1fr}.radio-group{flex-direction:column;gap:10px}.members-header{flex-direction:column;gap:15px;align-items:flex-start}.add-member-btn{width:100%}.member-card-actions{flex-direction:column;align-items:flex-start;gap:10px}.capitan-checkbox,.remove-member-btn{width:100%;justify-content:center}.form-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}}@media(max-width:480px){.add-participants-container{padding:15px}.add-participants-header h2{font-size:20px}.individual-form,.team-form,.member-card{padding:15px}}:root{--color-verde-oscuro: #2E7D32;--color-verde-claro: #4CAF50;--color-naranja: #E67E22;--color-naranja-hover: #D35400;--color-beige: #F5E6D3;--color-beige-oscuro: #D4C5B0;--color-fondo-principal: #FAF8F5;--color-texto-principal: #333333;--color-exito: #27AE60;--color-error: #E74C3C}.vista-jugadores{width:100%;padding:1rem}.vista-jugadores h2{margin-bottom:25px;color:var(--color-verde-oscuro)}.header-jugadores-con-boton{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px;flex-wrap:wrap}.header-jugadores-con-boton h2{margin:0;color:var(--color-verde-oscuro);flex:1}.btn-primary{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1em;font-weight:600;transition:all .3s ease;box-shadow:0 2px 6px #2e7d324d;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2e7d3266}.btn-secondary-small{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.9em;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #e67e224d;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-secondary-small:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #e67e2266}.btn-secondary-small:disabled{opacity:.6;cursor:not-allowed;transform:none}.tabla-jugadores-container{overflow-x:auto;border-radius:12px;box-shadow:0 4px 12px #0000001a}.tabla-jugadores-detalle{width:100%;border-collapse:collapse;background:#fff;min-width:900px}.tabla-jugadores-detalle thead{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.tabla-jugadores-detalle th{padding:15px;text-align:left;font-weight:700;font-size:1em;text-transform:uppercase;letter-spacing:.5px}.tabla-jugadores-detalle td{padding:12px 15px;border-bottom:1px solid var(--color-beige);color:var(--color-texto-principal)}.tabla-jugadores-detalle tbody tr{transition:all .3s ease}.tabla-jugadores-detalle tbody tr:hover{background:linear-gradient(135deg,var(--color-beige) 0%,var(--color-fondo-principal) 100%);transform:scale(1.01)}.tabla-jugadores-detalle tbody tr:last-child td{border-bottom:none}.nombre-jugador-completo{font-size:1.05em;font-weight:600;color:var(--color-verde-oscuro)}.alias{font-style:italic;color:#666;font-size:.9em;margin:.25rem 0}.miembro-header .alias{margin-left:.5rem;font-size:.85em}.btn-pago{padding:8px 16px;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.btn-pago:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #0003}.btn-pago:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-pago.pagado{background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff;box-shadow:0 2px 5px #27ae604d}.btn-pago.pagado:hover:not(:disabled){box-shadow:0 4px 10px #27ae6066}.btn-pago.pendiente{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;box-shadow:0 2px 5px #e67e224d}.btn-pago.pendiente:hover:not(:disabled){box-shadow:0 4px 10px #e67e2266}.btn-reenvio-individual{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85em;font-weight:600;transition:all .3s ease;margin-right:8px;box-shadow:0 2px 4px #3498db4d;white-space:nowrap}.btn-reenvio-individual:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #3498db66}.btn-reenvio-individual:disabled{opacity:.6;cursor:not-allowed}.btn-danger-small{background:linear-gradient(135deg,var(--color-error),#C0392B);color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.9em;transition:all .3s ease;font-weight:600;box-shadow:0 2px 4px #e74c3c4d;white-space:nowrap}.btn-danger-small:hover{transform:scale(1.05);box-shadow:0 4px 8px #e74c3c66}.grid-equipos-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem;margin-top:2rem}.card-equipo-admin{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #0000001a;border:2px solid var(--color-beige);transition:all .3s ease}.card-equipo-admin:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000026;border-color:var(--color-verde-claro)}.equipo-header-admin{margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--color-beige)}.equipo-header-admin h3{margin:0 0 .5rem;color:var(--color-verde-oscuro);font-size:1.5rem}.badge-capitan-admin{display:inline-block;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:.4rem .8rem;border-radius:20px;font-size:.9rem;font-weight:600;box-shadow:0 2px 4px #e67e224d}.equipo-miembros-admin h4{color:var(--color-verde-oscuro);margin-bottom:.75rem;font-size:1.1rem}.lista-miembros-admin{list-style:none;padding:0;margin:0}.miembro-item-admin{padding:1rem;margin-bottom:.75rem;background:linear-gradient(135deg,var(--color-fondo-principal),#FFFFFF);border-radius:8px;display:flex;flex-direction:column;gap:.5rem;border-left:4px solid var(--color-verde-claro)}.miembro-header-admin{display:flex;flex-direction:column;gap:.25rem}.miembro-nombre-admin{font-weight:600;color:var(--color-verde-oscuro);font-size:1rem}.miembro-epoca-banda-admin{font-size:.9rem;color:#666}.miembro-composicion-admin{margin-top:.5rem;padding:.75rem;background:#fff;border-radius:6px;border-left:3px solid var(--color-naranja)}.puntos-total-admin{margin-bottom:.5rem;font-size:.95rem;color:var(--color-naranja);font-weight:600}.puntos-detalle-admin{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.85rem;color:var(--color-texto-principal)}.puntos-detalle-admin span{background:linear-gradient(135deg,var(--color-beige),var(--color-fondo-principal));padding:.25rem .5rem;border-radius:4px;font-weight:600}.detalle-mercenarios-mini-admin{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-beige);font-size:.85rem;font-style:italic;color:#666}.sin-miembros-admin{text-align:center;padding:1rem;color:#999;font-style:italic}.equipo-acciones-admin{margin-top:1rem;padding-top:1rem;border-top:2px solid var(--color-beige);display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.vista-jugadores .empty-message{background:#fff;padding:60px 20px;border-radius:12px;text-align:center;color:#666;font-size:1.1em;border:2px dashed var(--color-beige-oscuro)}.vista-jugadores .empty-message p{margin:0 0 20px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content-anadir{background:#fff;border-radius:12px;padding:2rem;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;position:relative}.modal-content-anadir::-webkit-scrollbar{width:8px}.modal-content-anadir::-webkit-scrollbar-track{background:var(--color-fondo-principal);border-radius:4px}.modal-content-anadir::-webkit-scrollbar-thumb{background:var(--color-verde-claro);border-radius:4px}.modal-content-anadir::-webkit-scrollbar-thumb:hover{background:var(--color-verde-oscuro)}@media(max-width:768px){.vista-jugadores{padding:.5rem}.header-jugadores-con-boton{flex-direction:column;align-items:stretch;gap:10px}.header-jugadores-con-boton h2{text-align:center;margin-bottom:10px}.btn-primary,.btn-secondary-small{width:100%;justify-content:center}.tabla-jugadores-container{font-size:.9em}.grid-equipos-admin{grid-template-columns:1fr;gap:1.5rem}.equipo-acciones-admin{flex-direction:column}.equipo-acciones-admin button{width:100%}.modal-content-anadir{padding:1.5rem;width:95%}.puntos-detalle-admin{flex-direction:column;gap:.5rem}.puntos-detalle-admin span{display:block}}@media(max-width:480px){.vista-jugadores{padding:.25rem}.header-jugadores-con-boton{gap:8px}.btn-primary,.btn-secondary-small{padding:10px 16px;font-size:.9em}.tabla-jugadores-detalle{font-size:.85em;min-width:800px}.tabla-jugadores-detalle th,.tabla-jugadores-detalle td{padding:10px 8px}.nombre-jugador-completo{font-size:.95em}.btn-pago{padding:6px 12px;font-size:.85em}.btn-danger-small,.btn-reenvio-individual{padding:5px 10px;font-size:.8em}.card-equipo-admin{padding:1rem}.equipo-header-admin h3{font-size:1.2rem}.badge-capitan-admin{font-size:.8rem;padding:.3rem .6rem}.modal-content-anadir{padding:1rem;border-radius:8px;width:98%}.grid-equipos-admin{gap:1rem}.miembro-item-admin{padding:.75rem}.miembro-composicion-admin{padding:.5rem}.empty-message{padding:40px 15px;font-size:1em}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vista-jugadores{animation:fadeIn .3s ease-in-out}.btn-primary.loading,.btn-secondary-small.loading,.btn-pago.loading{position:relative;pointer-events:none}.btn-primary.loading:after,.btn-secondary-small.loading:after,.btn-pago.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.btn-primary:focus,.btn-secondary-small:focus,.btn-pago:focus,.btn-danger-small:focus,.btn-reenvio-individual:focus{outline:3px solid rgba(46,125,50,.5);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media print{.btn-primary,.btn-secondary-small,.btn-danger-small,.btn-reenvio-individual,.equipo-acciones-admin{display:none}.vista-jugadores{padding:0}.tabla-jugadores-detalle{box-shadow:none}.card-equipo-admin{page-break-inside:avoid;box-shadow:none;border:1px solid #ccc}}.lista-actions{display:flex;align-items:center;gap:8px;justify-content:center}.btn-ver-lista{padding:4px 8px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;transition:all .3s ease}.btn-ver-lista:hover:not(:disabled){background:#45a049;transform:scale(1.1)}.btn-ver-lista:disabled{background:#ccc;cursor:not-allowed}.badge-tiene-lista{background:#e8f5e9;color:#2e7d32;padding:4px 8px;border-radius:4px;font-size:.85em;font-weight:500}.badge-sin-lista{background:#ffebee;color:#c62828;padding:4px 8px;border-radius:4px;font-size:.85em;font-weight:500}.warlord-info-admin{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.badge-warlord{background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:700;box-shadow:0 2px 4px #e91e634d}.badge-banda-desbloqueada{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:700;box-shadow:0 2px 4px #9c27b04d}.coste-warlord-info{color:#666;margin-left:.5rem;font-size:.85rem}.banda-desbloqueada-celda{font-size:.85em;color:#9c27b0;margin-top:4px;font-weight:600}.banda-desbloqueada-inline{color:#9c27b0;margin-left:5px;font-weight:600}.unidad-especial{color:#ff5722;font-weight:600}.unidad-legendaria-especial{background:linear-gradient(135deg,#ff6b00,#ff8c00);color:#020202;padding:.25rem .75rem;border-radius:8px;font-weight:700;display:inline-block;box-shadow:0 2px 4px #ff6b004d;animation:pulse-legendary 2s ease-in-out infinite}@keyframes pulse-legendary{0%,to{transform:scale(1);box-shadow:0 2px 4px #ff6b004d}50%{transform:scale(1.05);box-shadow:0 4px 8px #ff6b0080}}.unidad-warlord-desbloqueada{color:#9c27b0;font-weight:700;border:1px solid #9c27b0;padding:2px 6px;border-radius:4px;background-color:#f3e5f5;display:inline-block;margin:2px}.puntos-detalle-admin span{margin-right:.75rem;margin-bottom:.25rem;display:inline-block}.opciones-banda-mini-admin{margin-top:.5rem;display:flex;gap:.5rem;flex-wrap:wrap}.badge-opcion{background-color:#e3f2fd;color:#1976d2;padding:.25rem .5rem;border-radius:6px;font-size:.8rem;font-weight:500}.detalle-mercenarios-mini-admin{margin-top:.5rem;padding:.5rem;background-color:#fff3e0;border-left:3px solid #ff9800;border-radius:4px;font-size:.85rem;color:#e65100}@media(max-width:768px){.warlord-info-admin{flex-direction:column}.badge-warlord,.badge-banda-desbloqueada{width:100%;text-align:center}}.modal-header.confirmado{background:linear-gradient(135deg,var(--color-exito),#1E8449)}.btn-close.confirmado{background:#fff;color:var(--color-exito)}.alerta-confirmado{background:linear-gradient(135deg,#d5f4e6,#abebc6);border:2px solid var(--color-exito);border-left:4px solid var(--color-exito);padding:15px;border-radius:8px;margin-bottom:20px;text-align:center;box-shadow:0 2px 8px #27ae6033}.alerta-confirmado p{margin:0;font-weight:700;color:#186a3b}.nota-no-editable{margin-top:5px;font-size:.9em;color:#666;font-weight:400}.alerta-pendiente{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid var(--color-naranja);border-left:4px solid var(--color-naranja);padding:10px 15px;border-radius:8px;margin-bottom:15px;text-align:center;box-shadow:0 2px 8px #e67e2233}.alerta-pendiente p{margin:0;font-size:.9em;color:var(--color-naranja-hover);font-weight:600}.puntos-bye{font-size:1.2em;font-weight:700;color:var(--color-naranja)}.ronda-info{margin:10px 0 0;font-size:.9em;color:#666}.info-bye-explicacion{margin-top:20px;padding:15px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:8px;text-align:center;border-left:4px solid #2196F3}.info-bye-explicacion p{margin:0;font-size:.95em;color:#1976d2}.nota-organizador{margin-top:10px;font-size:.9em;color:#666}.btn-desconfirmar{padding:10px 20px;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #e67e224d}.btn-desconfirmar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #e67e2266}.btn-desconfirmar:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none}.btn-cerrar{padding:10px 20px;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #2196f34d}.btn-cerrar:hover{transform:translateY(-2px);box-shadow:0 4px 10px #2196f366}.btn-confirmar-bye{padding:10px 20px;background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #27ae604d}.btn-confirmar-bye:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #27ae6066}.btn-confirmar-bye:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed}.resultados-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:start}.jugador-stats{background:linear-gradient(135deg,var(--color-fondo-principal),#FFFFFF);padding:15px;border-radius:8px;border-left:4px solid var(--color-verde-claro)}.jugador-stats h4{text-align:center;margin-bottom:15px;color:var(--color-verde-oscuro)}.jugador-stats p{margin:8px 0;color:var(--color-texto-principal)}.seccion-primer-jugador{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #2196F3}.seccion-primer-jugador h4{margin:0 0 10px;color:#1976d2}.primer-jugador-seleccionado{background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff;padding:10px;border-radius:8px;text-align:center;box-shadow:0 2px 4px #27ae604d}.primer-jugador-seleccionado p{margin:0;color:#fff}.instruccion{margin:0 0 10px;font-size:.9em;color:#0d47a1}.botones-primer-jugador{display:flex;gap:10px}.btn-seleccionar-jugador{flex:1;padding:10px;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #2196f34d}.btn-seleccionar-jugador:hover{transform:translateY(-2px);box-shadow:0 4px 8px #2196f366}.modal-edicion{max-width:800px}.formulario-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:start}.botones-accion{display:flex;gap:10px}.btn-confirmar-definitivo{padding:10px 20px;background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #27ae604d}.btn-confirmar-definitivo:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #27ae6066}.btn-confirmar-definitivo:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none}.btn-guardar{padding:10px 20px;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 2px 5px #2196f34d}.btn-guardar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #2196f366}.btn-guardar:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none}.info-equipos{background-color:#e3f2fd;padding:10px;border-radius:5px;margin-top:10px}.info-jugador-equipo{font-size:.95em;color:#555;margin:5px 0}.info-extra{font-size:.9em;color:#666;margin:3px 0}.jugador-equipo{font-size:.95em;color:#555;font-style:italic}.nota-equipos{display:block;font-size:.85em;color:#666;margin-top:5px;font-style:italic}@media(max-width:768px){.resultados-grid,.formulario-grid{grid-template-columns:1fr}.vs-divider{transform:rotate(90deg)}.botones-accion{flex-direction:column;width:100%}.botones-accion button{width:100%}}.seccion-sin-dados{background:linear-gradient(135deg,#ffebee,#ffcdd2);padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #E53935;box-shadow:0 2px 4px #e5393533}.seccion-sin-dados h4{margin:0 0 10px;color:#c62828;font-size:1em}.botones-sin-dados{display:flex;gap:10px;margin-top:10px}.btn-sin-dados{flex:1;padding:10px;background:linear-gradient(135deg,#ef5350,#e53935);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9em;transition:all .3s ease;box-shadow:0 2px 4px #e539354d}.btn-sin-dados:hover{transform:translateY(-2px);box-shadow:0 4px 8px #e5393566;background:linear-gradient(135deg,#f44336,#d32f2f)}.info-sin-dados{margin-top:10px;background:linear-gradient(135deg,#e53935,#c62828);color:#fff;padding:10px;border-radius:8px;text-align:center;font-weight:600;font-size:.95em;box-shadow:0 2px 4px #e539354d}.info-sin-dados p{margin:0;color:#fff}.jugador-resultado{background:linear-gradient(135deg,#f5f5f5,#fff);padding:15px;border-radius:8px;border-left:4px solid var(--color-verde-claro);box-shadow:0 2px 4px #0000000d}.jugador-resultado h4{text-align:center;margin:0 0 15px;color:var(--color-verde-oscuro);font-size:1.1em;padding-bottom:10px;border-bottom:2px solid var(--color-verde-claro)}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;color:var(--color-texto-principal);font-weight:600;font-size:.9em}.form-group input[type=number]{width:100%;padding:10px;border:2px solid #E0E0E0;border-radius:6px;font-size:1em;transition:all .3s ease;background:#fff;box-sizing:border-box}.form-group input[type=number]:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.form-group input[type=number]:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.form-group.checkbox{display:flex;align-items:center;margin-top:15px;padding:10px;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-radius:6px;border-left:3px solid var(--color-naranja)}.form-group.checkbox label{display:flex;align-items:center;margin:0;cursor:pointer;font-weight:500;color:var(--color-texto-principal)}.form-group.checkbox input[type=checkbox]{width:20px;height:20px;margin-right:10px;cursor:pointer;accent-color:var(--color-naranja)}.resultado-preview{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);padding:20px;border-radius:10px;margin-top:20px;border-left:4px solid var(--color-exito);box-shadow:0 3px 8px #27ae6033;text-align:center}.resultado-preview h4{margin:0 0 15px;color:#1b5e20;font-size:1.1em}.resultado-badge{background:#fff;padding:15px 20px;border-radius:8px;font-size:1.1em;font-weight:700;color:#1b5e20;box-shadow:0 2px 6px #0000001a;margin-bottom:15px;border:2px solid var(--color-exito)}.nota-calculo{margin:10px 0 0;font-size:.85em;color:#2e7d32;font-style:italic;background:#ffffff80;padding:8px 12px;border-radius:6px}.error-message{background:linear-gradient(135deg,#ffebee,#ffcdd2);border:2px solid #E53935;border-left:4px solid #C62828;padding:12px 15px;border-radius:8px;margin-bottom:15px;box-shadow:0 2px 4px #e5393533}.error-message p{margin:0;color:#c62828;font-weight:600;font-size:.95em}.btn-limpiar-seleccion{margin-top:10px;padding:8px 15px;background:#fff;color:#2196f3;border:2px solid #2196F3;border-radius:6px;cursor:pointer;font-weight:600;font-size:.85em;transition:all .3s ease;width:100%}.btn-limpiar-seleccion:hover{background:#2196f3;color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px #2196f34d}.btn-limpiar-sin-dados{margin-top:10px;padding:8px 15px;background:#fff;color:#e53935;border:2px solid #E53935;border-radius:6px;cursor:pointer;font-weight:600;font-size:.85em;transition:all .3s ease;width:100%}.btn-limpiar-sin-dados:hover{background:#e53935;color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px #e539354d}.condiciones-group{background:linear-gradient(135deg,#f3e5f5,#e1bee7);padding:12px;border-radius:8px;border-left:4px solid #8E24AA;margin-top:10px}.condiciones-titulo{display:flex!important;justify-content:space-between;align-items:center;margin-bottom:10px!important;color:#6a1b9a!important;font-weight:700!important;font-size:.9em!important}.condiciones-contador{background:#8e24aa;color:#fff;padding:2px 8px;border-radius:12px;font-size:.85em;font-weight:700}.checkbox-label{display:flex;align-items:center;gap:8px;padding:7px 10px;margin-bottom:5px;background:#fff;border-radius:6px;cursor:pointer;font-size:.88em;color:#4a148c;font-weight:500;transition:all .2s ease;border:1px solid transparent}.checkbox-label:hover{background:#f8ebf8;border-color:#ce93d8;transform:translate(2px)}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#8E24AA;flex-shrink:0}.checkbox-label:has(input:checked){background:linear-gradient(135deg,#e8d5f5,#d7bde2);border-color:#8e24aa;font-weight:600}.partida-info{background:linear-gradient(135deg,#e8eaf6,#c5cae9);padding:12px 15px;border-radius:8px;margin-bottom:15px;border-left:4px solid #3F51B5}.partida-info p{margin:4px 0;font-size:.9em;color:#1a237e}.tipo-escenario{font-size:.85em!important;color:#283593!important;font-style:italic;margin-top:4px!important}.leyenda-condiciones{background:linear-gradient(135deg,#ede7f6,#d1c4e9);border-radius:10px;padding:15px 20px;margin-top:15px;border-left:4px solid #7B1FA2}.leyenda-condiciones h4{margin:0 0 12px;color:#4a148c;font-size:1.3em}.leyenda-grid{display:flex;flex-direction:column;gap:8px}.leyenda-item{display:flex;align-items:flex-start;gap:12px;background:#fff;padding:10px 12px;border-radius:8px;box-shadow:0 1px 3px #00000014}.leyenda-numero{background:#7b1fa2;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85em;flex-shrink:0}.leyenda-texto strong{display:block;color:#4a148c;font-size:1.1em;margin-bottom:2px}.leyenda-texto p{margin:0;font-size:1em;color:#555;line-height:1.4}.modal-edicion-emp{background:#fff;border-radius:12px;padding:0;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.botones-edicion{position:absolute;top:10px;right:10px;display:flex;gap:5px;z-index:10}.btn-editar-small,.btn-eliminar-small{padding:5px 10px;border:none;border-radius:5px;cursor:pointer;font-size:1em;transition:all .3s ease}.btn-editar-small{background:#2196f3;color:#fff}.btn-editar-small:hover{background:#1976d2;transform:scale(1.1)}.btn-eliminar-small{background:#f44336;color:#fff}.btn-eliminar-small:hover{background:#d32f2f;transform:scale(1.1)}.emparejamiento-card,.enfrentamiento-equipos-preview{position:relative}.vista-emparejamientos{width:100%}.vista-emparejamientos .section-header{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #6281414d}.vista-emparejamientos .section-header>div{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.vista-emparejamientos .section-header h2{margin:0 0 5px;color:#fff}.vista-emparejamientos .section-header p{margin:0;font-size:1.2em;font-weight:700;color:#fff}.vista-emparejamientos .section-header p:last-of-type{font-size:.9em;opacity:.9;margin-top:5px}.vista-emparejamientos .section-header .botones-grupo{display:flex;gap:10px;flex-wrap:wrap}.vista-emparejamientos .section-header button{white-space:nowrap;padding:10px 20px;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.vista-emparejamientos .section-header button:disabled{cursor:not-allowed;opacity:.6}.vista-emparejamientos .alerta-estado{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid var(--color-naranja);padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid var(--color-naranja);box-shadow:0 2px 8px #e67e2233}.vista-emparejamientos .alerta-estado p{margin:0;font-size:1em;font-weight:600;color:var(--color-naranja-hover)}.vista-emparejamientos .info-partidas{padding:15px;border-radius:8px;margin-bottom:20px;border:2px solid;border-left:4px solid}.vista-emparejamientos .info-partidas.completadas{background:linear-gradient(135deg,#d5f4e6,#abebc6);border-color:var(--color-exito);box-shadow:0 2px 8px #27ae6033}.vista-emparejamientos .info-partidas.pendientes{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:var(--color-naranja);box-shadow:0 2px 8px #e67e2233}.vista-emparejamientos .info-partidas p{margin:0;font-size:1em;font-weight:600}.vista-emparejamientos .info-partidas p:last-child{margin-top:5px;font-size:.9em;color:#666;font-weight:400}.vista-emparejamientos .info-box{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196F3;border-left:4px solid #2196F3;padding:15px;border-radius:8px;margin-bottom:15px;box-shadow:0 2px 8px #2196f333}.vista-emparejamientos .info-box p{margin:0;font-weight:600;color:#1976d2}.emparejamientos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin-bottom:30px;width:100%}.emparejamientos-grid.equipos-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.emparejamientos-grid.equipos-layout .enfrentamiento-equipos{margin-bottom:0}.emparejamiento-card{background:#fff;border-radius:14px;padding:24px;position:relative;transition:all .3s ease;box-shadow:0 3px 10px #0000001f;min-width:280px}.emparejamiento-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000002e}.emparejamiento-card.editable{cursor:pointer;border:2px solid var(--color-beige-oscuro)}.emparejamiento-card.editable:hover{border-color:var(--color-verde-claro)}.emparejamiento-card .etiqueta-editar{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;padding:6px 12px;border-radius:5px;font-size:.8em;font-weight:700;box-shadow:0 2px 5px #9c27b04d}.emparejamiento-card .boton-confirmar{position:absolute;top:12px;left:12px;color:#fff;padding:10px 18px;border-radius:7px;font-size:.9em;font-weight:700;cursor:pointer;border:none;transition:all .3s ease}.emparejamiento-card .boton-confirmar.confirmado{background:linear-gradient(135deg,var(--color-exito),#1E8449);box-shadow:0 2px 5px #27ae604d}.emparejamiento-card .boton-confirmar.pendiente{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));box-shadow:0 2px 5px #e67e224d}.emparejamiento-card .boton-confirmar.por-confirmar{background:linear-gradient(135deg,#068cbd,#0606d1);box-shadow:0 2px 5px #ff98004d}.emparejamiento-card .boton-confirmar:hover{transform:scale(1.08);box-shadow:0 4px 10px #00000040}.emparejamiento-card .mesa-numero{padding:12px 18px;border-radius:10px;font-weight:700;margin-bottom:15px;text-align:center;color:#fff;box-shadow:0 3px 6px #0003;font-size:1.1em}.emparejamiento-card .mesa-numero.confirmado{background:linear-gradient(135deg,var(--color-exito),#1E8449)}.emparejamiento-card .mesa-numero.por-confirmar{background:linear-gradient(135deg,#068cbd,#0606d1)}.emparejamiento-card .mesa-numero.pendiente{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover))}.emparejamiento-card .mesa-numero.preview{background:linear-gradient(135deg,#2196f3,#1976d2)}.emparejamiento-card .mesa-numero.con-margen{margin-top:40px}.emparejamiento-card p{margin:8px 0;font-size:1em;line-height:1.6}.emparejamiento-card strong{font-size:1.05em;font-weight:600}.enfrentamiento-equipos{background:#fff;border-radius:16px;margin-bottom:30px;overflow:hidden;box-shadow:0 4px 12px #0000001a;border:2px solid var(--color-beige-oscuro);min-width:320px}.header-equipos{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:20px 25px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;position:relative;z-index:1}.header-equipos h4{margin:0;color:#fff;font-size:1.4em;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.2);flex:1;min-width:200px;word-wrap:break-word}.total-partidas{background:#fff3;padding:8px 18px;border-radius:20px;font-size:.9em;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap}.contenedor-epocas{padding:20px;background:var(--color-fondo-principal);clear:both}.grupo-epoca{background:#fff;border-radius:12px;margin-bottom:20px;overflow:hidden;box-shadow:0 2px 8px #00000014;border:2px solid var(--color-beige);position:relative}.grupo-epoca:last-child{margin-bottom:0}.epoca-header{background:linear-gradient(90deg,var(--color-verde-claro),var(--color-verde-oscuro));padding:15px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:3px solid var(--color-verde-oscuro);flex-wrap:wrap;gap:10px;position:relative;z-index:1}.epoca-badge-grande{color:#fff;font-weight:700;font-size:1.2em;display:flex;align-items:center;gap:8px;flex:1;min-width:150px}.cantidad-partidas{background:#ffffff40;color:#fff;padding:6px 14px;border-radius:12px;font-size:.85em;font-weight:600;white-space:nowrap}.partidas-epoca{padding:15px;display:flex;flex-direction:column;gap:12px;background:var(--color-fondo-principal);clear:both}.partida-individual{background:#fff;padding:15px 20px;border-radius:10px;border-left:4px solid var(--color-verde-claro);box-shadow:0 2px 6px #00000014;display:flex;flex-direction:column;gap:12px;transition:all .3s ease;position:relative}.partida-individual:hover{transform:translate(5px);box-shadow:0 4px 12px #0000001f}.partida-individual-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.numero-partida{background:var(--color-verde-claro);color:#fff;padding:6px 12px;border-radius:12px;font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.jugadores-partida{display:flex;align-items:center;gap:15px;flex:1;min-width:250px}.jugador-info{flex:1;display:flex;flex-direction:column;gap:5px}.jugador-nombre-partida{font-weight:700;color:var(--color-verde-oscuro);font-size:1em;word-wrap:break-word}.jugador-faccion-partida{font-size:.85em;color:#666;font-style:italic}.vs-partida{color:var(--color-verde-claro);font-weight:900;font-size:1.2em;padding:0 10px;flex-shrink:0}.estado-partida{padding:6px 12px;border-radius:12px;font-size:.8em;font-weight:600;white-space:nowrap;flex-shrink:0}.estado-partida.completada{background:linear-gradient(135deg,#d5f4e6,#abebc6);color:var(--color-exito);border:1px solid var(--color-exito)}.estado-partida.pendiente{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:var(--color-naranja-hover);border:1px solid var(--color-naranja)}.enfrentamiento-equipos-preview{background:#fff;border-radius:16px;overflow:hidden;margin-bottom:25px;box-shadow:0 4px 12px #0000001a;border:2px solid var(--color-beige-oscuro)}.header-equipos-preview{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));padding:20px;text-align:center;position:relative;z-index:1}.header-equipos-preview h4{color:#fff;margin:0;font-size:1.4em;text-shadow:1px 1px 2px rgba(0,0,0,.2);word-wrap:break-word}.resumen-equipos-preview{display:grid;grid-template-columns:1fr auto 1fr;gap:25px;padding:25px;background:#fff;align-items:flex-start}.equipo-jugadores-preview{background:var(--color-fondo-principal);padding:20px;border-radius:12px;border:2px solid var(--color-beige)}.equipo-jugadores-preview h5{margin:0 0 15px;color:var(--color-verde-oscuro);font-size:1.1em;border-bottom:3px solid var(--color-verde-claro);padding-bottom:10px;word-wrap:break-word}.lista-jugadores-preview{display:flex;flex-direction:column;gap:10px}.jugador-chip-preview{background:#fff;padding:12px 15px;border-radius:8px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-left:4px solid var(--color-verde-claro);box-shadow:0 2px 4px #0000000d;transition:all .3s ease}.jugador-chip-preview:hover{transform:translate(5px);box-shadow:0 4px 8px #0000001a}.jugador-chip-preview .jugador-nombre{font-weight:700;color:var(--color-verde-oscuro);flex:1;min-width:120px;word-wrap:break-word}.jugador-chip-preview .jugador-faccion,.jugador-chip-preview .jugador-epoca{font-size:.8em;color:#666;background:var(--color-beige);padding:4px 10px;border-radius:12px;font-weight:600;white-space:nowrap}.sin-jugadores{color:#999;font-style:italic;text-align:center;padding:10px}.vs-grande{font-size:2.5em;font-weight:900;color:var(--color-verde-claro);display:flex;align-items:center;justify-content:center;text-shadow:2px 2px 4px rgba(0,0,0,.1);padding:0 15px}.bye-info-preview{background:linear-gradient(135deg,#fff3cd,#ffe082);padding:25px;border-radius:12px;text-align:center;border:3px dashed var(--color-naranja)}.bye-info-preview p{margin:0;color:var(--color-naranja-hover);font-weight:700;font-size:1.1em}.partidas-preview{background:var(--color-fondo-principal);padding:20px;border-top:2px solid var(--color-beige);clear:both}.partidas-preview h6{margin:0 0 15px;color:var(--color-verde-oscuro);font-size:1em;text-transform:uppercase;font-weight:700;letter-spacing:1px}.lista-partidas-epoca{display:flex;flex-direction:column;gap:10px}.partida-individual-preview{background:#fff;padding:15px 20px;border-radius:8px;border-left:4px solid var(--color-exito);box-shadow:0 2px 6px #00000014;display:flex;align-items:center;gap:15px;transition:all .3s ease;flex-wrap:wrap}.partida-individual-preview:hover{transform:translate(5px);box-shadow:0 4px 12px #0000001f}.partida-individual-preview .numero-partida{flex-shrink:0}.partida-individual-preview .jugadores-partida{flex:1;min-width:250px}.partida-individual-preview .jugador-nombre-partida{font-weight:700;color:var(--color-verde-oscuro);flex:1;text-align:center;word-wrap:break-word}.facciones-partida{display:flex;align-items:center;gap:8px;font-size:.8em;color:#666;padding-left:15px;border-left:2px solid var(--color-beige);flex-wrap:wrap}.facciones-partida .separador{color:#999;font-size:.9em}.vista-emparejamientos .rondas-anteriores{margin-top:40px}.vista-emparejamientos .rondas-anteriores h3{font-size:1.5em;margin-bottom:20px;color:var(--color-verde-oscuro)}.vista-emparejamientos .acordeon-ronda{margin-bottom:15px}.vista-emparejamientos .acordeon-header{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:15px 20px;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-shadow:0 2px 8px #6281414d}.vista-emparejamientos .acordeon-header:hover{transform:translateY(-2px);box-shadow:0 4px 12px #62814166}.vista-emparejamientos .acordeon-header .titulo strong{font-size:1.2em}.vista-emparejamientos .acordeon-header .titulo span{margin-left:15px;opacity:.9}.vista-emparejamientos .acordeon-header .icono{font-size:1.5em}.vista-emparejamientos .acordeon-body{margin-top:15px;padding:15px;background:var(--color-fondo-principal);border-radius:0 0 12px 12px}.vista-emparejamientos .loading-message,.vista-emparejamientos .empty-message{background:#fff;padding:40px;border-radius:12px;text-align:center;color:#666;border:2px dashed var(--color-beige-oscuro)}@media(max-width:1200px)and (min-width:769px){.emparejamientos-grid,.emparejamientos-grid.equipos-layout{grid-template-columns:repeat(2,1fr);gap:20px}}@media(max-width:992px){.header-equipos{flex-direction:column;align-items:flex-start;gap:10px}.header-equipos h4{width:100%}.total-partidas{align-self:flex-start}}@media(max-width:768px){.emparejamientos-grid,.emparejamientos-grid.equipos-layout{grid-template-columns:1fr;gap:15px}.vista-emparejamientos .section-header>div{flex-direction:column;align-items:flex-start}.vista-emparejamientos .section-header .botones-grupo,.vista-emparejamientos .section-header button{width:100%}.resumen-equipos-preview{grid-template-columns:1fr;gap:15px}.vs-grande{transform:rotate(90deg);margin:15px 0;font-size:2em}.jugadores-partida{flex-direction:column;gap:8px;align-items:stretch;min-width:auto}.jugador-info{text-align:center}.vs-partida{padding:10px 0;text-align:center}.partida-individual{padding:12px 15px}.partida-individual-header,.partida-individual-preview{flex-direction:column;align-items:stretch;gap:12px}.facciones-partida{border-left:none;border-top:2px solid var(--color-beige);padding-left:0;padding-top:10px;justify-content:center}.header-equipos{text-align:center;padding:15px}.header-equipos h4{text-align:center;width:100%}.epoca-header{flex-direction:column;gap:8px;text-align:center}.epoca-badge-grande{justify-content:center;width:100%}.emparejamiento-card,.enfrentamiento-equipos{min-width:unset}}@media(max-width:480px){.header-equipos{padding:15px}.header-equipos h4{font-size:1.1em}.contenedor-epocas{padding:15px}.epoca-badge-grande{font-size:1em}.jugador-nombre-partida{font-size:.9em}.vs-partida{font-size:1em}.emparejamiento-card{padding:16px}.numero-partida{font-size:.7em;padding:5px 10px}.estado-partida{font-size:.75em;padding:5px 10px}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.selector-escenarios-epoca{background:#fff;border-radius:12px;padding:20px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.selector-header{margin-bottom:20px;border-bottom:2px solid #e0e0e0;padding-bottom:15px}.selector-header h3{margin:0 0 5px;color:#333}.selector-header p{margin:0;color:#666;font-size:.9em}.escenarios-disponibles{background:#f5f5f5;padding:15px;border-radius:8px;margin-bottom:20px}.escenarios-disponibles strong{display:block;margin-bottom:10px;color:#555}.badges-escenarios{display:flex;flex-wrap:wrap;gap:8px}.badge-escenario{background:#2196f3;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85em;font-weight:500}.asignaciones-lista{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.asignacion-row{display:flex;align-items:center;gap:10px;padding:10px;background:#fafafa;border-radius:6px;border:1px solid #e0e0e0}.epoca-nombre{min-width:150px;font-weight:600;color:#333}.asignacion-row select{flex:1;padding:8px 12px;border:2px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.asignacion-row select:focus{outline:none;border-color:#2196f3}.asignacion-row select.seleccionado{border-color:#4caf50;background:#f1f8f4}.check-ok{font-size:1.2em}.selector-footer{display:flex;gap:10px;justify-content:flex-end;padding-top:15px;border-top:2px solid #e0e0e0}.btn-cancelar{padding:10px 20px;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background .3s}.btn-cancelar:hover{background:#d32f2f}.btn-confirmar-asignacion{padding:10px 20px;background:#4caf50;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background .3s}.btn-confirmar-asignacion:hover:not(:disabled){background:#45a049}.btn-confirmar-asignacion:disabled{background:#ccc;cursor:not-allowed}.escenario-partida{background:linear-gradient(135deg,#2a01f8,#06b0a5);color:#fff;padding:8px 15px;border-radius:6px;margin:10px 0;font-weight:600;text-align:center;font-size:.9em;box-shadow:0 2px 4px #0000001a}.escenario-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:12px;font-size:.8em;font-weight:600;margin-left:8px;display:inline-block}.partida-individual-preview{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:12px;margin-bottom:8px;display:flex;flex-direction:column;gap:8px}.epoca-badge{background:#ff9800;color:#fff;padding:4px 12px;border-radius:12px;font-size:.8em;font-weight:600;display:inline-block;width:fit-content}.jugadores-partida{font-size:.95em;color:#333}.botones-grupo{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.btn-primary,.btn-warning,.btn-success{padding:12px 24px;border:none;border-radius:8px;font-weight:600;font-size:.95em;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;box-shadow:0 2px 6px #0003;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);transform:translateY(-2px);box-shadow:0 4px 12px #7c3aed66}.btn-warning{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#c2410c);transform:translateY(-2px);box-shadow:0 4px 12px #f9731666}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-primary:disabled,.btn-warning:disabled,.btn-success:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.btn-primary:disabled:after,.btn-success:disabled:after{content:"";display:inline-block;width:14px;height:14px;margin-left:8px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media(max-width:768px){.botones-grupo{flex-direction:column;width:100%;gap:10px}.btn-primary,.btn-warning,.btn-success{width:100%;justify-content:center}}.vista-clasificacion{width:100%}.clasificacion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.vista-clasificacion h2{margin:0;color:var(--color-verde-oscuro);font-size:1.8em;flex:1}.btn-actualizar-clasificacion{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:8px 16px;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #6281414d;white-space:nowrap;display:flex;align-items:center;gap:6px}.btn-actualizar-clasificacion:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #62814166;background:linear-gradient(135deg,var(--color-verde-claro),var(--color-verde-oscuro))}.btn-actualizar-clasificacion:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.selector-vista-clasificacion{display:flex;gap:12px;margin-bottom:25px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #00000014}.btn-selector{flex:1;padding:12px 20px;border:2px solid transparent;border-radius:8px;background:transparent;color:var(--color-texto-principal);font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-selector:hover{background:var(--color-beige);transform:translateY(-2px)}.btn-selector.activo{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border-color:var(--color-verde-oscuro);box-shadow:0 4px 12px #6281414d}.tabla-clasificacion-container{width:100%;overflow-x:auto}.tabla-clasificacion{width:100%;min-width:600px;border-collapse:collapse;background:#fff;box-shadow:0 4px 12px #0000001a;border-radius:12px;overflow:hidden}.tabla-clasificacion thead{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.tabla-clasificacion th{padding:15px 12px;text-align:left;font-weight:700;font-size:.95em;text-transform:uppercase;letter-spacing:.5px}.tabla-clasificacion th:first-child{text-align:center;width:80px}.tabla-clasificacion td{padding:14px 12px;border-bottom:1px solid var(--color-beige);color:var(--color-texto-principal);font-size:.95em}.tabla-clasificacion tbody tr{transition:all .2s ease}.tabla-clasificacion tbody tr:hover{background:linear-gradient(135deg,var(--color-beige) 0%,var(--color-fondo-principal) 100%);transform:translate(4px)}.tabla-clasificacion tbody tr:last-child td{border-bottom:none}.tabla-clasificacion .top-1{background:linear-gradient(135deg,#fff9c4,#fff59d);font-weight:600}.tabla-clasificacion .top-2{background:linear-gradient(135deg,#e8e8e8,#d0d0d0);font-weight:600}.tabla-clasificacion .top-3{background:linear-gradient(135deg,#ffd7c4,#ffab91);font-weight:600}.tabla-clasificacion .posicion{font-size:1.4em;font-weight:700;text-align:center;color:var(--color-verde-oscuro)}.tabla-clasificacion .nombre-jugador{font-weight:600;color:var(--color-verde-oscuro);font-size:1em}.tabla-clasificacion .puntos-destacado{font-weight:700;color:var(--color-naranja);font-size:1.05em;text-align:center}.tabla-clasificacion td:not(:first-child):not(:nth-child(2)){text-align:center}.clasificacion-equipos-container{display:flex;flex-direction:column;gap:20px}.equipo-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden;transition:all .3s ease;border:2px solid transparent}.equipo-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026;border-color:var(--color-verde-claro)}.equipo-card.top-1{background:linear-gradient(135deg,#fff9c4,#fff59d);border-color:gold}.equipo-card.top-2{background:linear-gradient(135deg,#e8e8e8,#d0d0d0);border-color:silver}.equipo-card.top-3{background:linear-gradient(135deg,#ffd7c4,#ffab91);border-color:#cd7f32}.equipo-header{display:flex;align-items:center;gap:20px;padding:20px;background:#fff}.equipo-card.top-1 .equipo-header,.equipo-card.top-2 .equipo-header,.equipo-card.top-3 .equipo-header{background:transparent}.equipo-posicion{font-size:2.5em;font-weight:700;color:var(--color-verde-oscuro);min-width:60px;text-align:center}.equipo-card.top-1 .equipo-posicion{color:gold;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.equipo-card.top-2 .equipo-posicion{color:silver;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.equipo-card.top-3 .equipo-posicion{color:#cd7f32;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.equipo-info{flex:1}.equipo-info h3{margin:0 0 8px;color:var(--color-verde-oscuro);font-size:1.5em;font-weight:700}.capitan-info{margin:0;color:#666;font-size:.95em;font-style:italic}.equipo-stats-principales{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;min-width:400px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fffc;padding:12px;border-radius:8px;box-shadow:0 2px 4px #0000000d}.equipo-card.top-1 .stat-item,.equipo-card.top-2 .stat-item,.equipo-card.top-3 .stat-item{background:#fff}.stat-label{font-size:.75em;color:#666;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.stat-valor{font-size:1.5em;font-weight:700;color:var(--color-verde-oscuro)}.stat-valor.destacado{color:var(--color-naranja);font-size:1.8em}.vista-clasificacion .empty-message{background:#fff;padding:60px 20px;border-radius:12px;text-align:center;color:#666;font-size:1.1em;border:2px dashed var(--color-beige-oscuro)}.vista-clasificacion .empty-message p{margin:0}.vista-clasificacion .loading-message{text-align:center;padding:40px;background:#fff;border-radius:12px;border:2px dashed var(--color-beige-oscuro);color:var(--color-verde-oscuro);font-size:1.1em}.vista-clasificacion .error-message{background:linear-gradient(135deg,#fadbd8,#f1948a);color:var(--color-error);padding:20px;border-radius:12px;border-left:4px solid var(--color-error);margin:20px 0;font-weight:600;box-shadow:0 2px 8px #e74c3c33;text-align:center}.vista-clasificacion .btn-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;margin-top:15px;transition:all .3s ease;box-shadow:0 2px 8px #7f8c8d4d}.vista-clasificacion .btn-secondary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #7f8c8d66;background:linear-gradient(135deg,#7f8c8d,#95a5a6)}@media(max-width:1024px){.equipo-stats-principales{grid-template-columns:repeat(2,1fr);min-width:auto}}@media(max-width:768px){.clasificacion-header{flex-direction:column;align-items:flex-start;gap:15px}.vista-clasificacion h2{font-size:1.5em}.btn-actualizar-clasificacion{width:100%;justify-content:center}.selector-vista-clasificacion{flex-direction:column;gap:8px}.btn-selector{width:100%}.tabla-clasificacion{font-size:.9em}.tabla-clasificacion th,.tabla-clasificacion td{padding:10px 8px}.equipo-header{flex-direction:column;align-items:flex-start;gap:15px}.equipo-posicion{font-size:2em;min-width:auto;align-self:flex-start}.equipo-info h3{font-size:1.3em}.equipo-stats-principales{grid-template-columns:repeat(2,1fr);width:100%;gap:10px}.stat-item{padding:10px}.stat-valor{font-size:1.3em}.stat-valor.destacado{font-size:1.5em}}@media(max-width:480px){.vista-clasificacion h2{font-size:1.3em}.tabla-clasificacion{font-size:.85em;min-width:500px}.tabla-clasificacion .posicion{font-size:1.2em}.btn-actualizar-clasificacion{font-size:.85em;padding:7px 14px}.btn-selector{font-size:.9em;padding:10px 15px}.equipo-card{margin:0 -10px;border-radius:8px}.equipo-header{padding:15px}.equipo-info h3{font-size:1.2em}.capitan-info{font-size:.85em}.stat-label{font-size:.7em}.stat-valor{font-size:1.2em}.stat-valor.destacado{font-size:1.4em}}.clasificacion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.botones-clasificacion{display:flex;gap:10px;align-items:center}.btn-compartir-clasificacion{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #10b9814d}.btn-compartir-clasificacion:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-compartir-clasificacion:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.clasificacion-header{flex-direction:column;align-items:stretch}.botones-clasificacion{width:100%;justify-content:stretch}.btn-actualizar-clasificacion,.btn-compartir-clasificacion{flex:1}}.estadisticas-rapidas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}.stat-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:15px;text-align:center;transition:all .3s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-card.eje{border-color:#ff6b6b;background:linear-gradient(135deg,#fff,#ffe8e8)}.stat-card.aliados{border-color:#4dabf7;background:linear-gradient(135deg,#fff,#e7f5ff)}.stat-icon{font-size:2em;display:block;margin-bottom:8px}.stat-valor{font-size:2em;font-weight:700;color:#2c3e50;display:block;margin-bottom:5px}.stat-label{font-size:.85em;color:#666;text-transform:uppercase;letter-spacing:.5px}.badge-bando{display:inline-block;padding:4px 12px;border-radius:6px;font-size:.92em;font-weight:600;white-space:nowrap}.badge-bando.eje,.badge-bando.aliados{background-color:transparent!important;color:#fff;border:none!important}.btn-selector.btn-eje{border-color:#ff6b6b}.btn-selector.btn-eje.activo{background:#ff6b6b;color:#fff;border-color:#ff6b6b}.btn-selector.btn-aliados{border-color:#4dabf7}.btn-selector.btn-aliados.activo{background:#4dabf7;color:#fff;border-color:#4dabf7}.header-actions{display:flex;gap:10px;align-items:center}.btn-actualizar-clasificacion,.btn-compartir-clasificacion{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.btn-actualizar-clasificacion{background:#4caf50;color:#fff}.btn-actualizar-clasificacion:hover:not(:disabled){background:#45a049;transform:translateY(-2px)}.btn-compartir-clasificacion{background:#2196f3;color:#fff}.btn-compartir-clasificacion:hover:not(:disabled){background:#0b7dda;transform:translateY(-2px)}.nombre-ejercito{font-style:italic;color:#666;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.puntos-destacado{background:linear-gradient(135deg,gold,#ffed4e);font-weight:700;color:#2c3e50}.puntos-secundario{color:#495057}.enviar-correos-container{width:100%;padding:20px;background-color:#f8f9fa;border-radius:8px}.enviar-correos-header{margin-bottom:30px;text-align:center}.enviar-correos-header h2{color:#2c3e50;margin-bottom:8px;font-size:28px;font-weight:700}.enviar-correos-header .subtitulo{color:#6c757d;font-size:16px;margin:0}.juego-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:16px;font-size:14px;font-weight:600;margin-right:4px}.mensaje-estado{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:8px;margin-bottom:25px;font-weight:500;position:relative;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mensaje-estado .icono{font-size:20px;flex-shrink:0}.mensaje-estado .texto{flex:1}.mensaje-estado.exito{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.mensaje-estado.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.mensaje-estado.warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba}.cerrar-mensaje{background:none;border:none;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;flex-shrink:0}.cerrar-mensaje:hover{background-color:#0000001a}.form-correo{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;background-color:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.seccion-destinatarios{display:flex;flex-direction:column;gap:15px}.seccion-destinatarios h3{color:#495057;margin:0 0 10px;font-size:18px;font-weight:600}.seleccionar-todos{background:linear-gradient(135deg,#667eea,#764ba2);padding:14px 16px;border-radius:8px;transition:transform .2s}.seleccionar-todos:hover{transform:translateY(-1px)}.seleccionar-todos label{display:flex;align-items:center;gap:12px;cursor:pointer;margin:0;color:#fff;font-weight:600}.seleccionar-todos input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0}.seleccionar-todos input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.lista-participantes{max-height:450px;overflow-y:auto;background:#f8f9fa;border-radius:8px;padding:8px;border:1px solid #dee2e6}.lista-participantes::-webkit-scrollbar{width:8px}.lista-participantes::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.lista-participantes::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.lista-participantes::-webkit-scrollbar-thumb:hover{background:#5568d3}.sin-participantes{text-align:center;padding:60px 20px;color:#6c757d}.sin-participantes .icono-vacio{font-size:64px;margin-bottom:16px;opacity:.5}.sin-participantes p{font-size:16px;font-weight:600;margin:0 0 8px;color:#495057}.sin-participantes small{font-size:14px;color:#868e96}.participante-item{background:#fff;padding:12px;border-radius:6px;margin-bottom:8px;transition:all .2s;border:2px solid transparent}.participante-item:last-child{margin-bottom:0}.participante-item:hover{background-color:#f8f9fa;border-color:#e9ecef;transform:translate(2px)}.participante-item label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin:0;width:100%}.participante-item input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer;flex-shrink:0;accent-color:#667eea}.participante-info{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.participante-info .nombre{font-weight:600;color:#2c3e50;font-size:15px;word-wrap:break-word}.participante-info .email{font-size:13px;color:#6c757d;word-wrap:break-word}.detalles-extra{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.detalles-extra .badge{font-size:11px;padding:3px 8px;background-color:#e7f3ff;color:#0056b3;border-radius:12px;font-weight:500}.contador-seleccionados{background:#fff;padding:12px 16px;border-radius:8px;text-align:center;font-weight:600;border:2px solid #667eea;display:flex;align-items:center;justify-content:center;gap:6px}.contador-seleccionados .numero{font-size:24px;color:#667eea}.contador-seleccionados .separador{font-size:20px;color:#dee2e6}.contador-seleccionados .total{font-size:18px;color:#6c757d}.contador-seleccionados .texto{font-size:14px;color:#6c757d;margin-left:4px}.seccion-mensaje{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#495057;font-size:15px;display:flex;justify-content:space-between;align-items:center}.contador-caracteres{font-size:12px;font-weight:400;color:#6c757d}.form-group input,.form-group textarea{padding:12px 14px;border:2px solid #dee2e6;border-radius:6px;font-size:14px;font-family:inherit;transition:all .2s;background-color:#fff}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group textarea:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.form-group textarea{resize:vertical;min-height:200px;line-height:1.6}.form-group input::placeholder,.form-group textarea::placeholder{color:#adb5bd}.info-mensaje{background:linear-gradient(135deg,#e7f3ff,#f0e7ff);padding:20px;border-radius:8px;border-left:4px solid #667eea}.info-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.info-header .icono{font-size:20px}.info-header strong{color:#2c3e50;font-size:15px}.info-mensaje ul{margin:0;padding-left:20px;color:#495057}.info-mensaje li{font-size:13px;line-height:1.6;margin-bottom:6px}.info-mensaje li:last-child{margin-bottom:0}.btn-enviar{padding:16px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #667eea4d}.btn-enviar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-enviar:active:not(:disabled){transform:translateY(0)}.btn-enviar:disabled{background:linear-gradient(135deg,#adb5bd,#868e96);cursor:not-allowed;opacity:.6;box-shadow:none}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:1024px){.form-correo{grid-template-columns:1fr}.lista-participantes{max-height:350px}}@media(max-width:768px){.enviar-correos-container{padding:15px}.enviar-correos-header h2{font-size:24px}.form-correo{padding:20px;gap:25px}.seccion-destinatarios h3,.seccion-mensaje label{font-size:16px}.lista-participantes{max-height:300px}.participante-info .nombre{font-size:14px}.participante-info .email{font-size:12px}.contador-seleccionados .numero{font-size:20px}.contador-seleccionados .total{font-size:16px}}@media(max-width:576px){.enviar-correos-container{padding:10px}.enviar-correos-header{margin-bottom:20px}.enviar-correos-header h2{font-size:20px}.enviar-correos-header .subtitulo{font-size:14px}.form-correo{padding:15px;gap:20px}.mensaje-estado{padding:12px 14px;font-size:14px}.seleccionar-todos{padding:12px 14px}.seleccionar-todos label{font-size:14px}.participante-item{padding:10px}.form-group input,.form-group textarea{font-size:16px;padding:10px 12px}.form-group textarea{min-height:150px}.info-mensaje{padding:15px}.info-mensaje li{font-size:12px}.btn-enviar{padding:14px 24px;font-size:15px;width:100%}.detalles-extra .badge{font-size:10px;padding:2px 6px}}.administrar-torneo-container{max-width:1400px;margin:0 auto;padding:20px;min-height:100vh;background:var(--color-fondo-principal)}.loading-message{background:#fff;padding:40px;border-radius:12px;text-align:center;border:2px dashed var(--color-beige-oscuro);color:#666;animation:pulse 1.5s ease-in-out infinite}.error-message-box{max-width:600px;text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.error-message-box h2{color:var(--color-error);margin-bottom:1rem}.administrar-torneo-container .torneo-header{background:linear-gradient(135deg,var(--color-verde-oscuro) 0%,var(--color-verde-claro) 100%);color:#fff;padding:2rem;border-radius:15px;margin-bottom:2rem;box-shadow:0 4px 20px #6281414d}.administrar-torneo-container .torneo-header h1{margin:0 0 1.5rem;font-size:2.5rem;text-align:center;color:#fff}.administrar-torneo-container .torneo-info{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;font-size:1rem}.administrar-torneo-container .info-item{background:#ffffff26;padding:.5rem 1rem;border-radius:20px;font-size:.95rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.administrar-torneo-container .estado-badge{padding:.5rem 1.2rem;border-radius:20px;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.administrar-torneo-container .estado-badge.estado-pendiente{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff}.administrar-torneo-container .estado-badge.estado-en_curso{background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff}.administrar-torneo-container .estado-badge.estado-finalizado{background:linear-gradient(135deg,#757575,#616161);color:#fff}.vista-nav{display:flex;gap:1rem;margin-bottom:2rem;background:#fff;padding:1rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;flex-wrap:wrap}.vista-nav button{flex:1;min-width:150px;padding:1rem 1.5rem;border:2px solid var(--color-beige);background:#fff;color:var(--color-texto-principal);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.vista-nav button:hover{background:linear-gradient(135deg,var(--color-beige),var(--color-fondo-principal));border-color:var(--color-verde-claro);transform:translateY(-2px)}.vista-nav button.active{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border-color:var(--color-verde-oscuro)}.vista-nav button:disabled{opacity:.5;cursor:not-allowed}.contenido-principal{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 10px #0000001a;min-height:500px;display:contents}.footer-controles{margin-top:2rem;padding:1.5rem;text-align:center}.btn-atras{background:linear-gradient(135deg,#795548,#6d4c41);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #7955484d}.btn-atras:hover{transform:translateY(-2px);box-shadow:0 4px 10px #79554866}.btn-primary{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #6281414d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #62814166}.btn-primary:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #7f8c8d4d}.btn-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #7f8c8d66}.btn-secondary:disabled{background:linear-gradient(135deg,#bdc3c7,#95a5a6);cursor:not-allowed;transform:none}.btn-success{background:linear-gradient(135deg,var(--color-exito),#1E8449);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #27ae604d}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #27ae6066}.btn-warning{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #e67e224d}.btn-warning:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #e67e2266}.btn-danger{background:linear-gradient(135deg,var(--color-error),#C0392B);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 5px #e74c3c4d}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #e74c3c66}@media(max-width:768px){.administrar-torneo-container{padding:1rem}.administrar-torneo-container .torneo-header{padding:1.5rem}.administrar-torneo-container .torneo-header h1{font-size:1.8rem}.administrar-torneo-container .torneo-info{flex-direction:column;gap:.75rem;font-size:.9rem}.vista-nav{flex-direction:column}.vista-nav button{min-width:100%}.contenido-principal{padding:1.5rem}}@media(max-width:480px){.administrar-torneo-container .torneo-header h1{font-size:1.5rem}.btn-primary,.btn-secondary,.btn-success,.btn-warning,.btn-danger,.btn-atras{padding:.6rem 1.2rem;font-size:.9rem}}.administrar-torneo-container .torneo-header{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro))!important}.administrar-torneo-container .torneo-info{background:transparent!important}.administrar-torneo-container .info-item{background:#fff3!important;color:#fff!important}.administrar-torneo-container .torneo-header h1{color:#fff!important}.ver-torneo-container{width:100%;max-width:1400px;margin:0 auto;padding:2rem 1rem}.loading-container,.error-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem}.error-container .error-message{max-width:600px;text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.error-container h2{color:var(--color-error);margin-bottom:1rem}.ver-torneo-container .torneo-header{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro))!important;color:#fff;padding:2rem;border-radius:15px;margin-bottom:2rem;box-shadow:0 8px 20px #6281414d;display:flex;flex-direction:column}.ver-torneo-container .torneo-header h1{margin:0 0 1.5rem;font-size:2.5rem;color:#fff!important;text-align:center;font-weight:700;width:100%;order:-1}.ver-torneo-container .torneo-content{display:flex;flex-direction:column;gap:1.5rem;width:100%;background:transparent!important}.ver-torneo-container .torneo-info{flex:1;display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;align-items:center;background:transparent!important}.ver-torneo-container .torneo-footer-row{display:flex;flex-direction:row;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.ver-torneo-container .torneo-acciones{display:flex;flex-direction:row;gap:1rem;align-items:center;flex-wrap:wrap}.ver-torneo-container .info-item{display:inline-flex;background:#fff3!important;padding:.6rem 1.2rem;border-radius:25px;font-size:.95rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff!important;white-space:nowrap;border:1px solid rgba(255,255,255,.3);transition:all .3s ease}.ver-torneo-container .info-item:hover{background:#ffffff4d;transform:translateY(-2px)}.ver-torneo-container .estado-badge{display:inline-flex;padding:.6rem 1.2rem;border-radius:25px;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border:2px solid rgba(255,255,255,.3)}.ver-torneo-container .estado-pendiente{background:#fbbf24;color:#000}.ver-torneo-container .estado-en_curso{background:#10b981;color:#fff}.ver-torneo-container .estado-finalizado{background:#6b7280;color:#fff}.ver-torneo-container .torneo-bases{flex-shrink:0;min-width:280px;max-width:320px;padding:1.5rem;background:#ffffff26!important;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);text-align:center}.ver-torneo-container .torneo-bases h3{margin:0 0 .5rem;font-size:1.2rem;color:#fff}.ver-torneo-container .bases-nombre{margin:.5rem 0 1rem;font-size:.9rem;color:#ffffffe6;word-break:break-word}.ver-torneo-container .torneo-bases .btn-primary{width:100%}.vt-btn-unirse,.vt-btn-inscrito{position:relative;flex-shrink:0;align-self:center;display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 2.2rem;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;letter-spacing:.4px;white-space:nowrap;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.vt-btn-unirse:before,.vt-btn-inscrito:before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.25),transparent);transition:left .5s ease;pointer-events:none}.vt-btn-unirse:hover:before,.vt-btn-inscrito:hover:before{left:150%}.vt-btn-unirse{background:linear-gradient(135deg,#ff6b35,#f7c59f,#ff6b35);background-size:200% auto;color:#1a0a00;box-shadow:0 4px 15px #ff6b3573,inset 0 1px #ffffff4d}.vt-btn-unirse:hover{background-position:right center;transform:translateY(-3px) scale(1.03);box-shadow:0 10px 28px #ff6b358c,inset 0 1px #ffffff4d}.vt-btn-unirse:active{transform:translateY(-1px) scale(1.01)}.vt-btn-inscrito{background:#ffffff2e;color:#fff;border:1.5px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 12px #0000001f}.vt-btn-inscrito:hover{background:#ffffff47;transform:translateY(-3px);box-shadow:0 8px 22px #0000002e}.vt-btn-icon{font-size:1.1rem;line-height:1}.vt-btn-listas-ocultas,.vt-btn-listas-visibles{position:relative;flex-shrink:0;align-self:center;display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 2.2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;overflow:hidden}.vt-btn-listas-ocultas{background:#ffffff26;color:#fff;border:1.5px dashed rgba(255,255,255,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.vt-btn-listas-ocultas:hover{background:#ffffff40;transform:translateY(-2px)}.vt-btn-listas-visibles{background:#10b98140;color:#fff;border:1.5px solid rgba(16,185,129,.7)}.vt-btn-listas-visibles:hover{background:#10b98166;transform:translateY(-2px)}.ver-torneo-container .vista-nav{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.ver-torneo-container .vista-nav button{flex:1;min-width:150px;padding:1rem;background:#fff;color:var(--color-verde-oscuro);border:2px solid var(--color-beige-oscuro);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.ver-torneo-container .vista-nav button:hover{background:var(--color-beige);border-color:var(--color-verde-oscuro);transform:translateY(-2px)}.ver-torneo-container .vista-nav button.active{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border-color:var(--color-verde-oscuro)}.ver-torneo-container .contenido-principal{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a;min-height:400px}.ver-torneo-container .vista-inscritos h2{color:var(--color-verde-oscuro);margin-bottom:2rem;font-size:2rem}.ver-torneo-container .grid-inscritos{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.ver-torneo-container .card-inscrito{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #0000001a;border:2px solid var(--color-beige);transition:all .3s ease}.ver-torneo-container .card-inscrito:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000026;border-color:var(--color-verde-claro)}.ver-torneo-container .jugador-info h3{margin:0 0 .5rem;color:var(--color-verde-oscuro);font-size:1.3rem}.ver-torneo-container .jugador-info .club,.ver-torneo-container .jugador-info .ubicacion{color:var(--color-texto-principal);font-size:.95rem;margin:.25rem 0}.ver-torneo-container .banda-info{margin-top:1rem;padding-top:1rem;border-top:2px solid var(--color-beige)}.ver-torneo-container .banda-info p{margin:.4rem 0;color:var(--color-texto-principal)}.ver-torneo-container .composicion-banda{margin-top:1rem;padding:1rem;background:var(--color-beige);border-radius:8px;border-left:4px solid var(--color-verde-oscuro)}.ver-torneo-container .composicion-banda h5{margin:0 0 .5rem;color:var(--color-verde-oscuro)}.ver-torneo-container .composicion-banda ul{list-style:none;padding:0;margin:0}.ver-torneo-container .composicion-banda li{padding:.25rem 0;color:var(--color-texto-principal)}.ver-torneo-container .detalle-mercenarios{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-beige-oscuro);font-style:italic}.ver-torneo-container .grid-equipos{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem}.ver-torneo-container .card-equipo{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #0000001a;border:2px solid var(--color-beige);transition:all .3s ease}.ver-torneo-container .card-equipo:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000026;border-color:var(--color-verde-claro)}.ver-torneo-container .equipo-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--color-beige)}.ver-torneo-container .equipo-header h3{margin:0 0 .5rem;color:var(--color-verde-oscuro);font-size:1.5rem}.ver-torneo-container .badge-capitan{display:inline-block;background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;padding:.4rem .8rem;border-radius:20px;font-size:.9rem;font-weight:600}.ver-torneo-container .equipo-miembros h4{color:var(--color-verde-oscuro);margin-bottom:.75rem;font-size:1.1rem}.ver-torneo-container .lista-miembros{list-style:none;padding:0;margin:0}.ver-torneo-container .miembro-item{padding:.75rem;margin-bottom:.5rem;background:var(--color-beige);border-radius:8px;display:flex;flex-direction:column;gap:.25rem}.ver-torneo-container .miembro-nombre{font-weight:600;color:var(--color-verde-oscuro);font-size:1rem}.ver-torneo-container .miembro-detalle{font-size:.9rem;color:var(--color-texto-principal)}.ver-torneo-container .miembro-header{display:flex;flex-direction:column;gap:.25rem}.ver-torneo-container .miembro-epoca-banda{font-size:.9rem;color:var(--color-texto-principal)}.ver-torneo-container .miembro-composicion{margin-top:.5rem;padding:.75rem;background:#fff;border-radius:6px;border-left:3px solid var(--color-verde-oscuro)}.ver-torneo-container .puntos-total{margin-bottom:.5rem;font-size:.95rem;color:var(--color-verde-oscuro)}.ver-torneo-container .puntos-detalle{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.85rem;color:var(--color-texto-principal)}.ver-torneo-container .puntos-detalle span{background:var(--color-beige);padding:.25rem .5rem;border-radius:4px;font-weight:600}.ver-torneo-container .detalle-mercenarios-mini{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-beige-oscuro);font-size:.85rem;font-style:italic;color:var(--color-texto-principal)}.ver-torneo-container .empty-message{text-align:center;padding:3rem;background:var(--color-beige);border-radius:12px;color:var(--color-texto-principal)}.ver-torneo-container .empty-message p{font-size:1.2rem;margin:0}.ver-torneo-container .footer-controles{display:flex;justify-content:center;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--color-beige)}.btn-ver-lista{display:inline-block;padding:8px 16px;background-color:#3b82f6;color:#fff;text-decoration:none;border-radius:6px;font-size:.9rem;transition:background-color .3s;margin-top:10px}.btn-ver-lista:hover{background-color:#2563eb}.lista-documento{margin-top:15px;padding-top:15px;border-top:1px solid #dee2e6}.sin-lista{color:#6b7280;font-style:italic;font-size:.9rem;margin-top:10px}.error-message{background:#f8d7da;color:#721c24;padding:12px 20px;border-radius:6px;margin-bottom:20px;border-left:4px solid #dc3545}.pdf-disponible{margin-bottom:10px;color:#155724;font-size:.9em}.pdf-no-disponible{color:#856404;font-style:italic;font-size:.9em}.botones-pdf{display:flex;gap:10px;flex-wrap:wrap}.btn-ver-pdf,.btn-descargar-pdf{flex:1;min-width:120px;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.95em;font-weight:500;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:5px}.btn-ver-pdf{background:#17a2b8;color:#fff}.btn-ver-pdf:hover:not(:disabled){background:#138496;transform:translateY(-2px);box-shadow:0 4px 8px #17a2b84d}.btn-descargar-pdf{background:#28a745;color:#fff}.btn-descargar-pdf:hover:not(:disabled){background:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.btn-ver-pdf:disabled,.btn-descargar-pdf:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:968px){.ver-torneo-container .torneo-footer-row{flex-direction:column;align-items:stretch}.ver-torneo-container .torneo-acciones{flex-direction:column}.ver-torneo-container .torneo-bases{width:100%;max-width:100%;min-width:unset}.vt-btn-unirse,.vt-btn-inscrito,.vt-btn-listas-ocultas,.vt-btn-listas-visibles{width:100%;justify-content:center}}@media(max-width:768px){.ver-torneo-container{padding:1rem .5rem}.ver-torneo-container .torneo-header{padding:1.5rem}.ver-torneo-container .torneo-header h1{font-size:1.8rem}.ver-torneo-container .vista-nav{flex-direction:column}.ver-torneo-container .vista-nav button{min-width:100%}.ver-torneo-container .grid-inscritos,.ver-torneo-container .grid-equipos{grid-template-columns:1fr}.ver-torneo-container .contenido-principal{padding:1rem}.botones-pdf{flex-direction:column}.btn-ver-pdf,.btn-descargar-pdf{width:100%}}@media(max-width:480px){.ver-torneo-container .torneo-header h1{font-size:1.5rem}.ver-torneo-container .torneo-info{flex-direction:row;flex-wrap:wrap}.ver-torneo-container .info-item{text-align:center}}.inscripcion-container{max-width:1000px;margin:0 auto;padding:30px 20px;background:#f8f9fa;min-height:100vh}.inscripcion-container h1{color:#1a1a1a;font-size:2rem;margin-bottom:30px;text-align:center;font-weight:700}.info-usuario,.info-torneo{background:#fff;padding:25px;border-radius:12px;margin-bottom:25px;box-shadow:0 2px 8px #0000001a}.info-usuario h2,.info-torneo h2{color:#2c3e50;font-size:1.4rem;margin-bottom:20px;font-weight:600;border-bottom:3px solid #3498db;padding-bottom:10px}.datos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px}.dato-item{display:flex;flex-direction:column;gap:8px}.dato-item label{font-weight:600;color:#555;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.dato-item span{color:#1a1a1a;font-size:1.1rem;font-weight:500}.epoca-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 20px;border-radius:25px;font-weight:700;font-size:1rem;text-align:center;box-shadow:0 4px 6px #667eea4d}.inscripcion-form{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:10px;color:#2c3e50;font-weight:600;font-size:1rem}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;color:#1a1a1a;background:#fff;transition:all .3s ease;font-family:inherit}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;appearance:none;-webkit-appearance:none;-moz-appearance:none}.form-group select option{color:#1a1a1a;background:#fff;padding:10px}.form-group input::placeholder,.form-group textarea::placeholder{color:#999}.puntos-section{background:#f8f9fa;padding:25px;border-radius:10px;margin:25px 0;border:2px solid #e0e0e0}.puntos-section h3{color:#2c3e50;font-size:1.3rem;margin-bottom:15px;font-weight:600}.puntos-info{background:linear-gradient(135deg,#667eea,#764ba2);color:#0c0b0b;padding:15px 20px;border-radius:8px;margin-bottom:20px;font-size:1.1rem;font-weight:500;text-align:center}.puntos-info strong{font-size:1.4rem;font-weight:700}.puntos-excedidos{display:block;color:#f44;background:#fff;padding:8px;border-radius:5px;margin-top:8px;font-weight:700}.puntos-faltantes{display:block;color:#ff9800;background:#fff;padding:8px;border-radius:5px;margin-top:8px;font-weight:700}.puntos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.punto-item{display:flex;flex-direction:column;gap:8px}.punto-item label{font-weight:600;color:#2c3e50;font-size:.95rem}.punto-item input[type=number]{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1.1rem;color:#1a1a1a;background:#fff;transition:all .3s ease;font-weight:600}.punto-item input[type=number]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.mercenarios-detalle{margin-top:20px;padding:20px;background:#fff;border-radius:8px;border:2px dashed #667eea}.mercenarios-detalle label{color:#667eea;font-weight:600}.mercenarios-detalle textarea{min-height:100px;resize:vertical;color:#1a1a1a}.error-message{background:#fee;color:#c00;padding:15px 20px;border-radius:8px;margin-bottom:20px;border-left:4px solid #c00;font-weight:500}.button-group{display:flex;gap:15px;margin-top:30px;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:14px 32px;border:none;border-radius:8px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex:1;min-width:200px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#fff;color:#555;border:2px solid #ddd;flex:0 1 auto}.btn-secondary:hover{background:#f5f5f5;border-color:#999}.loading-container,.error-container{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.loading-container p,.error-container p{color:#555;font-size:1.2rem;margin-bottom:20px}.error-container button{padding:12px 30px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.error-container button:hover{background:#5568d3;transform:translateY(-2px)}.info-message{background:#dbeafe;border-left:4px solid #3b82f6;padding:1rem;margin-bottom:1.5rem;border-radius:8px;color:#1e40af;font-size:.95rem}@media(max-width:768px){.inscripcion-container{padding:20px 15px}.inscripcion-container h1{font-size:1.6rem}.datos-grid{grid-template-columns:1fr}.puntos-grid{grid-template-columns:1fr 1fr}.button-group{flex-direction:column}.btn-primary,.btn-secondary{width:100%;min-width:auto}}@media(max-width:480px){.puntos-grid{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.inscripcion-form,.info-usuario,.info-torneo{animation:fadeIn .5s ease-out}.warlord-section{margin-top:1rem;padding:1rem;border:2px solid #4CAF50;border-radius:8px;background-color:#f9fff9}.warlord-title{color:#4caf50;margin-top:0}.info-warlord{margin-top:.5rem;padding:.75rem;background-color:#e8f5e9;border-radius:4px}.info-line{margin:.25rem 0}.info-line.banda-desbloqueada{color:#2e7d32}.puntos-detalle-small{color:#666;margin-left:.5rem}.restriccion-prohibido{margin-top:.5rem;padding:.5rem;background-color:#ffebee;border-radius:4px}.restriccion-prohibido strong{color:#c62828}.restriccion-excluyentes{margin-top:.5rem;padding:.5rem;background-color:#fff3e0;border-radius:4px}.restriccion-excluyentes strong{color:#e65100}.restriccion-item{margin-left:1rem}.restriccion-warning{color:#e65100;display:block;margin-top:.25rem}.unidades-desbloqueadas{margin-top:.5rem;padding:.5rem;background-color:#f3e5f5;border-radius:4px}.lista-unidades-desbloqueadas{margin:.5rem 0 0 1.5rem;padding:0}.lista-unidades-desbloqueadas li{margin:.25rem 0}.input-prohibido{background-color:#ffebee!important;cursor:not-allowed!important}.prohibido-badge{color:red;margin-left:.5rem}.punto-item.cerdos-legendario{border:2px solid #FFD700;padding:.5rem;border-radius:4px;background-color:#fffef0}.punto-item.unidad-warlord{border:2px solid #9c27b0;background-color:#f3e5f5;padding:.5rem;border-radius:4px}.unidad-desbloqueada-label{display:block;color:#7b1fa2;font-size:.8em;margin-top:.25rem;font-style:italic}.puntos-unidad-small{font-size:.75rem;color:#666;padding:.25rem}.legendarias-activas{color:#4caf50;font-weight:700}.form-help-text{font-size:.85rem;color:#666;margin-top:.25rem;display:block}.required{color:red}@media(max-width:768px){.warlord-section{padding:.75rem}.info-warlord{padding:.5rem}.punto-item.cerdos-legendario,.punto-item.unidad-warlord{padding:.375rem}}.warlord-locked{color:#9c27b0;font-size:.85em;font-style:italic;margin-left:8px}.input-locked{background-color:#f5f5f5;cursor:not-allowed;opacity:.7}optgroup{font-weight:700;font-size:.95em;margin-top:8px}optgroup option{font-weight:400;padding-left:10px}.help-text{display:block;margin-top:5px;font-size:.875em;color:#666}.error-text{display:block;margin-top:5px;font-size:.875em;color:#dc3545;font-weight:500}.inscripcion-container{max-width:1200px;margin:0 auto;padding:2rem}.info-message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.info-equipos{background-color:#e3f2fd;border-left:4px solid #2196f3;color:#0d47a1}.info-invitaciones{background-color:#e0f2fe;border-left:4px solid #0284c7;color:#075985}.miembros-section{background-color:#fff;padding:2rem;border-radius:12px;margin:2rem 0;box-shadow:0 4px 12px #0000001a}.miembros-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-beige)}.miembros-header h3{margin:0;color:var(--color-verde-oscuro);font-size:1.5rem}.btn-agregar{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 3px 8px #0003}.btn-agregar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 12px #0000004d}.btn-agregar:disabled{opacity:.5;cursor:not-allowed;transform:none}.miembros-lista{display:flex;flex-direction:column;gap:1.5rem}.miembro-item{background:linear-gradient(135deg,#f8f9fa,#fff);padding:1.5rem;border-radius:12px;border:2px solid var(--color-beige);box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.miembro-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-verde-claro)}.miembro-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-beige)}.miembro-numero{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 6px #0003}.btn-capitan{background:#fff;color:var(--color-verde-oscuro);border:2px solid var(--color-beige);padding:.5rem 1rem;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease}.btn-capitan:hover:not(:disabled){background:var(--color-beige);transform:scale(1.05)}.btn-capitan.activo{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border-color:var(--color-naranja);box-shadow:0 2px 6px #e67e224d}.btn-capitan:disabled{opacity:.5;cursor:not-allowed}.miembro-campos{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.miembro-campos .form-group{margin-bottom:0}.miembro-campos .form-group.full-width{grid-column:1 / -1}.miembro-campos label{display:block;font-size:.85rem;font-weight:600;color:var(--color-verde-oscuro);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.miembro-campos input,.miembro-campos select,.miembro-campos textarea{width:100%;padding:.75rem;border:2px solid var(--color-beige);border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.miembro-campos input:focus,.miembro-campos select:focus,.miembro-campos textarea:focus{outline:none;border-color:var(--color-verde-claro);box-shadow:0 0 0 3px #64b5f61a}.miembro-campos input:disabled,.miembro-campos select:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.input-error{border-color:#f44336!important}.input-success{border-color:#4caf50!important}.input-con-badge{position:relative;display:flex;flex-direction:column;gap:.5rem}.badge-registro{align-self:flex-start;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:.25rem}.badge-registro.pendiente{background:linear-gradient(135deg,#fff3cd,#ffe69c);color:#856404;border:1px solid #ffc107}.badge-registro.registrado{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:1px solid #28a745}.puntos-banda-section{grid-column:1 / -1;margin-top:1rem;padding:1.5rem;background:#fff;border-radius:8px;border-left:4px solid var(--color-naranja);box-shadow:0 2px 6px #0000000d}.puntos-banda-section h4{margin:0 0 1rem;color:var(--color-verde-oscuro);font-size:1.1rem}.puntos-info{margin-bottom:1rem;padding:.75rem;background:linear-gradient(135deg,var(--color-beige),#fff);border-radius:6px;font-size:.95rem}.puntos-error{color:#f44336;font-weight:600;margin-left:.5rem}.puntos-ok{color:#4caf50;font-weight:600;margin-left:.5rem}.puntos-grid-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.punto-item-mini label{display:block;font-size:.85rem;font-weight:600;color:var(--color-verde-oscuro);margin-bottom:.5rem}.punto-item-mini input{width:100%;padding:.75rem;border:2px solid var(--color-beige);border-radius:8px;font-size:1rem;transition:all .3s ease}.punto-item-mini input:focus{outline:none;border-color:var(--color-verde-claro);box-shadow:0 0 0 3px #64b5f61a}.btn-eliminar{width:auto;background:linear-gradient(135deg,var(--color-error),#C0392B);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;margin-left:auto;box-shadow:0 2px 6px #e74c3c4d}.btn-eliminar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #e74c3c66}.btn-eliminar:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-group{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--color-beige)}.btn-primary,.btn-secondary,.btn-danger{padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;box-shadow:0 3px 8px #0003}.btn-primary{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 12px #0000004d}.btn-danger{background:linear-gradient(135deg,var(--color-error),#C0392B);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 12px #e74c3c66}.btn-secondary{background:#fff;color:var(--color-verde-oscuro);border:2px solid var(--color-beige)}.btn-secondary:hover:not(:disabled){background:var(--color-beige);transform:translateY(-2px)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:1024px){.miembro-campos,.puntos-grid-mini{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.inscripcion-container,.miembros-section{padding:1rem}.miembros-header{flex-direction:column;align-items:stretch;gap:1rem}.miembro-campos{grid-template-columns:1fr}.puntos-grid-mini{grid-template-columns:repeat(2,1fr)}.miembro-header-row{flex-direction:column;align-items:stretch;gap:.75rem}.button-group{flex-direction:column}.button-group button{width:100%}}@media(max-width:480px){.puntos-grid-mini{grid-template-columns:1fr}.miembro-numero{justify-content:center;text-align:center}}.error-message{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;padding:1rem 1.5rem;border-radius:8px;border-left:4px solid #f44336;margin-bottom:1.5rem;font-weight:500}.seleccion-juego-container{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:100vh}.seleccion-header{text-align:center;margin-bottom:50px}.seleccion-header h1{font-size:2.5rem;color:#333;margin-bottom:10px}.seleccion-header .subtitle{font-size:1.1rem;color:#666;margin:0}.loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#666}.error-banner{background-color:#fee;border:2px solid #f44336;border-radius:8px;padding:15px 20px;margin-bottom:30px;color:#c62828;font-weight:500;text-align:center}.seccion-paso{margin-bottom:40px;animation:fadeInUp .5s ease}.paso-header{margin-bottom:30px}.paso-header h2{margin:0;font-size:1.8rem;color:#333;text-align:center}.juegos-grid{display:flex;gap:25px;justify-content:center;align-items:stretch;flex-wrap:wrap}.juego-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:25px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;height:100%;min-height:280px;display:flex;flex:1 1 260px;max-width:300px;flex-direction:column}.juego-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a;border-color:#667eea}.juego-card.selected{border-color:#667eea;background:linear-gradient(135deg,#f5f7ff,#e8ebff);box-shadow:0 8px 20px #667eea33}.juego-icon{font-size:3.5rem;text-align:center;margin-bottom:15px;width:100%;height:160px;overflow:hidden;border-radius:8px;display:flex;align-items:center;justify-content:center}.juego-icon img{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:8px}.juego-card h3{font-size:1.3rem;margin:0 0 10px;color:#333;text-align:center}.juego-card p{font-size:.95rem;color:#666;text-align:center;margin-bottom:15px;flex:1}.juego-modalidades{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:auto}.badge{padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:500}.badge-individual{background-color:#e3f2fd;color:#1976d2}.badge-equipos{background-color:#f3e5f5;color:#7b1fa2}.check-selected{position:absolute;top:15px;right:15px;width:35px;height:35px;background-color:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;box-shadow:0 2px 8px #4caf5066;animation:checkAppear .3s ease}@keyframes checkAppear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.seccion-modalidad{margin-top:50px}.modalidades-selector{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.modalidad-opcion{background:#fff;border:3px solid #e0e0e0;border-radius:12px;padding:25px;cursor:pointer;transition:all .3s ease;position:relative;display:flex;align-items:center;gap:20px;min-width:300px;max-width:450px;flex:1}.modalidad-opcion:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001a;border-color:#667eea}.modalidad-opcion.selected{border-color:#667eea;background:linear-gradient(135deg,#f5f7ff,#e8ebff);box-shadow:0 8px 25px #667eea40}.modalidad-icono{font-size:3rem;flex-shrink:0}.modalidad-texto{flex:1}.modalidad-texto h3{margin:0 0 8px;font-size:1.3rem;color:#333}.modalidad-texto p{margin:0;font-size:.95rem;color:#666}.check-selected-modalidad{position:absolute;top:15px;right:15px;width:32px;height:32px;background-color:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;box-shadow:0 2px 8px #4caf5066;animation:checkAppear .3s ease}.acciones-container{background:linear-gradient(135deg,#ebd5ab,#f8f5f0);border:2px solid #D4BC8F;border-radius:12px;padding:30px;margin-top:50px;animation:fadeInUp .5s ease;box-shadow:0 2px 8px #00000014}.juego-seleccionado-info{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.info-item{display:flex;align-items:center;gap:12px;padding:15px;background:#fff;border-radius:8px;border-left:4px solid #628141;color:#2c3e50}.info-item .info-icon{font-size:1.5rem;flex-shrink:0}.info-item .info-text{font-size:1.1rem;flex:1;color:#2c3e50}.info-item strong{font-weight:700;color:#628141}.btn-crear-torneo{width:100%;padding:18px;background:linear-gradient(135deg,#e67e22,#d35400);color:#fff;border:none;border-radius:10px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #e67e224d}.btn-crear-torneo:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e67e2266;background:linear-gradient(135deg,#d35400,#e67e22)}.btn-crear-torneo:active{transform:translateY(0)}.instrucciones{background-color:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:20px 25px;margin-top:40px}.instrucciones p{margin:0 0 15px;color:#333;font-size:1rem}.instrucciones ol{margin:0;padding-left:25px;color:#555}.instrucciones ol li{padding:8px 0;font-size:.95rem}@media(max-width:768px){.seleccion-header h1{font-size:2rem}.seleccion-header .subtitle{font-size:1rem}.juego-card{min-height:auto}.modalidades-selector{flex-direction:column}.modalidad-opcion{min-width:100%}.acciones-container{padding:20px}.juego-seleccionado-info{gap:10px}.info-item{padding:12px}.btn-crear-torneo{font-size:1.1rem;padding:15px}}@media(max-width:480px){.seleccion-juego-container{padding:20px 15px}.seleccion-header h1{font-size:1.6rem}.paso-header h2{font-size:1.4rem}.juego-card{padding:20px}.juego-icon{height:120px}.juego-card h3{font-size:1.2rem}.modalidad-opcion{flex-direction:column;text-align:center;padding:20px}.modalidad-icono{font-size:2.5rem}.info-item{flex-direction:column;text-align:center;gap:8px}}@media(hover:hover){.juego-card:hover:not(.selected){border-color:#bbb}.juego-card.selected:hover{transform:translateY(-8px);box-shadow:0 12px 30px #667eea4d}.modalidad-opcion:hover:not(.selected){border-color:#bbb}.modalidad-opcion.selected:hover{transform:translateY(-5px);box-shadow:0 10px 30px #667eea4d}}.juego-card:focus-visible,.modalidad-opcion:focus-visible{outline:3px solid #667eea;outline-offset:2px}.btn-crear-torneo:focus-visible{outline:3px solid white;outline-offset:2px}.reset-password-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.reset-password-card{background:#fff;border-radius:12px;padding:40px;max-width:500px;width:100%;box-shadow:0 10px 40px #0003;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reset-password-card h2{text-align:center;color:#333;margin-bottom:10px;font-size:1.8rem}.reset-description{text-align:center;color:#666;margin-bottom:30px;font-size:.95rem}.reset-form{display:flex;flex-direction:column;gap:20px}.reset-form .form-group{display:flex;flex-direction:column;gap:8px}.reset-form label{font-weight:500;color:#333;font-size:.95rem}.reset-form input{padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .3s ease}.reset-form input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.reset-form input:disabled{background-color:#f5f5f5;cursor:not-allowed}.password-requirements{background-color:#f8f9fa;border-left:4px solid #667eea;padding:15px;border-radius:6px;margin:10px 0}.password-requirements p{margin:0 0 10px;font-weight:500;color:#333;font-size:.9rem}.password-requirements ul{list-style:none;padding:0;margin:0}.password-requirements li{font-size:.9rem;color:#666;position:relative;padding:5px 0 5px 25px}.password-requirements li:before{content:"○";position:absolute;left:0;color:#ccc;font-weight:700}.password-requirements li.valid{color:#28a745}.password-requirements li.valid:before{content:"✓";color:#28a745}.checkbox-group{display:flex;align-items:center;gap:8px}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group label{font-size:.9rem;color:#666;cursor:pointer;-webkit-user-select:none;user-select:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background-color:#fee;border-left:4px solid #dc3545;color:#721c24;padding:12px 15px;border-radius:6px;font-size:.9rem}.error-icon{width:60px;height:60px;background-color:#dc3545;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:2rem;color:#fff}.error-text{color:#666;text-align:center;margin:20px 0;font-size:1rem}.success-message{text-align:center;padding:20px}.success-icon{width:80px;height:80px;background-color:#28a745;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;font-size:2.5rem;color:#fff;animation:successPulse .6s ease-out}@keyframes successPulse{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.success-message h2{color:#28a745;margin-bottom:15px}.success-message p{font-size:1.05rem;color:#333;margin-bottom:10px}.success-subtitle{font-size:.9rem!important;color:#666!important;font-style:italic}@media(max-width:768px){.reset-password-card{padding:30px 20px}.reset-password-card h2{font-size:1.5rem}.password-requirements{padding:12px}.btn-primary{padding:12px 20px}}.legal-page,.documento-legal-container{min-height:calc(100vh - 200px);background-color:#f8f9fa;padding:40px 20px}.legal-container,.documento-legal-content{max-width:900px;margin:0 auto;background-color:#fff;padding:50px;border-radius:8px;box-shadow:0 2px 8px #0000001a;line-height:1.8}.legal-container h1,.documento-legal-titulo{color:#2c3e50;font-size:2.5em;margin-bottom:10px;border-bottom:3px solid #3498db;padding-bottom:15px}.legal-container h2,.documento-legal-seccion h2{color:#34495e;font-size:1.8em;margin-top:40px;margin-bottom:20px;border-left:4px solid #3498db;padding-left:15px}.legal-container h3{color:#5a6c7d;font-size:1.3em;margin-top:30px;margin-bottom:15px}.legal-container h4{color:#6c757d;font-size:1.1em;margin-top:20px;margin-bottom:10px}.legal-container p,.documento-legal-seccion p{color:#495057;margin-bottom:15px;text-align:justify}.legal-container ul,.legal-container ol,.documento-legal-seccion ul,.documento-legal-seccion ol{margin-bottom:20px;padding-left:30px}.legal-container li,.documento-legal-seccion li{color:#495057;margin-bottom:10px;line-height:1.6}.legal-container a,.documento-legal-seccion a{color:#3498db;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}.legal-container a:hover,.documento-legal-seccion a:hover{border-bottom-color:#3498db}.legal-container strong{color:#2c3e50;font-weight:600}.last-updated,.documento-legal-fecha{color:#6c757d;font-style:italic;font-size:.95em;margin-bottom:30px;border-bottom:1px solid #e9ecef;padding-bottom:15px}.documento-legal-seccion,section{margin-bottom:40px}.documento-legal-seccion:last-child,section:last-child{margin-bottom:0}.info-box{background-color:#e3f2fd;border-left:4px solid #2196f3;padding:20px;margin:20px 0;border-radius:4px}.info-box p{margin-bottom:8px}.info-box p:last-child{margin-bottom:0}.warning-box{background-color:#fff3cd;border-left:4px solid #ffc107;padding:20px;margin:20px 0;border-radius:4px}.warning-box strong{color:#856404}.treatment-box{background-color:#f8f9fa;border:1px solid #dee2e6;padding:20px;margin:20px 0;border-radius:4px}.treatment-box h3{margin-top:0;color:#495057}.service-box{background-color:#f8f9fa;padding:20px;margin:20px 0;border-radius:4px;border:1px solid #dee2e6}.service-box h4{margin-top:0;color:#3498db}.rights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:30px 0}.right-card{background-color:#f8f9fa;border:1px solid #dee2e6;padding:20px;border-radius:8px;transition:transform .3s ease,box-shadow .3s ease}.right-card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #0000001a}.right-card h4{margin-top:0;color:#27ae60;font-size:1.1em}.right-card p{margin-bottom:0;font-size:.95em}.signature{margin-top:40px;padding-top:20px;border-top:2px solid #e9ecef;text-align:right;font-style:italic;color:#6c757d}.signature p{margin-bottom:5px}.important{font-weight:600;color:#e74c3c!important}.contacto-form{display:flex;flex-direction:column;gap:16px}.contacto-form-row{display:flex;gap:16px;flex-wrap:wrap}.contacto-form-group{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px}.contacto-form-group label{font-weight:600;font-size:.95rem;color:#2c3e50}.contacto-form-group input,.contacto-form-group textarea{padding:10px 14px;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .2s ease;resize:vertical;color:#495057}.contacto-form-group input:focus,.contacto-form-group textarea:focus{border-color:#3498db}.contacto-form-group input::placeholder,.contacto-form-group textarea::placeholder{color:#bbb}.contacto-btn-enviar{align-self:flex-start;padding:14px 30px;background:linear-gradient(135deg,#3498db,#2c3e50);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3498db4d}.contacto-btn-enviar:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3498db66}.contacto-btn-enviar:active{transform:translateY(0)}.contacto-exito{background:#e8f5e9;border:2px solid #4caf50;border-radius:8px;padding:20px;text-align:center;color:#2e7d32;font-size:1.05rem}.contacto-exito p{margin:0;color:#2e7d32;text-align:center}.legal-container table{width:100%;border-collapse:collapse;margin:20px 0}.legal-container table th,.legal-container table td{border:1px solid #dee2e6;padding:12px;text-align:left}.legal-container table th{background-color:#f8f9fa;font-weight:600;color:#495057}.legal-container table tr:nth-child(2n){background-color:#f8f9fa}.legal-container code{background-color:#f8f9fa;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#e74c3c}.legal-container pre{background-color:#f8f9fa;padding:15px;border-radius:4px;overflow-x:auto;border:1px solid #dee2e6}.legal-container pre code{background-color:transparent;padding:0;color:#495057}@media(max-width:768px){.legal-page,.documento-legal-container{padding:20px 10px}.legal-container,.documento-legal-content{padding:30px 20px}.legal-container h1,.documento-legal-titulo{font-size:2em}.legal-container h2,.documento-legal-seccion h2{font-size:1.5em}.legal-container h3{font-size:1.2em}.rights-grid{grid-template-columns:1fr}.legal-container p,.legal-container li{text-align:left}.contacto-form-row{flex-direction:column}.contacto-btn-enviar{width:100%;text-align:center}}@media(max-width:480px){.legal-container,.documento-legal-content{padding:20px 15px}.legal-container h1,.documento-legal-titulo{font-size:1.7em}.legal-container h2,.documento-legal-seccion h2{font-size:1.3em}}.torneo-card{background:#fff;border-radius:12px;border:2px solid #e2e8f0;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem;animation:slideIn .3s ease-out}.torneo-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#cbd5e0}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.torneo-card-header{display:flex;justify-content:space-between;align-items:flex-start}.torneo-badges{display:flex;flex-wrap:wrap;gap:.5rem}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-saga{background:#fef5e7;color:#d68910;border:1px solid #f9e79f}.badge-warmaster{background:#ebf5fb;color:#2874a6;border:1px solid #aed6f1}.badge-fow{background:#fdedec;color:#c0392b;border:1px solid #f5b7b1}.badge-bolt{background:#f4ecf7;color:#7d3c98;border:1px solid #d7bde2}.badge-default{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.badge-pendiente{background:#fef5e7;color:#d68910;border:1px solid #f9e79f}.badge-encurso{background:#e8f8f5;color:#117a65;border:1px solid #a9dfbf}.badge-finalizado{background:#ebf5fb;color:#2874a6;border:1px solid #aed6f1}.badge-equipos{background:#f4ecf7;color:#7d3c98;border:1px solid #d7bde2}.torneo-titulo{font-size:1.2rem;font-weight:700;color:#2d3748;margin:0;line-height:1.3}.torneo-info{display:flex;flex-direction:column;gap:.5rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;border-bottom:1px solid #f7fafc}.info-row:last-child{border-bottom:none}.info-label{font-size:.85rem;color:#718096;font-weight:500}.info-value{font-size:.9rem;color:#2d3748;font-weight:600;text-align:right}.torneo-epocas{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#f7fafc;border-radius:8px}.epocas-list{display:flex;flex-wrap:wrap;gap:.4rem}.epoca-tag{background:#fff;color:#4a5568;padding:.3rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;border:1px solid #e2e8f0}.torneo-organizadores{padding:.75rem;background:#f7fafc;border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.organizadores-extra{display:flex;flex-direction:column;gap:.5rem}.btn-toggle-organizadores{background:none;border:none;color:#667eea;font-weight:600;font-size:.85rem;cursor:pointer;text-align:left;padding:.25rem 0;transition:color .2s ease}.btn-toggle-organizadores:hover{color:#5568d3}.organizadores-lista{display:flex;flex-direction:column;gap:.4rem;padding-left:1rem;margin-top:.5rem}.organizador-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem;background:#fff;border-radius:6px;font-size:.85rem}.organizador-nombre{color:#4a5568;font-weight:500}.organizador-estado{font-size:1.2rem}.organizador-estado.activo{color:#48bb78}.organizador-estado.pendiente_registro{color:#ed8936}.torneo-card-acciones{display:flex;gap:.75rem;padding-top:.5rem;border-top:2px solid #e2e8f0}.btn-editar,.btn-eliminar{flex:1;padding:.75rem 1rem;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-editar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-editar:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-eliminar{background:#fed7d7;color:#c53030;border:1px solid #fc8181}.btn-eliminar:hover{background:#fc8181;color:#fff;transform:translateY(-2px)}.torneo-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid #f7fafc}.torneo-id{font-size:.75rem;color:#a0aec0;font-weight:600}.torneo-bases{font-size:.75rem;color:#48bb78;font-weight:600;background:#c6f6d5;padding:.25rem .5rem;border-radius:4px}@media(max-width:480px){.torneo-card{padding:1rem}.torneo-titulo{font-size:1rem}.torneo-card-acciones{flex-direction:column}.btn-editar,.btn-eliminar{width:100%}}.organizadores-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.btn-gestionar-org{padding:.4rem .8rem;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:.85rem;cursor:pointer;transition:background .3s}.btn-gestionar-org:hover{background:#0056b3}.badge-pendiente-mini{padding:.15rem .4rem;background:#ffc107;color:#333;border-radius:10px;font-size:.75rem;margin-left:.5rem}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease-out}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #e2e8f0;position:sticky;top:0;background:#fff;z-index:10}.modal-header h2{color:#2d3748;font-size:1.5rem;margin:0;display:flex;align-items:center;gap:.5rem}.btn-close{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer;width:40px;height:40px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#f7fafc;color:#2d3748}.modal-form{padding:1.5rem}.alert-error{background:#fed7d7;color:#c53030;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #fc8181;font-weight:500}.alert-warning{background:#fef5e7;color:#d68910;padding:.75rem;border-radius:8px;margin-top:.5rem;border:1px solid #f9e79f;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid #f7fafc}.form-section:last-of-type{border-bottom:none}.form-section h3{color:#2d3748;font-size:1.2rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:600;color:#4a5568;margin-bottom:.5rem;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s ease;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input[type=file]{padding:.5rem;cursor:pointer}.form-group input:disabled,.form-group select:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed}.form-group small{display:block;margin-top:.5rem;color:#718096;font-size:.85rem}.file-selected{color:#48bb78;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.epocas-selector{display:flex;gap:.75rem;margin-bottom:1rem}.epocas-selector select{flex:1;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem}.btn-add-epoca{background:#48bb78;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-epoca:hover:not(:disabled){background:#38a169;transform:translateY(-2px)}.btn-add-epoca:disabled{opacity:.4;cursor:not-allowed}.epocas-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem;background:#f7fafc;border-radius:8px;min-height:60px}.epoca-tag{background:#fff;color:#4a5568;padding:.5rem .75rem;border-radius:6px;font-size:.9rem;font-weight:600;border:1px solid #e2e8f0;display:flex;align-items:center;gap:.5rem}.btn-remove-epoca{background:none;border:none;color:#e53e3e;font-size:1.1rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.btn-remove-epoca:hover{background:#fed7d7}.pdf-actual{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#e6fffa;border:1px solid #81e6d9;border-radius:8px;margin-bottom:1rem}.pdf-actual span{color:#234e52;font-weight:600;font-size:.9rem}.btn-eliminar-pdf{background:#fed7d7;color:#c53030;border:1px solid #fc8181;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-eliminar-pdf:hover{background:#fc8181;color:#fff}.btn-cancelar-eliminar{background:#fff;color:#4a5568;border:1px solid #e2e8f0;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;margin-left:.5rem;transition:all .2s ease}.btn-cancelar-eliminar:hover{background:#f7fafc}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:2px solid #e2e8f0;position:sticky;bottom:0;background:#fff}.btn-cancelar,.btn-guardar{padding:.875rem 2rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-cancelar{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0}.btn-cancelar:hover:not(:disabled){background:#e2e8f0}.btn-guardar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-guardar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}.btn-cancelar:disabled,.btn-guardar:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.modal-content{max-height:95vh;border-radius:16px 16px 0 0}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.btn-cancelar,.btn-guardar{width:100%;justify-content:center}.epocas-selector{flex-direction:column}}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f7fafc}.modal-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:#a0aec0}.gestionar-org-modal{width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.torneo-info-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem}.torneo-info-header h3{margin:0;font-size:1.1rem;color:#333}.torneo-badge{padding:.25rem .75rem;background:#007bff;color:#fff;border-radius:12px;font-size:.85rem;font-weight:600}.agregar-organizador-section{padding:1.5rem;background:#f0f8ff;border-radius:8px;margin-bottom:2rem}.agregar-organizador-section h3{margin:0 0 1rem;font-size:1.1rem;color:#007bff}.agregar-form{display:flex;gap:.75rem;margin-bottom:.75rem}.input-email{flex:1;padding:.75rem;border:2px solid #ddd;border-radius:6px;font-size:1rem}.input-email:focus{outline:none;border-color:#007bff}.btn-agregar{padding:.75rem 1.5rem;background:#28a745;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s}.btn-agregar:hover:not(:disabled){background:#218838}.btn-agregar:disabled{background:#6c757d;cursor:not-allowed}.help-text{margin:0;font-size:.85rem;color:#666}.organizadores-section{margin-bottom:2rem}.organizadores-section h3{margin:0 0 1rem;font-size:1.1rem;color:#333;padding-bottom:.5rem;border-bottom:2px solid #ddd}.empty-message{padding:2rem;text-align:center;color:#999;font-style:italic}.organizadores-lista{display:flex;flex-direction:column;gap:.75rem}.organizador-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#fff;border:1px solid #ddd;border-radius:8px;transition:box-shadow .3s}.organizador-card:hover{box-shadow:0 2px 8px #0000001a}.organizador-card.pendiente{background:#fff8e1;border-color:#ffc107}.org-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.org-header{display:flex;align-items:center;gap:.75rem}.org-nombre{font-weight:600;font-size:1rem;color:#333}.org-email{font-size:.9rem;color:#666}.org-fecha{font-size:.85rem;color:#999}.badge-creador{padding:.25rem .5rem;background:gold;color:#333;border-radius:4px;font-size:.75rem;font-weight:600}.badge-pendiente{padding:.25rem .5rem;background:#ffc107;color:#333;border-radius:4px;font-size:.75rem;font-weight:600}.org-acciones{display:flex;gap:.5rem}.btn-reenviar{padding:.5rem 1rem;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;transition:background .3s}.btn-reenviar:hover{background:#0056b3}.btn-eliminar-org{padding:.5rem .75rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background .3s}.btn-eliminar-org:hover{background:#c82333}@media(max-width:768px){.gestionar-org-modal{width:95%;max-height:95vh}.agregar-form{flex-direction:column}.organizador-card{flex-direction:column;align-items:flex-start;gap:1rem}.org-acciones{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}}.org-creador-label{font-size:.75rem;color:gold;font-weight:600;padding:.25rem .5rem;background:#ffd7001a;border-radius:4px;border:1px solid #ffd700}.organizadores-resumen{margin-top:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #007bff}.organizadores-resumen p{margin:0;font-size:.95rem;color:#333}.organizadores-resumen strong{color:#007bff}.btn-eliminar-org,.btn-reenviar{white-space:nowrap;min-width:100px}.org-acciones{display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:768px){.org-acciones{width:100%;margin-top:.75rem}.btn-eliminar-org,.btn-reenviar{flex:1;min-width:auto}}.torneos-admin{animation:fadeIn .5s ease-out}.torneos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.torneos-header h2{color:#2d3748;font-size:1.8rem;display:flex;align-items:center;gap:.5rem;margin:0}.btn-refresh{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.torneos-filtros{background:#f7fafc;padding:1.5rem;border-radius:12px;margin-bottom:2rem;display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.filtro-grupo{display:flex;flex-direction:column;gap:.5rem}.filtro-grupo label{font-size:.85rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.05em}.filtro-grupo select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:all .2s ease;min-width:150px}.filtro-grupo select:hover{border-color:#cbd5e0}.filtro-grupo select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filtro-resultado{margin-left:auto;color:#718096;font-size:.95rem}.filtro-resultado strong{color:#2d3748;font-weight:700}.torneos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;margin-bottom:2rem}.torneos-loading,.torneos-error,.torneos-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.torneos-error p{color:#e53e3e;font-weight:600;margin-bottom:1rem}.torneos-empty p{color:#718096;font-size:1.1rem}.torneos-paginacion{display:flex;justify-content:center;align-items:center;gap:2rem;padding:2rem 0;border-top:2px solid #e2e8f0}.btn-paginacion{background:#fff;color:#667eea;border:2px solid #667eea;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-paginacion:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px)}.btn-paginacion:disabled{opacity:.4;cursor:not-allowed}.paginacion-info{font-weight:600;color:#2d3748}@media(max-width:768px){.torneos-header{flex-direction:column;gap:1rem;align-items:stretch}.torneos-filtros{flex-direction:column;gap:1rem}.filtro-grupo{width:100%}.filtro-grupo select{width:100%;min-width:unset}.filtro-resultado{margin-left:0;text-align:center}.torneos-grid{grid-template-columns:1fr}.torneos-paginacion{flex-direction:column;gap:1rem}}.usuarios-admin{max-width:1400px;margin:0 auto;padding:2rem}.usuarios-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--color-beige)}.usuarios-header h2{font-size:2rem;color:var(--color-verde-oscuro);margin-bottom:.5rem}.filtros-container{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.filtro-busqueda{margin-bottom:1rem}.input-busqueda{width:100%;padding:.875rem 1rem;border:2px solid var(--color-beige);border-radius:8px;font-size:1rem;transition:all .3s ease}.input-busqueda:focus{outline:none;border-color:var(--color-verde-oscuro);box-shadow:0 0 0 3px #6281411a}.filtros-select{display:flex;gap:1rem;flex-wrap:wrap}.select-filtro{flex:1;min-width:200px;padding:.75rem 1rem;border:2px solid var(--color-beige);border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .3s ease;background:#fff}.select-filtro:focus{outline:none;border-color:var(--color-verde-oscuro)}.tabla-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.tabla-usuarios{width:100%;border-collapse:collapse}.tabla-usuarios thead{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.tabla-usuarios th{padding:1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.tabla-usuarios tbody tr{border-bottom:1px solid var(--color-beige);transition:all .2s ease}.tabla-usuarios tbody tr:hover{background:#6281410d}.tabla-usuarios td{padding:1rem;font-size:.9rem}.usuario-info{display:flex;flex-direction:column;gap:.25rem}.usuario-nombre{font-weight:600;color:var(--color-verde-oscuro)}.usuario-nombre-real{font-size:.85rem;color:#7f8c8d}.fecha-registro{color:#7f8c8d;font-size:.85rem}.badge-rol,.badge-estado{display:inline-block;padding:.35rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;white-space:nowrap}.rol-superadmin{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff}.rol-organizador{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.rol-jugador{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.badge-activo{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724}.badge-pendiente{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404}.badge-suspendido{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24}.acciones-usuario{display:flex;gap:.5rem;justify-content:center}.btn-accion{padding:.5rem;border:none;border-radius:6px;cursor:pointer;font-size:1.2rem;transition:all .3s ease;background:transparent}.btn-accion:hover{transform:translateY(-2px)}.btn-torneos:hover{background:#e67e221a}.btn-editar:hover{background:#3498db1a}.btn-eliminar:hover{background:#e74c3c1a}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:1.5rem;border-bottom:2px solid var(--color-beige);display:flex;justify-content:space-between;align-items:center}.modal-header h3{color:var(--color-verde-oscuro);font-size:1.5rem;margin:0}.btn-cerrar{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#7f8c8d;padding:.25rem .5rem;transition:all .3s ease}.btn-cerrar:hover{color:var(--color-verde-oscuro);transform:rotate(90deg)}.modal-body{padding:2rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--color-verde-oscuro);font-size:.9rem}.input-form{padding:.75rem;border:2px solid var(--color-beige);border-radius:8px;font-size:.95rem;transition:all .3s ease}.input-form:focus{outline:none;border-color:var(--color-verde-oscuro);box-shadow:0 0 0 3px #6281411a}.modal-footer{padding:1.5rem;border-top:2px solid var(--color-beige);display:flex;gap:1rem;justify-content:flex-end}.btn-cancelar,.btn-guardar{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancelar{background:#e0e0e0;color:#333}.btn-cancelar:hover{background:#bdbdbd;transform:translateY(-2px)}.btn-guardar{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff}.btn-guardar:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6281414d}.modal-torneos{max-width:900px}.seccion-torneos{margin-bottom:2rem}.seccion-torneos h4{color:var(--color-verde-oscuro);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-beige)}.lista-torneos-modal{display:flex;flex-direction:column;gap:.75rem}.torneo-item-modal{background:#6281410d;padding:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.torneo-item-modal:hover{background:#6281411a}.torneo-info-modal{display:flex;flex-direction:column;gap:.5rem;flex:1}.torneo-nombre{font-weight:600;color:var(--color-verde-oscuro);font-size:1rem}.torneo-detalles-modal{display:flex;gap:.5rem;flex-wrap:wrap}.badge-faccion,.badge-epoca,.badge-creador{padding:.25rem .6rem;border-radius:5px;font-size:.75rem;font-weight:600}.badge-faccion{background:linear-gradient(135deg,#e67e22,#d35400);color:#fff}.badge-epoca{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff}.badge-creador{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.estado-pendiente{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404}.estado-en_curso{background:linear-gradient(135deg,#d1ecf1,#bee5eb);color:#0c5460}.estado-finalizado{background:linear-gradient(135deg,#e0e0e0,#bdbdbd);color:#333}.torneo-fecha{font-size:.85rem;color:#7f8c8d}.btn-eliminar-inscripcion{padding:.5rem .75rem;background:#e74c3c1a;border:none;border-radius:6px;cursor:pointer;font-size:1.1rem;transition:all .3s ease}.sin-torneos-usuario{text-align:center;padding:2rem;color:#7f8c8d}.mensaje{padding:1rem;border-radius:8px;margin-bottom:1.5rem;animation:slideDown .3s ease}.sin-resultados{text-align:center;padding:3rem;color:#7f8c8d}@media(max-width:1200px){.tabla-usuarios{font-size:.85rem}.tabla-usuarios th,.tabla-usuarios td{padding:.75rem}}@media(max-width:768px){.usuarios-admin{padding:1rem}.usuarios-header h2{font-size:1.5rem}.filtros-select{flex-direction:column}.select-filtro{min-width:100%}.tabla-container{overflow-x:auto}.tabla-usuarios{min-width:900px}.form-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}.btn-cancelar,.btn-guardar{width:100%}}.acciones-inscripcion{display:flex;gap:.5rem}.btn-editar-inscripcion,.btn-eliminar-inscripcion{padding:.5rem .75rem;border:none;border-radius:6px;cursor:pointer;font-size:1.1rem;transition:all .3s ease}.btn-editar-inscripcion{background:#3498db1a}.btn-editar-inscripcion:hover{background:#3498db33;transform:scale(1.1)}.btn-eliminar-inscripcion{background:#e74c3c1a}.btn-eliminar-inscripcion:hover{background:#e74c3c33;transform:scale(1.1)}.modal-editar-inscripcion{max-width:500px}.info-torneo-inscripcion{background:#6281411a;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.info-torneo-inscripcion p{margin:.5rem 0;color:var(--color-verde-oscuro)}.form-inscripcion{display:flex;flex-direction:column;gap:1rem}.textarea-form{min-height:100px;resize:vertical;font-family:inherit}.badge-bando{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;padding:.25rem .6rem;border-radius:5px;font-size:.75rem;font-weight:600}.estadisticas-admin h2{color:#2d3748;margin-bottom:2rem;font-size:1.8rem;display:flex;align-items:center;gap:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #00000012;border:1px solid #e2e8f0;transition:all .3s ease;display:flex;gap:1rem;animation:fadeIn .5s ease-out}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000026}.stat-icon{font-size:3rem;line-height:1}.stat-content{flex:1}.stat-content h3{color:#4a5568;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.stat-number{font-size:2.5rem;font-weight:700;color:#2d3748;line-height:1;margin-bottom:.75rem}.stat-details{display:flex;flex-wrap:wrap;gap:.75rem}.stat-details.vertical{flex-direction:column;gap:.5rem}.stat-detail{font-size:.85rem;color:#718096;background:#f7fafc;padding:.4rem .8rem;border-radius:6px;font-weight:500}.usuarios-card{border-left:4px solid #4299e1}.usuarios-card .stat-icon{color:#4299e1}.organizadores-card{border-left:4px solid #48bb78}.organizadores-card .stat-icon{color:#48bb78}.torneos-card{border-left:4px solid #ed8936}.torneos-card .stat-icon{color:#ed8936}.sistemas-card{border-left:4px solid #9f7aea}.sistemas-card .stat-icon{color:#9f7aea}.inscripciones-card{border-left:4px solid #f56565}.inscripciones-card .stat-icon{color:#f56565}.stat-systems{display:flex;flex-direction:column;gap:.75rem}.system-stat{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f7fafc;border-radius:6px}.system-label{font-size:.85rem;font-weight:600;color:#4a5568}.system-value{font-size:1.2rem;font-weight:700;color:#2d3748}.stats-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:2px solid #e2e8f0}.btn-refresh{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-refresh:hover{transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}.stats-timestamp{color:#718096;font-size:.85rem}.stats-loading,.stats-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.stats-error p{color:#e53e3e;font-weight:600;margin-bottom:1rem}.btn-retry{background:#e53e3e;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-retry:hover{background:#c53030;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr;gap:1rem}.stat-card{padding:1rem}.stat-icon{font-size:2.5rem}.stat-number{font-size:2rem}.stats-footer{flex-direction:column;gap:1rem}}.admin-panel{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.admin-header{text-align:center;color:#fff;margin-bottom:2rem;animation:fadeInDown .5s ease-out}.admin-header h1{font-size:2.5rem;margin-bottom:.5rem;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.admin-subtitle{font-size:1.1rem;opacity:.9;font-weight:300}.admin-tabs{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;animation:fadeInUp .5s ease-out .2s both;flex-wrap:wrap}.admin-tab{background:#fff;border:3px solid rgba(255,255,255,.5);color:#667eea;padding:1.2rem 2.5rem;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #00000026;min-width:180px;text-align:center}.admin-tab:hover{background:#fffffff2;transform:translateY(-3px);box-shadow:0 8px 20px #00000040;border-color:#667eea}.admin-tab.active{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));color:#fff;border-color:var(--color-verde-oscuro);box-shadow:0 8px 24px #62814166;transform:translateY(-2px)}.admin-content{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0003;animation:fadeInUp .5s ease-out .4s both}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.admin-panel{padding:1rem}.admin-header h1{font-size:1.8rem}.admin-tabs{flex-direction:column;gap:.8rem}.admin-tab{padding:1rem 2rem;width:100%;min-width:auto}.admin-content{padding:1rem}}.actualizar-ranking-container{max-width:1200px;margin:0 auto;padding:2rem}.ranking-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--color-beige)}.ranking-header h2{font-size:2rem;color:var(--color-verde-oscuro);margin-bottom:.5rem}.subtitulo{color:#7f8c8d;font-size:1rem}.loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem}.spinner{width:50px;height:50px;border:4px solid var(--color-beige);border-top-color:var(--color-verde-oscuro);border-radius:50%;animation:spin 1s linear infinite}.spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.sin-torneos{text-align:center;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.sin-torneos p{font-size:1.2rem;color:var(--color-verde-oscuro);margin-bottom:.5rem}.texto-secundario{color:#7f8c8d;font-size:.9rem}.info-box{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-left:4px solid var(--color-verde-oscuro);padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.info-icono{font-size:1.5rem}.torneos-lista{display:flex;flex-direction:column;gap:1.5rem}.torneo-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease}.torneo-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.torneo-info h3{color:var(--color-verde-oscuro);font-size:1.3rem;margin-bottom:.5rem}.torneo-detalles{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.badge-sistema{background:var(--color-verde-oscuro);color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.fecha,.participantes{color:#7f8c8d;font-size:.9rem}.btn-actualizar{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;align-self:flex-end}.btn-actualizar:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #e67e2266}.btn-actualizar:disabled{opacity:.6;cursor:not-allowed}.mensaje{padding:.75rem 1rem;border-radius:8px;font-size:.9rem;margin-top:.5rem}.mensaje-exito{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border-left:4px solid #28A745}.mensaje-error{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border-left:4px solid #DC3545}.acciones-footer{margin-top:2rem;display:flex;justify-content:center}.btn-refrescar{background:#fff;border:2px solid var(--color-verde-oscuro);color:var(--color-verde-oscuro);padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-refrescar:hover:not(:disabled){background:var(--color-verde-oscuro);color:#fff;transform:translateY(-2px)}.btn-refrescar:disabled{opacity:.5;cursor:not-allowed}.mensaje-general{margin-bottom:2rem;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.navbar-login{background:transparent;padding:0;position:relative}.navbar-login-container{margin:0;display:flex;justify-content:flex-end;position:relative}.menu-hamburguesa{background:#ffffff26;border:2px solid rgba(255,255,255,.3);cursor:pointer;padding:.6rem;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .3s ease;border-radius:8px;min-width:44px;min-height:44px;z-index:100;flex-shrink:0}.menu-hamburguesa:hover{background:#ffffff40;border-color:#fff;transform:scale(1.05)}.menu-hamburguesa:active{transform:scale(.95);background:#ffffff4d}.menu-hamburguesa svg{width:28px;height:28px;stroke-width:2.5}.navbar-menu{display:none;flex-direction:column;position:absolute;top:calc(100% + 10px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;min-width:200px;z-index:1000;overflow:hidden;border:2px solid var(--color-beige-oscuro)}.navbar-menu.activo{display:flex;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.navbar-link{color:var(--color-verde-oscuro);text-decoration:none;padding:1rem 1.5rem;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--color-beige);transition:all .3s ease;font-size:1rem;font-weight:600;background:#fff}.navbar-link:last-child{border-bottom:none}.navbar-link:hover{background:linear-gradient(135deg,var(--color-beige),var(--color-beige-oscuro));padding-left:2rem;color:var(--color-verde-oscuro)}.navbar-link:active{background:var(--color-naranja);color:#fff}.menu-overlay{position:fixed;inset:0;z-index:999;background-color:transparent}@media(max-width:1024px){.menu-hamburguesa{padding:.55rem}.menu-hamburguesa svg{width:26px;height:26px}.navbar-menu{min-width:180px}.navbar-link{padding:.95rem 1.4rem;font-size:.98rem}}@media(max-width:768px){.menu-hamburguesa{padding:.5rem;min-width:44px;min-height:44px}.menu-hamburguesa svg{width:24px;height:24px}.navbar-menu{min-width:180px;right:0;top:calc(100% + 8px)}.navbar-link{padding:.9rem 1.25rem;font-size:.95rem;gap:10px;min-height:44px}.navbar-link:hover{padding-left:1.75rem}}@media(max-width:480px){.menu-hamburguesa{padding:.45rem}.menu-hamburguesa svg{width:22px;height:22px}.navbar-menu{min-width:160px;border-radius:10px}.navbar-link{padding:.85rem 1rem;font-size:.9rem;gap:8px}.navbar-link:hover{padding-left:1.5rem}}@media(max-width:360px){.menu-hamburguesa{padding:.4rem}.menu-hamburguesa svg{width:20px;height:20px}.navbar-menu{min-width:150px;border-radius:8px}.navbar-link{padding:.8rem .9rem;font-size:.85rem}}.navbar-separator{height:1px;background:#fff3;margin:8px 0}.navbar-link-admin{background:linear-gradient(135deg,#ffd7001a,#ff8c001a);border-left:3px solid #ffd700;font-weight:600}.navbar-link-admin:hover{background:linear-gradient(135deg,#ffd70033,#ff8c0033);border-left-color:#ffed4e}.navbar{background:linear-gradient(135deg,var(--color-verde-oscuro),var(--color-verde-claro));box-shadow:0 4px 15px #6281414d;width:100%;border-bottom:4px solid var(--color-naranja);overflow:visible}.navbar-container{width:100%;min-width:fit-content;padding:1rem 2%;display:flex;justify-content:space-between;align-items:center;gap:0;min-height:70px;box-sizing:border-box}.navbar-left{display:flex;align-items:center;gap:1.5rem;margin-right:auto;flex-shrink:0}.navbar-home{font-size:2rem;text-decoration:none;padding:.75rem;border-radius:12px;transition:all .3s ease;background:#ffffff1a;border:2px solid transparent;line-height:1}.navbar-home:hover{background:#fff3;border-color:var(--color-naranja);transform:scale(1.15) rotate(5deg);box-shadow:0 4px 12px #e67e2266}.navbar-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0;text-shadow:2px 2px 6px rgba(0,0,0,.3);letter-spacing:.5px;white-space:nowrap}.navbar-right{display:flex;align-items:center;gap:1.5rem;margin-left:auto;height:100%;flex-shrink:0}.user-section{display:flex;align-items:center;gap:2rem;background:#ffffff26;padding:.75rem 2rem;border-radius:12px;border:2px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:500px;box-sizing:border-box;flex-shrink:0}.user-info{display:flex;flex-direction:row;align-items:center;gap:2rem;color:#fff;flex:1;flex-shrink:0}.welcome-message{font-size:2rem;font-weight:600;color:#fff;text-shadow:1px 1px 3px rgba(0,0,0,.2);white-space:nowrap;min-width:150px;flex-shrink:0}.welcome-message strong{color:var(--color-naranja);font-weight:800;text-shadow:1px 1px 3px rgba(0,0,0,.3)}.user-details{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:#ffffffe6;align-items:flex-start;min-width:180px;flex-shrink:0}.user-name{color:var(--color-beige);font-weight:600;font-size:1rem}.club-info,.role-info{color:#fffc;font-size:.9rem}.club-info strong,.role-info strong{color:var(--color-naranja);font-weight:700}.logout-btn{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;border:2px solid transparent;padding:.7rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .3s ease;white-space:nowrap;box-shadow:0 3px 8px #e67e224d;min-width:140px;flex-shrink:0}.logout-btn:hover{background:linear-gradient(135deg,var(--color-naranja-hover),var(--color-naranja));border-color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #e67e2280}.logout-btn:active{transform:translateY(0);box-shadow:0 2px 4px #e67e224d}.auth-links{display:flex;gap:1rem;align-items:stretch}.nav-link{margin:0;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:2px solid transparent;line-height:1;min-height:44px}.nav-link.login-link{background:#ffffff26;border:2px solid rgba(255,255,255,.3);color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;transition:all .3s ease;white-space:nowrap;cursor:pointer;font-family:inherit}button.nav-link.login-link:hover{background:#ffffff40;border-color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.login-link{background:#ffffff26;border-color:#ffffff4d}.register-link{background:linear-gradient(135deg,var(--color-naranja),var(--color-naranja-hover));color:#fff;font-weight:700;box-shadow:0 3px 8px #e67e224d}@media(max-width:1200px){.navbar-title{font-size:1.3rem}.user-section{min-width:450px;gap:1.5rem;padding:.6rem 1.5rem}.welcome-message{font-size:1.7rem}}@media(max-width:968px){.navbar-container{padding:.8rem 2%}.navbar-title{font-size:1.2rem}.user-section{min-width:380px;gap:1rem;padding:.6rem 1rem}.welcome-message{font-size:1.4rem;min-width:120px}.user-details{min-width:150px}.user-name{font-size:.9rem}.club-info,.role-info{font-size:.8rem}.logout-btn{min-width:120px;padding:.6rem 1.2rem;font-size:.9rem}}@media(max-width:1100px){.navbar-container{flex-direction:column;align-items:stretch;gap:1rem;padding:.8rem 2%;min-height:auto;min-width:unset}.navbar-left{width:100%;justify-content:center;margin:0;gap:1rem}.navbar-right{width:100%;justify-content:flex-end;margin:0}.navbar-home{font-size:1.8rem}.navbar-title{font-size:1.1rem}.user-section{width:100%;min-width:unset;max-width:100%;flex-direction:column;align-items:stretch;padding:1rem;gap:1rem}.user-info{flex-direction:column;text-align:center;gap:1rem;align-items:center}.welcome-message{font-size:1.4rem;min-width:unset;white-space:normal}.user-details{align-items:center;min-width:unset;gap:.3rem}.logout-btn{width:100%;min-width:unset;max-width:100%}.auth-links{flex-direction:column;width:100%;gap:.8rem}.nav-link{width:100%}}@media(max-width:480px){.navbar-container{padding:.6rem 3%}.navbar-home{font-size:1.5rem;padding:.5rem}.navbar-title{font-size:.95rem}.user-section{padding:.8rem;gap:.8rem}.welcome-message{font-size:1.2rem}.user-name{font-size:.9rem}.club-info,.role-info{font-size:.8rem}.logout-btn,.nav-link{padding:.7rem;font-size:.9rem}}@media(max-width:360px){.navbar-title{font-size:.85rem}.navbar-home{font-size:1.3rem}.welcome-message{font-size:1.1rem}.user-name{font-size:.85rem}.club-info,.role-info{font-size:.75rem}}
