/* adm-srv.css — estilos del módulo srv de administración (también la biblioteca de documentos). Prefijo: adm-srv-*
   Comparte con adm-amn.css las clases adm-amn-* (cabeceras, formularios, tablas) y adm-dlg-* (diálogo). */

.adm-srv-pagina { display: flex; flex-direction: column; gap: .9rem; min-height: 0; }
.adm-srv-tablero { height: calc(100vh - 11.5rem); min-height: 460px; }
.adm-srv-vencido { color: var(--cs-err) !important; font-weight: 700; }
.adm-srv-estrellas { color: #D97706; letter-spacing: 1px; }

/* ---- Tarjeta del Kanban ---- */
.adm-srv-tarjeta { display: flex; flex-direction: column; gap: .25rem; padding: .1rem .1rem .1rem .45rem; border-left: 4px solid var(--cs-line); border-radius: 4px; width: 100%; }
.adm-srv-tarjeta strong { font-size: .92rem; line-height: 1.25; color: var(--cs-ink); }
.adm-srv-tarjeta small { color: var(--cs-muted); font-size: .78rem; }
.adm-srv-tarjeta--urgente { border-left-color: #B91C1C; }
.adm-srv-tarjeta--alta { border-left-color: #D97706; }
.adm-srv-tarjeta--normal { border-left-color: #0F766E; }
.adm-srv-tarjeta--baja { border-left-color: #94A3B8; }
.adm-srv-tarjeta-enc { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; font-size: .75rem; }
.adm-srv-tarjeta-enc b { color: var(--cs-muted); }
.adm-srv-tarjeta-pie { display: flex; align-items: center; gap: .55rem; margin-top: .15rem; font-size: .75rem; color: var(--cs-muted); }
.adm-srv-prio { padding: 0 .45rem; border-radius: 999px; font-size: .68rem; font-weight: 700; background: var(--cs-line); color: var(--cs-muted); }
.adm-srv-prio--urgente { background: var(--cs-err-bg); color: var(--cs-err); }
.adm-srv-prio--alta { background: var(--cs-warn-bg); color: var(--cs-warn); }
.adm-srv-prio--normal { background: var(--cs-ok-bg); color: var(--cs-ok); }
.adm-srv-sla { padding: 0 .45rem; border-radius: 999px; font-size: .68rem; font-weight: 700; background: var(--cs-err); color: #fff; }
.adm-srv-cargo { width: 18px; height: 18px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--cs-info-bg); color: var(--cs-info); font-weight: 800; font-size: .7rem; }
.adm-srv-resp { width: 24px; height: 24px; border-radius: 50%; display: inline-grid; place-items: center; background: var(--cs-primary-soft); color: var(--cs-primary-dark); font-weight: 700; font-size: .66rem; }

/* ---- Panel de detalle ---- */
.adm-srv-panel { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr); gap: 1.4rem; }
@media (max-width: 960px) { .adm-srv-panel { grid-template-columns: 1fr; } }
.adm-srv-panel h3 { margin: 1rem 0 .4rem; font-size: .95rem; color: var(--cs-ink); }
.adm-srv-panel-izq, .adm-srv-panel-der { display: flex; flex-direction: column; gap: .6rem; min-width: 0; }
.adm-srv-panel-der { background: var(--cs-surface-2); border: 1px solid var(--cs-line); border-radius: 12px; padding: .9rem 1rem; align-self: start; }
.adm-srv-panel-der h3:first-of-type { margin-top: 0; }
.adm-srv-desc { margin: 0; white-space: pre-line; color: var(--cs-text); }
.adm-srv-estado { display: inline-flex; padding: .15rem .7rem; border-radius: 999px; font-size: .76rem; font-weight: 700; background: var(--cs-line); color: var(--cs-muted); }
.adm-srv-estado--nueva, .adm-srv-estado--asignada { background: var(--cs-info-bg); color: var(--cs-info); }
.adm-srv-estado--enproceso { background: var(--cs-warn-bg); color: var(--cs-warn); }
.adm-srv-estado--resuelta { background: var(--cs-ok-bg); color: var(--cs-ok); }
.adm-srv-estado--cancelada { background: var(--cs-err-bg); color: var(--cs-err); }
.adm-srv-botones { display: flex; flex-wrap: wrap; gap: .4rem; }
.adm-srv-comentar { display: flex; align-items: center; justify-content: space-between; gap: .8rem; flex-wrap: wrap; }
.adm-srv-adjuntos { display: flex; gap: .6rem; flex-wrap: wrap; }
.adm-srv-adjunto { width: 110px; display: flex; flex-direction: column; gap: .2rem; align-items: center; font-size: .72rem; color: var(--cs-muted); }
.adm-srv-adjunto img { width: 110px; height: 80px; object-fit: cover; border-radius: 8px; border: 1px solid var(--cs-line); }
.adm-srv-adjunto small { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.adm-srv-linea { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .5rem; max-height: 260px; overflow: auto; }
.adm-srv-ev { padding: .55rem .75rem; border: 1px solid var(--cs-line); border-radius: 10px; background: var(--cs-surface); display: flex; flex-direction: column; gap: .25rem; align-items: flex-start; }
.adm-srv-ev header { display: flex; align-items: baseline; gap: .6rem; width: 100%; font-size: .82rem; }
.adm-srv-ev header time { color: var(--cs-muted); font-size: .75rem; }
.adm-srv-ev header em { margin-left: auto; font-style: normal; font-size: .7rem; font-weight: 700; color: var(--cs-warn); background: var(--cs-warn-bg); padding: 0 .5rem; border-radius: 999px; }
.adm-srv-ev p { margin: 0; font-size: .88rem; white-space: pre-line; }
.adm-srv-ev--interna { background: var(--cs-warn-bg); border-style: dashed; }
