:root{--fondo:#f4f7fb;--panel:#fff;--tinta:#12203a;--suave:#56657c;--linea:#d8e0ea;--pista:#1d4f91;--pista-suave:#e5eef8;--pelota:#c9da2c;--pelota-borde:#8e9a16;--bien:#137a3a;--bien-suave:#e2f3e7;--mal:#b3261e;--mal-suave:#fbe7e5;--aviso:#8f4a06;--aviso-suave:#fbeedc;--hueso:#1d4f91;--articulacion:#c9da2c;--titulo:"Avenir Next Condensed", "Arial Narrow", system-ui, sans-serif;--texto:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-tema=oscuro]{--fondo:#0e1626;--panel:#16213a;--tinta:#e7edf6;--suave:#a2b0c5;--linea:#2a3a57;--pista:#86b2ee;--pista-suave:#1b2d4d;--bien:#6fd39a;--bien-suave:#163426;--mal:#ff8a80;--mal-suave:#3a1c1a;--aviso:#f2b36b;--aviso-suave:#3a2a16;--hueso:#86b2ee;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--fondo);color:var(--tinta);font-family:var(--texto);-webkit-text-size-adjust:100%;margin:0;font-size:15px;line-height:1.5}body{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-block:calc(12px + env(safe-area-inset-top,0px)) calc(32px + env(safe-area-inset-bottom,0px))}#app{flex-direction:column;gap:16px;max-width:880px;margin:0 auto;display:flex}h1,h2,h3{font-family:var(--titulo);text-wrap:balance;letter-spacing:.01em;margin:0;line-height:1.1}h1{font-size:1.9rem}h2{font-size:1.35rem}h3{font-size:1.1rem}p{margin:0}a{color:var(--pista)}.barra{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.fila{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:10px;min-width:0;display:flex}.panel{background:var(--panel);border:1px solid var(--linea);border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.suave{color:var(--suave)}.chico{font-size:.82rem}.etiqueta{text-transform:uppercase;letter-spacing:.07em;color:var(--suave);font-size:.72rem;font-weight:600}.num{font-variant-numeric:tabular-nums}button,.boton,select,input,textarea{font:inherit;color:inherit}button,.boton{border:1px solid var(--linea);background:var(--panel);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:9px 14px;font-weight:500;text-decoration:none;display:inline-flex}button:focus-visible,.boton:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--pelota);outline-offset:2px}button.prim,.boton.prim{background:var(--pista);border-color:var(--pista);color:var(--panel);font-weight:600}button.chico{min-height:34px;padding:5px 10px;font-size:.85rem}button:disabled{opacity:.5;cursor:default}button.activo{background:var(--pista-suave);border-color:var(--pista);color:var(--pista);font-weight:600}button.acierto.activo{background:var(--bien-suave);border-color:var(--bien);color:var(--bien)}button.fallo.activo{background:var(--mal-suave);border-color:var(--mal);color:var(--mal)}button.peligro{color:var(--mal)}select,input[type=text],input[type=number],textarea{border:1px solid var(--linea);background:var(--panel);border-radius:10px;max-width:100%;min-height:42px;padding:8px 10px}textarea{width:100%;min-height:80px}label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}label.check{flex-direction:row;align-items:center;gap:8px}.pill{white-space:nowrap;background:var(--pista-suave);color:var(--pista);border-radius:99px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.pill.bien{background:var(--bien-suave);color:var(--bien)}.pill.mal{background:var(--mal-suave);color:var(--mal)}.pill.aviso{background:var(--aviso-suave);color:var(--aviso)}.aviso{background:var(--aviso-suave);border-radius:10px;padding:10px 12px;font-size:.9rem}.error{background:var(--mal-suave);color:var(--tinta);border-radius:10px;padding:10px 12px;font-size:.9rem}.marca{font-family:var(--titulo);align-items:center;gap:8px;font-size:1.35rem;font-weight:700;display:inline-flex}.pelota{background:var(--pelota);border:1px solid var(--pelota-borde);border-radius:50%;flex:none;width:14px;height:14px;display:inline-block}.video{background:#000;border-radius:10px;position:relative;overflow:hidden}.video video{width:100%;max-height:62vh;display:block}.video canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.video.tocar canvas{pointer-events:auto;cursor:crosshair}.linea canvas{background:var(--pista-suave);touch-action:manipulation;cursor:pointer;border-radius:8px;width:100%;display:block}.progreso{background:var(--pista-suave);border-radius:99px;height:8px;overflow:hidden}.progreso>div{background:var(--pista);height:100%}.golpes{flex-direction:column;gap:8px;display:flex}.golpe{border:1px solid var(--linea);background:var(--panel);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.golpe.sel{border-color:var(--pista);box-shadow:0 0 0 2px var(--pista-suave)}.golpe.apagado{opacity:.55}.medidas{color:var(--suave);flex-wrap:wrap;gap:6px 12px;font-size:.82rem;display:flex}.medidas b{color:var(--tinta);font-weight:600}.frase{font-size:1.05rem}.frase b{font-family:var(--titulo);font-size:1.3rem}.lista{flex-direction:column;gap:8px;display:flex}.sesion-item{border:1px solid var(--linea);background:var(--panel);color:inherit;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:12px;text-decoration:none;display:flex}.tabla{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}th,td{border-bottom:1px solid var(--linea);text-align:left;white-space:nowrap;padding:6px 8px}th{color:var(--suave);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
