/* 23Soft Classic · único propietario de la navegación por fichas.
   Se importa en React y se publica sin duplicados para las PWA Vue.
   Sólo sc-nav-grid y sc-action-card: nunca tablas ni formularios.
   Los valores proceden exclusivamente de tokens.css. */

:is(.sc-app,#app) .sc-nav-grid.sc-nav-grid {
  display:grid;
  grid-template-columns:var(--classic-nav-card-grid-columns);
  gap:var(--classic-nav-card-grid-gap,16px);
  min-width:0;
  align-items:stretch;
}
@media (max-width:760px) {
  :is(.sc-app,#app) .sc-nav-grid.sc-nav-grid {
    grid-template-columns:var(--classic-nav-card-grid-mobile-columns);
    gap:var(--classic-nav-card-grid-mobile-gap,10px);
  }
}

/* UNIFICACION TARJETAS NAVEGACION · Las mismas variables rigen las fichas que
   abren un único destino, tanto si usan un button nativo como ClassicActionCard.
   Los formularios y tarjetas con controles propios no llevan sc-action-card. */
:is(.sc-app,#app) .sc-action-card.sc-action-card {
  text-align:left;
  user-select:none;
  box-sizing:border-box;
  padding:var(--classic-nav-card-compact-padding);
  border:1px solid var(--classic-nav-card-border);
  border-bottom:2px solid var(--classic-nav-card-edge);
  border-radius:var(--classic-nav-card-radius);
  background:var(--classic-nav-card-background);
  box-shadow:var(--classic-nav-card-elevation);
  color:var(--classic-text);
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:transform var(--classic-transition),
    box-shadow var(--classic-transition),
    border-color var(--classic-transition),
    background var(--classic-transition);
}
@media (hover:hover) and (pointer:fine) {
  :is(.sc-app,#app) .sc-action-card.sc-action-card:hover:not([aria-disabled="true"]):not(:disabled) {
    border-color:var(--classic-nav-card-hover-border);
    box-shadow:var(--classic-nav-card-hover-shadow);
    background:var(--classic-nav-card-hover-background);
    transform:translateY(var(--classic-nav-card-hover-lift));
  }
}
:is(.sc-app,#app) .sc-action-card.sc-action-card:is(:active,[data-classic-pressed="true"]):not([aria-disabled="true"]):not(:disabled) {
  box-shadow:var(--classic-nav-card-pressed-shadow);
  border-bottom-color:var(--classic-nav-card-edge);
  background:var(--classic-nav-card-pressed-background);
  transform:translateY(var(--classic-nav-card-pressed-lift));
  transition-duration:90ms;
}
:is(.sc-app,#app) .sc-action-card.sc-action-card:focus-visible {
  outline:2px solid var(--classic-primary);
  outline-offset:5px;
}
:is(.sc-app,#app) .sc-action-card.sc-action-card:disabled,
:is(.sc-app,#app) .sc-action-card.sc-action-card[aria-disabled="true"] {
  border-color:var(--classic-border-light);
  border-bottom-color:var(--classic-border-light);
  background:var(--classic-bg);
  box-shadow:var(--classic-nav-card-disabled-shadow);
  cursor:default;
  transform:none;
}
:is(.sc-app,#app) .sc-action-card.sc-action-card.selected {
  border-color:var(--classic-primary);
  box-shadow:var(--classic-nav-card-elevation),0 0 0 2px color-mix(in srgb,var(--classic-primary) 14%,transparent);
}



/* Variante de fichas de procesos: sólo distribución interna. */
:is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card {
  min-height:var(--classic-nav-card-min-height);
  padding:var(--classic-nav-card-padding);
}
:is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card p {
  margin-bottom:0;
}
:is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card[aria-disabled="true"] {
  cursor:default;
}
@media(max-width:760px) {
  :is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card {
    min-height:0;
    padding:var(--classic-nav-card-mobile-padding,12px);
  }
  :is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card .process-card-icon {
    width:39px;height:39px;margin-bottom:10px;
  }
  :is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card h3 {
    font-size:14px;line-height:1.3;margin-bottom:6px;
  }
  :is(.sc-app,#app) .sc-gestion-classic .process-card.sc-card.sc-action-card p {
    font-size:12px;line-height:1.4;
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;
    line-clamp:6;overflow:hidden;
  }
}
/* Sólo compactacion del contenido en pantallas estrechas. */
@media(max-width:760px) {
  :is(.sc-app,#app) .protocolos-page .protocol-summary-card.sc-action-card {
    padding:11px;min-width:0;gap:8px;flex-wrap:wrap;
  }
  :is(.sc-app,#app) .protocolos-page .protocol-summary-card.sc-action-card .protocol-summary-text {
    flex:1 1 95px;overflow-wrap:anywhere;
  }
  :is(.sc-app,#app) .business-maintenance :is(.business-block-grid,.business-function-grid)>button.sc-action-card {
    padding:10px;gap:7px;grid-template-columns:20px minmax(0,1fr);overflow-wrap:anywhere;
  }
  :is(.sc-app,#app) .business-maintenance :is(.business-block-grid,.business-function-grid)>button.sc-action-card>svg:last-child {
    display:none;
  }
  :is(.sc-app,#app) .task-grid>button.task-card.sc-action-card {
    padding:10px;display:flex;align-items:flex-start;flex-wrap:wrap;
  }
  :is(.sc-app,#app) .task-grid>button.task-card.sc-action-card .task-icon {
    width:38px;height:38px;
  }
}


/* MIGRACION FICHAS ACCION UNICA · la interactividad pertenece al componente.
   Esta hoja es el unico propietario de sus dimensiones y relieve. Solo se
   conserva la composicion del contenido especifico de cada modulo. */
:is(.sc-app,#app) .expert-watch-card.sc-action-card {
  grid-template-columns:43px minmax(0,1fr);
  align-content:start;
  gap:12px;
}
:is(.sc-app,#app) .expert-watch-card.sc-action-card .expert-watch-card-body {
  min-width:0;overflow-wrap:anywhere;
}
:is(.sc-app,#app) .m06-doc.sc-action-card {
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  min-width:0;
  align-items:start;
  overflow-wrap:anywhere;
}
:is(.sc-app,#app) .m06-doc.sc-action-card>svg {
  width:24px;height:24px;
}
:is(.sc-app,#app) .equipos-card.sc-action-card {
  min-width:0;overflow-wrap:anywhere;
}
:is(.sc-app,#app) .m07-card.sc-action-card {
  min-width:0;overflow-wrap:anywhere;
}
:is(.sc-app,#app) .m07-card.sc-action-card:focus-visible {
  outline-offset:5px;
}
@media (max-width:760px) {
  :is(.sc-app,#app) .expert-watch-card.sc-action-card {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    padding:var(--classic-nav-card-mobile-padding,12px);
  }
  :is(.sc-app,#app) .expert-watch-card.sc-action-card .expert-watch-card-icon {
    width:37px;height:37px;flex:none;
  }
  :is(.sc-app,#app) .expert-watch-card.sc-action-card .expert-watch-card-body h3 {
    font-size:13px;line-height:1.35;
  }
  :is(.sc-app,#app) .expert-watch-card.sc-action-card .expert-watch-card-body p {
    font-size:12px;line-height:1.45;
  }
  :is(.sc-app,#app) .m06-doc.sc-action-card {
    display:flex;flex-direction:column;align-items:flex-start;
    padding:var(--classic-nav-card-mobile-padding,12px);
    gap:7px;
  }
  :is(.sc-app,#app) .m06-doc.sc-action-card strong {
    font-size:12px;line-height:1.35;
  }
  :is(.sc-app,#app) .equipos-card.sc-action-card {
    padding:var(--classic-nav-card-mobile-padding,12px);
    gap:8px;
  }
  :is(.sc-app,#app) .equipos-card.sc-action-card h3 {
    font-size:13px;line-height:1.4;overflow-wrap:anywhere;
  }
  :is(.sc-app,#app) .equipos-card.sc-action-card p {
    font-size:12px;line-height:1.45;
  }
  :is(.sc-app,#app) .m07-card.sc-action-card {
    padding:var(--classic-nav-card-mobile-padding,12px);
  }
  :is(.sc-app,#app) .m07-card.sc-action-card .m07-card-head {
    flex-direction:column;gap:7px;
  }
  :is(.sc-app,#app) .m07-card.sc-action-card h3 {
    font-size:13px;line-height:1.35;
  }
}
