/* ---- Python Engineering Masterclass: theme refinements ---- */
:root {
  --md-text-font: "Inter", system-ui, sans-serif;
  --md-code-font: "JetBrains Mono", ui-monospace, monospace;
}
.md-typeset { font-size: .78rem; line-height: 1.72; }
.md-typeset h1 { font-weight: 700; letter-spacing: -.02em; }
.md-typeset h2 { font-weight: 650; letter-spacing: -.015em; margin-top: 2.2em; }
.md-typeset h3 { font-weight: 600; letter-spacing: -.01em; }

/* glossary category chips */
.term-cat, code.term-cat {
  display: inline-block; font-size: .62rem; text-transform: uppercase;
  letter-spacing: .07em; font-weight: 700; padding: .1rem .45rem;
  border-radius: 1rem; background: var(--md-accent-fg-color--transparent);
  color: var(--md-accent-fg-color); border: 1px solid var(--md-accent-fg-color);
}

/* status-aware admonition tightening */
.md-typeset .admonition, .md-typeset details { font-size: .74rem; border-radius: .35rem; }

/* tables: let wide tables scroll rather than break the page */
.md-typeset__table { width: 100%; }
.md-typeset table:not([class]) { font-size: .72rem; display: table; }

/* cards grid on the home page */
.md-typeset .grid.cards > ul > li {
  border-radius: .5rem; transition: border-color .2s, box-shadow .2s;
}
.md-typeset .grid.cards > ul > li:hover {
  border-color: var(--md-accent-fg-color);
  box-shadow: 0 .2rem .8rem rgba(0,0,0,.08);
}

/* mermaid diagrams centred with breathing room */
.mermaid { text-align: center; margin: 1.4em 0; }

/* code blocks: slightly denser */
.md-typeset pre > code { font-size: .70rem; line-height: 1.6; }

/* print */
@media print { .md-sidebar, .md-header, .md-footer { display: none !important; } }
