/* =============================================================================
   Panel de administración · control operativo primero, sala con poca luz.
   ========================================================================== */

body.adm { background: var(--night); min-height: 100vh; }
.adm-top {
  position: sticky; top: 0; z-index: 20;
  display: flex; align-items: center; gap: 16px;
  height: 64px; padding: 0 24px;
  background: rgba(19, 28, 22, .88);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.brandmark { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--cream); }
.brandmark .wordmark { font-size: 24px; }
.brandmark small { display: block; font-size: 12px; color: var(--cream-faint); letter-spacing: .02em; padding-left: 10px; border-left: 1px solid var(--line-strong); }
.brandmark .mark {
  display: grid; place-items: center;
  width: 34px; height: 34px; border-radius: 10px;
  background: var(--accent); color: var(--night);
  font-family: var(--f-display); font-size: 17px;
  box-shadow: 2px 2px 0 var(--shadow-ink);
  transform: rotate(-4deg);
}
.brandmark b { font-family: var(--f-wide); font-stretch: 118%; font-weight: 800; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.adm-top .spacer { flex: 1; }
.adm-top .who { font-size: 14px; color: var(--cream-dim); font-weight: 600; }
.adm-top .who::before { content: 'Mi cuenta · '; color: var(--cream-faint); font-weight: 500; }

.adm-wrap { width: min(100%, 1440px); margin: 0 auto; padding: 28px 24px 80px; }

/* Encabezados */
.page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.page-head h1 { margin: 0; font-family: var(--f-display); font-weight: 400; font-size: 44px; line-height: 1; text-transform: uppercase; letter-spacing: .01em; }
.page-head p { margin: 6px 0 0; color: var(--cream-dim); }
.eyebrow { font-family: var(--f-wide); font-stretch: 118%; font-weight: 800; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--cream-faint); }

/* Tarjetas */
.card {
  background: var(--night-2);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 20px;
}
.card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.card-head h2 { margin: 0; font-family: var(--f-wide); font-stretch: 118%; font-weight: 800; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--cream-dim); }

/* Lista de eventos */
.ev-grid-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 16px; }
.ev-card {
  position: relative;
  display: flex; flex-direction: column; gap: 14px;
  padding: 20px; border-radius: 20px;
  background: var(--night-2); border: 1px solid var(--line);
  text-decoration: none; color: inherit;
  transition: transform .25s var(--ease-out), border-color .25s, background-color .25s;
  animation: rise-in .5s var(--ease-out) both;
  animation-delay: calc(var(--i, 0) * 50ms);
}
.ev-card:hover { transform: translateY(-3px); border-color: var(--line-strong); background: var(--night-3); }
.ev-card .row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.ev-card h3 { margin: 0; font-family: var(--f-display); font-weight: 400; font-size: 30px; line-height: 1.02; text-transform: uppercase; }
.ev-card .sub { color: var(--cream-dim); font-size: 14px; margin: -6px 0 0; }
.ev-card .logo { height: 46px; width: auto; align-self: flex-start; }
.ev-card .meta { display: grid; gap: 4px; font-size: 14px; color: var(--cream-dim); }
.ev-card .meta span { display: inline-flex; gap: 8px; align-items: center; }
.ev-card .meta svg { width: 15px; height: 15px; color: var(--accent); }
.ev-card .stats { display: flex; gap: 16px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 13px; color: var(--cream-faint); }
.ev-card .stats b { color: var(--cream); font-weight: 700; }
.ev-card .actions { display: flex; gap: 8px; margin-top: auto; flex-wrap: wrap; }
.ev-card .actions .btn { white-space: nowrap; }
.empty { padding: 48px 24px; text-align: center; border: 1.5px dashed var(--line-strong); border-radius: 20px; color: var(--cream-dim); }
.empty h2 { font-family: var(--f-display); font-weight: 400; font-size: 32px; text-transform: uppercase; color: var(--cream); margin: 0 0 8px; }

/* Encabezado del evento */
.ev-head { display: grid; gap: 14px; margin-bottom: 22px; }
.ev-head .back { display: inline-flex; align-items: center; gap: 6px; color: var(--cream-dim); text-decoration: none; font-size: 14px; width: fit-content; }
.ev-head .back:hover { color: var(--cream); }
.ev-head .back svg { width: 16px; height: 16px; }
.ev-title-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.ev-title { display: flex; align-items: center; gap: 16px; min-width: 0; }
.ev-title img { height: 56px; width: auto; flex: none; }
.ev-title h1 { margin: 0; font-family: var(--f-display); font-weight: 400; font-size: 40px; line-height: 1; text-transform: uppercase; }
.ev-title .badges { display: flex; gap: 8px; margin-top: 8px; flex-wrap: wrap; align-items: center; }
.ev-title .when { font-size: 14px; color: var(--cream-dim); }
.toolbar { display: flex; gap: 8px; flex-wrap: wrap; }

/* Consola */
.console { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr); gap: 20px; align-items: start; }
.col { display: grid; gap: 20px; min-width: 0; }

.onair {
  position: relative; overflow: hidden;
  border-radius: 24px;
  background: var(--night-2);
  border: 1.5px solid var(--line);
  transition: border-color .4s, box-shadow .4s;
}
.onair.is-open { border-color: rgba(125, 211, 168, .55); box-shadow: 0 0 0 4px rgba(125, 211, 168, .08); }
.onair-head {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
  padding: 16px 20px; border-bottom: 1px solid var(--line);
  background: rgba(31, 45, 36, .5);
}
.onair-head .label { display: flex; align-items: center; gap: 10px; }
.rec { width: 10px; height: 10px; border-radius: 50%; background: var(--cream-faint); }
.onair.is-open .rec { background: var(--live); box-shadow: 0 0 0 5px rgba(125, 211, 168, .18); }
.onair-body { padding: 22px 22px 18px; }
.onair-q { margin: 0 0 18px; font-family: var(--f-wide); font-weight: 800; font-size: 26px; line-height: 1.15; letter-spacing: -.01em; color: var(--cream-hi); }
.onair-wait { display: flex; gap: 18px; align-items: center; }
.onair-wait .qr-mini { width: 92px; height: 92px; background: #fff; border-radius: 12px; padding: 6px; flex: none; }
.onair-wait h3 { margin: 0 0 4px; font-family: var(--f-display); font-weight: 400; font-size: 28px; text-transform: uppercase; }
.onair-wait p { margin: 0; color: var(--cream-dim); }

.bars { display: grid; gap: 12px; }
.brow { display: grid; grid-template-columns: 34px 1fr 92px; gap: 12px; align-items: center; transition: opacity .4s; }
.brow .letter { width: 34px; height: 34px; font-size: 17px; border-radius: 9px; }
.brow .lbl { font-weight: 600; font-size: 15px; color: var(--cream-hi); display: flex; gap: 8px; align-items: center; min-width: 0; }
.brow .lbl span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.brow .track { height: 10px; border-radius: 99px; background: rgba(238, 223, 197, .08); overflow: hidden; margin-top: 7px; }
.brow .fill { height: 100%; border-radius: inherit; background: var(--c); transform-origin: left; transform: scaleX(0); transition: transform .7s var(--ease-out); }
.brow .num { text-align: right; line-height: 1.1; }
.brow .num b { display: block; font-family: var(--f-display); font-weight: 400; font-size: 24px; color: var(--cream-hi); font-variant-numeric: tabular-nums; }
.brow .num small { color: var(--cream-dim); font-size: 12.5px; }
.bars.is-closed .brow:not(.is-top) { opacity: .55; }
.top-tag { flex: none; font-size: 10.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; padding: 2px 7px; border-radius: 6px; background: var(--cream-hi); color: var(--night); }

.onair-foot {
  display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  padding: 16px 20px; border-top: 1px solid var(--line);
}
.big-total { display: flex; align-items: baseline; gap: 10px; }
.big-total b { font-family: var(--f-display); font-weight: 400; font-size: 44px; line-height: 1; font-variant-numeric: tabular-nums; }
.big-total span { color: var(--cream-dim); font-size: 14px; }
.onair-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.footnote { margin: 12px 0 0; font-size: 12.5px; color: var(--cream-faint); }

.next {
  border-radius: 20px; padding: 18px 20px;
  background: repeating-linear-gradient(-45deg, rgba(238, 223, 197, .025) 0 10px, transparent 10px 20px), var(--night-2);
  border: 1.5px dashed var(--line-strong);
}
.next .q { margin: 8px 0 12px; font-family: var(--f-wide); font-weight: 750; font-size: 19px; line-height: 1.25; }
.next ul { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 6px; }
.next li { display: flex; gap: 10px; align-items: center; font-size: 14.5px; color: var(--cream-dim); }
.next li .letter { width: 24px; height: 24px; font-size: 13px; border-radius: 6px; box-shadow: none; }
.next .row { display: flex; gap: 10px; flex-wrap: wrap; }
.next .private { font-size: 12px; color: var(--cream-faint); display: inline-flex; gap: 6px; align-items: center; }
.next .private svg { width: 14px; height: 14px; }

.status-card .state { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.status-card .big { font-family: var(--f-display); font-weight: 400; font-size: 32px; text-transform: uppercase; line-height: 1; }
.status-card p { margin: 6px 0 0; color: var(--cream-dim); font-size: 14px; }
.metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.metric { padding: 12px 14px; border-radius: 14px; background: var(--night); border: 1px solid var(--line); }
.metric b { display: block; font-family: var(--f-display); font-weight: 400; font-size: 28px; line-height: 1.1; font-variant-numeric: tabular-nums; }
.metric span { font-size: 12.5px; color: var(--cream-dim); }

/* Lista de preguntas */
.qlist { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.qitem {
  display: grid; grid-template-columns: 26px 1fr; gap: 8px 10px; align-items: start;
  padding: 12px 12px 12px 8px; border-radius: 14px;
  background: var(--night); border: 1px solid var(--line);
  transition: border-color .2s, background-color .2s, opacity .2s, transform .2s;
}
.qitem:hover { border-color: var(--line-strong); }
.qitem.is-next { border-color: rgba(224, 112, 63, .55); }
.qitem.is-open { border-color: rgba(125, 211, 168, .6); background: rgba(125, 211, 168, .05); }
.qitem.is-closed { opacity: .82; }
.qitem.is-dragging { opacity: .4; }
.qitem.drop-before { box-shadow: 0 -3px 0 var(--accent); }
.qitem.drop-after { box-shadow: 0 3px 0 var(--accent); }
.qitem .grip { color: var(--cream-faint); cursor: grab; display: grid; place-items: center; height: 28px; }
.qitem .grip svg { width: 18px; height: 18px; }
.qitem .num { font-family: var(--f-display); font-size: 15px; color: var(--cream-faint); text-align: center; line-height: 28px; }
.qitem .t { font-weight: 600; line-height: 1.3; color: var(--cream-hi); word-break: break-word; }
.qitem .m { display: flex; flex-wrap: wrap; gap: 6px 10px; margin-top: 6px; font-size: 12.5px; color: var(--cream-dim); align-items: center; }
.qitem .m .pill { font-size: 9.5px; padding: 2px 8px; }
.qitem .acts { grid-column: 2; display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.qitem .acts .grow { flex: 1; }
.qitem .acts .btn--icon { width: 34px; min-height: 34px; border-radius: 10px; }
.qitem .acts .btn--icon svg { width: 16px; height: 16px; }
.add-q { width: 100%; margin-top: 12px; border-style: dashed; }

/* Diálogos */
dialog {
  width: min(94vw, 720px); max-height: 92vh;
  padding: 0; border: 1px solid var(--line-strong); border-radius: 22px;
  background: var(--night-2); color: var(--cream);
  box-shadow: 0 40px 100px rgba(0, 0, 0, .55);
}
dialog.wide { width: min(96vw, 1040px); }
dialog.narrow { width: min(94vw, 460px); }
dialog[open] { animation: dlg-in .35s var(--ease-spring) both; }
dialog::backdrop { background: rgba(6, 10, 8, .72); backdrop-filter: blur(4px); animation: fade-in .25s both; }
@keyframes dlg-in { from { opacity: 0; transform: translateY(16px) scale(.97); } to { opacity: 1; transform: none; } }
.dlg-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 22px; border-bottom: 1px solid var(--line); }
.dlg-head h2 { margin: 0; font-family: var(--f-display); font-weight: 400; font-size: 26px; text-transform: uppercase; }
.dlg-body { padding: 20px 22px; overflow: auto; max-height: calc(92vh - 140px); }
.dlg-foot { display: flex; justify-content: flex-end; gap: 10px; padding: 16px 22px; border-top: 1px solid var(--line); flex-wrap: wrap; }
.dlg-foot .left { margin-right: auto; }

/* Formularios */
.field { display: grid; gap: 6px; margin-bottom: 16px; }
.field > label, .field > .lbl { font-size: 13.5px; font-weight: 650; color: var(--cream); display: flex; justify-content: space-between; gap: 8px; }
.field .hint { font-size: 12.5px; color: var(--cream-faint); }
.field .count { font-size: 12px; color: var(--cream-faint); font-weight: 500; font-variant-numeric: tabular-nums; }
.field .count.is-over { color: var(--danger); }
.input, textarea.input, select.input {
  width: 100%; min-height: 46px;
  padding: 11px 14px; border-radius: 12px;
  background: var(--night); border: 1.5px solid var(--line-strong);
  color: var(--cream-hi); font-size: 16px;
  transition: border-color .2s, box-shadow .2s;
}
textarea.input { min-height: 84px; resize: vertical; line-height: 1.4; }
.input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent); outline: none; }
.input[aria-invalid='true'] { border-color: var(--danger); }
.err { font-size: 12.5px; color: #FFB4A6; min-height: 0; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0 14px; }
.check { display: flex; gap: 10px; align-items: flex-start; font-size: 14.5px; cursor: pointer; }
.check input { width: 20px; height: 20px; accent-color: var(--accent); margin-top: 1px; }
.form-error { padding: 12px 14px; border-radius: 12px; background: rgba(239, 106, 85, .12); border: 1px solid rgba(239, 106, 85, .45); color: #FFC2B5; margin-bottom: 16px; font-size: 14px; }

.opt-edit { display: grid; gap: 10px; }
.opt-row { display: grid; grid-template-columns: 34px 1fr auto 40px; gap: 10px; align-items: center; animation: rise-in .3s var(--ease-out) both; }
.opt-row .letter { width: 34px; height: 34px; font-size: 16px; border-radius: 9px; }
.opt-row .err { grid-column: 2 / -1; margin-top: -6px; }

.editor { display: grid; grid-template-columns: 1fr 300px; gap: 24px; }
.preview-phone {
  border-radius: 34px; border: 8px solid #0A100C; background: var(--night);
  padding: 22px 16px 18px; min-height: 520px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
  position: sticky; top: 0;
}
.preview-phone .kicker { font-size: 9.5px; }
.preview-phone .pq { font-family: var(--f-wide); font-weight: 800; font-size: 19px; line-height: 1.15; margin: 10px 0 14px; color: var(--cream-hi); word-break: break-word; }
.preview-phone .pc { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; padding: 10px; border-radius: 13px; border: 1.5px solid var(--line-strong); margin-bottom: 7px; font-size: 13.5px; font-weight: 600; background: rgba(31, 45, 36, .78); word-break: break-word; }
.preview-phone .pc .letter { width: 26px; height: 26px; font-size: 13px; border-radius: 7px; box-shadow: none; }
.preview-phone .pbtn { margin-top: 12px; height: 42px; border-radius: 12px; background: var(--accent); opacity: .5; display: grid; place-items: center; color: var(--night); font-weight: 700; font-size: 14px; }
.preview-label { font-size: 12px; color: var(--cream-faint); text-align: center; margin-top: 10px; }

.uploader { display: flex; gap: 12px; align-items: center; padding: 10px; border-radius: 14px; border: 1.5px dashed var(--line-strong); }
.uploader .thumb { width: 64px; height: 64px; border-radius: 10px; background: var(--night) center/contain no-repeat; flex: none; display: grid; place-items: center; color: var(--cream-faint); overflow: hidden; }
.uploader .thumb img { width: 100%; height: 100%; object-fit: contain; }
.uploader .grow { flex: 1; font-size: 13px; color: var(--cream-dim); }

.qr-big { display: grid; place-items: center; gap: 14px; text-align: center; }
.qr-big img { width: min(100%, 320px); background: #fff; border-radius: 18px; padding: 14px; }
.qr-big .link { font-family: var(--f-wide); font-weight: 800; font-size: 18px; word-break: break-all; }

/* Conexión */
.conn-pill { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--live); }
.conn-pill i { width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.conn-pill.is-bad { color: var(--warn); }

/* Login */
.login-shell { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.login-card {
  width: min(100%, 420px); padding: 32px 28px; border-radius: 26px;
  background: var(--night-2); border: 1px solid var(--line-strong);
  box-shadow: 8px 8px 0 var(--shadow-ink), 0 30px 80px rgba(0, 0, 0, .4);
  animation: rise-in .6s var(--ease-out) both;
}
.login-brand .wordmark { display: block; white-space: normal; font-size: 54px; line-height: .9; text-shadow: 3px 3px 0 var(--shadow-ink); }
.login-brand .wordmark .sticker { text-shadow: none; }
.login-card .eyebrow { margin: 22px 0 0; }
.demo-note { margin: 0 0 18px; padding: 12px 14px; border-radius: 12px; border: 1.5px dashed rgba(183, 156, 224, .6); background: rgba(183, 156, 224, .1); color: #E2D6F7; font-size: 14px; line-height: 1.5; }
.demo-note b { color: var(--cream-hi); }
.login-card h1 { margin: 6px 0 4px; font-family: var(--f-display); font-weight: 400; font-size: 42px; line-height: 1; text-transform: uppercase; }
.login-card > p { margin: 0 0 22px; color: var(--cream-dim); }
.login-card .btn { width: 100%; }
.login-foot { margin-top: 18px; text-align: center; font-size: 12.5px; color: var(--cream-faint); }
.adm-foot { display: flex; justify-content: center; padding: 8px 16px 36px; }

.skeleton { height: 160px; border-radius: 20px; background: linear-gradient(90deg, var(--night-2), var(--night-3), var(--night-2)); background-size: 200% 100%; animation: shimmer 1.4s linear infinite; }
@keyframes shimmer { to { background-position: -200% 0; } }

@media (max-width: 1080px) {
  .console { grid-template-columns: 1fr; }
  .editor { grid-template-columns: 1fr; }
  .preview-phone { position: static; min-height: 0; }
}
@media (max-width: 640px) {
  .adm-wrap { padding: 18px 14px 60px; }
  .adm-top { padding: 0 14px; }
  .adm-top .who { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
  .adm-top .who::before { content: ''; }
  .brandmark small { display: none; }
  .brandmark .wordmark { font-size: 20px; }
  .grid-2, .grid-3 { grid-template-columns: 1fr; }
  .ev-title h1 { font-size: 30px; }
  .brow { grid-template-columns: 30px 1fr 74px; }
}

.ev-link { color: inherit; text-decoration: none; }
.ev-link:hover { color: var(--cream-hi); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
#app:focus, #app:focus-visible { outline: none; }

/* Navegación principal */
.adm-nav { display: flex; gap: 4px; margin-left: 12px; }
.adm-nav a { padding: 8px 12px; border-radius: 10px; color: var(--cream-dim); text-decoration: none; font-weight: 600; font-size: 14.5px; }
.adm-nav a:hover { color: var(--cream-hi); background: rgba(238, 223, 197, .06); }
.adm-nav a[aria-current='page'] { color: var(--night); background: var(--accent); }

/* Clientes */
.c-filters { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 10px; margin-bottom: 12px; }
.loc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.loc-chip {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px 6px 8px; border-radius: 99px;
  border: 1.5px solid var(--line-strong); background: var(--night-2); color: var(--cream); font: 600 13.5px var(--f-body); cursor: pointer;
  transition: background-color .2s, border-color .2s;
}
.loc-chip svg { width: 14px; height: 14px; color: var(--accent); }
.loc-chip b { font-size: 12px; padding: 1px 7px; border-radius: 99px; background: var(--night); color: var(--cream-dim); }
.loc-chip:hover { border-color: var(--accent); }
.loc-chip.is-on { background: var(--accent); border-color: var(--accent); color: var(--night); }
.loc-chip.is-on svg { color: var(--night); }
.c-summary { margin: 0 0 12px; color: var(--cream-dim); font-size: 14px; }
.ctable-wrap { border-radius: 18px; border: 1px solid var(--line); overflow: auto; background: var(--night-2); }
.ctable { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.ctable th { text-align: left; font-family: var(--f-wide); font-stretch: 115%; font-weight: 800; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--cream-faint); padding: 12px 14px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.ctable td { padding: 11px 14px; border-bottom: 1px solid var(--line); vertical-align: middle; }
.ctable tr:last-child td { border-bottom: 0; }
.ctable tbody tr { animation: fade-in .3s both; }
.ctable tbody tr:hover { background: rgba(238, 223, 197, .03); }
.ctable td a { color: var(--peach); text-decoration: none; }
.ctable td a:hover { text-decoration: underline; }
.ctable td.num { font-variant-numeric: tabular-nums; }
.ctable td.act { text-align: right; width: 1%; }
.btn--danger.left { margin-right: auto; }
@media (max-width: 760px) {
  .adm-nav { margin-left: 0; }
  .adm-nav a { padding: 7px 9px; font-size: 13.5px; }
  .c-filters { grid-template-columns: 1fr; }
  .ctable thead { display: none; }
  .ctable tr { display: grid; grid-template-columns: 1fr auto; padding: 10px 12px; border-bottom: 1px solid var(--line); }
  .ctable td { padding: 2px 0; border: 0; }
  .ctable td[data-label='Funciones'], .ctable td[data-label='Último registro'] { color: var(--cream-dim); font-size: 13px; }
  .ctable td[data-label='Funciones']::before { content: 'Funciones: '; }
  .ctable td.act { grid-row: 1 / span 3; grid-column: 2; align-self: center; }
}
@media (max-width: 640px) {
  .adm-top { height: auto; flex-wrap: wrap; row-gap: 6px; padding-top: 10px; padding-bottom: 10px; }
  .adm-nav { order: 5; width: 100%; }
}
