/* IndusForward Brand Theme for mdBook
   Primary: Orange #FF6B00 | Accent: Green #00C853 | Secondary: Blue #3F51B5
   Background: Warm #FFFAF5 | Body font: Open Sans | Code font: Source Code Pro
*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&family=Source+Code+Pro:wght@400;600&display=swap');

/* ── CSS Variables ─────────────────────────────────────────────── */
:root {
  --if-orange:      #FF6B00;
  --if-orange-lt:   #FF8F33;
  --if-green:       #00C853;
  --if-green-lt:    #69F0AE;
  --if-blue:        #3F51B5;
  --if-blue-lt:     #7986CB;
  --if-red:         #E53935;
  --if-gold:        #FFB300;
  --if-warm-bg:     #FFFAF5;
  --if-warm-bg2:    #FFF3E8;
  --if-text:        #2D2D2D;
  --if-text-light:  #5A5A5A;
  --if-border:      #E8DDD0;
}

/* ── Body & Layout ─────────────────────────────────────────────── */
body {
  font-family: 'Open Sans', 'Segoe UI', Helvetica, Arial, sans-serif;
  color: var(--if-text);
}

body {
  background-color: var(--if-warm-bg);
}

/* ── Sidebar ───────────────────────────────────────────────────── */
.sidebar {
  background-color: #FFF8F2;
  border-right: 2px solid var(--if-border);
}

.sidebar .sidebar-scrollbox a {
  color: var(--if-text);
}

.sidebar .sidebar-scrollbox a:hover {
  color: var(--if-orange);
}

.sidebar .sidebar-scrollbox a.active {
  color: var(--if-orange);
  font-weight: 700;
  border-left: 3px solid var(--if-orange);
  padding-left: 5px;
}

/* ── Top Nav Bar ───────────────────────────────────────────────── */
#menu-bar {
  background-color: var(--if-orange);
  border-bottom: none;
}

#menu-bar .icon-button {
  color: #fff;
}

#menu-bar .menu-title {
  color: #fff;
  font-weight: 700;
}

/* ── Logo ──────────────────────────────────────────────────────── */
.sidebar-logo {
  padding: 16px 20px 8px;
}

.sidebar-logo img {
  max-height: 48px;
  width: auto;
}

/* Inject logo at top of sidebar via ::before on nav */
.sidebar .sidebar-scrollbox::before {
  content: "";
  display: block;
  width: 140px;
  height: 44px;
  margin: 12px auto 8px;
  background: url("../theme/logo.png") center/contain no-repeat;
}

/* ── Headings ──────────────────────────────────────────────────── */
h1 {
  color: var(--if-orange);
  border-bottom: 3px solid var(--if-green);
  padding-bottom: 8px;
  font-weight: 700;
}

h2 {
  color: var(--if-blue);
  border-bottom: 1px solid var(--if-border);
  padding-bottom: 4px;
  font-weight: 700;
}

h3 {
  color: var(--if-blue);
  font-weight: 600;
}

h4, h5, h6 {
  color: var(--if-text);
  font-weight: 600;
}

/* ── Links ─────────────────────────────────────────────────────── */
a {
  color: var(--if-orange);
  text-decoration: underline;
  text-decoration-color: #FFBE90;
}

a:hover {
  color: #C85200;
  text-decoration-color: var(--if-orange);
}

/* ── Blockquotes ───────────────────────────────────────────────── */
blockquote {
  border-left: 4px solid var(--if-green);
  background-color: var(--if-warm-bg2);
  padding: 12px 16px;
  border-radius: 0 4px 4px 0;
  font-style: italic;
  color: var(--if-text-light);
}

blockquote strong {
  color: var(--if-orange);
}

/* ── Tables ────────────────────────────────────────────────────── */
table thead {
  background-color: var(--if-orange);
  color: #fff;
}

table thead th {
  color: #fff;
  font-weight: 700;
  padding: 10px 14px;
}

table tbody tr:nth-child(even) {
  background-color: var(--if-warm-bg2);
}

table tbody tr:hover {
  background-color: #FFE5CC;
}

table td, table th {
  border: 1px solid var(--if-border);
  padding: 8px 12px;
}

/* ── Code ──────────────────────────────────────────────────────── */
code {
  font-family: 'Source Code Pro', 'Fira Code', 'Consolas', monospace;
  background-color: var(--if-warm-bg2);
  color: #C85200;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.9em;
  border: 1px solid var(--if-border);
}

pre {
  background-color: #2D2D2D;
  border-radius: 6px;
  border-left: 4px solid var(--if-orange);
}

pre code {
  background-color: transparent;
  color: #F8F8F2;
  border: none;
  padding: 0;
  font-size: 0.88em;
}

/* ── Horizontal Rule ───────────────────────────────────────────── */
hr {
  border: none;
  border-top: 2px solid var(--if-green);
  opacity: 0.4;
  margin: 32px 0;
}

/* ── Content Area ──────────────────────────────────────────────── */
.content main {
  padding: 0 20px;
  max-width: 860px;
}

/* ── Admonish Callout Boxes — brand overrides ──────────────────── */
.admonition.tip {
  border-left-color: var(--if-green);
}

.admonition.tip .admonition-title {
  background-color: #E8FFF2;
  color: #006B29;
}

.admonition.note {
  border-left-color: var(--if-blue);
}

.admonition.note .admonition-title {
  background-color: #EEF0FF;
  color: var(--if-blue);
}

.admonition.warning {
  border-left-color: var(--if-red);
}

.admonition.warning .admonition-title {
  background-color: #FFEBEE;
  color: var(--if-red);
}

.admonition.info {
  border-left-color: var(--if-gold);
}

.admonition.info .admonition-title {
  background-color: #FFF8E1;
  color: #7A5900;
}

/* ── Dark Theme (Coal) overrides ───────────────────────────────── */
.coal body {
  background-color: #16213E;
  color: #C8C8C8;
}

.coal .sidebar {
  background-color: #0F172A;
  border-right: 2px solid #2A3A5C;
}

.coal .sidebar .sidebar-scrollbox a {
  color: #B0B8D0;
}

.coal .sidebar .sidebar-scrollbox a:hover {
  color: var(--if-orange-lt);
}

.coal .sidebar .sidebar-scrollbox a.active {
  color: var(--if-orange-lt);
  border-left-color: var(--if-orange-lt);
}

.coal h1 {
  color: var(--if-orange-lt);
  border-bottom-color: var(--if-green);
}

.coal h2, .coal h3 {
  color: var(--if-blue-lt);
}

.coal a {
  color: var(--if-orange-lt);
}

.coal a:hover {
  color: #FFA050;
}

.coal code {
  background-color: #1E2A40;
  color: #FFAA66;
  border-color: #2A3A5C;
}

.coal blockquote {
  background-color: #1A2840;
  border-left-color: var(--if-green);
  color: #A0B0C0;
}

/* ── Responsive ────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .content main {
    padding: 0 12px;
  }

  h1 { font-size: 1.6rem; }
  h2 { font-size: 1.3rem; }

  .sidebar-logo img {
    max-height: 36px;
  }

  pre code {
    font-size: 0.82em;
  }

  table {
    font-size: 0.88em;
  }
}
