:root {
  --ink: #1a2c66;
  --muted: #6f7b9b;
  --line: #dfe4ee;
  --green: #1a2c66;
  --green2: #005add;
  --mint: #e8f2ff;
  --bg: #f5f7fb;
  --amber: #dda237;
  --blue: #005add;
  --deep: #1a2c66;
  --dynamic: #005add;
  --mist: #e6eaf1;
  --accent: #dda237;
  --fresh: #5cc8a1;
}

body { color: var(--ink); font-family: Helvetica, Arial, sans-serif; }
h1, h2, .kpi > strong, .date-box strong, .module-stat strong { font-family: Helvetica, Arial, sans-serif !important; }
.sidebar { background: #14245a; color: #fff; padding-top: 24px; overflow: hidden; }
.sidebar::before { content: ""; position: absolute; width: 310px; height: 310px; border: 1px solid rgba(0,90,221,.35); border-radius: 48% 52% 64% 36%; left: -155px; bottom: 125px; transform: rotate(32deg); pointer-events: none; }
.sidebar::after { content: ""; position: absolute; width: 210px; height: 210px; background: radial-gradient(circle at 70% 40%, rgba(0,90,221,.2), transparent 68%); right: -100px; top: 250px; pointer-events: none; }
.brand { display: block; padding: 0 7px 15px; position: relative; z-index: 1; }
.brand img { display: block; width: 195px; height: 70px; object-fit: contain; object-position: left center; filter: none; }
.brand-product { display: flex; align-items: center; gap: 8px; margin-top: -5px; padding-left: 2px; border: 0; }
.brand-product strong { font: 700 9px/1.2 Helvetica,Arial,sans-serif; letter-spacing: 1.1px; }
.brand-product span { color: #aab6d5; font-size: 7px; letter-spacing: 0; white-space: nowrap; }
.brand-product span::before { content: ""; display: inline-block; width: 3px; height: 3px; margin: 0 7px 1px 0; border-radius: 50%; background: var(--accent); }
.project-switcher { width: 100%; display: flex; align-items: center; gap: 9px; margin: 0 0 13px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.13); border-radius: 8px; background: rgba(255,255,255,.07); color: #fff; text-align: left; cursor: pointer; position: relative; z-index: 1; }
.project-switcher:hover { background: rgba(0,90,221,.22); border-color: rgba(92,200,161,.4); }
.project-monogram { width: 27px; height: 27px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 6px; background: var(--dynamic); font-size: 8px; font-weight: 700; }
.project-switcher small, .project-switcher strong { display: block; }
.project-switcher small { margin-bottom: 2px; color: #8fa1ce; font-size: 6px; letter-spacing: 1px; }
.project-switcher strong { max-width: 130px; overflow: hidden; color: #fff; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.project-switcher i { margin-left: auto; color: #8fa1ce; font-style: normal; }
.project-menu { position: absolute; z-index: 25; top: 132px; left: 16px; width: 214px; padding: 9px; border: 1px solid #dfe4ee; border-radius: 9px; background: #fff; color: var(--deep); box-shadow: 0 14px 35px rgba(5,18,60,.28); }
.project-menu > p { margin: 3px 7px 8px; color: #7b87a8; font-size: 7px; font-weight: 700; letter-spacing: 1px; }
.project-menu > button { width: 100%; display: flex; align-items: center; gap: 8px; padding: 8px; border: 0; border-radius: 7px; background: #eef3ff; color: var(--deep); text-align: left; }
.project-menu > button strong, .project-menu > button small { display: block; }
.project-menu > button strong { font-size: 9px; }
.project-menu > button small { max-width: 135px; margin-top: 2px; overflow: hidden; color: #73809e; font-size: 6px; text-overflow: ellipsis; white-space: nowrap; }
.project-menu > button i { margin-left: auto; color: var(--dynamic); font-style: normal; }
.project-menu-note { display: block; padding: 8px 7px 3px; color: #8994ae; font-size: 7px; line-height: 1.35; }
.nav-item { color: #bac4e0; font-family: Helvetica,Arial,sans-serif; position: relative; z-index: 1; }
.nav-item:hover { background: rgba(0,90,221,.24); color: #fff; }
.nav-item.active { background: #fff; color: var(--deep); box-shadow: 0 6px 18px rgba(3,16,57,.16); }
.nav-item b { background: rgba(0,90,221,.32); color: #dce7ff; }
.nav-item.active b { background: #e2ecff; color: var(--dynamic); }
.nav-item b.warn { background: #9c741b; color: #fff2ce; }
.nav-label { color: #7889b7; }
.project-health { background: rgba(0,90,221,.15); border-color: rgba(92,200,161,.28); position: relative; z-index: 1; }
.health-head strong { color: var(--fresh); }
.bar { background: rgba(255,255,255,.13); }
.bar span, .mini-bar i { background: var(--fresh); }
.user-card { border-color: rgba(255,255,255,.14); position: relative; z-index: 1; }
.avatar { background: var(--accent); color: var(--deep); }
.user-card small { color: #98a7ce; }
.primary { background: var(--deep); }
.primary:hover { background: var(--dynamic); }
.eyebrow { color: var(--dynamic); }
.attention { border-color: #ebd59f; background: #fffaf0; }
.attention-icon { background: #f7e6b9; color: #8b6200; }
.attention button { color: #8b6200; }
.kpi-icon.green { background: #e2f7ef; color: #148661; }
.kpi-icon.blue { background: #e5efff; color: var(--dynamic); }
.kpi-icon.amber { background: #fff4dc; color: #a87508; }
.kpi-icon.violet { background: #eeebfa; }
.kpi small b, .deadline, .panel-head button { color: var(--dynamic); }
.spark i { background: #bbd0f2; }
.spark i:nth-child(7) { background: var(--dynamic); }
.pills i { background: #eee2c7; }
.pills i:nth-child(-n+4) { background: var(--accent); }
.status.approved { background: #dff5ed; color: #147352; }
.status.review { background: #fff1d3; color: #916300; }
.toast { background: var(--deep); border-left: 4px solid var(--fresh); }
.modal input:focus, .modal select:focus, .modal textarea:focus { border-color: var(--dynamic); box-shadow: 0 0 0 3px #e5eeff; }
.form-error { min-height: 15px; color: #b83e37; font-size: 9px; }
.record-row.clickable { cursor: pointer; }
.record-row.clickable:hover { background: #f6f9ff; }
.dropzone span { color: var(--dynamic); }

@media (max-width: 760px) {
  .brand img { width: 185px; }
}
