/* Panel del equipo · usa los tokens de la tienda (nucleo.css + tema.css) */
body.adm{ background:var(--bg); min-height:100vh; display:grid; grid-template-columns:250px minmax(0,1fr) }
.adm .grano,.adm .luz{ display:none }
.adm-lado{ position:sticky; top:0; height:100vh; display:flex; flex-direction:column; gap:28px; padding:24px 18px; border-right:1px solid var(--line); background:color-mix(in srgb, var(--panel-solido) 70%, transparent) }
.adm-lado .marca-link svg{ height:30px; width:auto }
.adm-lado nav{ display:grid; gap:4px }
.adm-lado nav a{ display:flex; justify-content:space-between; align-items:center; padding:11px 14px; border-radius:12px; color:var(--text-2); font-weight:500; font-size:14.5px; transition:background .2s, color .2s }
.adm-lado nav a:hover{ background:var(--panel); color:var(--text) }
.adm-lado nav a[aria-current]{ background:var(--panel-2); color:var(--text); box-shadow:inset 3px 0 0 var(--acc) }
.adm-lado nav b{ min-width:22px; height:22px; padding:0 6px; border-radius:11px; background:var(--acc); color:var(--acc-ink); font:700 11.5px/22px var(--f-mono); text-align:center }
.adm-yo{ margin-top:auto; display:flex; justify-content:space-between; font-size:13.5px; color:var(--text-2); padding:12px 14px; border-top:1px solid var(--line) }
.adm-yo a:hover{ color:var(--mal) }
.adm-main{ padding:32px clamp(18px,3vw,40px) 60px; min-width:0 }
.adm-main--solo{ grid-column:1 / -1 }
.adm-ingreso{ min-height:100vh; display:grid; place-items:center }
.adm-cab{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; margin-bottom:22px; flex-wrap:wrap }
.adm-cab h1{ font:700 clamp(28px,3vw,38px)/1.1 var(--f-display); letter-spacing:-.03em; margin-top:8px }
.adm-volver{ font-size:13.5px; color:var(--text-3) }
.adm-volver:hover{ color:var(--acc) }
.adm-tarjeta{ border-radius:20px; border:1px solid var(--line); background:var(--panel); padding:20px; margin-bottom:16px }
.adm-tarjeta__cab{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px }
.adm-tarjeta__cab h2{ font:700 18px var(--f-display) }
.adm-tarjeta__cab a{ font-size:13.5px; color:var(--acc) }
.adm-kpis{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:12px; margin-bottom:16px }
.adm-kpi{ border-radius:18px; border:1px solid var(--line); background:var(--panel); padding:18px; display:flex; flex-direction:column; gap:6px; transition:border-color .25s, transform .3s var(--ease-out) }
a.adm-kpi:hover{ border-color:color-mix(in srgb, var(--acc) 45%, transparent); transform:translateY(-2px) }
.adm-kpi small{ font:500 11px var(--f-mono); letter-spacing:.12em; text-transform:uppercase; color:var(--text-3) }
.adm-kpi b{ font:700 32px/1 var(--f-display); letter-spacing:-.03em }
.adm-kpi em{ font-style:normal; font-size:12.5px }
.rojo{ color:var(--mal) } .amarillo{ color:var(--aviso) }
.adm-alerta{ display:flex; gap:12px; align-items:center; padding:14px 16px; border-radius:16px; border:1px solid color-mix(in srgb, var(--aviso) 45%, transparent); background:color-mix(in srgb, var(--aviso) 9%, transparent); margin-bottom:16px; font-size:14.5px }
.adm-alerta svg{ width:20px; height:20px; color:var(--aviso); flex:none }
.adm-alerta a{ margin-left:auto; color:var(--aviso); font-weight:600; white-space:nowrap }
.adm-alerta--ok{ border-color:color-mix(in srgb, var(--ok) 45%, transparent); background:color-mix(in srgb, var(--ok) 9%, transparent) }
.adm-alerta--ok svg{ color:var(--ok) }
.adm-tabla-env{ overflow-x:auto }
.adm-tabla{ width:100%; border-collapse:collapse; font-size:14.5px }
.adm-tabla th{ text-align:left; font:500 10.5px var(--f-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--text-3); padding:10px 12px; border-bottom:1px solid var(--line); white-space:nowrap }
.adm-tabla td{ padding:12px; border-bottom:1px solid var(--line); vertical-align:middle }
.adm-tabla tr[data-href]{ cursor:pointer; transition:background .15s }
.adm-tabla tr[data-href]:hover{ background:var(--panel) }
.adm-tabla .n{ text-align:right }
.adm-tabla tr.total td{ font-weight:700; border-bottom:0 }
.adm-tabla a{ color:var(--acc) }
.adm-sub{ font-size:12.5px; color:var(--text-3) }
.adm-chip{ display:inline-flex; align-items:center; height:24px; padding:0 10px; border-radius:999px; font:600 11.5px var(--f-body); white-space:nowrap }
.adm-chip--azul{ background:rgba(91,160,255,.16); color:#8BC0FF } .adm-chip--verde{ background:rgba(61,220,151,.15); color:#5BE3A8 }
.adm-chip--amarillo{ background:rgba(255,200,87,.16); color:#FFD27A } .adm-chip--morado{ background:rgba(170,130,255,.16); color:#C3A6FF }
.adm-chip--rojo{ background:rgba(255,107,107,.15); color:#FF9090 } .adm-chip--gris{ background:var(--panel-2); color:var(--text-2) }
.adm-filtros{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px }
.adm-buscar{ display:flex; gap:8px }
.adm-buscar input,.adm-input,.adm-select,.adm-fila input{ height:44px; padding:0 14px; border-radius:12px; border:1px solid var(--line); background:var(--panel); outline:none; min-width:220px }
.adm-buscar input:focus,.adm-input:focus,.adm-select:focus{ border-color:var(--acc) }
.adm-select option{ background:var(--panel-solido) }
.adm-input-n{ width:130px; height:40px; padding:0 12px; border-radius:10px; border:1px solid var(--line); background:var(--panel); outline:none; text-align:right; font-family:var(--f-mono) }
.adm-input-n:focus{ border-color:var(--acc) }
.adm-dos{ display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr); gap:16px; align-items:start }
.adm-pila{ display:grid; gap:12px }
.adm-fila{ display:flex; gap:8px; margin-top:12px }
.adm-fila input{ flex:1; min-width:0 }
.adm-dl{ display:grid; gap:0 }
.adm-dl div{ display:grid; grid-template-columns:110px 1fr; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); font-size:14.5px }
.adm-dl dt{ color:var(--text-3) }
.adm-linea{ list-style:none; display:grid; gap:0; border-left:2px solid var(--line); margin-left:6px }
.adm-linea li{ position:relative; padding:0 0 16px 20px }
.adm-linea li::before{ content:''; position:absolute; left:-7px; top:4px; width:12px; height:12px; border-radius:50%; background:var(--bg); border:2px solid var(--acc) }
.adm-linea b{ display:block; font-size:14.5px }
.adm-linea span{ font-size:12px; color:var(--text-3) }
.adm-linea p{ margin-top:4px; font-size:14px; color:var(--text-2) }
.adm-vacio{ padding:30px 4px; color:var(--text-2) }
.adm-mini{ width:52px; height:52px; border-radius:12px; background:var(--panel-2); display:grid; place-items:center; overflow:hidden }
.adm-mini img{ width:86%; height:86%; object-fit:contain } .adm-mini img.foto{ width:100%; height:100%; object-fit:cover }
.adm-link{ color:var(--acc); font-size:13.5px; white-space:nowrap }
.adm-sw{ position:relative; display:inline-block; width:44px; height:26px }
.adm-sw input{ position:absolute; opacity:0; inset:0; cursor:pointer; z-index:1 }
.adm-sw i{ position:absolute; inset:0; border-radius:13px; background:var(--panel-2); border:1px solid var(--line-2); transition:background .25s }
.adm-sw i::after{ content:''; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:var(--text-2); transition:transform .3s var(--ease-out), background .25s }
.adm-sw input:checked + i{ background:var(--acc) } .adm-sw input:checked + i::after{ transform:translateX(18px); background:var(--acc-ink) }
.adm-sw-fila{ display:flex; justify-content:space-between; align-items:center; padding:8px 0; font-size:14.5px }
.adm-fotos{ display:grid; grid-template-columns:repeat(auto-fill, minmax(120px,1fr)); gap:10px; margin-bottom:12px }
.adm-foto{ border-radius:14px; overflow:hidden; border:1px solid var(--line); background:var(--panel-2); display:grid }
.adm-foto img{ width:100%; aspect-ratio:1; object-fit:cover } .adm-foto--ilus img{ object-fit:contain; padding:10px }
.adm-foto span{ font-size:12px; padding:8px 10px; color:var(--text-2); display:flex; gap:6px; align-items:center }
.adm-subir{ display:block; border:1.5px dashed var(--line-2); border-radius:14px; padding:18px; text-align:center; cursor:pointer; color:var(--text-2); transition:border-color .25s }
.adm-subir:hover{ border-color:var(--acc); color:var(--text) }
.adm-subir input{ display:block; margin:0 auto 8px; max-width:100% }
.adm-subir svg{ width:16px; height:16px; display:inline }
/* agenda */
.adm-agenda-env{ overflow-x:auto; padding:0 }
.adm-agenda{ min-width:calc(220px + var(--dias) * 34px); font-size:13px }
.adm-agenda__fila{ display:grid; grid-template-columns:220px 1fr; border-bottom:1px solid var(--line); min-height:46px }
.adm-agenda__fila--cab{ display:grid; grid-template-columns:220px repeat(var(--dias), 1fr); position:sticky; top:0; background:var(--panel-solido); z-index:2 }
.adm-agenda__eq{ padding:12px 14px; font-weight:600; border-right:1px solid var(--line); display:flex; justify-content:space-between; gap:8px; align-items:center }
.adm-agenda__eq small{ font:500 11px var(--f-mono); color:var(--text-3) }
.adm-agenda__d{ text-align:center; padding:8px 0; border-right:1px solid var(--line); display:grid }
.adm-agenda__d b{ font:600 13px var(--f-mono) } .adm-agenda__d small{ font-size:10px; color:var(--text-3) }
.adm-agenda__d.finde{ background:var(--panel) } .adm-agenda__d.hoy{ background:color-mix(in srgb, var(--acc) 18%, transparent) }
.adm-agenda__pista{ position:relative; display:grid; grid-template-columns:repeat(var(--dias), 1fr); grid-auto-rows:28px; gap:4px 0; padding:8px 0; background-image:linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size:calc(100% / var(--dias)) 100% }
.adm-agenda__barra{ grid-column:calc(var(--a) + 1) / calc(var(--b) + 2); margin:0 2px; border-radius:8px; padding:0 8px; font-size:12px; font-weight:600; line-height:28px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; background:rgba(91,160,255,.25); color:#CFE3FF }
.adm-agenda__barra--confirmado{ background:rgba(61,220,151,.22); color:#BFF5DD } .adm-agenda__barra--entregado{ background:var(--acc); color:var(--acc-ink) }
@media (max-width:900px){
  body.adm{ grid-template-columns:1fr }
  .adm-lado{ position:relative; height:auto; flex-direction:row; flex-wrap:wrap; align-items:center; gap:12px; padding:14px }
  .adm-lado nav{ display:flex; overflow-x:auto; gap:4px; order:3; width:100% }
  .adm-lado nav a{ white-space:nowrap }
  .adm-yo{ margin:0 0 0 auto; border:0; padding:0 }
  .adm-dos{ grid-template-columns:1fr }
}
.adm-foto span{ justify-content:space-between } .adm-foto label{ display:flex; gap:5px; align-items:center; cursor:pointer }
