/* ==========================================================================
   TSC Design System v2 · área p1
   Propietario: EVO006-P1 · Admin (Components/Pages/Admin/**, AdminPanel, Administration, DailyQuoteManager, HistoricalData, Settings)
   Reglas: solo var(--tsc-*), sin hex ni !important; selectores con prefijo
   de página (p. ej. .pg-admin-portfolios ...) para no colisionar.
   Lint: python -E -P tools/visual-qa/lint_styles.py --area p1 --baseline tools/visual-qa/lint-baseline.json
   ========================================================================== */

/* ---------- Admin · migración de <style> inline (EVO006-P1) ---------- */

/* Badges */
.pg-admin-badges .badge-item {
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-sm);
    padding: var(--tsc-sp-3);
    margin-bottom: var(--tsc-sp-2);
    transition: transform var(--tsc-dur-base) var(--tsc-ease), box-shadow var(--tsc-dur-base) var(--tsc-ease);
}
.pg-admin-badges .badge-item:hover {
    box-shadow: var(--tsc-shadow-glow);
    transform: translateY(-2px);
}
.pg-admin-badges .badge-category-header {
    background: var(--tsc-grad-hero);
    color: var(--tsc-text-1);
    border: 1px solid var(--tsc-border);
    padding: var(--tsc-sp-4);
    border-radius: var(--tsc-r-sm);
    margin-bottom: var(--tsc-sp-4);
}
.pg-admin-badges .stats-card {
    background: var(--tsc-bg-1);
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-md);
    padding: var(--tsc-sp-5);
    box-shadow: var(--tsc-shadow-1);
}
.pg-admin-badges .badge-position-1 { border-left: 4px solid var(--tsc-warning); }
.pg-admin-badges .badge-position-2 { border-left: 4px solid var(--tsc-text-3); }
.pg-admin-badges .badge-position-3 { border-left: 4px solid var(--tsc-info); }
.pg-admin-badges .badge-position-other { border-left: 4px solid var(--tsc-success); }
.pg-admin-badges .calculation-section {
    background: var(--tsc-bg-2);
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-md);
    padding: var(--tsc-sp-5);
    margin-bottom: var(--tsc-sp-5);
}

/* Catálogo de sistemas */
.pg-admin-trading-systems .truncate {
    max-width: 150px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}
.pg-admin-trading-systems .mud-table-dense .mud-table-cell { padding: 4px 8px; }
.pg-admin-trading-systems .compact-table .mud-table-container,
.pg-admin-trading-systems .compact-table .mud-table-root { margin: 0; }

/* Carga de históricos */
.pg-admin-historical .mud-charts-yaxis text,
.pg-admin-historical .mud-charts-xaxis text { font-size: 8px; }
.pg-admin-historical .compact-table { margin: 0; }
.pg-admin-historical .compact-table th,
.pg-admin-historical .compact-table td { padding: 4px 8px; font-size: var(--tsc-fs-14); }
.pg-admin-historical .border-primary { border-left: 3px solid var(--tsc-primary); }

/* Invitaciones */
.pg-admin-invitations .mud-table-row.new-invitation-row,
.pg-admin-invitations .mud-table-row.new-invitation-row > td { background: var(--tsc-success-soft); }

/* Templates de contratos */
.pg-admin-templates .template-card {
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-sm);
    padding: var(--tsc-sp-4);
    margin-bottom: var(--tsc-sp-3);
    transition: transform var(--tsc-dur-base) var(--tsc-ease), box-shadow var(--tsc-dur-base) var(--tsc-ease);
}
.pg-admin-templates .template-card:hover { box-shadow: var(--tsc-shadow-glow); transform: translateY(-2px); }
.pg-admin-templates .template-active { border-left: 4px solid var(--tsc-success); }
.pg-admin-templates .template-inactive { border-left: 4px solid var(--tsc-text-3); opacity: .8; }
.pg-admin-templates .template-draft { border-left: 4px solid var(--tsc-warning); }
.pg-admin-templates .upload-section {
    background: var(--tsc-grad-hero);
    color: var(--tsc-text-1);
    border: 1px solid var(--tsc-border);
    padding: var(--tsc-sp-5);
    border-radius: var(--tsc-r-md);
    margin-bottom: var(--tsc-sp-5);
}
.pg-admin-templates .stats-card {
    background: var(--tsc-bg-1);
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-md);
    padding: var(--tsc-sp-5);
    box-shadow: var(--tsc-shadow-1);
    text-align: center;
}
.pg-admin-templates .campo-chip {
    margin: 2px;
    font-family: var(--tsc-font-mono);
    font-size: .85em;
}
.pg-admin-templates .template-upload-drop {
    background: var(--tsc-primary-soft);
    color: var(--tsc-text-1);
    border: 1px dashed var(--tsc-primary);
    border-radius: var(--tsc-r-md);
    transition: transform var(--tsc-dur-base) var(--tsc-ease), box-shadow var(--tsc-dur-base) var(--tsc-ease);
}
.pg-admin-templates .template-upload-drop:hover { box-shadow: var(--tsc-shadow-glow); transform: translateY(-2px); }
.pg-admin-templates .template-info-box {
    background: var(--tsc-info-soft);
    color: var(--tsc-text-1);
    border: 1px solid var(--tsc-info);
    border-radius: var(--tsc-r-sm);
}

/* Diagnóstico de contratos */
.pg-admin-diagnostico .diagnostic-card {
    border-radius: var(--tsc-r-md);
    padding: var(--tsc-sp-5);
    margin-bottom: var(--tsc-sp-4);
    color: var(--tsc-text-1);
}
.pg-admin-diagnostico .diagnostic-success { background: var(--tsc-success-soft); border: 1px solid var(--tsc-success); }
.pg-admin-diagnostico .diagnostic-error { background: var(--tsc-error-soft); border: 1px solid var(--tsc-error); }
.pg-admin-diagnostico .diagnostic-warning { background: var(--tsc-warning-soft); border: 1px solid var(--tsc-warning); }
.pg-admin-diagnostico .diagnostic-info { background: var(--tsc-info-soft); border: 1px solid var(--tsc-info); }
.pg-admin-diagnostico .status-badge { font-size: 48px; text-align: center; }
.pg-admin-diagnostico .test-result {
    background: var(--tsc-bg-1);
    color: var(--tsc-text-1);
    border: 1px solid var(--tsc-border);
    border-radius: var(--tsc-r-sm);
    padding: var(--tsc-sp-4);
    margin: var(--tsc-sp-2) 0;
    box-shadow: var(--tsc-shadow-1);
}
.pg-admin-diagnostico .test-result .mud-card-header { background: transparent; }
.pg-admin-diagnostico .test-result .mud-typography-h6,
.pg-admin-diagnostico .test-result .mud-table,
.pg-admin-diagnostico .test-result .mud-table-cell { color: var(--tsc-text-1); }
.pg-admin-diagnostico .log-output {
    background: var(--tsc-bg-2);
    color: var(--tsc-text-1);
    border: 1px solid var(--tsc-border);
    padding: var(--tsc-sp-4);
    border-radius: var(--tsc-r-sm);
    font-family: var(--tsc-font-mono);
    font-size: .9em;
    max-height: 400px;
    overflow-y: auto;
}
.pg-admin-diagnostico .metric-card {
    text-align: center;
    padding: var(--tsc-sp-5);
    border-radius: var(--tsc-r-md);
    background: var(--tsc-bg-1);
    border: 1px solid var(--tsc-border);
    box-shadow: var(--tsc-shadow-1);
}
.pg-admin-diagnostico .metric-card .mud-typography-h4 { font-weight: 700; font-family: var(--tsc-font-mono); }
.pg-admin-diagnostico .metric-card .mud-typography-body2 { color: var(--tsc-text-2); }
.pg-admin-diagnostico .dark-list-item { background: transparent; }
.pg-admin-diagnostico .dark-list-item .mud-typography { color: var(--tsc-text-1); }

/* Probador de emails */
.pg-admin-emailtest .emailtest-bordered { border: 1px solid var(--tsc-border); }
.pg-admin-emailtest .emailtest-preview { background: var(--tsc-bg-2); color: var(--tsc-text-1); }

/* Diálogo de confirmación de importación masiva */
.confirm-import-list { background: var(--tsc-bg-2); }
.pg-admin-templates .template-code {
    background: var(--tsc-bg-2);
    color: var(--tsc-text-1);
    font-family: var(--tsc-font-mono);
    padding: 2px 6px;
    border-radius: var(--tsc-r-sm);
}
