/* COLVATALENT_UI_CORPORATIVA_FASE2_20260920
 * Visual-only corporate refinement for COLVATEL.
 * No business logic, JS behavior, routes, PHP, DB or semantic status colors are changed.
 */
:root{
  --cv-brand-blue:#143f70;
  --cv-brand-navy:#263b72;
  --cv-brand-blue-2:#1f5f8f;
  --cv-brand-green:#a7b52a;
  --cv-brand-green-dark:#7f9120;
  --cv-surface:#ffffff;
  --cv-surface-soft:#f7f9fc;
  --cv-surface-blue:#eef3f9;
  --cv-border:#dbe4ec;
  --cv-border-strong:#c9d6e2;
  --cv-text:#1d2f43;
  --cv-muted:#71869a;
  --cv-shadow:0 8px 24px rgba(20,63,112,.07);
  --cv-shadow-hover:0 12px 30px rgba(20,63,112,.11);
  --cv-radius:12px;
  --cv-radius-lg:16px;
}

html{scroll-behavior:smooth}
body{color:var(--cv-text)}
a{transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}

/* Sidebar / navigation */
.sidebar{border-right:1px solid var(--cv-border);box-shadow:4px 0 18px rgba(20,63,112,.025)}
.brand{border-bottom:1px solid var(--cv-border);background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)}
.nav-label{color:#8799aa;letter-spacing:.10em;margin-top:2px}
nav a{border:1px solid transparent;transition:all .16s ease}
nav a:hover{background:#f1f5f9;color:var(--cv-brand-blue);border-color:#e4ebf1;transform:translateX(1px)}
nav a.active{background:linear-gradient(90deg,#edf3f9 0%,#f7f9fc 100%);color:var(--cv-brand-blue);border-color:#dce6ef;box-shadow:inset 3px 0 0 var(--cv-brand-green);font-weight:800}
nav a.active svg,nav a:hover svg{color:var(--cv-brand-blue)}

/* Header / page hierarchy */
.topbar{border-bottom:1px solid var(--cv-border);box-shadow:0 3px 12px rgba(20,63,112,.035)}
.topbar h1{color:var(--cv-brand-blue);font-weight:750;letter-spacing:-.01em}
.topbar small{color:var(--cv-muted)}
.avatar{background:linear-gradient(135deg,var(--cv-brand-blue),var(--cv-brand-blue-2));box-shadow:0 4px 12px rgba(20,63,112,.18)}

/* Cards / panels */
.card,.stat,.dash-panel,.report-panel-v20,.flow-current-box,.summary-box,.box{
  border-color:var(--cv-border)!important;
  box-shadow:var(--cv-shadow);
}
.card,.stat,.dash-panel,.report-panel-v20{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.card:hover,.stat:hover,.dash-panel:hover,.report-panel-v20:hover{border-color:#cfdae5!important;box-shadow:var(--cv-shadow-hover)}
.card h1,.card h2,.card h3,.management-title h2,.dash-panel-head h2,.section-title h2,.candidate-form-section-title h3,.contracting-candidate-section-title h3,.interview-section-title h3{color:var(--cv-brand-blue)}

/* KPI cards */
.stat,.kpi-card,.pkpi{position:relative;overflow:hidden}
.stat:before,.kpi-card:before,.pkpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cv-brand-blue),var(--cv-brand-green));opacity:.82}
.stat b,.kpi-card strong,.pkpi strong{color:var(--cv-brand-blue)}

/* Buttons */
.btn,.vac-btn,.jobs-button,.cb-btn,.audit-page-btn,.doccat-btn{border-radius:9px;transition:all .16s ease}
.btn:hover,.vac-btn:hover,.jobs-button:hover,.cb-btn:hover,.audit-page-btn:hover,.doccat-btn:hover{box-shadow:0 5px 14px rgba(20,63,112,.11);transform:translateY(-1px)}
.btn:active,.vac-btn:active,.jobs-button:active,.cb-btn:active,.audit-page-btn:active,.doccat-btn:active{transform:translateY(0);box-shadow:none}
.btn.primary,.jobs-button.primary,.vac-btn.primary{background:var(--cv-brand-blue)!important;border-color:var(--cv-brand-blue)!important;color:#fff!important}
.btn.primary:hover,.jobs-button.primary:hover,.vac-btn.primary:hover{background:#10365f!important;border-color:#10365f!important}
.btn:not(.primary):not(.success):not(.danger){border-color:var(--cv-border-strong);background:#fff;color:var(--cv-brand-blue)}
.btn:not(.primary):not(.success):not(.danger):hover{background:var(--cv-surface-blue);border-color:#bfcddd}

/* Forms */
input,select,textarea{border-color:var(--cv-border-strong);border-radius:9px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
input:hover,select:hover,textarea:hover{border-color:#afc1d1}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cv-brand-blue)!important;box-shadow:0 0 0 3px rgba(20,63,112,.10)!important}
input:disabled,select:disabled,textarea:disabled,.readonly-input{background:#f4f7fa!important;color:#5d7183!important}
label{color:#344b60}
.field-help,.contracting-field-hint{color:var(--cv-muted)!important}

/* Tables */
.table-wrap{border-radius:10px}
table{border-collapse:separate;border-spacing:0}
th{background:#f7f9fc;color:#62788c;border-bottom:1px solid var(--cv-border);font-weight:750;letter-spacing:.01em}
td{border-bottom-color:#e9eef3}
tbody tr{transition:background-color .14s ease}
tbody tr:hover{background:#f8fbfd}
.table-subtext{color:var(--cv-muted)!important}

/* Neutral badges only; semantic success/warning/danger remain untouched */
.badge:not(.success):not(.warning):not(.danger):not(.error):not(.critical):not(.ok){background:#edf3f8;color:var(--cv-brand-blue);border:1px solid #d8e3ec}

/* Alerts keep semantic colors; improve shape/spacing only */
.alert,.public-alert-error,.dash-alert,.contract-doc-alert{border-radius:10px;box-shadow:0 3px 10px rgba(32,55,76,.035)}

/* Modals / dialogs */
dialog,[class*="modal-shell"],[class*="preview-shell"]{border-radius:var(--cv-radius-lg)}
dialog{border:0;box-shadow:0 24px 70px rgba(15,42,68,.24)}
dialog::backdrop{background:rgba(12,35,56,.54);backdrop-filter:blur(1.5px)}
[class*="modal-header"],[class*="modal-head"],[class*="preview-header"]{border-bottom-color:var(--cv-border)!important;background:linear-gradient(180deg,#fbfcfe,#f6f9fb)!important}
[class*="modal-header"] strong,[class*="modal-head"] strong,[class*="preview-header"] strong{color:var(--cv-brand-blue)!important}

/* Filters / toolbars */
.toolbar,.management-filters,.applications-toolbar,.applications-filters{gap:10px}
.compact-filter,.compact-search{border-color:var(--cv-border)!important}

/* Empty states */
.empty-state,.empty-table,.management-empty,.talent-empty,.empty{color:var(--cv-muted)}
.empty-state,.talent-empty{background:#f8fbfd;border:1px dashed #cbd8e3;border-radius:12px;padding:18px}

/* Dashboard / progress */
.management-title p,.dash-panel-head p{color:var(--cv-muted)}
.funnel-track,.time-track,.interview-progress-track{background:#e8eef4!important}
.funnel-track b,.time-track b,.interview-progress-track i{background:linear-gradient(90deg,var(--cv-brand-blue),var(--cv-brand-blue-2))!important}

/* Public/auth surfaces */
.login-card,.privacy-card,.offer-card,.talent-pool-card,.job-detail-reference,.job-apply-card{border-color:var(--cv-border)!important;box-shadow:var(--cv-shadow)}
.public-header,.jobs-header{border-bottom-color:var(--cv-border)}
.jobs-header h1,.privacy-card h1,.privacy-card h2,.offer-card h2,.talent-pool-head h1{color:var(--cv-brand-blue)!important}
.talent-public-topbar{background:linear-gradient(90deg,var(--cv-brand-navy),var(--cv-brand-blue))!important}
.talent-bank-banner{background:linear-gradient(90deg,var(--cv-brand-blue),var(--cv-brand-blue-2))!important}
.talent-filter-primary{background:var(--cv-brand-blue)!important;border-color:var(--cv-brand-blue)!important}
.privacy-note{border-left-color:var(--cv-brand-green)!important;background:#f8f9ee!important}

/* Accessibility / keyboard */
a:focus-visible,.btn:focus-visible,button:focus-visible{outline:3px solid rgba(20,63,112,.24);outline-offset:2px}

/* Gentle motion only where supported */
@media (prefers-reduced-motion:no-preference){
  .card,.stat,.btn,nav a,input,select,textarea{transition-duration:.16s}
}

/* Responsive refinement without changing layout logic */
@media(max-width:1100px){
  .content{padding-left:28px;padding-right:28px}
}
@media(max-width:760px){
  .content{padding:16px}
  .card,.stat{border-radius:12px}
  .topbar{box-shadow:0 2px 10px rgba(20,63,112,.03)}
  .btn{min-height:38px}
}
