/* Portal del trabajador · una sola puerta · 2026-09-16
 * La misma arquitectura sirve a 390 px y a escritorio. No duplica pantallas:
 * organiza las tarjetas existentes y enlaza sus motores canónicos. */
:root {
  --portal-rail: 248px;
  --portal-nav-h: 68px;
  --portal-max: 1180px;
}

.p-skip-link {
  position: fixed; left: 12px; top: -80px; z-index: 10020;
  padding: 10px 14px; border-radius: 8px; background: #111; color: #fff;
  font-weight: 750; text-decoration: none;
}
.p-skip-link:focus { top: 12px; }

.p-shell-rail { display: none; }
.p-shell-bottom {
  position: fixed; z-index: 1000; inset: auto 0 0;
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 5px 8px max(5px, env(safe-area-inset-bottom));
  background: rgba(255,255,255,.96); border-top: 1px solid var(--line, #e7e7e3);
  box-shadow: 0 -10px 28px rgba(20,22,26,.06);
  backdrop-filter: blur(16px) saturate(150%);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
}
.p-shell-nav__item {
  position: relative; display: flex; min-width: 0; min-height: 52px;
  flex-direction: column; align-items: center; justify-content: center; gap: 3px;
  border: 0; border-radius: 11px; background: transparent; color: #6b6f76;
  font: 650 12px/1.15 'Geist', system-ui, sans-serif; text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.p-shell-nav__item i { font-size: 18px; }
.p-shell-nav__item[aria-current="page"],
.p-shell-nav__item.is-active { color: #17181b; background: #f1f1ed; }
.p-shell-nav__badge {
  position: absolute; top: 3px; left: calc(50% + 7px); min-width: 17px; height: 17px;
  padding: 0 5px; border-radius: 10px; background: #202124; color: #fff;
  font: 750 10px/17px 'Geist', system-ui, sans-serif;
}

body { padding-bottom: calc(var(--portal-nav-h) + env(safe-area-inset-bottom)); }
.p-is-mirror .p-header { position: relative; }
.p-content { scroll-margin-top: 90px; }
.p-content, .p-card, main { min-width: 0; }
.p-content img, .p-content video, .p-content canvas { max-width: 100%; }
.p-content input, .p-content select, .p-content textarea, .p-content button { max-width: 100%; }
.p-content table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.p-dashboard-source { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.p-dashboard-source > .p-card { margin-bottom: 0; }
.p-section-intro { padding: 5px 2px 2px; }
.p-section-intro__eyebrow {
  color: #777a80; font-size: 11px; font-weight: 760; letter-spacing: .08em;
  text-transform: uppercase;
}
.p-section-intro h2 {
  margin: 2px 0 0; color: #17181b; font-size: clamp(23px, 7vw, 30px);
  line-height: 1.05; letter-spacing: -.035em;
}
.p-section-intro p { margin: 7px 0 0; max-width: 62ch; color: #666a70; font-size: 13px; }
.p-section-intro[hidden],
.p-dashboard-source > [data-portal-section][hidden] { display: none !important; }
.p-dashboard-source > [data-portal-section] { display: none; }
body[data-portal-section="hoy"] .p-dashboard-source > [data-portal-section="hoy"],
body[data-portal-section="trabajo"] .p-dashboard-source > [data-portal-section="trabajo"],
body[data-portal-section="lo-mio"] .p-dashboard-source > [data-portal-section="lo-mio"],
body[data-portal-section="avisos"] .p-dashboard-source > [data-portal-section="avisos"] { display: block; }
.p-dashboard-source > [data-portal-section]:focus { outline: none; }

.p-task-card { overflow: hidden; }
.p-task-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.p-task-card__meta { margin: 4px 0 0; color: var(--muted); font-size: 12px; line-height: 1.4; }
.p-task-list { display: grid; gap: 8px; }
.p-task-link {
  display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center;
  gap: 11px; min-height: 60px; padding: 10px 11px; border: 1px solid var(--line);
  border-radius: 12px; background: #fff; color: var(--ink); text-decoration: none;
}
.p-task-link:hover { border-color: #cacbc7; background: #fafaf8; }
.p-task-link:focus-visible { outline: 3px solid rgba(24,24,27,.18); outline-offset: 2px; }
.p-task-link__icon {
  display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px;
  background: #f0f0ec; color: #303237; font-size: 16px;
}
.p-task-link__label { display: block; font-size: 14px; font-weight: 740; line-height: 1.25; }
.p-task-link__summary { display: block; margin-top: 2px; color: var(--muted); font-size: 12px; line-height: 1.35; }
.p-task-link__go { color: #94979c; font-size: 16px; }
.p-task-link[aria-disabled="true"],
.p-is-mirror [data-mirror-write] {
  cursor: not-allowed !important; opacity: .48 !important; pointer-events: none !important;
  filter: grayscale(.2);
}
.p-mirror-note {
  display: flex; align-items: flex-start; gap: 9px; margin: 0 0 12px; padding: 11px 12px;
  border: 1px solid #e8cfc9; border-radius: 10px; background: #fff8f6; color: #653027;
  font-size: 12px; line-height: 1.45;
}
.p-mirror-bar {
  position: sticky; top: 0; z-index: 9999; display: flex; flex-wrap: wrap;
  align-items: center; justify-content: space-between; gap: 8px 14px;
  padding: 10px 16px; background: #7a2016; color: #fff;
  font: 650 14px/1.35 'Geist', system-ui, sans-serif;
}
.p-mirror-bar a {
  padding: 6px 12px; border-radius: 7px; background: #fff; color: #7a2016;
  font-weight: 750; text-decoration: none; white-space: nowrap;
}

/* El cromo viejo de la portada queda sustituido por la navegación común. */
.p-dashboard-page + .p-bottom-nav, .p-dashboard-page ~ .p-bottom-nav { display: none !important; }

@media (min-width: 760px) and (min-height: 500px) {
  body { padding: 0 0 0 var(--portal-rail); }
  .p-shell-bottom { display: none; }
  .p-shell-rail {
    position: fixed; z-index: 900; inset: 0 auto 0 0; width: var(--portal-rail);
    display: flex; flex-direction: column; padding: 22px 14px; background: #f4f4f0;
    border-right: 1px solid #e3e3de;
  }
  .p-shell-rail__brand { display: flex; align-items: center; height: 42px; padding: 0 10px 14px; }
  .p-shell-rail__brand img { width: auto; height: 22px; }
  .p-shell-rail__caption { margin: 7px 10px 9px; color: #85888e; font-size: 10px; font-weight: 760; letter-spacing: .09em; text-transform: uppercase; }
  .p-shell-rail .p-shell-nav__item {
    min-height: 48px; flex-direction: row; justify-content: flex-start; gap: 12px;
    margin: 2px 0; padding: 0 12px; font-size: 14px; text-align: left;
  }
  .p-shell-rail .p-shell-nav__item i { width: 20px; font-size: 17px; text-align: center; }
  .p-shell-rail .p-shell-nav__badge { position: static; margin-left: auto; }
  .p-shell-rail__foot { margin-top: auto; padding: 14px 10px 0; border-top: 1px solid #dddeda; color: #7b7e84; font-size: 11px; line-height: 1.45; }
  .p-header { position: relative; padding: 24px 30px 18px; }
  .p-header .p-brandbar { display: none; }
  .p-content { width: min(calc(100% - 48px), var(--portal-max)); max-width: none; margin: 0 auto; padding: 22px 0 44px; }
  .p-dashboard-source { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .p-section-intro { grid-column: 1 / -1; padding: 4px 2px 7px; }
  .p-section-intro h2 { font-size: 31px; }
  .p-dashboard-source > .p-card:has(.p-tiles),
  .p-dashboard-source > .p-card.p-span-all { grid-column: 1 / -1; }
  .p-task-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  /* La tarea principal llena la primera fila y resume estado + explicación.
     Se impone width/max-width porque la tarjeta heredaba el ancho móvil. */
  .p-dashboard-source > .p-today-hero {
    width: 100%; max-width: none; justify-self: stretch;
    display: grid; grid-template-columns: minmax(190px, .72fr) minmax(320px, 1.28fr);
    column-gap: 28px; align-items: start;
  }
  .p-today-hero > h2,
  .p-today-hero > .val,
  .p-today-hero > .sub { grid-column: 1; }
  .p-today-hero > #p-clock-notice {
    grid-column: 2; grid-row: 1 / span 3; align-self: stretch; margin-top: 0 !important;
  }
  .p-today-hero > #p-clock-btn,
  .p-today-hero > #p-clock-msg { grid-column: 1 / -1; }
  .uv-submit-bar { bottom: 0; }
}

@media (max-width: 759px), (max-height: 499px) {
  .uv-submit-bar { bottom: calc(var(--portal-nav-h) + env(safe-area-inset-bottom)); }
}

@media (min-width: 1180px) {
  .p-dashboard-source { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .p-dashboard-source > .p-card { grid-column: span 6; }
  .p-dashboard-source > .p-card:has(.p-tiles),
  .p-dashboard-source > .p-card.p-span-all { grid-column: span 12; }
  .p-section-intro { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
  .p-shell-nav__item, .p-task-link { scroll-behavior: auto; transition: none; }
}

/* Direct access on Hoy for each worker's authorised operational tasks. */
#mrh .p-work-launchers{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px}
#mrh .p-work-launchers a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:90px;padding:12px 6px;border:1px solid var(--line,#eeeeea);border-radius:12px;color:var(--ink,#17171a);background:var(--bg,#f3f3f1);text-align:center;text-decoration:none;font-size:13px;font-weight:700;line-height:1.3}
#mrh .p-work-launchers a:hover,#mrh .p-work-launchers a:focus-visible{background:#fff;border-color:#b45309;outline:2px solid #b45309;outline-offset:2px}
#mrh .p-work-launchers i{font-size:21px;color:#b45309}

/* Gestión: destination groups under the current ERP session. */
#portal-staff-menu details{border:1px solid var(--line,#dce0dc);border-radius:12px;padding:8px 12px;margin-top:10px;background:var(--card,#fff)}
#portal-staff-menu summary{min-height:44px;cursor:pointer;font-weight:700;display:list-item;padding:12px 0}
#portal-staff-menu .p-staff-menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0}
#portal-staff-menu .p-staff-menu-list a{display:flex;align-items:center;min-height:48px;padding:10px 12px;border:1px solid var(--line,#dce0dc);border-radius:8px;color:var(--text,#202622);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
#portal-staff-menu .p-staff-menu-list a:hover,#portal-staff-menu .p-staff-menu-list a:focus-visible{background:#f0f2ef;outline:2px solid #6b786f;outline-offset:1px}
#portal-staff-menu [type=search]{display:block;width:100%;min-height:48px;margin:14px 0 6px;padding:12px;font:inherit;border:1px solid #aeb7b1;border-radius:8px;box-sizing:border-box}
@media(max-width:600px){#portal-staff-menu .p-staff-menu-list{grid-template-columns:1fr}}

#portal-staff-menu [hidden]{display:none!important}

/* Oleada 1: direction and tools share the portal layout. */
#mrh .p-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}
#mrh .p-direction-tile{padding:16px;border:1px solid var(--line);border-radius:12px;min-width:0}
#mrh .p-direction-tile p{margin:10px 0;font-size:13px}
#mrh .p-direction-value{display:block;font-size:clamp(22px,4vw,36px);margin:12px 0;overflow-wrap:anywhere}
#mrh .p-direction .p-btn{margin:6px 0}
#mrh .p-direction-locals summary{padding:14px 0;cursor:pointer;min-height:44px}
#mrh .p-direction-local{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:12px 0;border-top:1px solid var(--line)}
#mrh .p-direction-local small{grid-column:1/-1;color:var(--muted)}
#mrh .p-direction-agenda{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
#mrh .p-direction-agenda article{display:flex;flex-direction:column;gap:6px;padding:14px;background:var(--bg);border-radius:10px;overflow-wrap:anywhere}
#mrh #portal-staff-menu-groups input{width:100%;min-height:48px;padding:12px;font-size:16px;border:1px solid var(--line);border-radius:10px;margin:12px 0}
#mrh #portal-staff-menu-groups [hidden]{display:none!important}
#mrh #portal-staff-menu-groups summary{min-height:48px;padding:14px 0;cursor:pointer}
#mrh .p-staff-menu-list a{min-height:46px;overflow-wrap:anywhere}
@media(max-width:650px){#mrh .p-direction-grid,#mrh .p-direction-agenda{grid-template-columns:minmax(0,1fr)}}


/* encargo-01 portada
 * Bloques NUEVOS de la portada de Dirección (recorrido 1). Prefijo .p-dir2-*.
 * Se fusiona en portal-navigation.css; usa los tokens mrh ya definidos en
 * _layout_head.php (--ink, --muted, --line, --bg, --warn, --danger, --ok…).
 * Acción primaria negra (heredada de .p-btn); rojo SOLO alarma/destructivo.
 * Acento por local: --p-dir2-accent (color del venue) en borde/pill. */

#mrh .p-dir2-block { margin: 16px 0; }
#mrh .p-dir2-blocktitle {
  margin: 0 0 10px; font-size: 15px; font-weight: 750; color: var(--ink);
  letter-spacing: -.01em; display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
#mrh .p-dir2-note { font-size: 13px; color: var(--muted); }

/* — Píldoras de estado — */
#mrh .p-dir2-pill {
  display: inline-flex; align-items: center; min-height: 24px; padding: 2px 10px;
  border-radius: 999px; font-size: 12px; font-weight: 700; line-height: 1.2; white-space: nowrap;
}
#mrh .p-dir2-pill--ok     { background: var(--ok-bg);     color: var(--ok); }
#mrh .p-dir2-pill--warn   { background: var(--warn-bg);   color: var(--warn); }
#mrh .p-dir2-pill--danger { background: var(--danger-bg); color: var(--danger); }
#mrh .p-dir2-pill--muted  { background: var(--accent-tint); color: var(--muted); }

/* — (a) Hoy requiere decisión — */
#mrh .p-dir2-decide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
#mrh .p-dir2-decide__item {
  display: flex; align-items: center; gap: 10px; min-height: 48px;
  padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px;
  background: var(--surface); color: var(--ink); text-decoration: none; font-size: 14px; font-weight: 600;
}
#mrh .p-dir2-decide__item:hover, #mrh .p-dir2-decide__item:focus-visible {
  border-color: var(--ink); outline: 2px solid var(--ink); outline-offset: 1px;
}
#mrh .p-dir2-decide__label { flex: 1; min-width: 0; overflow-wrap: anywhere; }
#mrh .p-dir2-decide__item i { color: var(--faint); }

/* — Grid de tiles: 3 columnas en PC, 1 en móvil (ventas primero en el DOM) — */
#mrh .p-dir2-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
#mrh .p-dir2-tile { padding: 14px; border: 1px solid var(--line); border-radius: 12px; min-width: 0; background: var(--surface); }
#mrh .p-dir2-tiletitle { margin: 0 0 10px; font-size: 14px; font-weight: 750; color: var(--ink); letter-spacing: -.01em; }
#mrh .p-dir2-tile p { margin: 8px 0; font-size: 13px; }

/* — (b) Ventas: 4 periodos (hoy destacado, sin rojo) — */
#mrh .p-dir2-sales { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
#mrh .p-dir2-sale {
  display: block; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px;
  background: var(--bg); color: inherit; text-decoration: none; min-height: 44px;
}
#mrh .p-dir2-sale--main { border-left: 3px solid var(--ink); background: var(--surface); }
#mrh .p-dir2-sale:hover, #mrh .p-dir2-sale:focus-visible { border-color: var(--ink); }
#mrh .p-dir2-sale__label {
  display: block; font-size: 10px; font-weight: 750; letter-spacing: .07em;
  text-transform: uppercase; color: var(--muted);
}
#mrh .p-dir2-sale__val { display: block; font-size: 20px; font-weight: 800; color: var(--ink); line-height: 1.15; overflow-wrap: anywhere; }
#mrh .p-dir2-sale--main .p-dir2-sale__val { font-size: 23px; }
#mrh .p-dir2-sale__sub { display: block; font-size: 10.5px; color: var(--muted); margin-top: 2px; }

#mrh .p-dir2-facts { margin: 10px 0; padding: 0 0 0 18px; font-size: 12px; color: var(--ink-2); line-height: 1.6; }
#mrh .p-dir2-warn   { color: var(--warn); font-weight: 600; }
#mrh .p-dir2-danger { color: var(--danger); font-weight: 600; }

/* — (c)/(d) Filas de local con logo real y acento del venue — */
#mrh .p-dir2-venues { display: flex; flex-direction: column; gap: 6px; }
#mrh .p-dir2-venue {
  display: flex; align-items: center; gap: 10px; min-height: 44px;
  padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px;
  border-left: 3px solid var(--p-dir2-accent, var(--line)); background: var(--surface);
}
#mrh .p-dir2-venue__av { flex: 0 0 auto; line-height: 0; }
#mrh .p-dir2-venue__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
#mrh .p-dir2-venue__body strong { font-size: 13.5px; color: var(--ink); overflow-wrap: anywhere; }
#mrh .p-dir2-venue__body small { font-size: 11.5px; color: var(--muted); line-height: 1.35; }
#mrh .p-dir2-mono {
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%; color: #fff; font-weight: 800; flex: none;
}
/* Avatares del helper magma_horarios dentro de la portada */
#mrh .p-dir2-venue .mh-avatar { border-radius: 50%; object-fit: cover; display: inline-block; }
#mrh .p-dir2-venue .mh-av-wrap { position: relative; display: inline-block; }
#mrh .p-dir2-venue .mh-av-badge {
  position: absolute; right: -1px; bottom: -1px; width: 10px; height: 10px;
  border-radius: 50%; border: 2px solid var(--surface);
}

/* — (c) Locales · horarios: lista compacta, una línea por local (2026-09-18).
     Sustituye las tarjetas altas; el estado envuelve solo si no cabe — nunca
     se recorta información. — */
#mrh .p-dir2-hline {
  display: flex; align-items: center; gap: 8px; min-height: 34px; padding: 4px 8px;
  border-left: 3px solid var(--p-dir2-accent, var(--line)); border-radius: 6px;
  background: var(--surface);
}
#mrh .p-dir2-hline__av { flex: 0 0 auto; line-height: 0; }
#mrh .p-dir2-hline__name {
  flex: 0 0 auto; min-width: 0; max-width: 50%; font-size: 13px; font-weight: 700; color: var(--ink);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#mrh .p-dir2-hline__when {
  flex: 1 1 auto; min-width: 0; font-size: 12px; color: var(--muted); line-height: 1.3; overflow-wrap: anywhere;
}
#mrh .p-dir2-hline__rating { flex: 0 0 auto; font-size: 11px; color: var(--faint); white-space: nowrap; }
#mrh .p-dir2-hline__gbp { flex: 0 0 auto; font-size: 12px; color: var(--warn); }
#mrh .p-dir2-hline .mh-avatar { border-radius: 50%; object-fit: cover; display: inline-block; }
#mrh .p-dir2-hline .mh-av-wrap { position: relative; display: inline-block; }
#mrh .p-dir2-hline .mh-av-badge {
  position: absolute; right: -1px; bottom: -1px; width: 9px; height: 9px;
  border-radius: 50%; border: 2px solid var(--surface);
}

/* — (e) Agenda: fila con logo del local, previsión y estado (2026-09-18) — */
#mrh .p-dir2-agenda { display: flex; flex-direction: column; gap: 6px; margin: 10px 0; }
#mrh .p-dir2-agenda__item {
  display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 10px;
  border: 1px solid var(--line); border-radius: 10px; background: var(--surface);
}
#mrh .p-dir2-agenda__av { flex: 0 0 auto; line-height: 0; }
#mrh .p-dir2-agenda__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
#mrh .p-dir2-agenda__body > a {
  font-size: 13.5px; font-weight: 700; color: var(--ink); text-decoration: none; overflow-wrap: anywhere;
}
#mrh .p-dir2-agenda__body > a:hover, #mrh .p-dir2-agenda__body > a:focus-visible { text-decoration: underline; }
#mrh .p-dir2-agenda__meta { font-size: 11.5px; color: var(--muted); line-height: 1.35; }
#mrh .p-dir2-agenda__pred { color: var(--ink-2); font-weight: 650; }
#mrh .p-dir2-agenda__item .p-dir2-pill { flex: 0 0 auto; }
#mrh .p-dir2-agenda .mh-avatar { border-radius: 50%; object-fit: cover; display: inline-block; }
#mrh .p-dir2-agenda .mh-av-wrap { position: relative; display: inline-block; }
#mrh .p-dir2-agenda .mh-av-badge {
  position: absolute; right: -1px; bottom: -1px; width: 9px; height: 9px;
  border-radius: 50%; border: 2px solid var(--surface);
}

/* — (f) Alertas: rojo solo aquí y en p-dir2-pill--danger — */
#mrh .p-dir2-alerts { display: flex; flex-direction: column; gap: 6px; }
#mrh .p-dir2-alert {
  display: flex; align-items: center; gap: 10px; min-height: 44px;
  padding: 10px 12px; border-radius: 10px; text-decoration: none; font-size: 13px; font-weight: 600;
}
#mrh .p-dir2-alert--danger  { background: var(--danger-bg); color: var(--danger); }
#mrh .p-dir2-alert--warning { background: var(--warn-bg);   color: var(--warn); }
#mrh .p-dir2-alert--info    { background: var(--info-bg);   color: var(--info); }
#mrh .p-dir2-alert span { flex: 1; min-width: 0; overflow-wrap: anywhere; }

/* — Filas de acciones secundarias — */
#mrh .p-dir2-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
#mrh .p-dir2-links .p-btn { margin: 0; }
#mrh .p-dir2-btn-danger { color: var(--danger); border-color: var(--danger); }

/* — Responsive: 1300 px denso a 3 columnas; 390 px una columna con
     decisiones y ventas primero (ya van primero en el DOM) — */
@media (max-width: 1100px) {
  #mrh .p-dir2-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
  #mrh .p-dir2-grid, #mrh .p-dir2-decide { grid-template-columns: minmax(0, 1fr); }
  #mrh .p-dir2-sales { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* encargo-01 menu · RECORRIDO 2 · Navegación por espacios del portal staff.
   Solo bloques nuevos con prefijo .p-spaces-*; no pisa estilos existentes. */

.p-spaces-search {
  width: 100%;
  box-sizing: border-box;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 10px;
  background: rgba(255, 255, 255, .06);
  color: inherit;
  font-size: 1rem;
}

.p-spaces-status {
  margin: 8px 2px;
  font-size: .85rem;
  opacity: .75;
}

.p-spaces-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 6px 0 14px;
}

@media (max-width: 900px) {
  .p-spaces-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
  .p-spaces-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
}

.p-spaces-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-height: 44px;
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 12px;
  background: rgba(255, 255, 255, .05);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.p-spaces-card:hover,
.p-spaces-card:focus-visible {
  background: rgba(255, 255, 255, .1);
  outline: none;
}

.p-spaces-card-icon { font-size: 1.15rem; }

.p-spaces-card-name { font-weight: 600; }

.p-spaces-card-hint {
  font-size: .78rem;
  opacity: .7;
  line-height: 1.25;
}

.p-spaces-card-count {
  align-self: flex-end;
  margin-top: auto;
  min-width: 1.6em;
  padding: 1px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  font-size: .8rem;
  text-align: center;
}

.p-spaces-detail-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}

.p-spaces-back {
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.p-spaces-back:hover,
.p-spaces-back:focus-visible { background: rgba(255, 255, 255, .08); }

.p-spaces-results {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 4px 0 10px;
}

.p-spaces-result {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p-spaces-result > a {
  flex: 1;
  display: block;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 8px;
}

.p-spaces-result-space {
  flex-shrink: 0;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .1);
  font-size: .75rem;
  opacity: .8;
}

.p-spaces-catalog {
  margin-top: 10px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding-top: 8px;
}

.p-spaces-catalog > summary {
  min-height: 44px;
  line-height: 44px;
  cursor: pointer;
  font-size: .9rem;
  opacity: .85;
}

/* hidden must win over the display of responsive grids/results. */
#portal-staff-menu [hidden] { display:none !important; }

/* Real long venue names and review counts must not squeeze each other. */
#mrh .p-dir2-venue{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start}
#mrh .p-dir2-venue>.p-dir2-pill{grid-column:2;justify-self:start;white-space:normal}
#mrh .p-spaces-card,#mrh .p-spaces-search,#mrh .p-spaces-back{border-color:var(--line);background:var(--surface)}
#mrh .p-spaces-card:hover,#mrh .p-spaces-card:focus-visible,#mrh .p-spaces-back:focus-visible{background:var(--bg);outline:2px solid var(--ink);outline-offset:2px}
#mrh .p-spaces-card-count,#mrh .p-spaces-result-space{background:var(--bg);color:var(--ink-2)}
#mrh .p-spaces-card{min-width:0;overflow-wrap:anywhere}#mrh .p-spaces-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#mrh .p-spaces-detail-head,#mrh .p-spaces-result{flex-wrap:wrap}
@media(max-width:900px){#mrh .p-spaces-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Mario, 17-sep: horario protagonista; reputación secundaria en el mismo local. */
#mrh .p-dir2-grid{grid-template-columns:minmax(240px,.9fr) minmax(0,1.6fr);align-items:start}
#mrh .p-dir2-local-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#mrh .p-dir2-local-card{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:12px;padding:14px 12px;border:1px solid var(--line);border-left:3px solid var(--p-dir2-accent,var(--line));border-radius:12px;background:var(--surface)}
#mrh .p-dir2-local-logo{line-height:0}#mrh .p-dir2-local-logo img{object-fit:contain}
#mrh .p-dir2-local-info{min-width:0}#mrh .p-dir2-local-name{display:block;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
#mrh .p-dir2-local-hours{margin:7px 0 4px;font-size:16px;font-weight:750;line-height:1.4;color:var(--ink)}
#mrh .p-dir2-local-next{display:block;font-size:12px;line-height:1.4;color:var(--muted)}
#mrh .p-dir2-local-google{display:block;font-size:12px;line-height:1.4;color:var(--warn);margin-top:5px;min-height:32px;padding:6px 0}
#mrh .p-dir2-local-reviews{margin-top:8px;border-top:1px solid var(--line)}
#mrh .p-dir2-local-reviews summary{padding:12px 0;min-height:44px;font-size:12px;color:var(--muted);cursor:pointer;box-sizing:border-box}
#mrh .p-dir2-local-reviews>div{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted);line-height:1.4}
#mrh .p-dir2-local-reviews a{min-height:44px;display:flex;align-items:center}
#mrh .p-dir2-reviews-link{font-size:12px;color:var(--muted);min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1150px){#mrh .p-dir2-grid{grid-template-columns:minmax(0,1fr)} }
@media(max-width:650px){#mrh .p-dir2-local-grid{grid-template-columns:minmax(0,1fr)}}

/* encargo-01B · búsqueda interpretada (.p-search-*). Solo añade; no toca lo publicado. */
.p-shell-search{display:flex;align-items:center;gap:10px;width:calc(100% - 16px);margin:10px 8px 0;padding:11px 14px;min-height:44px;
  border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-weight:700;font-size:14px;cursor:pointer;}
.p-shell-search:hover{background:var(--accent-tint);}
.p-shell-search:focus-visible{outline:none;box-shadow:var(--ring);}
.p-shell-search i{color:var(--muted);}
/* Móvil (base): FAB sobre la barra inferior. El botón está FUERA del rail
   (el rail es display:none en móvil y ocultaba a sus hijos — fallo visto en iPhone). */
.p-shell-search{position:fixed;right:14px;bottom:calc(env(safe-area-inset-bottom,0px) + 84px);z-index:55;width:auto;margin:0;
  border-radius:999px;box-shadow:0 8px 22px rgba(0,0,0,.18);}
.p-shell-search span{display:none;}
.p-shell-search i{font-size:18px;color:var(--ink);}
/* PC: fijo al pie de la columna del rail. */
@media (min-width:901px){
  .p-shell-search{position:fixed;left:8px;bottom:12px;right:auto;width:calc(var(--portal-rail,248px) - 16px);
    border-radius:12px;box-shadow:none;z-index:950;} /* el rail es z-index:900: sin esto lo tapaba (fallo 17-sep) */
  .p-shell-search span{display:inline;}
  .p-shell-search i{font-size:14px;}
}
.p-search-overlay{position:fixed;inset:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;}
.p-search-head{display:flex;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px 10px;background:var(--surface);border-bottom:1px solid var(--line);}
.p-search-input{flex:1;min-height:46px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font-size:16px;font-family:inherit;background:var(--surface);color:var(--ink);}
.p-search-input:focus-visible{outline:none;box-shadow:var(--ring);}
.p-search-close{min-height:46px;padding:0 16px;border:0;border-radius:12px;background:var(--accent);color:#fff;font-weight:700;font-size:14px;cursor:pointer;}
.p-search-status{margin:8px 16px 0;font-size:12px;color:var(--muted);min-height:18px;}
.p-search-results{flex:1;overflow-y:auto;padding:4px 14px calc(env(safe-area-inset-bottom,0px) + 90px);max-width:720px;width:100%;margin:0 auto;}
.p-search-interp{font-size:13px;font-weight:700;color:var(--ink);margin:10px 0 2px;}
.p-search-nota{font-size:12px;color:var(--warn);margin:2px 0 6px;}
.p-search-aviso{font-size:12px;color:var(--warn);background:var(--warn-bg);border-radius:10px;padding:9px 12px;margin:8px 0;}
.p-search-grupo{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:14px 0 6px;}
.p-search-list{display:flex;flex-direction:column;gap:8px;}
.p-search-row{display:flex;align-items:center;gap:11px;padding:12px 13px;min-height:52px;background:var(--surface);border:1px solid var(--line);
  border-radius:13px;text-decoration:none;color:var(--ink);}
.p-search-row:hover{border-color:#dededa;}
.p-search-row.is-active,.p-search-row:focus-visible{border-color:var(--ink);box-shadow:var(--ring);}
.p-search-row.is-alt{opacity:.82;}
.p-search-ic{flex:0 0 auto;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--accent-tint);color:var(--ink-2);font-size:14px;}
.p-search-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.p-search-t{font-weight:700;font-size:14px;line-height:1.25;word-break:break-word;}
.p-search-d{font-size:12px;color:var(--muted);line-height:1.35;word-break:break-word;}
.p-search-legacy{flex:0 0 auto;font-size:12px;color:var(--faint);border:1px solid var(--line);border-radius:999px;padding:2px 8px;}
/* Resultados interpretados dentro de la tarjeta Gestión (portal_staff_menu.js) */
.p-spaces-interpreted{border:1px dashed var(--line);border-radius:12px;padding:10px;margin-bottom:10px;}
.p-spaces-interpreted .p-search-grupo{margin-top:6px;}
@media (min-width:901px){
  .p-search-overlay{inset:0 0 0 var(--portal-rail,248px);background:rgba(243,243,241,.97);}
  .p-search-results{padding-bottom:40px;}
}

#mrh .p-dir2-more summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600}
#mrh .p-dir2-more{width:100%}


/* 01C deployment correction: styles for the reviewed task, hours and agenda markup. */
/* encargo-01C · entrada por tareas dentro de cada espacio. Las acciones
   principales primero; el catálogo completo del espacio queda plegado debajo. */
#mrh .p-space-tasks{display:flex;flex-direction:column;gap:8px;margin:4px 0 12px}
#mrh .p-space-task{display:flex;align-items:center;gap:11px;padding:12px 13px;min-height:52px;
  background:var(--surface);border:1px solid var(--line);border-radius:13px;text-decoration:none;color:var(--ink);}
#mrh .p-space-task:hover{border-color:#dededa;}
#mrh .p-space-task:focus-visible{outline:none;box-shadow:var(--ring);}
#mrh .p-space-task__icon{flex:0 0 auto;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--accent-tint);color:var(--ink-2);font-size:14px;}
#mrh .p-space-task__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
#mrh .p-space-task__body strong{font-weight:700;font-size:14px;line-height:1.25;overflow-wrap:anywhere;}
#mrh .p-space-task__body small{font-size:12px;color:var(--muted);line-height:1.3;overflow-wrap:anywhere;}
#mrh .p-space-task__go{color:var(--faint);flex:0 0 auto;}
#mrh .p-space-all{border-top:1px solid var(--line);margin-top:2px}
#mrh .p-space-all>summary{min-height:44px;display:flex;align-items:center;font-size:13px;font-weight:700;color:var(--ink-2);cursor:pointer;}

/* — (c) Locales · horarios: lista compacta, una línea por local (2026-09-18).
     Sustituye las tarjetas altas; el estado envuelve solo si no cabe — nunca
     se recorta información. — */
#mrh .p-dir2-hline {
  display: flex; align-items: center; gap: 8px; min-height: 34px; padding: 4px 8px;
  border-left: 3px solid var(--p-dir2-accent, var(--line)); border-radius: 6px;
  background: var(--surface);
}
#mrh .p-dir2-hline__av { flex: 0 0 auto; line-height: 0; }
#mrh .p-dir2-hline__name {
  flex: 0 0 auto; min-width: 0; max-width: 50%; font-size: 13px; font-weight: 700; color: var(--ink);
  white-space: normal; overflow-wrap: anywhere;
}
#mrh .p-dir2-hline__when {
  flex: 1 1 auto; min-width: 0; font-size: 12px; color: var(--muted); line-height: 1.3; overflow-wrap: anywhere;
}
#mrh .p-dir2-hline__rating { flex: 0 0 auto; font-size: 11px; color: var(--faint); white-space: nowrap; }
#mrh .p-dir2-hline__gbp { flex: 0 0 auto; font-size: 12px; color: var(--warn); }
#mrh .p-dir2-hline .mh-avatar { border-radius: 50%; object-fit: cover; display: inline-block; }
#mrh .p-dir2-hline .mh-av-wrap { position: relative; display: inline-block; }
#mrh .p-dir2-hline .mh-av-badge {
  position: absolute; right: -1px; bottom: -1px; width: 9px; height: 9px;
  border-radius: 50%; border: 2px solid var(--surface);
}

/* — (e) Agenda: fila con logo del local, previsión y estado (2026-09-18) — */
#mrh .p-dir2-agenda { display: flex; flex-direction: column; gap: 6px; margin: 10px 0; }
#mrh .p-dir2-agenda__item {
  display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 10px;
  border: 1px solid var(--line); border-radius: 10px; background: var(--surface);
}
#mrh .p-dir2-agenda__av { flex: 0 0 auto; line-height: 0; }
#mrh .p-dir2-agenda__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
#mrh .p-dir2-agenda__body > a {
  font-size: 13.5px; font-weight: 700; color: var(--ink); text-decoration: none; overflow-wrap: anywhere;
}
#mrh .p-dir2-agenda__body > a:hover, #mrh .p-dir2-agenda__body > a:focus-visible { text-decoration: underline; }
#mrh .p-dir2-agenda__meta { font-size: 11.5px; color: var(--muted); line-height: 1.35; }
#mrh .p-dir2-agenda__pred { color: var(--ink-2); font-weight: 650; }
#mrh .p-dir2-agenda__item .p-dir2-pill { flex: 0 0 auto; }
#mrh .p-dir2-agenda .mh-avatar { border-radius: 50%; object-fit: cover; display: inline-block; }
#mrh .p-dir2-agenda .mh-av-wrap { position: relative; display: inline-block; }
#mrh .p-dir2-agenda .mh-av-badge {
  position: absolute; right: -1px; bottom: -1px; width: 9px; height: 9px;
  border-radius: 50%; border: 2px solid var(--surface);
}
#mrh .p-dir2-hline__gbp{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}

/* — (a2) Cuadro de mando (2026-09-19): widgets clásicos del dashboard de admin
     restituidos en la portada de Dirección. Grid responsive con los tokens mrh;
     cada celda lleva tono (ok/info/warn/danger/muted). El rojo SOLO en alarma. — */
#mrh .p-dir2-kpis { display: flex; flex-direction: column; gap: 12px; }
#mrh .p-dir2-kpigroup {
  border: 1px solid var(--line); border-radius: 12px; background: var(--surface); padding: 10px 12px;
}
#mrh .p-dir2-kpigroup__title {
  font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  color: var(--muted); margin-bottom: 8px;
}
#mrh .p-dir2-kpigrid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px;
}
#mrh .p-dir2-kpi {
  display: flex; flex-direction: column; gap: 1px; min-width: 0; min-height: 64px;
  padding: 9px 11px; border: 1px solid var(--line); border-left: 3px solid var(--faint);
  border-radius: 10px; background: var(--bg); color: var(--ink); text-decoration: none;
}
a.p-dir2-kpi:hover, a.p-dir2-kpi:focus-visible {
  border-color: var(--ink); outline: 2px solid var(--ink); outline-offset: 1px;
}
#mrh .p-dir2-kpi__label {
  font-size: 11px; font-weight: 700; color: var(--muted); line-height: 1.25; overflow-wrap: anywhere;
}
#mrh .p-dir2-kpi__val {
  font-size: 20px; font-weight: 800; color: var(--ink); line-height: 1.15;
  letter-spacing: -.01em; overflow-wrap: anywhere;
}
#mrh .p-dir2-kpi__sub { font-size: 11px; color: var(--muted); line-height: 1.25; overflow-wrap: anywhere; }
#mrh .p-dir2-kpi--ok     { border-left-color: var(--ok); }
#mrh .p-dir2-kpi--info   { border-left-color: var(--info); }
#mrh .p-dir2-kpi--warn   { border-left-color: var(--warn); }
#mrh .p-dir2-kpi--danger { border-left-color: var(--danger); }
#mrh .p-dir2-kpi--muted  { border-left-color: var(--line); }
#mrh .p-dir2-kpi--ok .p-dir2-kpi__val     { color: var(--ok); }
#mrh .p-dir2-kpi--warn .p-dir2-kpi__val   { color: var(--warn); }
#mrh .p-dir2-kpi--danger .p-dir2-kpi__val { color: var(--danger); }
#mrh .p-dir2-kpi--muted .p-dir2-kpi__val  { color: var(--muted); }

/* La rejilla de decisión pasa a una columna en móvil estrecho (antes 2 fijas). */
@media (max-width: 560px) {
  #mrh .p-dir2-decide { grid-template-columns: minmax(0, 1fr); }
}

/* Dirección: cierre y decisiones primero; detalle técnico consultable. */
#mrh .p-ceo { padding: 28px; border-radius: 12px; font-variant-numeric: tabular-nums; }
#mrh .p-ceo .p-head h2 { font-size: 24px; font-weight: 650; letter-spacing: -.025em; text-transform: none; color: var(--ink); margin: 0; }
#mrh .p-ceo-intro { color: var(--muted); margin: 6px 0 12px; max-width: 75ch; font-size: 14px; }
#mrh .p-ceo a:focus-visible, #mrh .p-ceo summary:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
#mrh .p-ceo-focus { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(250px, 1fr); gap: 32px; align-items: start; margin-bottom: 28px; }
#mrh .p-ceo-night, #mrh .p-ceo-decisions { min-width: 0; }
#mrh .p-ceo-sectionhead { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
#mrh .p-ceo-sectionhead h3, #mrh .p-ceo .p-dir2-blocktitle, #mrh .p-ceo .p-dir2-tiletitle { font-size: 18px; text-transform: none; letter-spacing: -.015em; color: var(--ink); }
#mrh .p-ceo-sectionhead time { font-size: 13px; font-weight: 500; color: var(--muted); margin-left: 6px; }
#mrh .p-ceo-sectionhead a { font-size: 14px; text-underline-offset: 3px; min-height: 44px; display: inline-flex; align-items: center; }
#mrh .p-ceo-night-total { display: flex; flex-direction: column; gap: 3px; padding: 16px 0 20px; }
#mrh .p-ceo-night-total > span { font-size: 13px; color: var(--muted); }
#mrh .p-ceo-night-total > strong { font-size: 38px; font-weight: 650; line-height: 1.15; letter-spacing: -.03em; font-variant-numeric: tabular-nums; color: var(--ink); }
#mrh .p-ceo-ledger { margin: 0; border-top: 1px solid var(--line); }
#mrh .p-ceo-ledger > div { display: grid; grid-template-columns: 1fr 1.2fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--line); }
#mrh .p-ceo-ledger dt { font-size: 14px; font-weight: 500; }
#mrh .p-ceo-ledger dd { text-align: right; font-size: 17px; font-weight: 650; margin: 0; font-variant-numeric: tabular-nums; }
#mrh .p-ceo-ledger small { display: block; font-size: 13px; line-height: 1.5; font-weight: 400; color: var(--muted); }
#mrh .p-ceo-table-wrap { margin-top: 14px; }
#mrh .p-ceo-table { display: table; width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 13px; }
#mrh .p-ceo-table th, #mrh .p-ceo-table td { padding: 10px 0; border-bottom: 1px solid var(--line); text-align: left; overflow-wrap: anywhere; }
#mrh .p-ceo-table thead th { color: var(--muted); font-weight: 500; font-size: 13px; }
#mrh .p-ceo-table th:first-child { width: 42%; padding-right: 8px; }
#mrh .p-ceo-table td:nth-child(2), #mrh .p-ceo-table thead th:nth-child(2) { text-align: right; padding-right: 14px; font-variant-numeric: tabular-nums; }
#mrh .p-ceo-table td:last-child, #mrh .p-ceo-table thead th:last-child { text-align: right; width: 28%; }
#mrh .p-ceo-source { margin-top: 12px; font-size: 12px; color: var(--muted); }
#mrh .p-ceo-source summary { cursor: pointer; min-height: 44px; padding: 12px 0; }
#mrh .p-ceo-source p { line-height: 1.6; }
#mrh .p-ceo .p-ceo-decisions { margin: 0; padding: 0; border: 0; }
#mrh .p-ceo-decisions .p-dir2-decide { display: block; border-top: 1px solid var(--line); margin-top: 16px; }
#mrh .p-ceo-decisions .p-dir2-decide__item { display: grid; grid-template-columns: minmax(0,1fr) auto 8px; gap: 10px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; min-height: 60px; padding: 12px 0; background: transparent; }
#mrh .p-ceo-decisions .p-dir2-decide__label { font-size: 14px; font-weight: 500; }
#mrh .p-ceo .p-dir2-pill { border-radius: 4px; font-weight: 600; font-size: 12px; }
#mrh .p-ceo-decisions .p-dir2-links { display: flex; flex-direction: column; align-items: stretch; margin-top: 16px; gap: 8px; }
#mrh .p-ceo-decisions .p-dir2-links .p-btn { font-size: 13px; min-height: 44px; }
#mrh .p-ceo-decisions .p-dir2-links .p-btn:first-child { background: var(--ink); color: #fff; border-color: var(--ink); }
#mrh .p-ceo .p-ceo-detail { margin: 0 0 28px; padding: 0; border: 0; border-block: 1px solid var(--line); }
#mrh .p-ceo-detail > summary { cursor: pointer; padding: 16px 0; min-height: 52px; font-weight: 500; }
#mrh .p-ceo-detail .p-dir2-kpis { padding-bottom: 16px; }
#mrh .p-ceo .p-dir2-kpigroup { background: transparent; border: 0; padding: 12px 0; border-radius: 0; }
#mrh .p-ceo .p-dir2-kpi { background: transparent; border: 0; border-radius: 0; padding: 10px 8px 10px 0; }
#mrh .p-ceo .p-dir2-kpi__val { font-size: 19px; }
#mrh .p-ceo .p-dir2-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 30px; border-top: 1px solid var(--line); padding-top: 24px; }
#mrh .p-ceo .p-dir2-tile { border: 0; border-radius: 0; background: transparent; padding: 0; box-shadow: none; }
#mrh .p-ceo .p-dir2-sales { display: block; }
#mrh .p-ceo .p-dir2-sale { display: grid; grid-template-columns: 1fr auto; gap: 4px 14px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; }
#mrh .p-ceo .p-dir2-sale__label { font-size: 13px; text-transform: none; letter-spacing: 0; align-self: center; }
#mrh .p-ceo .p-dir2-sale__val { font-size: 20px; font-weight: 600; text-align: right; color: var(--ink); }
#mrh .p-ceo .p-dir2-sale__sub { grid-column: 1/-1; font-size: 11px; }
#mrh .p-ceo .p-dir2-hline { border-left: 0; border-radius: 0; }
#mrh .p-ceo .p-dir2-alert { border-left-width: 1px; border-radius: 6px; }
#mrh .p-ceo .p-dir2-agenda__item { background: transparent; border-radius: 0; border: 0; border-bottom: 1px solid var(--line); padding: 13px 0; }
#mrh .p-ceo .p-dir2-facts, #mrh .p-ceo .sub { font-size: 13px; line-height: 1.5; text-wrap: pretty; }
@media (max-width: 1050px) {
  #mrh .p-ceo-focus { grid-template-columns: minmax(0,1fr); gap: 24px; }
  #mrh .p-ceo .p-dir2-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 560px) {
  #mrh .p-ceo { padding: 18px 16px; }
  #mrh .p-ceo .p-head h2 { font-size: 22px; }
  #mrh .p-ceo-intro { font-size: 14px; }
  #mrh .p-ceo-night-total > strong { font-size: 34px; }
  #mrh .p-ceo .p-dir2-kpigrid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #mrh .p-ceo-table { font-size: 13px; }
  #mrh .p-ceo-decisions .p-dir2-decide__item { min-height: 62px; }
}

/* Portada operativa: horarios visibles, comparación y noche por preparar. */
#mrh .p-ceo-periods { display: flex; gap: 4px; padding: 4px; background: var(--mrh-surface-2); border: 1px solid var(--line); border-radius: 8px; margin: 16px 0 18px; width: fit-content; max-width: 100%; }
#mrh .p-ceo-periods button { appearance: none; background: none; border: 0; border-radius: 5px; min-height: 44px; padding: 10px 14px; color: var(--muted); font: inherit; font-size: 14px; cursor: pointer; }
#mrh .p-ceo-periods button[aria-selected="true"] { color: var(--surface); background: var(--ink); font-weight: 600; }
#mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-night, #mrh .p-ceo[data-ceo-view="noche"] .p-ceo-live { display: none; }
#mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-focus { display: block; }
#mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-decisions .p-dir2-decide { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
#mrh .p-ceo-live { margin-bottom: 30px; }
#mrh .p-ceo-live-row { appearance: none; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: none; font: inherit; line-height: 1.4; color: var(--ink); width: 100%; text-align: left; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 6px 16px; align-items: center; padding: 14px 8px; cursor: pointer; }
#mrh .p-ceo-live .p-ceo-sectionhead > .p-btn { width: auto; padding: 8px 14px; }
#mrh .p-ceo-live-row:hover { background: var(--mrh-surface-2); }
#mrh .p-ceo-live-name { font-weight: 650; font-size: 16px; overflow-wrap: anywhere; }
#mrh .p-ceo-live-name > span { font-size: 14px; margin-left: 6px; color: var(--muted); }
#mrh .p-ceo-live-channels { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; grid-column: 1/-1; grid-row: 2; }
#mrh .p-ceo-live-row small { display: block; color: var(--muted); font-size: 13px; margin-bottom: 2px; font-weight: 400; }
#mrh .p-ceo-live-channels b { font-size: 14px; font-weight: 500; }
#mrh .p-ceo-live-total { text-align: right; grid-column: 2; grid-row: 1; }
#mrh .p-ceo-live-total strong { display: block; font-size: 24px; font-weight: 650; line-height: 1.15; letter-spacing: -.025em; }
#mrh .p-ceo-live-fresh { grid-column: 1/-1; font-size: 12px; color: var(--muted); }
#mrh .p-ceo-number, #mrh .p-ceo-link { appearance: none; background: none; border: 0; border-radius: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; text-align: inherit; }
#mrh .p-ceo-number { display: block; min-height: 44px; font-size: 36px; font-weight: 600; letter-spacing: -.025em; line-height: 1.2; }
#mrh .p-ceo-number span { font-size: 20px; }
#mrh .p-ceo-link { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--mrh-border-strong); min-height: 44px; }
#mrh .p-ceo-source-line { font-size: 13px; color: var(--muted); line-height: 1.5; }
#mrh .p-ceo-dialog:not([open]) { display: none; }
#mrh .p-ceo-dialog[open] { display: block; box-sizing: border-box; width: min(680px,calc(100vw - 24px)); max-height: calc(100dvh - 32px); margin: auto; padding: 24px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--ink); overflow-y: auto; overscroll-behavior: contain; font: inherit; }
#mrh .p-ceo-dialog::backdrop { background: rgba(15,18,22,.48); }
#mrh .p-ceo-dialog-head { display: flex; align-items: start; justify-content: space-between; gap: 20px; margin: 0 0 20px; padding: 0 0 16px; border-bottom: 1px solid var(--line); }
#mrh .p-ceo-dialog-head h3 { margin: 6px 0; }
#mrh .p-ceo-dialog-head { position: sticky; top: -24px; background: var(--surface); z-index: 1; padding-top: 8px; }
#mrh .p-ceo-dialog-head .p-btn { flex-shrink: 0; width: auto; }
#mrh .p-ceo-breakdown { margin: 10px 0 18px; }
#mrh .p-ceo-breakdown > div { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
#mrh .p-ceo-breakdown dt { font-weight: 400; }
#mrh .p-ceo-breakdown dd { margin: 0; text-align: right; font-weight: 600; min-width: 0; }
#mrh .p-ceo-breakdown small { display: block; margin-top: 4px; font-weight: 400; font-size: 13px; color: var(--muted); }
#mrh .p-ceo-detail-table { display: table; width: 100%; font-size: 12px; margin: 0; }
#mrh .p-ceo-detail-table td, #mrh .p-ceo-detail-table th { white-space: normal; padding: 10px 4px; }
#mrh .p-ceo-member + .p-ceo-member { border-top: 2px solid var(--line); padding-top: 20px; margin-top: 20px; }
#mrh .p-ceo button:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
#mrh:has(.p-ceo-dialog[open]) { isolation: auto; }
@media(max-width: 760px) {
  #mrh .p-ceo-live-row { grid-template-columns: 1fr auto; gap: 12px; }
  #mrh .p-ceo-live-channels { grid-row: 2; grid-column: 1/-1; }
  #mrh .p-ceo-live-total { grid-column: 2; grid-row: 1; }
  #mrh .p-ceo-live-fresh { grid-column: 1/-1; }
  #mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels > span:not(:first-child) { display: none; }
  #mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels { grid-template-columns: 1fr; }
  #mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels small, #mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels b { display: inline; margin-right: 5px; }
  #mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-decisions .p-dir2-decide { display: block; }
  #mrh .p-ceo-dialog[open] { padding: 18px 14px; }
  #mrh .p-ceo-dialog-head { flex-direction: column-reverse; gap: 12px; }
}
#mrh .p-ceo h3 { font-size: 18px; font-weight: 650; line-height: 1.35; text-wrap: balance; }
#mrh .p-ceo summary { cursor: pointer; }
#mrh .p-ceo summary:focus-visible, #mrh .p-ceo a:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
#mrh .p-ceo .sub { color: var(--muted); }
#mrh .p-ceo-group > summary { font-weight: 600; min-height: 36px; display: list-item; white-space: normal; }
#mrh .p-ceo-group table { display: table; width: 100%; font-size: 11px; }
#mrh .p-ceo-group th, #mrh .p-ceo-group td { padding: 8px 0; white-space: normal; }
#mrh .p-ceo-group small { display: block; color: #555e68; }
#mrh .p-ceo-hours { border: 1px solid var(--line); border-radius: 10px; background: var(--mrh-surface-2); padding: 20px 24px 12px; margin: 24px 0; }
#mrh .p-ceo-hours .p-ceo-sectionhead > .p-btn { width: auto; padding: 8px 12px; font-size: 12px; }
#mrh .p-ceo-hours-list { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0 20px; }
#mrh .p-ceo-hour { min-width: 0; padding: 12px 0; border-bottom: 1px solid var(--line); }
#mrh .p-ceo-hour-name { display: flex; gap: 8px; align-items: center; min-height: 34px; font-size: 14px; line-height: 1.4; }
#mrh .p-ceo-hour-name > :first-child { flex-shrink: 0; }
#mrh .p-ceo-hour-trigger { appearance: none; border: 0; padding: 0; background: none; font: inherit; color: inherit; width: 100%; text-align: left; cursor: pointer; }
#mrh .p-ceo-hour-state { display: block; color: var(--muted); font-size: 13px; margin-top: 8px; }
#mrh .p-ceo-hour.is-open .p-ceo-hour-state { color: var(--ink); font-weight: 600; }
#mrh .p-ceo-hour.is-open .p-ceo-hour-state::before { content: ''; display: inline-block; width: 6px; height: 6px; background: currentColor; border-radius: 50%; margin-right: 6px; vertical-align: 2px; }
#mrh .p-ceo-hour-time { display: block; font-size: 18px; font-weight: 650; line-height: 1.3; font-variant-numeric: tabular-nums; letter-spacing: -.015em; }
#mrh .p-ceo-hour > a { font-size: 12px; text-decoration: underline; }
#mrh .p-ceo-insights { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 30px; margin: 26px 0; }
#mrh .p-ceo-chart-key { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 13px; color: var(--muted); margin: 16px 0 6px; }
#mrh .p-ceo-chart-key span::before { content: ''; display: inline-block; width: 18px; height: 5px; background: #202124; margin: 0 6px 2px 0; }
#mrh .p-ceo-chart-key span + span::before { background: #b4b9c0; }
#mrh .p-ceo-pace-row { appearance: none; display: block; width: 100%; text-align: left; font: inherit; color: inherit; background: none; border: 0; padding: 12px 0; border-bottom: 1px solid var(--line); cursor: pointer; }
#mrh .p-ceo-pace-row > div:first-child { display: flex; justify-content: space-between; gap: 10px; font-size: 14px; margin-bottom: 10px; }
#mrh .p-ceo-pace-row > div:first-child > span { white-space: nowrap; font-weight: 600; }
#mrh .p-ceo-bar-line { display: grid; grid-template-columns: minmax(0,1fr) 135px; gap: 12px; align-items: center; font-size: 13px; line-height: 1.6; font-variant-numeric: tabular-nums; }
#mrh .p-ceo-bar-line > span:last-child { text-align: right; }
#mrh .p-ceo-bar { height: 6px; }
#mrh .p-ceo-bar i { display: block; height: 100%; background: #202124; }
#mrh .p-ceo-bar-line.is-baseline { color: #555e68; }
#mrh .p-ceo-bar-line.is-baseline i { background: #b4b9c0; }
#mrh .p-ceo-tonight-event { padding: 20px 0 16px; border-bottom: 1px solid var(--line); }
#mrh .p-ceo-tonight-head { display: flex; gap: 10px; align-items: center; }
#mrh .p-ceo-tonight-head a { font-weight: 600; font-size: 15px; }
#mrh .p-ceo-tonight-head span { display: block; font-size: 13px; color: var(--muted); }
#mrh .p-ceo-tonight-event dl { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 16px 0 0; }
#mrh .p-ceo-tonight-event dt { color: #555e68; font-size: 11px; font-weight: 400; }
#mrh .p-ceo-tonight-event dd { margin: 3px 0 0; font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; }
#mrh .p-ceo-tonight-event .sub { margin: 6px 0 0; font-size: 11px; }
#mrh .p-ceo .p-dir2-grid { display: block; }
#mrh .p-ceo .p-dir2-sales { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
#mrh .p-ceo .p-dir2-sale { grid-template-columns: 1fr; gap: 6px; }
#mrh .p-ceo .p-dir2-sale__val { text-align: left; }
#mrh .p-ceo .p-ceo-source { margin-top: 12px; }
#mrh .p-ceo .p-ceo-source > summary { min-height: 44px; padding: 12px 0; color: var(--muted); font-size: 13px; }
#mrh .p-ceo-agenda { margin-top: 18px; }
#mrh .p-ceo-agenda > summary { padding: 14px 0; min-height: 48px; }
@media (max-width: 1050px) {
  #mrh .p-ceo-hours-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #mrh .p-ceo-insights { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 560px) {
  #mrh .p-ceo-hours-list { gap: 0 16px; }
  #mrh .p-ceo-hour-time { font-size: 17px; }
  #mrh .p-ceo .p-dir2-sales { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 20px; }
  #mrh .p-ceo-table-wrap { overflow-x: auto; }
  #mrh .p-ceo-table td, #mrh .p-ceo-table th { white-space: normal; }
  #mrh .p-ceo-group table { min-width: 0; }
}

/* Acabado de Dirección · 22-sep. Misma información, escala y estados coherentes.
   Solo esta portada: no modifica navegación, permisos ni avisos del portal. */
#mrh .p-ceo-live-row[data-fv-applies="no"] { padding-block: 10px; row-gap: 4px; }
#mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels > span:not(:first-child) { display: none; }
#mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels { grid-template-columns: 1fr; grid-column: 1; }
#mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels small,
#mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-channels b { display: inline; margin-right: 4px; }
#mrh .p-ceo-live-row[data-fv-applies="no"] .p-ceo-live-fresh { grid-row: 2; grid-column: 2; text-align: right; }
#mrh .p-ceo .p-btn { border-radius: 8px; min-height: 44px; font-size: 14px; }
#mrh .p-ceo-live .p-ceo-sectionhead > .p-btn { background: var(--ink); color: var(--surface); border-color: var(--ink); }
#mrh .p-ceo .p-ceo-link:hover { text-decoration-color: currentColor; }
#mrh .p-ceo .p-ceo-dialog-head h3 { font-size: 20px; }
#mrh .p-ceo-dialog[id^="ceo-live-"] > .p-ceo-breakdown > div:last-child,
#mrh #ceo-night-sources > .p-ceo-breakdown > div:last-child { background: var(--mrh-surface-2); padding: 16px 12px; margin-top: 8px; border: 0; border-radius: 6px; }
#mrh .p-ceo-dialog[id^="ceo-live-"] > .p-ceo-breakdown > div:last-child dt,
#mrh #ceo-night-sources > .p-ceo-breakdown > div:last-child dt { font-weight: 600; }
#mrh .p-ceo-live-row, #mrh .p-ceo-hour-trigger, #mrh .p-ceo-periods button,
#mrh .p-ceo .p-btn, #mrh .p-ceo-pace-row { transition: background-color 160ms ease-out, color 160ms ease-out; }
#mrh .p-ceo-hour-trigger:hover, #mrh .p-ceo-pace-row:hover { background: var(--mrh-track); }
#mrh .p-ceo-live-row:active, #mrh .p-ceo-hour-trigger:active { background: var(--mrh-track); }
@media (min-width: 1200px) {
  #mrh .p-ceo { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(260px,1fr); column-gap: 32px; align-items: start; }
  #mrh .p-ceo > * { grid-column: 1/-1; min-width: 0; }
  #mrh .p-ceo > .p-head { grid-column: 1; grid-row: 1; }
  #mrh .p-ceo > .p-ceo-intro { grid-column: 2; grid-row: 1; text-align: right; margin: 0; }
  #mrh .p-ceo > .p-ceo-live { grid-column: 1; margin-bottom: 0; }
  #mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-focus { display: contents; }
  #mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-decisions { grid-column: 2; padding: 0 0 0 24px; border-left: 1px solid var(--line); }
  #mrh .p-ceo[data-ceo-view="hoy"] .p-ceo-decisions .p-dir2-decide { display: block; }
  #mrh .p-ceo-decisions > h3 { min-height: 44px; display: flex; align-items: center; margin: 6px 0; }
}
@media (max-width: 560px) {
  #mrh .p-ceo-periods { width: 100%; gap: 2px; }
  #mrh .p-ceo-periods button { flex: 1; font-size: 13px; padding: 10px 6px; }
  #mrh .p-ceo-live-row { padding-inline: 0; gap: 6px 12px; }
  #mrh .p-ceo-live-total strong { font-size: 23px; }
  #mrh .p-ceo-hours { padding: 16px 12px 8px; margin-inline: -4px; }
  #mrh .p-ceo-hour-name { gap: 6px; font-size: 13px; }
  #mrh .p-ceo-dialog-head { top: -18px; }
  #mrh .p-ceo-breakdown > div { gap: 12px; }
  #mrh .p-ceo-breakdown dt { max-width: 64%; }
}
@media (prefers-reduced-motion: reduce) {
  #mrh .p-ceo *, #mrh .p-ceo *::before, #mrh .p-ceo *::after { transition: none; animation: none; scroll-behavior: auto; }
}

/* ===========================================================================
 * [22-sep-2026 · candidato I/R2] Pulso, Mis tareas y reseñas por local.
 * Recupera la banda de cifras y el widget de tareas del dashboard anterior con
 * los tokens del shell (#mrh). Negro = acción; rojo sólo vencido/alerta.
 * ======================================================================== */
#mrh .p-dir2-pulse{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:4px 0 16px;}
#mrh .p-dir2-pulse__item{display:flex;flex-direction:column;gap:2px;min-height:76px;padding:10px 12px;border:1px solid var(--line);border-left:3px solid var(--line);border-radius:12px;background:var(--surface,#fff);color:var(--ink);text-decoration:none;}
#mrh .p-dir2-pulse__item:hover,#mrh .p-dir2-pulse__item:focus-visible{border-color:var(--ink);}
#mrh .p-dir2-pulse__label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1.25;}
#mrh .p-dir2-pulse__item strong{font-size:24px;line-height:1.1;font-variant-numeric:tabular-nums;}
#mrh .p-dir2-pulse__item small{font-size:12px;color:var(--muted);}
#mrh .p-dir2-pulse__item--ok{border-left-color:var(--ok);}
#mrh .p-dir2-pulse__item--info{border-left-color:var(--info,#2563eb);}
#mrh .p-dir2-pulse__item--warn{border-left-color:var(--warn);}
#mrh .p-dir2-pulse__item--danger{border-left-color:var(--danger);}
#mrh .p-dir2-pulse__item--danger strong{color:var(--danger);}
#mrh .p-dir2-pulse__item--muted strong{color:var(--muted);}
@media (max-width:760px){
  /* móvil: una fila deslizable, sin empujar el contenido varias pantallas */
  #mrh .p-dir2-pulse{display:flex;overflow-x:auto;scroll-snap-type:x proximity;margin-left:-4px;margin-right:-4px;padding:0 4px 4px;}
  #mrh .p-dir2-pulse__item{flex:0 0 42%;scroll-snap-align:start;min-height:70px;}
}
#mrh .p-dir2-tasklist{list-style:none;margin:0;padding:0;display:grid;gap:0;}
#mrh .p-dir2-tasklist li+li{border-top:1px solid var(--line);}
#mrh .p-dir2-tasklist a{display:flex;flex-direction:column;gap:2px;min-height:48px;padding:9px 2px;color:var(--ink);text-decoration:none;}
#mrh .p-dir2-tasklist a:hover .p-dir2-tasklist__name,#mrh .p-dir2-tasklist a:focus-visible .p-dir2-tasklist__name{text-decoration:underline;}
#mrh .p-dir2-tasklist__name{font-weight:600;font-size:14px;line-height:1.35;overflow-wrap:anywhere;}
#mrh .p-dir2-tasklist__meta{font-size:12px;color:var(--muted);}
#mrh .p-ceo-hour-reviews{display:inline-block;font-size:12px;color:var(--muted);padding:4px 0;min-height:28px;}
#mrh .p-ceo-hour-reviews.is-warn{color:var(--warn);font-weight:600;}

/* [22-sep-2026 · candidato I/R4] Verbo de cada resultado y ejemplos con la caja vacía. */
.p-search-act{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--ink);white-space:nowrap;}
.p-search-act::after{content:' →';}
.p-search-examples{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 8px;}
.p-search-example{min-height:40px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;cursor:pointer;}
.p-search-example:hover,.p-search-example:focus-visible{border-color:var(--ink);outline:none;box-shadow:var(--ring);}
@media (max-width:420px){.p-search-act{display:none;}.p-search-row.is-active .p-search-act{display:inline;}}

/* [22-sep-2026 · candidato I/R3] Trabajo: pendiente y accesos por tarea antes del catálogo. */
#mrh .p-work-first{margin:0 0 14px;display:grid;gap:8px;}
#mrh .p-work-first__t{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:4px 0 0;}
#mrh .p-work-pend{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;}
#mrh .p-work-pend__item{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;background:var(--surface,#fff);}
#mrh .p-work-pend__item strong{font-size:18px;min-width:34px;font-variant-numeric:tabular-nums;}
#mrh .p-work-pend__item span{font-size:13px;line-height:1.3;}
#mrh .p-work-pend__item.has-items{border-left:3px solid var(--warn);}
#mrh .p-work-pend__item.is-zero strong{color:var(--muted);}
#mrh .p-work-pend__item:hover,#mrh .p-work-pend__item:focus-visible,#mrh .p-work-acc__item:hover,#mrh .p-work-acc__item:focus-visible{border-color:var(--ink);}
#mrh .p-work-acc{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;}
#mrh .p-work-acc__item{display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;min-height:52px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;}
#mrh .p-work-acc__item i{grid-row:1/3;color:var(--muted);text-align:center;}
#mrh .p-work-acc__item span{font-size:13.5px;font-weight:600;line-height:1.3;}
#mrh .p-work-acc__item small{font-size:11.5px;color:var(--muted);}
@media (max-width:560px){
  #mrh .p-work-pend{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px;}
  #mrh .p-work-pend__item{flex:0 0 62%;scroll-snap-align:start;}
  #mrh .p-work-acc{grid-template-columns:1fr 1fr;}
}

/* [22-sep-2026 · I/R1] Puerta explícita al ERP en el rail (PC). */
#mrh .p-shell-rail__erp{display:flex;align-items:center;gap:10px;min-height:44px;margin:10px 12px 0;padding:8px 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;}
#mrh .p-shell-rail__erp:hover,#mrh .p-shell-rail__erp:focus-visible{border-color:var(--ink);}

/* [24-sep-2026 · portal-perfiles] Pastilla de perfil activo («Estás como: … ▾»).
   Barra superior visible en todas las pantallas del portal. Acción primaria NEGRA
   (mrh.css), rojo reservado para alertas. Dos toques: abrir la hoja y elegir.
   En iPhone (app instalada, pantalla completa) la barra cubre el notch: el padding
   superior lleva la zona segura y el fondo difuminado llena la barra de estado.
   EL STICKY VA EN EL ENVOLTORIO (padre = body, toda la página): si lo lleva la barra
   (padre de 44 px) no tiene recorrido y se despega al hacer scroll. El envoltorio NO
   puede llevar backdrop-filter (crearía bloque contenedor y rompería el fixed de la
   hoja hermana), así que fondo y desenfoque van en la barra. */
#mrh .p-perfil{position:sticky;top:0;z-index:1001;}
#mrh .p-search-overlay{z-index:1100;}
#mrh .p-perfil__bar{padding-top:env(safe-area-inset-top,0px);background:rgba(255,255,255,.92);box-shadow:0 1px 0 rgba(20,22,26,.05),0 8px 24px rgba(20,22,26,.04);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);}
/* Cuando la barra de perfil existe, ELLA es lo que queda fijo: el encabezado grande de
   la portada deja de ser sticky (antes quedaban dos barras apiladas y el «Hola» con el
   buscador se quedaba bloqueado tapando la pantalla; la búsqueda sigue accesible con el
   botón flotante). Y como la barra ya cubre el notch con su propio padding, se lo quita
   al encabezado (si no, quedaba un hueco del tamaño de la zona segura entre ambos).
   La regla solo casa si .p-perfil está en el DOM, así que con un solo perfil no cambia
   nada de lo de antes. */
#mrh .p-perfil ~ .p-header{position:static;padding-top:12px;}
/* OJO: la hoja y el fondo son HERMANAS de la barra (no hijas): el backdrop-filter
   de la barra crea bloque contenedor y rompería el position:fixed de la hoja. */
#mrh .p-perfil__inner{display:flex;align-items:center;gap:8px;max-width:var(--portal-max,1180px);margin:0 auto;padding:4px 12px;min-height:38px;}
#mrh .p-perfil__caption{font:600 10.5px/1 'Geist',system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#6b6f76;white-space:nowrap;}
#mrh .p-perfil__pill{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;min-height:32px;padding:5px 12px;border:0;border-radius:999px;background:#17181b;color:#fff;font:700 13px/1.2 'Geist',system-ui,sans-serif;-webkit-tap-highlight-color:transparent;cursor:pointer;transition:transform .08s ease;}
#mrh .p-perfil__pill:active{transform:scale(.97);}
#mrh .p-perfil__pill:focus-visible{outline:none;box-shadow:var(--ring,0 0 0 3px rgba(23,24,27,.25));}
#mrh .p-perfil__pill .p-perfil__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#mrh .p-perfil__pill i{font-size:12px;flex:none;}
#mrh .p-perfil__pill small{font-weight:600;opacity:.75;}
#mrh .p-perfil__pill.is-static{cursor:default;background:#f1f1ed;color:#17181b;border:1px solid var(--line,#e7e7e3);}
#mrh .p-perfil__pill.is-static small{color:#6b6f76;opacity:1;}
#mrh .p-perfil__backdrop{position:fixed;inset:0;z-index:1011;background:rgba(20,22,26,.46);}
/* Por encima de la barra inferior del portal (z-index 1000) y del buscador (1010):
   la hoja reemplaza visualmente la navegación mientras está abierta. */
#mrh .p-perfil__sheet{position:fixed;z-index:1012;left:0;right:0;bottom:0;max-height:min(78vh,520px);max-height:min(78svh,520px);overflow:auto;padding:10px 14px max(18px,calc(env(safe-area-inset-bottom) + 12px));background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -18px 48px rgba(20,22,26,.22);}
#mrh .p-perfil__sheet::before{content:"";display:block;width:36px;height:4px;margin:2px auto 10px;border-radius:999px;background:#e3e3de;}
#mrh .p-perfil__form{max-width:560px;margin:0 auto;}
#mrh .p-perfil__sheet-title{margin:2px 0 4px;font:800 17px/1.25 'Geist',system-ui,sans-serif;color:#17181b;}
#mrh .p-perfil__sheet-sub{margin:0 0 12px;font:500 13px/1.45 'Geist',system-ui,sans-serif;color:#6b6f76;}
#mrh .p-perfil__options{display:grid;gap:8px;margin:0 0 10px;}
#mrh .p-perfil__option{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1.5px solid var(--line,#e7e7e3);border-radius:12px;background:#fff;color:#17181b;text-align:left;font:650 13px/1.3 'Geist',system-ui,sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,transform .08s ease;}
#mrh .p-perfil__option:active{transform:scale(.985);}
#mrh .p-perfil__option:focus-visible{outline:none;box-shadow:var(--ring,0 0 0 3px rgba(23,24,27,.25));}
#mrh .p-perfil__option-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
#mrh .p-perfil__option-body strong{font-size:14px;}
#mrh .p-perfil__option-body small{font-weight:500;color:#6b6f76;}
#mrh .p-perfil__option>i{flex:none;font-size:14px;color:transparent;}
#mrh .p-perfil__option.is-active{border-color:#17181b;}
#mrh .p-perfil__option.is-active>i{color:#17181b;}
#mrh .p-perfil__cancel{display:block;width:100%;min-height:44px;border:0;border-radius:12px;background:#f1f1ed;color:#17181b;font:700 13px/1 'Geist',system-ui,sans-serif;cursor:pointer;}
@media (min-width:1024px){
  #mrh .p-perfil__sheet{left:auto;right:max(12px,calc((100vw - var(--portal-max,1180px))/2));width:420px;max-height:70vh;border-radius:16px;bottom:auto;top:52px;padding:16px;box-shadow:0 18px 48px rgba(20,22,26,.18);}
  #mrh .p-perfil__sheet::before{display:none;}
}
@media (prefers-reduced-motion:reduce){#mrh .p-perfil__pill,#mrh .p-perfil__option{transition:none;}}

/* 25-sep-2026 · Selector de sociedad del CEO junto a la pastilla */
#mrh .p-perfil__soc{display:flex;align-items:center;gap:6px;min-width:0;flex:1 1 0;margin:0;justify-content:flex-end;}
#mrh .p-perfil__soc-label{color:#6b6f76;font-size:13px;margin:0;}
#mrh .p-perfil__soc select{width:100%;max-width:240px;min-width:0;min-height:32px;padding:4px 26px 4px 10px;border:1px solid var(--line,#e7e7e3);border-radius:999px;background:#fff;color:#17181b;font:600 13px/1.2 'Geist',system-ui,sans-serif;text-overflow:ellipsis;}
#mrh .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

@media (max-width: 759px), (pointer: coarse) {
  #mrh .p-perfil__soc select { font-size: 16px; }
}

/* =====================================================================================================
   [26-sep-2026 · Mario] Barra superior para todos (chat, buscar, nuevo) y menú inferior más pequeño con «+».
   «El CSS de arriba es horrible»: la pastilla negra y el rótulo en mayúsculas pesaban más que la pantalla.
   Ahora: barra blanca de 52 px, perfil como etiqueta gris, acciones a la derecha. Negro solo para el «+».
   ===================================================================================================== */
#mrh{--portal-nav-h:56px}
#mrh .p-perfil__bar{background:#fff;box-shadow:0 1px 0 var(--line,#e7e7e3);backdrop-filter:none;-webkit-backdrop-filter:none}
#mrh .p-perfil__inner{min-height:52px;padding:4px 8px 4px 14px;gap:8px}
#mrh .p-perfil__brand{flex:none;display:inline-flex;align-items:center;height:36px;margin-right:2px}
#mrh .p-perfil__brand img{height:17px;width:auto;display:block}
#mrh .p-perfil__caption{display:none}
#mrh .p-perfil__pill{min-height:34px;padding:4px 10px 4px 12px;background:#f1f1ed;color:#17181b;font-weight:650;font-size:13.5px}
#mrh .p-perfil__pill:hover{background:#e9e9e4}
#mrh .p-perfil__pill i.fa-id-badge{display:none}
#mrh .p-perfil__pill i.fa-caret-down{color:#6b6f76}
#mrh .p-perfil__soc{flex:0 1 auto;justify-content:flex-start}
#mrh .p-perfil__soc-label{display:none}
#mrh .p-perfil__soc select{min-height:34px;max-width:170px;border-color:transparent;background-color:#f1f1ed;font-weight:600}
#mrh .p-perfil__acts{display:flex;align-items:center;gap:2px;margin-left:auto;flex:none}
#mrh .p-perfil__act{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:42px;height:42px;padding:0 10px;border:0;border-radius:12px;background:transparent;color:#17181b;font:650 13px/1 'Geist',system-ui,sans-serif;text-decoration:none!important;cursor:pointer}
#mrh .p-perfil__act i{font-size:19px}
#mrh .p-perfil__act:hover,#mrh .p-perfil__act.is-active{background:#f1f1ed}
#mrh .p-perfil__act:focus-visible{outline:none;box-shadow:var(--ring,0 0 0 3px rgba(23,24,27,.25))}
#mrh .p-perfil__act-txt{display:none}
#mrh .p-perfil__act--mas{display:none}
#mrh .p-perfil__badge{position:absolute;top:3px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#17181b;color:#fff;font:750 10.5px/18px 'Geist',system-ui,sans-serif;box-shadow:0 0 0 2px #fff}
/* Móvil: la búsqueda vive arriba; la lupa flotante sobra y tapaba contenido */
#mrh .p-shell-search{display:none}
/* Menú inferior: más bajo y con el «+» negro en el centro */
#mrh .p-shell-bottom{grid-template-columns:repeat(5,minmax(0,1fr));padding:3px 6px max(3px,env(safe-area-inset-bottom));box-shadow:none;background:#fff}
#mrh .p-shell-bottom .p-shell-nav__item{min-height:46px;gap:2px;font-size:10.5px;border-radius:10px}
#mrh .p-shell-bottom .p-shell-nav__item i{font-size:17px}
#mrh .p-shell-bottom .p-shell-nav__item.is-active,#mrh .p-shell-bottom .p-shell-nav__item[aria-current="page"]{background:transparent;color:#17181b}
#mrh .p-shell-bottom .p-shell-nav__item.is-active i{transform:scale(1.08)}
#mrh .p-shell-bottom .p-shell-nav__badge{top:1px}
#mrh .p-shell-mas{cursor:pointer}
#mrh .p-shell-mas__c{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#17181b;color:#fff;box-shadow:0 4px 12px rgba(20,22,26,.25)}
#mrh .p-shell-mas__c i{font-size:18px}
/* Ordenador: la búsqueda sigue en el lateral; arriba se ven «Chat» y «Nuevo» con texto */
@media (min-width:760px){
  #mrh .p-shell-search{display:flex}
  #mrh .p-perfil__brand,#mrh .p-perfil__act--buscar{display:none}
  #mrh .p-perfil__act-txt{display:inline}
  #mrh .p-perfil__act--mas{display:inline-flex;background:#17181b;color:#fff;margin-left:4px}
  #mrh .p-perfil__act--mas:hover{background:#2a2a2e}
  #mrh .p-perfil__caption{display:inline}
  #mrh .p-perfil__badge{position:static;margin-left:2px;box-shadow:none}
}
/* Acciones rápidas */
#mrh .p-rapido{width:min(440px,calc(100vw - 20px));padding:0;border:0;border-radius:18px;box-shadow:0 24px 64px rgba(20,22,26,.28);color:#17181b}
#mrh .p-rapido::backdrop{background:rgba(20,22,26,.46)}
#mrh .p-rapido__in{padding:16px}
#mrh .p-rapido__t{margin:0 0 12px;font:800 17px/1.2 'Geist',system-ui,sans-serif}
#mrh .p-rapido__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#mrh .p-rapido__grid a,#mrh .p-rapido__grid button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:84px;padding:12px;border:1px solid var(--line,#e7e7e3);border-radius:14px;background:#fff;color:#17181b;font:650 14px/1.25 'Geist',system-ui,sans-serif;text-align:left;text-decoration:none!important;cursor:pointer}
#mrh .p-rapido__grid a:hover,#mrh .p-rapido__grid button:hover{background:#f7f7f4}
#mrh .p-rapido__grid i{font-size:20px}
#mrh .p-rapido__x{display:block;width:100%;min-height:44px;margin-top:10px;border:0;border-radius:12px;background:#f1f1ed;font:700 14px/1 'Geist',system-ui,sans-serif;cursor:pointer}
/* Móvil con perfiles (dirección, encargados): sin logo, y el perfil nunca se corta; la sociedad cede sitio. */
@media (max-width:759.98px){
  #mrh .p-perfil:not(.p-perfil--solo) .p-perfil__brand{display:none}
  #mrh .p-perfil__pill{flex:none;max-width:48vw}
  #mrh .p-perfil__soc{flex:1 1 auto;min-width:0}
  #mrh .p-perfil__soc select{max-width:none;width:100%;padding-right:22px}
}
#mrh .p-rapido{margin:auto;inset:0}
@media (max-width:759.98px){#mrh .p-rapido{margin:auto auto 0;width:100%;max-width:100%;border-radius:18px 18px 0 0}#mrh .p-rapido__in{padding-bottom:max(16px,env(safe-area-inset-bottom))}}
/* [26-sep-2026] Visor común de PDF (portal_visor.js): pantalla completa encima de lo que haya, «Volver» y Descargar. */
#mrh .pv-visor{position:fixed;inset:0;z-index:2147483100;display:flex;flex-direction:column;background:#525659}
#mrh .pv-visor[hidden]{display:none}
#mrh .pv-bar{display:flex;align-items:center;gap:8px;min-height:52px;padding:6px 10px;padding-top:max(6px,env(safe-area-inset-top,0px));background:#fff;box-shadow:0 1px 0 var(--line,#e7e7e3)}
#mrh .pv-bar button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;border:0;border-radius:10px;background:#f1f1ed;color:#17181b;font:700 14px/1 'Geist',system-ui,sans-serif;cursor:pointer}
#mrh .pv-nombre{flex:1;min-width:0;font:650 14px/1.2 'Geist',system-ui,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#17181b}
#mrh .pv-dl{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 12px;border-radius:10px;background:#17181b;color:#fff!important;font:700 14px/1 'Geist',system-ui,sans-serif;text-decoration:none!important}
#mrh .pv-cuerpo{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;display:grid;justify-items:center;align-content:start;gap:10px;padding:10px 8px max(24px,env(safe-area-inset-bottom,0px))}
#mrh .pv-cuerpo canvas,#mrh .pv-cuerpo img{max-width:100%;height:auto;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}
#mrh .pv-msg{margin:40px 16px;color:#fff;text-align:center;font:500 15px/1.5 'Geist',system-ui,sans-serif}
#mrh .pv-msg a{color:#fff;text-decoration:underline}
body#mrh.pv-abierto{overflow:hidden}
@media (max-width:420px){#mrh .pv-dl span{display:none}}

/* Lo mío: filas completas pulsables, sin una tarjeta y un botón por destino. */
#mrh .p-personal-menu{padding:0 16px;overflow:hidden}
#mrh .p-personal-menu .p-task-link{min-height:70px;padding:12px 0;border:0;border-radius:0;box-shadow:none}
#mrh .p-personal-menu .p-task-link + .p-task-link{border-top:1px solid var(--line,#e7e7e3)}
#mrh .p-personal-menu .p-task-link__label{font-size:15px}
#mrh .p-personal-menu .p-task-link__summary{font-size:12px;margin-top:4px}
#mrh .p-personal-links{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
#mrh .p-personal-links .p-tile{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;min-height:48px;padding:12px 0;border:0;border-radius:0;background:transparent;text-align:left}
#mrh .p-personal-links .p-tile + .p-tile{border-top:1px solid var(--line,#e7e7e3)}
#mrh .p-personal-links .p-tile > i{width:24px;margin:0;font-size:17px;color:var(--muted,#6b6f76);text-align:center}
#mrh .p-personal-links .p-tile .lbl{font-size:14px}
#mrh .p-personal-links .p-tile::after{content:'›';margin-left:auto;color:var(--muted,#6b6f76);font-size:22px}
#mrh .p-section-intro[tabindex="-1"]:focus{outline:none;box-shadow:none}
#mrh .p-shell-bottom{align-items:center}
#mrh .p-shell-bottom .p-shell-nav__item{height:52px;padding:0;box-sizing:border-box}
#mrh .p-shell-bottom .p-shell-nav__item > i{display:grid;place-items:center;width:24px;height:22px;line-height:1;margin:0}
#mrh .p-shell-bottom .p-shell-mas__c{width:40px;height:40px;box-shadow:none}
#mrh .p-shell-bottom .p-shell-mas__c i{margin:0;line-height:1}
#mrh .p-shell-bottom .p-shell-nav__item:focus-visible{outline:2px solid var(--ink,#17181b);outline-offset:-2px}
@media (min-width:760px) and (min-height:500px){
  #mrh .p-personal-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
}

/* ===========================================================================
 * [7-oct-2026 · oleada 2] EL PORTAL EN EL MÓVIL (24-movil-portal-css)
 * ---------------------------------------------------------------------------
 * 1) El iPhone AMPLÍA la pantalla al tocar un campo con letra de menos de 16 px
 *    y no la devuelve sola (hay que pellizcar para volver). Pasaba en Mis datos
 *    (teléfono, IBAN, correo), Peticiones (buscar y filtros), Mi jornada (día),
 *    Rotas (fechas y local), Trabajadores (buscar) y en los filtros de RRHH,
 *    Cartero y Tesorería. Solo en pantallas táctiles: en el ordenador no cambia.
 *    Los campos GRANDES a propósito (importes, códigos, escáner, PIN) no se
 *    tocan: tienen reglas más específicas o estilo en línea, que siguen mandando.
 *    · a) campos sin estilo propio (el navegador los pinta a 13 px); peso 0.
 *    · b) las reglas de 12-15 px, con el mismo selector y «body» delante.
 *    · c) estilo en línea de 12-15 px (Mis datos).
 * 2) Mis firmas y Mis documentos: en el móvil el nombre del documento quedaba
 *    en una columna de 130 px (4-6 líneas) por los botones de la derecha.
 *    Ahora el nombre ocupa todo el ancho y los botones van debajo, más grandes.
 * ======================================================================== */
@media (hover:none) and (pointer:coarse){
  :where(body#mrh) :where(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden],[type=button],[type=submit],[type=reset],[type=image]),select,textarea){font-size:16px}
  body#mrh .ab-date-input, body#mrh .pc-act .mrh-select, body#mrh .lq-barra input[type=search],
  body#mrh .lq-barra input[type=text], body#mrh #dm-bulk-modal input.dm-bulk-notes, body#mrh .lq-orden select,
  body#mrh .pt-item__acts .mrh-select, body#mrh .pt-filtros .mrh-select, body#mrh .rp-debt .amount-input,
  body#mrh .je-filtros select, body#mrh .je-filtros input[type="date"], body#mrh .je-filtros input[type="text"],
  body#mrh .je-form input, body#mrh .je-form select, body#mrh .je-form textarea,
  body#mrh .mrh-bulk select, body#mrh .mrh-search input, body#mrh #mrr-rota-override-modal textarea,
  body#mrh .rc-filter select, body#mrh .mrh-select, body#mrh .mrh-input,
  body#mrh .mrh-textarea, body#mrh.mrh-screen-cartero-index .mc-q input, body#mrh.mrh-screen-cartero-index .mc-sel select,
  body#mrh.mrh-leaves .mrl-ajuste-form input, body#mrh .mrh-hub-top .mrr-gsearch-input, body#mrh .ct-fields .mrh-input,
  body#mrh .ct-fields .mrh-select, body#mrh .ct-fields .mrh-textarea, body#mrh .fp2 .fp2-msg textarea,
  body#mrh .rj-campo input, body#mrh .rj-campo select, body#mrh .ro-filtros input,
  body#mrh .ro-filtros select, body#mrh .p-perfil__soc select, body#mrh .sr-filtro select,
  body#mrh .sr-filtro input, body#mrh .form-control, body#mrh .apvp input,
  body#mrh .apvp select, body#mrh .ab-cash input, body#mrh .ab-cash select,
  body#mrh .ab-cash textarea, body#mrh .ag-filtro select, body#mrh .tm-filter input,
  body#mrh .uv-times input[type=time], body#mrh .sc-loc select, body#mrh .mt-place-filter select,
  body#mrh .sx input, body#mrh .sx select, body#mrh .tk-dias input,
  body#mrh .pe-field input, body#mrh .pe-field select, body#mrh .mrt-filters .form-control{font-size:16px}
  body#mrh .mrh-inbox-filter select.form-control{font-size:16px!important}
  body#mrh :is(input,select,textarea):is([style*="font-size:12px"],[style*="font-size: 12px"],[style*="font-size:13px"],[style*="font-size: 13px"],[style*="font-size:14px"],[style*="font-size: 14px"],[style*="font-size:15px"],[style*="font-size: 15px"]){font-size:16px!important}
}
@media (max-width:520px){
  #mrh .mf-doc{flex-wrap:wrap}
  #mrh .mf-doc > .mf-info{flex:1 1 calc(100% - 48px)}
  #mrh .mf-doc > .mf-actions{flex:1 1 100%;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px;padding-left:48px}
  #mrh .mf-doc > .mf-actions .p-btn{flex:1 1 auto}
  #mrh .mf-doc > .mf-actions .p-textbtn{display:inline-flex;align-items:center;justify-content:center;min-width:44px}
  #mrh .md-doc{flex-wrap:wrap;row-gap:8px}
  #mrh .md-doc > .md-nm{flex:1 1 calc(100% - 45px)}
  #mrh .md-doc > .md-ver{margin:0 0 0 45px;min-width:44px;justify-content:center}
  #mrh .md-doc > .md-btn{flex:1 1 auto;justify-content:center}
}
