/*!
 * Chamilo LMS stylesheet - Default v.2.0
 * Homepage: https://chamilo.org
 * Author: Alex Aragón <alex.aragon@beeznest.com>
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Based on Bootstrap v3
*/

html {
  position: relative;
}
body {
  margin: 0 0 60px;
}
body > main footer.footer {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
}

a {
  color: #337AB7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #2E75A3;
  text-decoration: none;
}
a:focus {
  outline: none;
}

.navbar-nav > li{
  margin-bottom: 0;
}
.navbar-collapse{
  overflow: hidden !important;
}
.navbar-default {
  background: #337AB7;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
}
.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > li > a:hover {
  color: #A4DC2D;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus{
  color: #fff;
  background-color:#2C5B8E;
}
.navbar-default .navbar-nav > li > a{
  color: #ffffff;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus{
  background: #18477A;
  color: #ffffff;
}
.navbar-nav > li > .dropdown-menu{
  min-width: 100%;
  margin-top: 2px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
.navbar-default .navbar-nav > .open > .dropdown-menu{
  padding: 3px 4px;
}
.navbar-default .navbar-nav > .open > .dropdown-menu > li > a{
  padding: 6px 9px;
}
.nav > li > a:hover, .nav > li > a:focus{
   background-color: transparent;
}
.navbar-form .form-control{
  height: 25px;
  padding: 6px;
}
.navbar-default .navbar-brand {
  color:white;
}
.navbar-default .navbar-collapse, .navbar-default .navbar-form{
  border-color: #2C5B8E;
}

.navbar-default .navbar-toggle{
  border-color: #00677C;
}
.navbar-default .navbar-toggle .icon-bar{
  background-color: #ffffff;
}
.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover{
  background-color: #2C5B8E;
}
.badge-warning{
  background-color: #FD6600;
}
.breadcrumb{
  padding: 8px 15px;
  margin-bottom: 21px;
  list-style: outside none none;
  background-color: #ECF0F1;
}
.breadcrumb > .active{
  color: #95a5a6;
}
.panel-default{
  border-color: #ECF0F1;
}
/* Jquery UI */
.ui-accordion .ui-accordion-icons{
  padding-left: 0.2em;
}
/* End Jquery UI */
.bgfooter{
  background-color:#1A2226;
}
.bgfooter{
  color: #ffffff;
}
.bgfooter a{
  color: #ffffff;
}
/* ============================================================================
   IPSmart University — brand layer for Chamilo 1.11 (theme: ipsmartu)
   Appended AFTER the stock chamilo default.css. Palette + Inter + 65/35 login
   + dark mode. Tokens mirror the IPSmart Intranet reference (light & dark).
   ========================================================================== */

:root{
  --ipsu-violet:#7c3aed; --ipsu-indigo:#4f46e5; --ipsu-cyan:#06b6d4; --ipsu-magenta:#d946ef;
  --ipsu-grad:linear-gradient(135deg,#4f46e5 0%,#7c3aed 45%,#d946ef 100%);
  --ipsu-grad-soft:linear-gradient(135deg,rgba(79,70,229,.12),rgba(217,70,239,.12));
  --ipsu-paper:#F4F5FB; --ipsu-surface:#FFFFFF; --ipsu-surface-2:#FAFAFE;
  --ipsu-ink:#161428; --ipsu-muted:#6B6A83; --ipsu-line:#E5E4F0; --ipsu-line-strong:#D6D4E8; --ipsu-chip:#F1F0FA;
  --ipsu-shadow:0 1px 2px rgba(22,20,40,.04),0 12px 32px -12px rgba(79,70,229,.18);
}

/* ---- Typography: Inter everywhere ---- */
body, .btn, button, input, select, textarea, .navbar, .panel, .form-control,
h1,h2,h3,h4,h5,h6, .nav, .breadcrumb, .dropdown-menu{
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif !important;
}
body{ background:var(--ipsu-paper); color:var(--ipsu-ink); -webkit-font-smoothing:antialiased; }

/* ---- Links ---- */
a{ color:var(--ipsu-violet); }
a:hover,a:focus{ color:#6d28d9; }

/* ---- Primary / success buttons -> brand gradient ---- */
.btn-primary,.btn-success{
  background:var(--ipsu-grad) !important; border:none !important; color:#fff !important;
  box-shadow:0 6px 18px -8px rgba(124,58,237,.6);
}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,
.btn-success:hover,.btn-success:focus,.btn-success:active{
  background:var(--ipsu-grad) !important; filter:brightness(1.06); color:#fff !important;
}
.btn-default{ border-color:var(--ipsu-line-strong); }

/* ---- Accent elements ---- */
.label-primary,.badge,.progress-bar,.panel-primary>.panel-heading{
  background:var(--ipsu-violet); border-color:var(--ipsu-violet);
}
.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus{
  background:var(--ipsu-violet); border-color:var(--ipsu-violet);
}
.nav-pills>li.active>a,.nav-pills>li.active>a:hover{ background:var(--ipsu-violet); }
.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>li>a:hover{ color:var(--ipsu-violet); }
a.btn-link,.text-primary{ color:var(--ipsu-violet) !important; }
.form-control:focus{ border-color:var(--ipsu-violet); box-shadow:0 0 0 3px rgba(124,58,237,.15); }

/* ---- Header logo sizing ---- */
#header-logo{ max-height:54px; width:auto; }

/* ============================================================================
   LOGIN — IPSmart 65/35 split. Scoped to .section-login (the login/home page).
   The .ipsu-auth wrapper is injected by login_form.tpl.
   ========================================================================== */

/* On non-login pages the wrapper stays inert (just shows the form column). */
.ipsu-auth__brand{ display:none; }

.section-login #cm-header,
.section-login .footer,
.section-login #footer,
.section-login .page-content{ display:none !important; }
.section-login #main,
main.section-login{ padding:0 !important; margin:0 !important; }
body.no_javascript .section-login{ }

.section-login .ipsu-auth{
  position:fixed; inset:0; z-index:2; display:flex; background:var(--ipsu-paper);
}
.section-login .ipsu-auth__brand{
  display:flex; flex:0 0 65%; max-width:65%; position:relative; overflow:hidden;
  flex-direction:column; justify-content:center; gap:18px; padding:6vw 5vw; color:#fff;
  background:var(--ipsu-grad);
}
/* subtle brand figures / texture */
.section-login .ipsu-auth__brand::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(760px 380px at 85% -12%,rgba(6,182,212,.55),transparent 60%),
    radial-gradient(560px 320px at 8% 112%,rgba(217,70,239,.45),transparent 60%);
}
.section-login .ipsu-auth__brand::before{
  content:""; position:absolute; right:-140px; top:-140px; width:520px; height:520px;
  border-radius:50%; border:2px solid rgba(255,255,255,.14); pointer-events:none;
  box-shadow:0 0 0 60px rgba(255,255,255,.05), 0 0 0 160px rgba(255,255,255,.03);
}
.section-login .ipsu-auth__eyebrow{
  position:relative; font-size:13px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  opacity:.9; display:flex; align-items:center; gap:12px;
}
.section-login .ipsu-auth__eyebrow .dot{
  width:30px; height:30px; border-radius:9px; background:rgba(255,255,255,.16);
  display:inline-flex; align-items:center; justify-content:center; font-size:16px; backdrop-filter:blur(4px);
}
.section-login .ipsu-auth__wordmark{
  position:relative; font-size:clamp(34px,5vw,58px); font-weight:800; letter-spacing:-.02em; line-height:1.02;
}
.section-login .ipsu-auth__wordmark span{ font-weight:300; opacity:.95; }
.section-login .ipsu-auth__tagline{
  position:relative; font-size:clamp(15px,1.6vw,19px); max-width:44ch; opacity:.95; margin:0; font-weight:400;
}
.section-login .ipsu-auth__meta{
  position:relative; margin-top:8px; display:flex; gap:26px; flex-wrap:wrap; font-size:13px; opacity:.9;
}
.section-login .ipsu-auth__meta b{ font-weight:700; }

/* Right form column (35%) */
.section-login .ipsu-auth__form{
  flex:0 0 35%; max-width:35%; display:flex; align-items:center; justify-content:center;
  background:var(--ipsu-surface); padding:40px 6%;
}
.section-login .ipsu-auth__card{ width:100%; max-width:360px; }
.section-login .ipsu-auth__card h2{
  font-size:24px; font-weight:800; margin:0 0 4px; color:var(--ipsu-ink); letter-spacing:-.01em;
}
.section-login .ipsu-auth__card .ipsu-auth__sub{ font-size:14px; color:var(--ipsu-muted); margin:0 0 22px; }

/* Neutralize Chamilo's panel chrome around the login block */
.section-login .ipsu-auth #login-block.panel{ border:none; box-shadow:none; background:transparent; margin:0; }
.section-login .ipsu-auth #login-block .panel-body{ padding:0; }
.section-login .ipsu-auth .form-horizontal .control-label,
.section-login .ipsu-auth label{ text-align:left; font-weight:600; color:var(--ipsu-ink); font-size:13px; }
.section-login .ipsu-auth .input-group{ width:100%; margin-bottom:14px; }
.section-login .ipsu-auth .form-control{
  height:46px; border-radius:12px; border:1px solid var(--ipsu-line-strong); background:var(--ipsu-surface-2);
}
.section-login .ipsu-auth .input-group-addon{
  background:var(--ipsu-chip); border:1px solid var(--ipsu-line-strong); border-right:none;
  border-radius:12px 0 0 12px; color:var(--ipsu-violet);
}
.section-login .ipsu-auth .form-control{ border-left:none; border-radius:0 12px 12px 0; }
.section-login .ipsu-auth .btn-primary{ height:48px; border-radius:12px; font-weight:700; font-size:15px; margin-top:6px; }
.section-login .ipsu-auth .btn-group{ margin-bottom:16px; } /* language selector */
.section-login .ipsu-auth .nav-pills{ margin-top:16px; }
.section-login .ipsu-auth .nav-pills>li>a{ padding:4px 0; color:var(--ipsu-muted); background:transparent; font-size:13px; }
.section-login .ipsu-auth .nav-pills>li>a:hover{ color:var(--ipsu-violet); text-decoration:underline; }
.section-login .ipsu-auth .form_required,
.section-login .ipsu-auth small{ color:var(--ipsu-muted); }

/* Responsive: stack on narrow screens (also works nicely inside a mobile iframe) */
@media (max-width:900px){
  .section-login .ipsu-auth{ flex-direction:column; position:relative; min-height:100vh; }
  .section-login .ipsu-auth__brand{ flex:none; max-width:100%; padding:46px 28px; }
  .section-login .ipsu-auth__form{ flex:1; max-width:100%; }
}

/* ============================================================================
   DARK MODE — Chamilo 1.11 has no native dark theme; added here via CSS.
   ========================================================================== */
@media (prefers-color-scheme:dark){
  :root{
    --ipsu-paper:#0B0A14; --ipsu-surface:#151327; --ipsu-surface-2:#1B1930;
    --ipsu-ink:#ECEBF5; --ipsu-muted:#9C9AB8; --ipsu-line:#2A2740; --ipsu-line-strong:#38344F; --ipsu-chip:#211E38;
    --ipsu-grad-soft:linear-gradient(135deg,rgba(124,58,237,.20),rgba(217,70,239,.16));
    --ipsu-shadow:0 1px 2px rgba(0,0,0,.4),0 18px 40px -16px rgba(124,58,237,.35);
  }
  body{ background:var(--ipsu-paper) !important; color:var(--ipsu-ink) !important; }
  .panel,.well,.navbar-default,.dropdown-menu,.modal-content,.tab-content,
  .thumbnail,.list-group-item,.table>tbody>tr>td,.table>thead>tr>th{
    background-color:var(--ipsu-surface) !important; color:var(--ipsu-ink) !important; border-color:var(--ipsu-line) !important;
  }
  .navbar-default{ border-color:var(--ipsu-line) !important; }
  .panel-heading,.well{ background-color:var(--ipsu-surface-2) !important; }
  .form-control{ background:var(--ipsu-surface-2) !important; color:var(--ipsu-ink) !important; border-color:var(--ipsu-line-strong) !important; }
  .form-control::placeholder{ color:var(--ipsu-muted) !important; }
  a{ color:#a78bfa; }
  a:hover,a:focus{ color:#c4b5fd; }
  .text-muted,.help-block,small{ color:var(--ipsu-muted) !important; }
  .breadcrumb{ background:var(--ipsu-surface-2) !important; }
  hr{ border-color:var(--ipsu-line) !important; }

  /* Login form side in dark */
  .section-login .ipsu-auth{ background:var(--ipsu-paper); }
  .section-login .ipsu-auth__form{ background:var(--ipsu-surface); }
  .section-login .ipsu-auth__card h2{ color:var(--ipsu-ink); }
  .section-login .ipsu-auth .input-group-addon{ background:var(--ipsu-chip); border-color:var(--ipsu-line-strong); color:#a78bfa; }
  .section-login .ipsu-auth .form-control{ background:var(--ipsu-surface-2); border-color:var(--ipsu-line-strong); color:var(--ipsu-ink); }
}
/* Manual override hook: <html data-theme="dark"> forces dark regardless of OS */
:root[data-theme="dark"] body{ background:#0B0A14; color:#ECEBF5; }
