/* Ingeniería Transformacional palette, sampled from the logo */
:root{
  --it-teal:#33B9CA; --it-teal-deep:#1B7F8C; --it-ink:#14414A;
  --it-coral:#EE7B6E; --it-coral-deep:#D9594B; --it-gold:#E2C444;
  --it-bg:#F4F8F9; --it-line:#DCE8EA;
  --bs-body-font-family:'Lexend',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bs-body-color:#23363B; --bs-link-color:#1B7F8C; --bs-link-hover-color:#14414A;
  --bs-primary:#1B7F8C; --bs-primary-rgb:27,127,140;
}
body{background:var(--it-bg);font-weight:300}
h1,h2,h3,h4,h5,.navbar-brand,.btn,.nav-link,th,.badge,.stat{font-family:'Lexend',sans-serif}
h1,h2,h3,h4,h5{color:var(--it-ink);font-weight:600;letter-spacing:-.01em}
strong,b,label.form-label{font-weight:500}

/* top bar */
.it-nav{background:#fff;border-bottom:1px solid var(--it-line);position:relative;padding:.55rem 0}
.it-nav::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:4px;
  background:linear-gradient(90deg,var(--it-teal) 0 40%,var(--it-coral) 40% 78%,var(--it-gold) 78% 100%)}
.it-brand{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.it-brand .emblem{height:42px;width:auto}
.it-brand .wordmark{height:30px;width:auto}
.it-nav .nav-link{color:var(--it-ink);font-weight:400;padding:.5rem .9rem;border-bottom:2px solid transparent}
.it-nav .nav-link:hover{color:var(--it-coral-deep)}
.it-nav .nav-link.active{border-bottom-color:var(--it-coral);font-weight:500}
.it-nav .user-link{color:var(--it-teal-deep)}
.navbar-toggler{border-color:var(--it-line)}
main.container{margin-top:2rem}

/* buttons */
.btn{border-radius:.5rem;font-weight:500}
.btn-primary{--bs-btn-bg:var(--it-teal-deep);--bs-btn-border-color:var(--it-teal-deep);
  --bs-btn-hover-bg:var(--it-ink);--bs-btn-hover-border-color:var(--it-ink);
  --bs-btn-active-bg:var(--it-ink);--bs-btn-active-border-color:var(--it-ink);
  --bs-btn-disabled-bg:var(--it-teal-deep);--bs-btn-disabled-border-color:var(--it-teal-deep)}
.btn-outline-primary{--bs-btn-color:var(--it-teal-deep);--bs-btn-border-color:var(--it-teal-deep);
  --bs-btn-hover-bg:var(--it-teal-deep);--bs-btn-hover-border-color:var(--it-teal-deep);
  --bs-btn-active-bg:var(--it-ink);--bs-btn-active-border-color:var(--it-ink)}
.btn-outline-light{--bs-btn-color:var(--it-ink);--bs-btn-border-color:var(--it-line);
  --bs-btn-hover-bg:var(--it-coral);--bs-btn-hover-border-color:var(--it-coral);--bs-btn-hover-color:#fff}
.btn-outline-secondary{--bs-btn-color:#4B6469;--bs-btn-border-color:#B5C7CA;
  --bs-btn-hover-bg:var(--it-ink);--bs-btn-hover-border-color:var(--it-ink)}
.btn-outline-danger{--bs-btn-color:var(--it-coral-deep);--bs-btn-border-color:var(--it-coral);
  --bs-btn-hover-bg:var(--it-coral-deep);--bs-btn-hover-border-color:var(--it-coral-deep)}
.btn:focus-visible,.form-control:focus,.form-select:focus,.form-check-input:focus{
  box-shadow:0 0 0 .22rem rgba(51,185,202,.35);border-color:var(--it-teal)}
.form-check-input:checked{background-color:var(--it-teal-deep);border-color:var(--it-teal-deep)}

/* cards, tables */
.card{border:1px solid var(--it-line);border-radius:.85rem;box-shadow:0 1px 2px rgba(20,65,74,.05)}
.table{--bs-table-bg:#fff;border-color:var(--it-line)}
.table>thead th{background:#EAF6F8;color:var(--it-ink);font-weight:500;border-bottom:2px solid var(--it-teal)}
.table-hover>tbody>tr:hover>*{--bs-table-bg-state:#F3FAFB}
.table{border-radius:.6rem;overflow:hidden}

/* stat tiles: each tile takes a logo colour */
.stat{font-size:2rem;font-weight:600;line-height:1.15;color:var(--it-ink)}
.card:has(.stat){border-top:4px solid var(--it-teal)}
.row>div:nth-child(2) .card:has(.stat){border-top-color:var(--it-coral)}
.row>div:nth-child(3) .card:has(.stat){border-top-color:var(--it-gold)}
.row>div:nth-child(4) .card:has(.stat){border-top-color:var(--it-ink)}
a:has(>.card .stat){color:inherit}

/* pills, pagination, badges */
.nav-pills{--bs-nav-pills-link-active-bg:var(--it-teal-deep)}
.nav-pills .nav-link{color:var(--it-ink)}
.pagination{--bs-pagination-active-bg:var(--it-teal-deep);--bs-pagination-active-border-color:var(--it-teal-deep);
  --bs-pagination-color:var(--it-teal-deep)}
.badge{font-weight:500}
.text-bg-info{background-color:var(--it-teal)!important;color:#05303A!important}
.text-bg-warning{background-color:var(--it-gold)!important;color:#3B3200!important}
.text-bg-danger{background-color:var(--it-coral-deep)!important}

/* signed-out pages */
.auth-hero{text-align:center;margin:.5rem 0 1.5rem}
.auth-hero img{width:min(230px,55vw);height:auto}
.auth-hero p{margin:.5rem 0 0;color:#4B6469}
.auth-card{border-top:4px solid var(--it-coral)}
.alert{border-radius:.6rem}

/* dashboard welcome */
.welcome{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}
.welcome img{height:56px;width:auto}
.welcome h1{margin:0}
.welcome p{margin:0;color:#4B6469}

@media (max-width:991px){.it-brand .wordmark{display:none}}
@media (prefers-reduced-motion:no-preference){.btn{transition:background-color .15s,border-color .15s,color .15s}}

/* language switcher */
.lang-switch{display:inline-flex;border:1px solid var(--it-line);border-radius:999px;overflow:hidden;background:#fff}
.lang-switch a{padding:.2rem .7rem;font-size:.8rem;font-weight:500;color:var(--it-ink);text-decoration:none;letter-spacing:.03em}
.lang-switch a:hover{background:#EAF6F8}
.lang-switch a.active{background:var(--it-teal-deep);color:#fff}
