/*
 riglr custom theme enhancements for mdBook
*/

/* Import Inter font */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

/* Import a modern, legible font stack (system first) */
:root {
  /* Light theme palette */
  --riglr-bg: #ffffff;
  --riglr-surface: #f7f8fa;
  --riglr-text: #0f172a; /* slate-900 */
  --riglr-muted: #475569; /* slate-600 */
  --riglr-primary: #2563eb; /* blue-600 */
  --riglr-primary-contrast: #ffffff;
  --riglr-border: #e5e7eb; /* gray-200 */
  --riglr-code-bg: #0b1220; /* near black for code */
  --riglr-code-text: #e5e7eb;
  --riglr-code-border: #1f2937;
  --riglr-shadow: 0 1px 2px rgba(16, 24, 40, 0.06), 0 1px 3px rgba(16, 24, 40, 0.10);

  --riglr-font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  --riglr-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  --riglr-body-size: 17px; /* slightly larger base */
  --riglr-menu-size: 16.5px; /* increase menu size */
  --riglr-heading-weight: 700;
}

/********************
 Layout & typography
*********************/
html, body {
  font-family: var(--riglr-font-sans);
  color: var(--riglr-text);
  background: var(--riglr-bg);
}

.markdown-body {
  font-size: var(--riglr-body-size);
  line-height: 1.7;
}

/* Headings */
.markdown-body h1,
.markdown-body h2,
.markdown-body h3 {
  font-weight: var(--riglr-heading-weight);
  letter-spacing: -0.01em;
}
.markdown-body h1 { font-size: 2.0rem; margin-top: 1.4rem; }
.markdown-body h2 { font-size: 1.6rem; margin-top: 1.2rem; }
.markdown-body h3 { font-size: 1.3rem; margin-top: 1.0rem; }

/* Links */
.markdown-body a {
  color: var(--riglr-primary);
  text-decoration: none;
}
.markdown-body a:hover { text-decoration: underline; }

/********************
 Sidebar (menu)
*********************/
/* Increase menu font size and spacing */
#sidebar { 
  border-right: 1px solid var(--riglr-border); 
  font-size: var(--riglr-menu-size);
}
#sidebar .sidebar-scrollbox { padding: 14px; }
.nav { font-size: 1em; }
.nav a { color: var(--riglr-muted); }
.nav a:hover { color: var(--riglr-primary); }

.chapter { line-height: 1.35; }
.chapter li { margin: 2px 0; }
.chapter li a { padding: 7px 10px; border-radius: 8px; display: block; }
.chapter li a.active { background: var(--riglr-surface); color: var(--riglr-text); }
.part-title { 
  font-size: 0.92rem; 
  text-transform: uppercase; 
  letter-spacing: 0.06em; 
  color: var(--riglr-muted);
  margin: 12px 8px 6px;
}
.toggle { transform: scale(1.15); }

/********************
 Content area
*********************/
#content { background: var(--riglr-bg); }
#content .page { 
  background: var(--riglr-bg);
  box-shadow: var(--riglr-shadow);
  border-radius: 10px;
  border: 1px solid var(--riglr-border);
}

/* Improve blockquotes */
.markdown-body blockquote {
  border-left: 3px solid var(--riglr-primary);
  background: var(--riglr-surface);
  padding: 0.6rem 0.9rem;
  color: var(--riglr-muted);
}

/* Tables */
.markdown-body table { border-collapse: collapse; border-radius: 8px; overflow: hidden; }
.markdown-body th, .markdown-body td { border: 1px solid var(--riglr-border); padding: 10px 12px; }
.markdown-body thead th { background: var(--riglr-surface); }

/********************
 Code blocks
*********************/
pre code, code { font-family: var(--riglr-font-mono); }

pre { 
  background: var(--riglr-code-bg) !important;
  color: var(--riglr-code-text) !important;
  border: 1px solid var(--riglr-code-border) !important;
  border-radius: 10px !important;
  box-shadow: var(--riglr-shadow);
}

code { 
  background: #f1f5f9; 
  padding: 0.15rem 0.35rem; 
  border-radius: 6px; 
  border: 1px solid var(--riglr-border);
}

/********************
 Topbar and search
*********************/
#menu-bar { 
  border-bottom: 1px solid var(--riglr-border);
  background: rgba(255,255,255,0.8);
  backdrop-filter: saturate(180%) blur(12px);
}
#menu-bar .menu-title { font-weight: 700; letter-spacing: -0.01em; font-size: 1.05rem; }

#searchbar { 
  border-radius: 8px; 
  border: 1px solid var(--riglr-border);
  background: var(--riglr-surface);
  font-size: 0.98rem;
}
#searchbar:focus { outline: 2px solid rgba(37, 99, 235, 0.35); }

/********************
 Admonitions (tips/notes)
*********************/
.markdown-alert { 
  border-left: 4px solid var(--riglr-primary);
  background: var(--riglr-surface);
  padding: 0.8rem 1rem;
  border-radius: 8px;
}

/********************
 Dark mode tweaks (mdBook provides classes)
*********************/
html.navy, html.coal, html.ayu {
  --riglr-bg: #0b1220;
  --riglr-surface: #0f172a;
  --riglr-text: #e5e7eb;
  --riglr-muted: #cbd5e1;
  --riglr-border: #1f2937;
  --riglr-code-bg: #0b1220;
  --riglr-code-text: #e5e7eb;
  --riglr-code-border: #374151;
}

html.navy #menu-bar, html.coal #menu-bar, html.ayu #menu-bar {
  background: rgba(15, 23, 42, 0.7);
}
