/* Vista Equipos. Solo lo que no está en app.css, con prefijo .eq- */
.eq-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--gutter);align-items:start}

/* Lista de equipos */
.eq-teams{position:sticky;top:calc(var(--header-h) + 24px)}
.eq-teams .panel-head{align-items:baseline}
.eq-list > li::before{transition:opacity var(--dur-color) var(--ease-std)}
.eq-list > li:hover::before,.eq-list > li:hover + li::before,.eq-list > li:has(.is-active)::before,.eq-list > li:has(.is-active) + li::before{opacity:0}
.eq-team{grid-template-columns:8px minmax(0,1fr) auto}
.eq-tn{display:flex;align-items:baseline;gap:8px;min-width:0;font-size:14px;font-weight:600}
.eq-tname{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eq-tn .eyebrow{color:var(--ink-4);flex:none}
.eq-team.is-active .eq-tn .eyebrow{color:var(--ink-3)}
.eq-tc{font-size:13px;color:var(--ink-3)}

/* Cabecera del plantel */
.eq-roster{min-width:0}
.eq-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 16px}
.eq-id{min-width:0}
.eq-title{font-size:24px;font-weight:700;letter-spacing:-.025em;line-height:1.15;min-width:0}
.eq-title button{display:block;max-width:100%;font:inherit;letter-spacing:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:var(--r-xs);text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:2px;text-underline-offset:5px;transition:text-decoration-color var(--dur-color) var(--ease-std)}
.eq-title button:hover{text-decoration-color:var(--line-strong)}
.eq-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:13px;color:var(--ink-3);min-width:0}
.eq-meta > span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eq-meta .dot,.eq-team .dot{flex:none}
.eq-acts{display:flex;gap:8px;flex:none}

/* Plantel en rejilla: filas como botones que heredan las columnas */
.eq-grid{grid-template-columns:56px minmax(0,2fr) minmax(0,1fr) 90px 90px 90px 44px;padding:0 12px 12px}
.eq-r{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;position:relative;min-height:48px;border-radius:var(--r-md);text-align:left;transition:background var(--dur-color) var(--ease-std)}
.eq-r > span{min-width:0;padding:0 8px;font-size:13px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eq-r + .eq-r::before{content:"";position:absolute;left:12px;right:12px;top:0;border-top:1px solid var(--line);transition:opacity var(--dur-color) var(--ease-std)}
button.eq-r:hover{background:var(--hover)}
button.eq-r:hover::before,button.eq-r:hover + .eq-r::before{opacity:0}
.eq-r > .eq-num{font-size:14px;font-weight:700;color:var(--ink)}
.eq-r > .eq-name{font-size:14px;font-weight:600;color:var(--ink)}
.eq-r > .eq-pos{display:flex;gap:4px}
.eq-more{background:transparent;box-shadow:var(--ring-strong);color:var(--ink-3)}
.eq-r > .eq-age{text-align:right}
.eq-r > .eq-go{display:flex;justify-content:flex-end;color:var(--ink-4);overflow:visible;transition:color var(--dur-color) var(--ease-std),transform var(--dur-pop) var(--ease-pop)}
.eq-go svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
button.eq-r:hover .eq-go{color:var(--ink);transform:translateX(2px)}
.eq-r.is-off > span:not(.eq-react){opacity:.5}
.eq-r > .eq-react{grid-column:span 2;display:flex;justify-content:flex-end;overflow:visible}
.eq-roster .empty{margin:0 24px;padding:56px 20px 64px;border-top:1px solid var(--line)}
.eq-offline{padding:4px 24px 20px;font-size:13px;color:var(--ink-3)}
.eq-roster .empty + .eq-offline{padding-top:0;text-align:center}
.eq-link{font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;border-radius:var(--r-xs)}
.eq-link:hover{text-decoration-color:var(--ink)}

/* Sin equipos */
.eq-zero{max-width:440px;margin:10vh auto 0;align-items:center;padding-bottom:32px}
.eq-zero .empty{padding-bottom:16px}

/* Altas recientes */
.eq-new{animation:eq-row-in 900ms var(--ease-out)}
@keyframes eq-row-in{0%{opacity:0;transform:translateY(-6px);background:var(--accent-soft)}35%{opacity:1;transform:none;background:var(--accent-soft)}100%{background:transparent}}

/* Formularios del drawer */
.eq-form{display:flex;flex-direction:column;gap:20px}
.eq-form .err:empty{display:none}
.eq-form .err{margin:0;line-height:1.35}
.eq-form .segmented{align-self:flex-start}
.eq-form .poschips button{transition:background var(--dur-color) var(--ease-std),color var(--dur-color) var(--ease-std),transform var(--dur-pop) var(--ease-pop)}
.eq-form .poschips button:active{transform:scale(.97)}
.eq-inline{display:flex;align-items:center;gap:12px;min-width:0}
.field input.eq-w-num{width:88px;flex:none;font-size:16px;font-weight:700}
.field input.eq-w-code{width:96px;flex:none;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field input.eq-w-date{width:180px;flex:none}
.eq-hint{margin:0;font-size:12px;color:var(--ink-3);line-height:1.45}
.eq-hint b{color:var(--ink-2);font-weight:600;word-break:break-all}
.eq-lblrow{display:flex;align-items:center;justify-content:space-between;gap:12px}
.eq-sws{display:flex;flex-wrap:wrap;gap:12px;padding:4px}
.eq-sw{width:28px;height:28px;border-radius:50%;flex:none;transition:box-shadow var(--dur-color) var(--ease-std),transform var(--dur-pop) var(--ease-pop)}
.eq-sw:hover{transform:scale(1.08)}
.eq-sw[aria-pressed="true"]{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}
.eq-sw:focus-visible{outline-offset:5px}

/* Importar CSV */
.field textarea.eq-csv{min-height:168px;font-size:13px;font-variant-numeric:tabular-nums;white-space:pre;overflow-x:auto}
.eq-count{font-size:13px;color:var(--ink-2)}
.eq-count b{color:var(--ink);font-weight:700}
.eq-count .eq-bad{color:var(--bad);font-weight:600}
.eq-errs{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.eq-errs li{font-size:12px;font-weight:600;color:var(--bad);line-height:1.4}
.eq-errs li span{color:var(--ink-3);margin-right:6px}
.eq-errs li.eq-more-errs{color:var(--ink-3)}
.eq-mini{grid-template-columns:36px minmax(0,1.5fr) minmax(0,1fr) 24px 24px 40px;margin-top:14px}
.eq-mini > span{min-height:36px}
.eq-mini > span.h{position:static;min-height:32px;font-size:10px}
.eq-mini > span.eq-cut{display:block;line-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eq-csvmore{margin-top:8px;padding:0 8px}

@media (max-width:1100px){.eq-layout{grid-template-columns:260px minmax(0,1fr)}}
@media (max-width:900px){
  .eq-layout{grid-template-columns:1fr}
  .eq-teams{position:static}
  .eq-grid{grid-template-columns:44px minmax(0,1.6fr) minmax(0,1fr) 80px 28px}
  .eq-grid .eq-thr,.eq-grid .eq-age,.eq-r.is-off .eq-bats{display:none}
  .eq-head{flex-direction:column}
}
@media (max-width:640px){
  .eq-head{padding:20px 20px 12px}
  .eq-acts{width:100%}
  .eq-acts .btn{flex:1}
  .eq-grid{grid-template-columns:36px minmax(0,1.4fr) minmax(0,1fr) 28px;padding:0 8px 8px}
  .eq-grid .eq-bats{display:none}
  .eq-r.is-off .eq-pos{display:none}
}
