:root{--rojo:#e4122b;--tinta:#161616;--gris:#f2f2f2;--verde:#1b8a3a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;color:var(--tinta);background:#fff}#barra{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem 1rem;background:var(--rojo);color:#fff;padding-top:calc(.7rem + env(safe-area-inset-top))}#titulo{font-weight:700}.chip{font-size:.75rem;background:#fff3;padding:.15rem .5rem;border-radius:999px}.chip.off{background:#b00020}.chip.ok{background:var(--verde)}.chip.sync{background:#d99e00}#app{padding:1rem;max-width:640px;margin:0 auto}button{font:inherit}.btn{width:100%;padding:.9rem;border:0;border-radius:.6rem;background:var(--rojo);color:#fff;font-weight:600}input{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:.6rem;font:inherit}.lista{list-style:none;padding:0;margin:0}.item{display:flex;align-items:center;gap:.75rem;padding:.7rem;border-bottom:1px solid var(--gris)}.item .nom{flex:1}.toggle{min-width:5.5rem;padding:.6rem;border-radius:.5rem;border:2px solid #ccc;background:#fff}.toggle.on{border-color:var(--verde);background:#e7f6ec;color:var(--verde);font-weight:700}.pasos{display:flex;align-items:center;gap:.4rem}.pasos button{width:2.4rem;height:2.4rem;border-radius:.5rem;border:1px solid #ccc;background:#fff;font-size:1.2rem}.pasos .n{min-width:1.5rem;text-align:center;font-weight:700}.tabs{display:flex;gap:.5rem;margin-bottom:1rem}.tabs button{flex:1;padding:.7rem;border:0;border-radius:.6rem;background:var(--gris)}.tabs button.activa{background:var(--tinta);color:#fff}.tarjeta{border:1px solid var(--gris);border-radius:.6rem;padding:.8rem;margin-bottom:.6rem}.error{background:#b00020;color:#fff;padding:.7rem 1rem;font-size:.9rem}select{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:.6rem;font:inherit;background:#fff}textarea{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:.6rem;font:inherit;background:#fff;resize:vertical}.item.mala{background:#fff3f3;border-left:4px solid #b00020}.ayuda.mala{background:#fff3f3;border-left:4px solid #b00020;padding:.6rem;border-radius:.4rem}.pendiente{color:#b00020}.item.tocado .nom small{color:#777}.item .nom small [title]{border-bottom:1px dotted currentColor;cursor:help}.campo{margin-bottom:.6rem}.campo label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.2rem}.fila2{display:flex;gap:.5rem}.fila2>*{flex:1}.btn+.btn{margin-top:.5rem}#app{max-width:900px}h2{margin:.2rem 0 .3rem}h3{margin:1.4rem 0 .2rem;font-size:1rem;padding-top:.8rem;border-top:1px solid var(--gris)}.ayuda{color:#555;font-size:.85rem;margin:0 0 1rem;line-height:1.35}.btn.sec{background:var(--gris);color:var(--tinta)}.btn.peligro{background:#fff;color:#b00020;border:2px solid #b00020;font-weight:600}.btn.chico{width:auto;padding:.55rem .8rem;font-size:.85rem}.plantel-grid{display:grid;grid-template-columns:4.5rem 1fr 9rem 14rem;gap:.5rem;align-items:center}.fila-jugador{padding:.55rem 0;border-bottom:1px solid var(--gris)}.fila-jugador input,.fila-jugador select{width:100%}.rotulos{padding:.2rem 0;font-size:.75rem;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.03em}.fila-jugador.nueva{background:#fafafa;border:1px dashed #bbb;border-radius:.6rem;padding:.55rem;margin-top:.6rem}@media (max-width:640px){.rotulos{display:none}.fila-jugador{grid-template-columns:5rem 1fr}.fila-jugador .pos,.fila-jugador .acciones{grid-column:1/-1}}.acciones{display:flex;gap:.5rem}.acciones .btn+.btn{margin-top:0}.fila-equipo{display:grid;grid-template-columns:2rem 1fr 6rem 1fr 1fr 2.5rem 7rem;gap:.5rem;align-items:center;padding:.55rem;border-bottom:1px solid var(--gris);border-radius:.6rem}.fila-equipo .acciones{display:flex;gap:.3rem}.fila-equipo .acciones .btn{flex:1;padding:.55rem .4rem}.fila-equipo input,.fila-equipo select{width:100%}.fila-equipo .etiqueta{text-align:center;font-weight:700;color:#666;cursor:help}.fila-equipo.nueva{background:#fafafa;border:1px dashed #bbb;margin-top:.6rem}.fila-equipo.cabecera{font-size:.7rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.03em;padding-bottom:.2rem;border-bottom:2px solid var(--gris)}.fila-equipo.cabecera span[title],.rotulos span[title]{justify-self:start}.fila-equipo.cabecera span[title],.rotulos span[title],.campo label[title]{display:inline-block;border-bottom:1px dotted #999;cursor:help}.fila-equipo.sucia{background:#fffbe6}.cabeza-lbl{display:flex;align-items:center;justify-content:center;gap:.3rem;font-size:.7rem;line-height:1.1;cursor:pointer}.cabeza-lbl input{width:auto;flex:none}.cabeza-lbl span{display:none}.btn:disabled{background:var(--gris);color:#999}.btn.peligro:disabled{background:#fff;border-color:#ddd;color:#aaa}@media (max-width:640px){.fila-equipo{grid-template-columns:1fr 1fr}.fila-equipo.cabecera{display:none}.fila-equipo .dt,.fila-equipo .at,.fila-equipo .acciones{grid-column:1/-1}.cabeza-lbl{justify-content:flex-start}.cabeza-lbl span{display:inline}}.ejemplo{background:var(--gris);border-radius:.6rem;padding:.7rem .9rem;font-size:.85rem;line-height:1.5;overflow-x:auto;white-space:pre;margin:.4rem 0 .8rem}.item.publicado{background:#f0fff4;border-left:4px solid var(--verde)}.publicado-txt{color:var(--verde)}.fila-sede,.fila-inst,.fila-rama,.fila-zona,.fila-cat{display:grid;grid-template-columns:1fr 1.3fr 3rem 3.5rem 5rem 5rem 5rem 11rem;gap:.5rem;align-items:center;padding:.55rem;border-bottom:1px solid var(--gris);border-radius:.6rem}.fila-sede{grid-template-columns:1fr 1.6fr 11rem}.fila-inst{grid-template-columns:2rem 1fr 1.5fr 7rem 3rem 1.2fr 6rem}.fila-sede input,.fila-inst input,.fila-inst select,.fila-rama input[type=text],.fila-zona input,.fila-cat input{width:100%}.fila-sede.sucia,.fila-inst.sucia,.fila-rama.sucia,.fila-zona.sucia,.fila-cat.sucia{background:#fffbe6}.rotulos-cat{font-size:.7rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--gris)}.rotulos-cat span[title]{justify-self:start;display:inline-block;border-bottom:1px dotted #999;cursor:help}.fila-sede .acciones,.fila-inst .acciones,.fila-rama .acciones,.fila-zona .acciones,.fila-cat .acciones{display:flex;gap:.3rem}.fila-sede .acciones .btn,.fila-inst .acciones .btn,.fila-rama .acciones .btn,.fila-zona .acciones .btn,.fila-cat .acciones .btn{flex:1;padding:.55rem .4rem}@media (max-width:640px){.fila-cat{grid-template-columns:1fr 1fr}.rotulos-cat{display:none}.fila-cat .ccursos,.fila-cat .acciones{grid-column:1/-1}}.cabecera-torneo{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;padding:.5rem .75rem;border-radius:.6rem;background:var(--gris);border-left:4px solid var(--tinta);font-size:.95rem}.item.grupo{flex-direction:column;align-items:stretch;gap:.5rem}.grupo-top{display:flex;align-items:center;gap:.75rem}.grupo-top .nom{flex:1}.sin-partidos{color:#888;font-style:italic}.mini-partidos{list-style:none;margin:0;padding:0;border-left:3px solid var(--gris)}.mini-partidos li{display:grid;grid-template-columns:1fr 5.5rem 1fr;align-items:center;gap:.5rem;padding:.35rem .7rem;font-size:.9rem}.mini-partidos li:nth-child(odd){background:#fafafa}.mini-partidos .eq2{text-align:right}.mini-partidos .mk{text-align:center;white-space:nowrap}.mini-partidos .pendiente{color:#999;font-size:.8rem}.aviso{color:#b26a00;background:#fff6e5;border:1px solid #ffd899;border-radius:.4rem;padding:.05rem .35rem;font-size:.8rem;white-space:nowrap;cursor:help}.sin-cabezas .fila-equipo{grid-template-columns:2rem 1fr 6rem 1fr 1fr 7rem}.chk{display:flex;align-items:center;gap:.4rem;cursor:pointer}.chk input{width:auto;margin:0}.chk.grande{font-size:1rem;padding:.5rem 0}.fila-rama{grid-template-columns:1fr 8rem 6rem}.panel{background:#fafafa;border:1px dashed #bbb;border-radius:.6rem;padding:.8rem;margin:.5rem 0}.panel h4{margin:0 0 .3rem}.colegios{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.3rem;margin-bottom:.7rem}.fila-inst.juega{border-left:3px solid var(--verde)}.apagado{color:#888}.escudito.mono{color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.02em}.fila-zona{grid-template-columns:1fr 5rem 6rem}.escudito{width:1.8rem;height:1.8rem;border-radius:.3rem;object-fit:contain;flex:none;display:flex;align-items:center;justify-content:center}.escudito.mono{color:#fff;font-size:.6rem;font-weight:700}.escudito.roto{outline:2px dashed #e4a11b;cursor:help}.colegios .chk{padding:.15rem}.colegios.pool .chk{border:1px solid var(--gris);border-radius:.5rem;padding:.4rem .5rem;background:#fff}.colegios.pool .chk.dentro{background:#f0fff4;border-color:var(--verde)}.colegios.pool .chk span{line-height:1.15}.colegios.pool small{font-size:.65rem}.fila-grilla{display:grid;grid-template-columns:2rem 1fr repeat(var(--cats,3),minmax(6rem,1fr));gap:.5rem;align-items:center;padding:.45rem;border-bottom:1px solid var(--gris)}.fila-grilla select{width:100%;padding:.45rem;font-size:.85rem}.fila-grilla select:disabled{background:var(--gris);color:#777;cursor:help}.fila-grilla.cabecera{font-size:.7rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--gris)}.fila-grilla.cabecera span[title]{justify-self:start;display:inline-block;border-bottom:1px dotted #999;cursor:help}.nom-colegio{font-weight:600;font-size:.9rem}.dato{font-size:.85rem;color:#666}.celda-vacia{font-size:.75rem;color:#b26a00;cursor:help;text-align:center}.grupos-cat{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding:.4rem 0;border-bottom:1px solid var(--gris)}.grupos-cat .grupo-nuevo{width:7rem;margin-left:auto;padding:.45rem}.chip{background:var(--gris);border-radius:1rem;padding:.15rem .6rem;font-size:.8rem}.celda-vacia.doble{color:#b26a00;background:#fff6e5;border-radius:.4rem;padding:.3rem}.fila2 input[type=color]{flex:0 0 3rem}.bloque{border:1px solid var(--gris);border-radius:.6rem;margin-bottom:.6rem;background:#fff}.bloque>summary{cursor:pointer;padding:.8rem 1rem;list-style:none;display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.bloque>summary::-webkit-details-marker{display:none}.bloque>summary:before{content:"▸";color:#999;font-size:.9rem}.bloque[open]>summary:before{content:"▾"}.bloque[open]>summary{border-bottom:1px solid var(--gris);background:var(--gris)}.bloque>summary small{color:#777;font-size:.8rem;font-weight:400}.bloque>summary+*{margin-top:.8rem}.bloque>*:not(summary){padding-left:1rem;padding-right:1rem}.bloque>*:last-child{margin-bottom:1rem}.bloque h3:first-of-type{border-top:0;padding-top:0;margin-top:0}.chip.mal{background:#fff6e5;color:#b26a00;border:1px solid #ffd899}
