﻿:root{
  --mc-bg: #F3F7F6;
  --mc-surface: #FFFFFF;
  --mc-sidebar: #243532;
  --mc-sidebar-2: #2F4541;
  --mc-primary: #9DCFD4;
  --mc-primary-2: #7ABAC3;
  --mc-text: #1E2E2B;
  --mc-muted: #6D7C79;
  --mc-border: #E0E8E7;
  --mc-shadow: 0 14px 32px rgba(12,23,21,.08);
  --mc-font-base: "Manrope", "Segoe UI", Tahoma, sans-serif;
  --mc-font-display: "Manrope", "Segoe UI", Tahoma, sans-serif;
}

/* Base */
html, body { height: 100%; }
body{
  background: var(--mc-bg);
  color: var(--mc-text);
  font-family: var(--mc-font-base);
}
h1, h2, h3, h4, h5, h6, .mc-display{
  font-family: var(--mc-font-display);
  letter-spacing: .2px;
}

.fw-bold{
  font-weight: 600 !important;
}

/* Bootstrap overrides */
.btn-primary{
  --bs-btn-bg: var(--mc-primary);
  --bs-btn-border-color: var(--mc-primary);
  --bs-btn-color: #113238;
  --bs-btn-hover-bg: var(--mc-primary-2);
  --bs-btn-hover-border-color: var(--mc-primary-2);
}
.text-muted{ color: var(--mc-muted)!important; }
.border, .border-top, .border-bottom, .border-start, .border-end{
  border-color: var(--mc-border)!important;
}

/* Cards / surfaces */
.card{
  border: 1px solid var(--mc-border);
  border-radius: 16px;
  box-shadow: var(--mc-shadow);
}
.card-header{
  background: #FBFDFD;
  border-bottom: 1px solid var(--mc-border);
  border-top-left-radius: 16px !important;
  border-top-right-radius: 16px !important;
}

/* Inputs */
.form-control, .form-select{
  border-radius: 12px;
  border-color: var(--mc-border);
}
.form-control:focus, .form-select:focus{
  border-color: rgba(122,186,195,.9);
  box-shadow: 0 0 0 .25rem rgba(157,207,212,.25);
}

/* Sidebar */
.mc-sidebar{
  width: 260px;
  min-height: 100vh;
  background: linear-gradient(180deg, var(--mc-sidebar), #1E2C29);
  position: sticky;
  top: 0;
}
.mc-brand{
  display:flex;
  align-items:center;
  gap: 10px;
}
.mc-brand img{ height: 40px; }
.mc-sidebar .mc-brand .mc-sidebar-logo{
  width: calc(var(--mc-sidebar-logo-w, 136px) * 1.5) !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  display: block;
}
.mc-brand .t1{ font-weight: 600; letter-spacing: .18em; text-transform: uppercase; font-family: var(--mc-font-display); color: #EAF2F1; }
.mc-brand .t2{ font-size: 12px; color: rgba(255,255,255,.65); margin-top: -2px; }

.mc-nav .nav-link{
  color: rgba(255,255,255,.86);
  border-radius: 12px;
  padding: .58rem .75rem;
  display:flex;
  align-items:center;
  gap: 10px;
}
.mc-nav .nav-link:hover{
  background: rgba(157,207,212,.12);
}
.mc-nav .nav-link.active{
  background: rgba(157,207,212,.20);
  border: 1px solid rgba(157,207,212,.25);
}

/* Topbar */
.mc-topbar{
  background: var(--mc-surface);
  border-bottom: 1px solid var(--mc-border);
  position: sticky;
  top: 0;
  z-index: 1020;
  box-shadow: 0 6px 16px rgba(10,20,18,.04);
}

/* KPI strip */
.mc-strip{
  height: 6px;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  background: var(--mc-primary);
}
.mc-strip.alt{ background: var(--mc-primary-2); }
.mc-strip.green{ background: #55B36B; }
.mc-strip.red{ background: #E05252; }
.mc-strip.yellow{ background: #F2C94C; }

/* Landing - helpers */
.mc-hero{
  min-height: clamp(420px, 72vh, 760px);
  border-radius: 26px;
  overflow: hidden;
  background: radial-gradient(980px 360px at 10% 12%, rgba(157,207,212,.28), transparent 60%),
              radial-gradient(520px 240px at 92% 10%, rgba(122,186,195,.18), transparent 65%),
              linear-gradient(135deg, rgba(20,32,30,.98), rgba(28,44,40,.98));
  position: relative;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 24px 60px rgba(8,18,16,.45);
}
.mc-hero::before{
  content:"";
  position:absolute; inset:0;
  background-image: linear-gradient(120deg, rgba(255,255,255,.12), transparent 45%),
                    repeating-linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.08) 2px, transparent 2px, transparent 14px);
  opacity: .25;
  pointer-events: none;
}
.mc-hero::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.55), rgba(0,0,0,.12));
  pointer-events:none;
}
.mc-hero .mc-hero-content{
  position: relative;
  z-index: 2;
}
.mc-chip{
  display:inline-flex;
  gap:.5rem;
  align-items:center;
  padding:.35rem .65rem;
  border-radius: 999px;
  background: rgba(157,207,212,.18);
  border: 1px solid rgba(157,207,212,.28);
  color:#EAF2F1;
  font-weight: 600;
  font-size: .86rem;
}

/* Footer */
.mc-footer{
  background: #172320;
  color: rgba(255,255,255,.78);
}
