.SimuladorHashingColisiones-module__MVX92W__container{--primary:#2e86ab;--secondary:#48a9a6;--accent:#7fb3d3;--hero-bg:#1a5278;--bg-primary:#fafafa;--bg-card:#fff;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--border:#e5e5e5;--hover:#f5f5f5;--celda-vacia:#e8e8e8;--celda-ocupada:#2e86ab;--celda-colision:#dc3545;--celda-insertando:#48a9a6;--radius:10px;--radius-lg:14px;background:var(--bg-primary);max-width:1100px;min-height:100vh;color:var(--text-primary);margin:0 auto;padding:2rem 1.25rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__container{--bg-primary:#1a1a1a;--bg-card:#2a2a2a;--text-primary:#e5e5e5;--text-secondary:#b0b0b0;--text-muted:#888;--border:#404040;--hover:#333;--celda-vacia:#3a3a3a}.SimuladorHashingColisiones-module__MVX92W__hero{text-align:center;background:var(--hero-bg);border-radius:var(--radius-lg);color:#fff;margin-top:80px;margin-bottom:2rem;padding:2rem 1.5rem}.SimuladorHashingColisiones-module__MVX92W__titulo{margin:0 0 .5rem;font-size:2.2rem;font-weight:700}.SimuladorHashingColisiones-module__MVX92W__subtitulo{opacity:.92;margin:0;font-size:1.1rem}.SimuladorHashingColisiones-module__MVX92W__main{flex-direction:column;gap:1.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__controlPanel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__controlGroup{flex-direction:column;gap:.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__controlLabel{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__controlLabel{color:var(--text-secondary)}.SimuladorHashingColisiones-module__MVX92W__botonesGrupo{flex-wrap:wrap;gap:.4rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__btnOpcion{border:1.5px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:.4rem .85rem;font-size:.9rem;transition:all .2s}.SimuladorHashingColisiones-module__MVX92W__btnOpcion:hover{border-color:var(--primary);background:var(--hover)}.SimuladorHashingColisiones-module__MVX92W__btnOpcion:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.SimuladorHashingColisiones-module__MVX92W__btnOpcionActivo{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__btnOpcion{background:var(--bg-card);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__btnOpcion:hover{background:var(--hover)}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__btnOpcionActivo{background:var(--primary);border-color:var(--primary);color:#fff}.SimuladorHashingColisiones-module__MVX92W__selectSet{border:1.5px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:6px;max-width:320px;padding:.45rem .75rem;font-size:.95rem}.SimuladorHashingColisiones-module__MVX92W__selectSet:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__selectSet{background:var(--bg-card);color:var(--text-primary);border-color:var(--border)}.SimuladorHashingColisiones-module__MVX92W__tablaSeccion{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem}.SimuladorHashingColisiones-module__MVX92W__seccionTitulo{color:var(--text-primary);margin:0 0 1rem;font-size:1.05rem;font-weight:700}.SimuladorHashingColisiones-module__MVX92W__tablaGrid{gap:6px;margin-bottom:.75rem;display:grid}.SimuladorHashingColisiones-module__MVX92W__celdaHash{cursor:default;border-radius:8px;flex-direction:column;align-items:center;gap:4px;min-height:64px;padding:6px 4px;transition:transform .25s,box-shadow .25s;display:flex;position:relative}.SimuladorHashingColisiones-module__MVX92W__celdaVacia{background:var(--celda-vacia);border:1.5px solid #ccc}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__celdaVacia{background:var(--celda-vacia);border-color:#555}.SimuladorHashingColisiones-module__MVX92W__celdaOcupada{background:var(--celda-ocupada);color:#fff;border:1.5px solid #256a8a}.SimuladorHashingColisiones-module__MVX92W__celdaColision{background:var(--celda-colision);color:#fff;border:1.5px solid #a71d2a}.SimuladorHashingColisiones-module__MVX92W__insertando{transform:scale(1.08);box-shadow:0 0 0 3px #48a9a666;background:var(--celda-insertando)!important;border-color:#2d7a77!important}.SimuladorHashingColisiones-module__MVX92W__celdaIndice{opacity:.75;font-size:.72rem;font-weight:700;line-height:1}.SimuladorHashingColisiones-module__MVX92W__chipZona{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.SimuladorHashingColisiones-module__MVX92W__chip{white-space:nowrap;text-overflow:ellipsis;background:#fff3;border-radius:4px;max-width:72px;padding:1px 5px;font-size:.68rem;font-weight:600;overflow:hidden}.SimuladorHashingColisiones-module__MVX92W__sondeoLabel{color:#fff;text-align:center;word-break:break-all;font-size:.72rem;font-weight:600}.SimuladorHashingColisiones-module__MVX92W__sondeoInfo{color:var(--text-secondary);background:var(--hover);border-radius:6px;margin-top:.5rem;padding:.4rem .75rem;font-size:.85rem}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__sondeoInfo{background:var(--hover);color:var(--text-secondary)}.SimuladorHashingColisiones-module__MVX92W__insercionPanel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__botonesInsercion{flex-wrap:wrap;gap:.6rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__btnPrimario{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1.1rem;font-size:.95rem;font-weight:600;transition:background .2s,transform .15s}.SimuladorHashingColisiones-module__MVX92W__btnPrimario:hover:not(:disabled){background:#256a8a;transform:translateY(-1px)}.SimuladorHashingColisiones-module__MVX92W__btnPrimario:disabled{opacity:.45;cursor:not-allowed}.SimuladorHashingColisiones-module__MVX92W__btnPrimario:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.SimuladorHashingColisiones-module__MVX92W__btnSecundario{border:1.5px solid var(--primary);color:var(--primary);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1.1rem;font-size:.95rem;font-weight:600;transition:all .2s}.SimuladorHashingColisiones-module__MVX92W__btnSecundario:hover:not(:disabled){background:var(--primary);color:#fff}.SimuladorHashingColisiones-module__MVX92W__btnSecundario:disabled{opacity:.45;cursor:not-allowed}.SimuladorHashingColisiones-module__MVX92W__btnSecundario:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.SimuladorHashingColisiones-module__MVX92W__btnLimpiar{color:#dc3545;cursor:pointer;background:0 0;border:1.5px solid #dc3545;border-radius:8px;padding:.5rem 1.1rem;font-size:.95rem;font-weight:600;transition:all .2s}.SimuladorHashingColisiones-module__MVX92W__btnLimpiar:hover{color:#fff;background:#dc3545}.SimuladorHashingColisiones-module__MVX92W__btnLimpiar:focus-visible{outline-offset:2px;outline:2px solid #dc3545}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__btnSecundario{color:var(--accent);border-color:var(--accent)}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__btnSecundario:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.SimuladorHashingColisiones-module__MVX92W__inputPropio{flex-direction:column;gap:.4rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__inputRow{flex-wrap:wrap;gap:.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__inputTexto{border:1.5px solid var(--border);background:var(--bg-primary);min-width:180px;color:var(--text-primary);border-radius:8px;flex:1;padding:.45rem .75rem;font-size:.95rem;transition:border-color .2s}.SimuladorHashingColisiones-module__MVX92W__inputTexto:focus{border-color:var(--primary);outline:none}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__inputTexto{background:var(--bg-card);border-color:var(--border);color:var(--text-primary)}.SimuladorHashingColisiones-module__MVX92W__calculoPanel{border:1px solid var(--accent);border-radius:var(--radius);color:var(--text-primary);background:#e8f4fd;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.88rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__calculoPanelColision{background:#fff0f0;border-color:#dc3545}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__calculoPanel{border-color:var(--accent);color:var(--text-primary);background:#1e3345}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__calculoPanelColision{background:#3a1a1a;border-color:#dc3545}.SimuladorHashingColisiones-module__MVX92W__calculoIcono{flex-shrink:0;font-size:1rem}.SimuladorHashingColisiones-module__MVX92W__calculoTexto{word-break:break-all;flex:1;font-family:Courier New,Courier,monospace}.SimuladorHashingColisiones-module__MVX92W__colisionBadge{color:#fff;white-space:nowrap;background:#dc3545;border-radius:4px;padding:1px 8px;font-size:.8rem;font-weight:700}.SimuladorHashingColisiones-module__MVX92W__statsPanel{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.SimuladorHashingColisiones-module__MVX92W__statCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:.9rem 1rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__statLabel{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.SimuladorHashingColisiones-module__MVX92W__statValor{color:var(--primary);font-size:1.5rem;font-weight:700}.SimuladorHashingColisiones-module__MVX92W__statValorRojo{color:#dc3545}.SimuladorHashingColisiones-module__MVX92W__factorBarraContenedor{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem}.SimuladorHashingColisiones-module__MVX92W__factorBarraTexto{color:var(--text-secondary);justify-content:space-between;margin-bottom:.5rem;font-size:.85rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__alertaAlta{color:#dc3545;font-weight:600}.SimuladorHashingColisiones-module__MVX92W__factorBarraFondo{background:var(--celda-vacia);border-radius:6px;height:14px;overflow:hidden}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__factorBarraFondo{background:var(--celda-vacia)}.SimuladorHashingColisiones-module__MVX92W__barraFactorCarga{background:var(--primary);border-radius:6px;height:100%;transition:width .4s,background .3s}.SimuladorHashingColisiones-module__MVX92W__barraAlta{background:#dc3545}.SimuladorHashingColisiones-module__MVX92W__leyenda{color:var(--text-secondary);flex-wrap:wrap;gap:.75rem;padding:.6rem 0;font-size:.85rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__leyendaItem{align-items:center;gap:.35rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__leyendaDot{border-radius:3px;flex-shrink:0;width:14px;height:14px;display:inline-block}.SimuladorHashingColisiones-module__MVX92W__dotVacia{background:var(--celda-vacia);border:1.5px solid #ccc}.SimuladorHashingColisiones-module__MVX92W__dotOcupada{background:var(--celda-ocupada)}.SimuladorHashingColisiones-module__MVX92W__dotColision{background:var(--celda-colision)}.SimuladorHashingColisiones-module__MVX92W__dotInsertando{background:var(--celda-insertando)}.SimuladorHashingColisiones-module__MVX92W__introParagraph{color:var(--text-primary);margin-bottom:1.5rem;font-size:1rem;line-height:1.7}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__introParagraph{color:var(--text-primary)}.SimuladorHashingColisiones-module__MVX92W__tableWrapper{margin-bottom:1.5rem;overflow-x:auto}.SimuladorHashingColisiones-module__MVX92W__comparativaTable{border-collapse:collapse;width:100%;font-size:.88rem}.SimuladorHashingColisiones-module__MVX92W__comparativaTable th{background:var(--primary);color:#fff;text-align:left;white-space:nowrap;padding:.6rem .75rem;font-weight:600}.SimuladorHashingColisiones-module__MVX92W__comparativaTable td{border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:top;padding:.55rem .75rem}.SimuladorHashingColisiones-module__MVX92W__comparativaTable tbody tr:nth-child(2n){background:var(--hover)}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__comparativaTable td{color:var(--text-primary)}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__comparativaTable tbody tr:nth-child(2n){background:var(--hover)}.SimuladorHashingColisiones-module__MVX92W__escenariosGrid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.SimuladorHashingColisiones-module__MVX92W__escenarioCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__escenarioCard{background:var(--bg-card);border-color:var(--border)}.SimuladorHashingColisiones-module__MVX92W__escenarioHeader{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__escenarioIcon{font-size:1.1rem}.SimuladorHashingColisiones-module__MVX92W__escenarioDesc{color:var(--text-secondary);margin:0 0 .5rem;font-size:.88rem;line-height:1.5}.SimuladorHashingColisiones-module__MVX92W__escenarioTip{color:var(--primary);font-size:.82rem;font-style:italic}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__escenarioTip{color:var(--accent)}.SimuladorHashingColisiones-module__MVX92W__faqList{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__faqItem{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__faqItem{background:var(--bg-card);border-color:var(--border)}.SimuladorHashingColisiones-module__MVX92W__faqItem h4{color:var(--primary);margin:0 0 .4rem;font-size:.95rem;font-weight:700}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__faqItem h4{color:var(--accent)}.SimuladorHashingColisiones-module__MVX92W__faqItem p{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.6}.SimuladorHashingColisiones-module__MVX92W__stepGuide{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__step{align-items:flex-start;gap:1rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__stepNumber{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex}.SimuladorHashingColisiones-module__MVX92W__stepContent{flex:1}.SimuladorHashingColisiones-module__MVX92W__stepContent strong{color:var(--text-primary);margin-bottom:.2rem;font-size:.95rem;display:block}.SimuladorHashingColisiones-module__MVX92W__stepContent p{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.5}.SimuladorHashingColisiones-module__MVX92W__tipsGrid{grid-template-columns:repeat(2,1fr);gap:.9rem;margin-bottom:1.5rem;display:grid}.SimuladorHashingColisiones-module__MVX92W__tipCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.3rem;padding:1rem;display:flex}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__tipCard{background:var(--bg-card);border-color:var(--border)}.SimuladorHashingColisiones-module__MVX92W__tipIcon{font-size:1.3rem}.SimuladorHashingColisiones-module__MVX92W__tipCard strong{color:var(--text-primary);font-size:.9rem}.SimuladorHashingColisiones-module__MVX92W__tipCard p{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.5}.SimuladorHashingColisiones-module__MVX92W__warningBox{border-radius:var(--radius);background:#fff8e1;border:1.5px solid #ffc107;padding:1rem 1.25rem}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__warningBox{background:#2a2310;border-color:#ffc107}.SimuladorHashingColisiones-module__MVX92W__warningHeader{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.SimuladorHashingColisiones-module__MVX92W__warningIcon{font-size:1.1rem}.SimuladorHashingColisiones-module__MVX92W__warningHeader strong{color:var(--text-primary);font-size:.95rem}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__warningHeader strong{color:var(--text-primary)}.SimuladorHashingColisiones-module__MVX92W__warningList{flex-direction:column;gap:.4rem;padding-left:1.25rem;list-style:outside;display:flex}.SimuladorHashingColisiones-module__MVX92W__warningList li{color:var(--text-secondary);font-size:.87rem;line-height:1.5}[data-theme=dark] .SimuladorHashingColisiones-module__MVX92W__warningList li{color:var(--text-secondary)}@media (prefers-reduced-motion:reduce){.SimuladorHashingColisiones-module__MVX92W__celdaHash{transition:none}.SimuladorHashingColisiones-module__MVX92W__insertando{box-shadow:none;transform:none}.SimuladorHashingColisiones-module__MVX92W__barraFactorCarga,.SimuladorHashingColisiones-module__MVX92W__chip{transition:none}}@media (max-width:900px){.SimuladorHashingColisiones-module__MVX92W__statsPanel{grid-template-columns:repeat(2,1fr)}.SimuladorHashingColisiones-module__MVX92W__escenariosGrid,.SimuladorHashingColisiones-module__MVX92W__tipsGrid{grid-template-columns:1fr}}@media (max-width:640px){.SimuladorHashingColisiones-module__MVX92W__hero{margin-top:64px;padding:1.25rem 1rem}.SimuladorHashingColisiones-module__MVX92W__titulo{font-size:1.7rem}.SimuladorHashingColisiones-module__MVX92W__subtitulo{font-size:.95rem}.SimuladorHashingColisiones-module__MVX92W__statsPanel{grid-template-columns:repeat(2,1fr)}.SimuladorHashingColisiones-module__MVX92W__tablaGrid{gap:4px}.SimuladorHashingColisiones-module__MVX92W__celdaHash{min-height:50px}.SimuladorHashingColisiones-module__MVX92W__botonesInsercion{flex-direction:column}.SimuladorHashingColisiones-module__MVX92W__btnPrimario,.SimuladorHashingColisiones-module__MVX92W__btnSecundario,.SimuladorHashingColisiones-module__MVX92W__btnLimpiar{width:100%}.SimuladorHashingColisiones-module__MVX92W__inputRow{flex-direction:column}.SimuladorHashingColisiones-module__MVX92W__inputRow .SimuladorHashingColisiones-module__MVX92W__btnPrimario{width:100%}}
