/* ── Sindicato CRM – admin.css ────────────────────────────────────────────── */
/* Colores corporativos Innovación Sindical                                   */
:root {
    --scrm-primary:   #2a7a6e;  /* oscurecido para contraste WCAG AA ≥ 4.5:1 sobre blanco */
    --scrm-primary-d: #1f5c52;
    --scrm-primary-l: #e6f7f5;
    --scrm-danger:    #c0392b;
    --scrm-warning:   #b45309;  /* oscurecido: contraste 5.8:1 sobre blanco */
    --scrm-success:   #166534;  /* oscurecido: contraste 7.5:1 sobre blanco */
    --scrm-border:    #dde1e6;
    --scrm-bg:        #f8f9fa;
    --scrm-text:      #1d2327;
    --scrm-font-size: 14px;     /* mínimo 14px para legibilidad WCAG */
}

/* Barra admin WP oculta en frontend */
body.scrm-hide-adminbar #wpadminbar { display: none !important; }
body.scrm-hide-adminbar { padding-top: 0 !important; margin-top: 0 !important; }

/* Wrap */
.scrm-wrap { max-width: 1280px; font-size: var(--scrm-font-size); }
.scrm-wrap h1 { margin-bottom: .8em; font-size: 1.6em; }

/* Cards */
.scrm-card {
    background: #fff;
    border: 1px solid var(--scrm-border);
    border-radius: 6px;
    padding: 1.2em 1.5em;
    margin: 1em 0;
    box-shadow: 0 1px 3px rgba(0,0,0,.05);
    font-size: var(--scrm-font-size);
}
.scrm-card h2, .scrm-card h3 {
    margin-top: 0; font-size: 1em;
    border-bottom: 2px solid var(--scrm-primary);
    padding-bottom: .4em; color: var(--scrm-text);
}

/* KPI grid */
.scrm-kpi-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px,1fr)); gap: 1em; margin: 1em 0; }
.scrm-kpi { background:#fff; border:1px solid var(--scrm-border); border-radius:8px; padding:1.2em; text-align:center; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.scrm-kpi-num { display:block; font-size:2.2em; font-weight:700; color:var(--scrm-primary); line-height:1.1; }
.scrm-kpi-label { display:block; font-size:.85em; color:#374151; margin-top:.3em; } /* contraste 9.7:1 */
.scrm-kpi-warning { border-color: var(--scrm-warning); }
.scrm-kpi-warning .scrm-kpi-num { color: var(--scrm-warning); }
.scrm-kpi-danger  { border-color: var(--scrm-danger); }
.scrm-kpi-danger  .scrm-kpi-num { color: var(--scrm-danger); }

/* Dashboard */
.scrm-dashboard-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 1em; }
@media (max-width:900px) { .scrm-dashboard-cols { grid-template-columns: 1fr; } }

/* Detail grid */
.scrm-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px,1fr)); gap: 1em; }

/* View table – tipografía unificada, alineación izquierda */
.scrm-view-table { width:100%; border-collapse:collapse; font-size: var(--scrm-font-size); }
.scrm-view-table th {
    width:40%; color:#555; font-weight:600;
    font-size: var(--scrm-font-size); text-align: left;
    padding:6px 8px; vertical-align:top; border-bottom:1px solid #f0f0f0;
}
.scrm-view-table td {
    padding:6px 8px; border-bottom:1px solid #f0f0f0;
    font-size: var(--scrm-font-size); text-align: left; vertical-align: top;
}

/* Expediente: alineación y tipografía unificada */
.scrm-wrap .scrm-detail-grid .scrm-card table { font-size: var(--scrm-font-size); }
.scrm-wrap .scrm-detail-grid .scrm-card th,
.scrm-wrap .scrm-detail-grid .scrm-card td { font-size: var(--scrm-font-size); text-align: left; vertical-align: top; }

/* List table */
.scrm-table { width:100%; border-collapse:collapse; font-size: var(--scrm-font-size); }
.scrm-table th, .scrm-table td { padding:8px 10px; border-bottom:1px solid var(--scrm-border); text-align:left; font-size: var(--scrm-font-size); }
.scrm-table thead th { background:#f0f0f1; font-weight:600; }
.scrm-table-wrap { overflow-x:auto; }

/* Estado badges — tamaño mínimo 12px (WCAG), colores con contraste ≥ 4.5:1 */
.scrm-estado { display:inline-block; padding:3px 9px; border-radius:10px; font-size:.8em; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.scrm-estado-activo     { background:#d1f0d1; color:#14532d; }  /* 7.2:1 */
.scrm-estado-inactivo   { background:#fdf0cd; color:#713f12; }  /* 6.8:1 */
.scrm-estado-baja       { background:#fde8e8; color:#7f1d1d; }  /* 7.1:1 */
.scrm-estado-abierto    { background:#dbeafe; color:#1e3a8a; }  /* 7.5:1 */
.scrm-estado-en_tramite { background:#fef3c7; color:#78350f; }  /* 7.0:1 */
.scrm-estado-cerrado    { background:#f0f0f0; color:#374151; }  /* 6.9:1 */
.scrm-estado-archivado  { background:#e8e8e8; color:#374151; }  /* 6.5:1 */
.scrm-estado-pendiente  { background:#fef3c7; color:#78350f; }
.scrm-estado-cobrada    { background:#d1f0d1; color:#14532d; }
.scrm-estado-devuelta   { background:#fde8e8; color:#7f1d1d; }
.scrm-estado-generada   { background:#dbeafe; color:#1e3a8a; }
.scrm-estado-borrador   { background:#f0f0f0; color:#374151; }

/* Danger zone */
.scrm-danger-zone { border-color: var(--scrm-danger) !important; background:#fef8f8; }
.scrm-danger-zone h3 { color: var(--scrm-danger); border-color: var(--scrm-danger); }

/* Botones – tamaño fijo y coherente */
.scrm-wrap .button,
.scrm-wrap .button-primary,
.scrm-wrap .button-secondary,
.scrm-wrap .page-title-action {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    height: auto;
    min-height: 30px;
    font-size: var(--scrm-font-size) !important;
    line-height: 1.4;
    border-radius: 4px;
    box-sizing: border-box;
    cursor: pointer;
    text-decoration: none !important;
    font-weight: 500;
    white-space: nowrap;
    transition: background .15s, border-color .15s;
    vertical-align: middle;
}

/* Primario: verde IS */
.scrm-wrap .button-primary { background: var(--scrm-primary) !important; border-color: var(--scrm-primary-d) !important; color: #fff !important; }
.scrm-wrap .button-primary:hover, .scrm-wrap .button-primary:focus { background: var(--scrm-primary-d) !important; border-color: var(--scrm-primary-d) !important; color: #fff !important; }

/* Secundario */
.scrm-wrap .button-secondary { background: #f6f7f7; border-color: #8c8f94; color: #2c3338 !important; }
.scrm-wrap .button-secondary:hover { background: #e8eaeb; }

/* Botón Limpiar: tamaño estable */
.scrm-filters a.button { display: inline-flex !important; align-items: center; padding: 5px 12px !important; height: auto !important; min-height: 30px !important; font-size: var(--scrm-font-size) !important; line-height: 1.4 !important; width: auto !important; box-sizing: border-box; }

/* Botón Deshabilitar – WCAG AA: contraste 5.74:1 */
.scrm-wrap .button.scrm-btn-disable,
.scrm-wrap button[name="deshabilitar"] {
    background: #6c757d !important; border-color: #5a6268 !important; color: #fff !important;
}
.scrm-wrap .button.scrm-btn-disable:hover { background: #5a6268 !important; }

/* Botón peligro */
.scrm-btn-delete, button.scrm-btn-delete, .scrm-wrap .button.scrm-btn-delete {
    background: var(--scrm-danger) !important; border-color: #a93226 !important; color: #fff !important;
    display: inline-flex; align-items: center; padding: 5px 12px; height: auto; min-height: 30px; font-size: var(--scrm-font-size) !important;
}
.scrm-btn-delete:hover { background:#a93226 !important; }

/* Botón small */
.scrm-wrap .button-small { padding: 3px 8px !important; min-height: 24px !important; font-size: .8em !important; }

/* Links globales – sin negrita, color IS */
.scrm-wrap a:not(.button):not(.page-title-action) {
    color: var(--scrm-primary);
    text-decoration: none;
    font-weight: normal !important;
    font-size: var(--scrm-font-size);
}
.scrm-wrap a:not(.button):not(.page-title-action):hover {
    color: var(--scrm-primary-d);
    text-decoration: underline;
}

/* Link peligro */
.scrm-btn-link-danger {
    color: var(--scrm-danger) !important; background: none; border: none; cursor: pointer;
    text-decoration: underline; padding: 0; font-size: var(--scrm-font-size) !important; font-weight: normal !important;
}

/* Formulario – tipografía unificada en todos los campos */
.scrm-form .scrm-card { margin-top:1em; }
.scrm-form-submit { margin-top:1.5em; padding-top:1em; border-top:1px solid var(--scrm-border); }
.scrm-wrap input[type="text"],
.scrm-wrap input[type="email"],
.scrm-wrap input[type="date"],
.scrm-wrap input[type="number"],
.scrm-wrap input[type="search"],
.scrm-wrap select,
.scrm-wrap textarea { font-size: var(--scrm-font-size) !important; line-height: 1.5; padding: 5px 8px; box-sizing: border-box; }

/* Filtros */
.scrm-filters p.search-box, .scrm-filters { display:flex; flex-wrap:wrap; gap:8px; align-items:center; padding:10px 0; }
.scrm-filters > *, .scrm-filters p.search-box > * { flex-shrink: 0; }

/* Tabs */
.scrm-tabs { margin-bottom: 0; }

/* Avisos */
.scrm-avisos-list { list-style:none; margin:0; padding:0; }
.scrm-aviso-item { display:flex; align-items:center; gap:.6em; padding:.5em .8em; border-left:3px solid var(--scrm-warning); margin-bottom:.5em; background:#fffdf5; font-size:var(--scrm-font-size); }
.scrm-aviso-item.scrm-aviso-remesa { border-color: var(--scrm-primary); background:var(--scrm-primary-l); }
.scrm-aviso-tipo { font-weight:700; font-size:.85em; text-transform:uppercase; }
.scrm-resolver-aviso { color: var(--scrm-success); font-size:var(--scrm-font-size); margin-left:auto; cursor:pointer; background:none; border:none; text-decoration:underline; font-weight: normal; }
.scrm-ok { color: var(--scrm-success); font-weight:600; }

/* Incidencia */
.scrm-incidencia { color: var(--scrm-warning); font-weight:600; }

/* Inline forms */
.scrm-inline-form { display:flex; flex-wrap:wrap; gap:.5em; align-items:flex-end; }
.scrm-details-toggle > summary { cursor:pointer; color: var(--scrm-primary); font-weight:600; margin:.5em 0; font-size:var(--scrm-font-size); }
.scrm-details-toggle > summary:hover { text-decoration:underline; }

/* Count */
.scrm-count { color:#374151; font-size:.875em; margin:.5em 0; } /* contraste 9.7:1 */

/* Footer enlaces sin negrita */
.scrm-footer a, #wpfooter a { font-weight: normal !important; color: var(--scrm-primary); }

/* Responsive */
@media (max-width:640px) {
    .scrm-detail-grid { grid-template-columns:1fr; }
    .scrm-kpi-grid { grid-template-columns: 1fr 1fr; }
    .scrm-filters { flex-direction: column; align-items: flex-start; }
}
