/* assets/css/styles.css */

/* ====== Reset suave ====== */
body {
    background-color: #f4f6fb;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #1f2933;
}

/* ====== Colores corporativos ====== */
:root {
    --ceg-primary: #0057b7;       /* azul principal CEGUM */
    --ceg-primary-dark: #003f87;
    --ceg-primary-soft: #e7f0ff;
    --ceg-accent: #18a0fb;        /* celeste de apoyo */
    --ceg-danger-soft: #ffe5e5;
}

/* ====== Botones corporativos ====== */
.btn-primary-ceg {
    background: linear-gradient(135deg, var(--ceg-primary), var(--ceg-primary-dark));
    border: none;
    color: #fff;
    box-shadow: 0 3px 8px rgba(0, 87, 183, 0.4);
}

.btn-primary-ceg:hover {
    background: linear-gradient(135deg, var(--ceg-primary-dark), var(--ceg-primary));
    color: #fff;
}

.btn-outline-primary {
    border-color: var(--ceg-primary);
    color: var(--ceg-primary);
}

.btn-outline-primary:hover {
    background-color: var(--ceg-primary);
    color: #fff;
}

/* ====== Cards estilo dashboard ====== */
.card-dashboard {
    border: none;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.card-dashboard .card-header {
    background: linear-gradient(90deg, var(--ceg-primary-soft), #ffffff);
    border-bottom: 1px solid rgba(0,0,0,0.04);
}

.card-dashboard .card-header h5,
.card-dashboard .card-header h6 {
    color: var(--ceg-primary-dark);
}

/* ====== Badges suaves ====== */
.badge-soft-primary {
    background-color: var(--ceg-primary-soft);
    color: var(--ceg-primary-dark);
}

/* ====== Avatar redondo reutilizable ====== */
.avatar-circle {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--ceg-primary-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

/* Versión grande para cards */
.avatar-circle-lg {
    width: 46px;
    height: 46px;
}

/* ====== Navbar ajustes ====== */
.navbar-ceg .navbar-toggler {
    border-color: rgba(255,255,255,0.4);
}

.navbar-ceg .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ====== Tablas ====== */
.table thead th {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6b7280;
    background-color: #f9fafb;
}

.table td {
    font-size: 0.85rem;
}

/* Hover suave */
.table-hover tbody tr:hover {
    background-color: #f3f4ff;
}

/* ====== Utilitarios ====== */
.bg-primary-ceg-soft {
    background-color: var(--ceg-primary-soft);
}

.text-primary-ceg {
    color: var(--ceg-primary-dark);
}

/* ====== Tarjetas tipo "tile" para dashboard ====== */
.tile-card {
    border-radius: 16px;
    border: none;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
    overflow: hidden;
    background: #ffffff;
}

.tile-card .tile-icon {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ceg-primary-soft);
    color: var(--ceg-primary-dark);
    margin-right: 12px;
}

/* ====== Links del dashboard ====== */
.list-group-item-action {
    cursor: pointer;
}

.list-group-item-action:hover {
    background-color: #f1f5ff;
}

/* ====== Estados en tablas ====== */
.table-danger {
    background-color: #fff5f5 !important;
}

.table-success {
    background-color: #f1fff4 !important;
}
