/* ---------------------------------------------------------------------------
   andreicimpean.com — reading-first personal site.
   System sans (HEY World-style type), one .page layout container.

   Color system: role tokens on a single slate hue family.
     --surface / --surface-raised / --border      backgrounds & lines
     --text-emphasis / --text-primary / --text-secondary   text hierarchy
     --link / --link-visited                      the one accent
   Every text token is WCAG AA (>=4.5:1) on both surfaces, both schemes.

   Weight system: exactly two weights.
     400 regular — body, nav, meta
     600 semibold — headings, titles, labels, strong
   --------------------------------------------------------------------------- */

:root {
    /* light: from the user's palette — snow, pale-slate, lilac-ash, tech-blue, blue-slate */
    --surface: #fcf7f8;          /* snow */
    --surface-raised: #eef0f5;   /* pale-slate tint */
    --border: #ced3dc;           /* pale-slate */
    --text-emphasis: #232a34;    /* 13.6:1 */
    --text-primary: #3b434e;     /* 9.4:1 */
    --text-secondary: #5b616a;   /* blue-slate, 5.9:1 */
    --link: #275dad;             /* tech-blue, 6.1:1 */
    --link-visited: #5c5f80;     /* 5.8:1 */
    --ornament: #aba9c3;         /* lilac-ash — decorative only in light */
    --selection-text: #232a34;

    --sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --mono: ui-monospace, 'Cascadia Code', 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --surface: #171b22;
        --surface-raised: #212731;
        --border: #323a46;
        --text-emphasis: #eef0f5;    /* 15.1:1 */
        --text-primary: #c6cdd8;     /* 10.8:1 */
        --text-secondary: #949dab;   /* 6.3:1 */
        --link: #82aee3;             /* tech-blue lifted, 7.5:1 */
        --link-visited: #aba9c3;     /* lilac-ash, 7.6:1 */
        --ornament: #aba9c3;
        --selection-text: #171b22;
    }
}

:root[data-theme="dark"] {
    --surface: #171b22;
    --surface-raised: #212731;
    --border: #323a46;
    --text-emphasis: #eef0f5;
    --text-primary: #c6cdd8;
    --text-secondary: #949dab;
    --link: #82aee3;
    --link-visited: #aba9c3;
    --ornament: #aba9c3;
    --selection-text: #171b22;
}

/* Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

html {
  height: 100%;
  background-color: var(--surface);
}

body {
  font-family: var(--sans);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--text-primary);
  background: var(--surface);
  margin: 0;
  padding: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

/* The one and only layout container */
.page {
  width: 100%;
  max-width: 42rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex: 1;
}

::selection {
  background: var(--ornament);
  color: var(--selection-text);
}

:focus-visible {
  outline: 2px solid var(--link);
  outline-offset: 2px;
}

main {
  flex: 1;
  padding-bottom: 4rem;
}

/* Header */
header {
  padding: 2rem 0 1.5rem;
}

header > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9rem;
}

header h1 {
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
}

header h1 a {
  color: var(--text-emphasis);
  text-decoration: none;
}

header h1 a:hover {
  color: var(--link);
}

.nav-area {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

.menu ul {
  display: flex;
  gap: 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu a {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text-secondary);
  text-decoration: none;
}

.menu a.active,
.menu a:hover {
  color: var(--text-emphasis);
}

/* Theme switch: pill track, sliding knob carrying the current-state icon */
.theme-switch {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 3.6rem;
  height: 2rem;
  padding: 0 0.45rem;
  box-sizing: border-box;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--surface-raised);
  cursor: pointer;
}

.theme-switch:hover {
  border-color: var(--text-secondary);
}

.theme-switch .track-icon {
  display: inline-flex;
  color: var(--text-secondary);
  line-height: 0;
}

.theme-switch .knob {
  position: absolute;
  top: 0.2rem;
  left: 0.2rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: var(--surface);
  border: 1px solid var(--border);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-primary);
  line-height: 0;
  transition: transform 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
  .theme-switch .knob {
    transition: none;
  }
}

.theme-switch .knob .sun { display: inline-flex; line-height: 0; }
.theme-switch .knob .moon { display: none; line-height: 0; }

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .theme-switch .knob { transform: translateX(1.65rem); }
  :root:not([data-theme="light"]) .theme-switch .knob .sun { display: none; }
  :root:not([data-theme="light"]) .theme-switch .knob .moon { display: inline-flex; }
}

:root[data-theme="dark"] .theme-switch .knob { transform: translateX(1.65rem); }
:root[data-theme="dark"] .theme-switch .knob .sun { display: none; }
:root[data-theme="dark"] .theme-switch .knob .moon { display: inline-flex; }

/* Footer */
footer {
  margin-top: auto;
  padding: 2.5rem 0;
  font-size: 0.9rem;
  color: var(--text-secondary);
  text-align: center;
}

footer a {
  color: var(--text-secondary);
}

footer a:hover {
  color: var(--link);
}

footer .disclaimer {
  font-size: 0.8rem;
  margin-top: 0.35rem;
}

/* Links */
a {
  color: var(--link);
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, var(--link) 35%, transparent);
  text-underline-offset: 0.15em;
}

a:hover {
  text-decoration-color: var(--link);
}

/* Headings */
h1, h2, h3 {
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: var(--text-emphasis);
    margin: 2rem 0 0.75rem;
}

h1 {
    font-size: 2.4rem;
    margin-top: 2.5rem;
}

h2 {
    font-size: 1.65rem;
}

h3 {
    font-size: 1.35rem;
}

p {
    margin: 1rem 0;
}

strong, b {
    font-weight: 600;
    color: var(--text-emphasis);
}

em, i {
    font-style: italic;
}

article ul, article ol {
    margin: 1rem 0;
    padding-left: 1.5rem;
}

article ul {
    list-style: disc;
}

article ol {
    list-style: decimal;
}

article li {
    margin: 0.35rem 0;
}

hr {
    border: none;
    margin: 2.5rem 0;
    text-align: center;
}

hr::before {
    content: '* * *';
    color: var(--ornament);
    letter-spacing: 0.5em;
}

/* Homepage bio */
.bio {
    margin-top: 2.5rem;
}

/* Section and year labels */
.section-label {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 3.5rem 0 0.5rem;
}

.year-label {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 2.75rem 0 0.25rem;
    padding-bottom: 0.4rem;
    border-bottom: 1px solid var(--border);
}

/* Post lists: title, date beneath */
.post-list {
    display: flex;
    flex-direction: column;
}

.post-item {
    padding: 0.9rem 0;
}

.post-item h2,
.post-item h3 {
    font-size: 1.35rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    margin: 0;
    line-height: 1.35;
}

.post-item h2 a,
.post-item h3 a {
    color: var(--link);
    text-decoration: none;
}

.post-item h2 a:visited,
.post-item h3 a:visited {
    color: var(--link-visited);
}

.post-item h2 a:hover,
.post-item h3 a:hover {
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

/* Dates and meta */
time {
    display: block;
    font-size: 0.9rem;
    color: var(--text-secondary);
}

.post-item time {
    margin-top: 0.15rem;
}

.all-writing {
    font-size: 0.95rem;
    margin-top: 1.5rem;
}

/* Single post */
main > article {
    line-height: 1.75;
}

main > article p {
    margin: 1.35rem 0;
}

main > article h1 {
    margin-top: 3.5rem;
    margin-bottom: 0.75rem;
    font-size: 2.4rem;
}

main > article > time {
    margin-bottom: 3rem;
}

/* Quotes, images, code */
blockquote {
  font-style: italic;
  border-left: 2px solid var(--ornament);
  padding-left: 1.25rem;
  color: var(--text-secondary);
  margin: 1.5rem 0;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 2rem auto;
}

code {
  font-family: var(--mono);
  font-size: 0.92em;
  background: var(--surface-raised);
  padding: 0.15em 0.4em;
  border-radius: 3px;
}

pre {
  background: var(--surface-raised);
  padding: 1rem;
  border-radius: 4px;
  overflow-x: auto;
  margin: 1.5rem 0;
  line-height: 1.5;
}

pre code {
  background: none;
  padding: 0;
  font-size: 0.95rem;
}

.highlight pre {
  border: 1px solid var(--border);
}

/* Copy button on code blocks (injected by JS; absent without it) */
.code-block {
  position: relative;
}

.copy-code {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  font-family: var(--sans);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 0.2rem 0.55rem;
  cursor: pointer;
  line-height: 1.4;
}

.copy-code:hover {
  color: var(--text-emphasis);
  border-color: var(--text-secondary);
}

.copy-code.copied {
  color: var(--link);
  border-color: var(--link);
}
/* Generated using: hugo gen chromastyles --style=catppuccin-latte */

/* Background */ .bg { color:#4c4f69;background-color:#eff1f5; }
/* PreWrapper */ .chroma { color:#4c4f69;background-color:#eff1f5;-webkit-text-size-adjust:none; }
/* Other */ .chroma .x { color:#4c4f69 }
/* Error */ .chroma .err { color:#d20f39 }
/* CodeLine */ .chroma .cl { color:#4c4f69 }
/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
/* LineHighlight */ .chroma .hl { background-color:#bcc0cc }
/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#8c8fa1 }
/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#8c8fa1 }
/* Line */ .chroma .line { display:flex; }
/* Keyword */ .chroma .k { color:#8839ef }
/* KeywordConstant */ .chroma .kc { color:#fe640b }
/* KeywordDeclaration */ .chroma .kd { color:#d20f39 }
/* KeywordNamespace */ .chroma .kn { color:#179299 }
/* KeywordPseudo */ .chroma .kp { color:#8839ef }
/* KeywordReserved */ .chroma .kr { color:#8839ef }
/* KeywordType */ .chroma .kt { color:#d20f39 }
/* NameAttribute */ .chroma .na { color:#1e66f5 }
/* NameClass */ .chroma .nc { color:#df8e1d }
/* NameConstant */ .chroma .no { color:#df8e1d }
/* NameDecorator */ .chroma .nd { color:#1e66f5;font-weight:bold }
/* NameEntity */ .chroma .ni { color:#179299 }
/* NameException */ .chroma .ne { color:#fe640b }
/* NameLabel */ .chroma .nl { color:#04a5e5 }
/* NameNamespace */ .chroma .nn { color:#fe640b }
/* NameOther */ .chroma .nx { color:#4c4f69 }
/* NameProperty */ .chroma .py { color:#fe640b }
/* NameTag */ .chroma .nt { color:#8839ef }
/* NameBuiltin */ .chroma .nb { color:#04a5e5 }
/* NameBuiltinPseudo */ .chroma .bp { color:#04a5e5 }
/* NameVariable */ .chroma .nv { color:#dc8a78 }
/* NameVariableClass */ .chroma .vc { color:#dc8a78 }
/* NameVariableGlobal */ .chroma .vg { color:#dc8a78 }
/* NameVariableInstance */ .chroma .vi { color:#dc8a78 }
/* NameVariableMagic */ .chroma .vm { color:#dc8a78 }
/* NameFunction */ .chroma .nf { color:#1e66f5 }
/* NameFunctionMagic */ .chroma .fm { color:#1e66f5 }
/* LiteralDate */ .chroma .ld { color:#4c4f69 }
/* LiteralString */ .chroma .s { color:#40a02b }
/* LiteralStringAffix */ .chroma .sa { color:#d20f39 }
/* LiteralStringBacktick */ .chroma .sb { color:#40a02b }
/* LiteralStringChar */ .chroma .sc { color:#40a02b }
/* LiteralStringDelimiter */ .chroma .dl { color:#1e66f5 }
/* LiteralStringDoc */ .chroma .sd { color:#9ca0b0 }
/* LiteralStringDouble */ .chroma .s2 { color:#40a02b }
/* LiteralStringEscape */ .chroma .se { color:#1e66f5 }
/* LiteralStringHeredoc */ .chroma .sh { color:#9ca0b0 }
/* LiteralStringInterpol */ .chroma .si { color:#40a02b }
/* LiteralStringOther */ .chroma .sx { color:#40a02b }
/* LiteralStringRegex */ .chroma .sr { color:#179299 }
/* LiteralStringSingle */ .chroma .s1 { color:#40a02b }
/* LiteralStringSymbol */ .chroma .ss { color:#40a02b }
/* LiteralNumber */ .chroma .m { color:#fe640b }
/* LiteralNumberBin */ .chroma .mb { color:#fe640b }
/* LiteralNumberFloat */ .chroma .mf { color:#fe640b }
/* LiteralNumberHex */ .chroma .mh { color:#fe640b }
/* LiteralNumberInteger */ .chroma .mi { color:#fe640b }
/* LiteralNumberIntegerLong */ .chroma .il { color:#fe640b }
/* LiteralNumberOct */ .chroma .mo { color:#fe640b }
/* Operator */ .chroma .o { color:#04a5e5;font-weight:bold }
/* OperatorWord */ .chroma .ow { color:#04a5e5;font-weight:bold }
/* OperatorReserved */ .chroma .or { color:#04a5e5;font-weight:bold }
/* Comment */ .chroma .c { color:#9ca0b0;font-style:italic }
/* CommentHashbang */ .chroma .ch { color:#acb0be;font-style:italic }
/* CommentMultiline */ .chroma .cm { color:#9ca0b0;font-style:italic }
/* CommentSingle */ .chroma .c1 { color:#9ca0b0;font-style:italic }
/* CommentSpecial */ .chroma .cs { color:#9ca0b0;font-style:italic }
/* CommentPreproc */ .chroma .cp { color:#9ca0b0;font-style:italic }
/* CommentPreprocFile */ .chroma .cpf { color:#9ca0b0;font-weight:bold;font-style:italic }
/* GenericDeleted */ .chroma .gd { color:#d20f39;background-color:#ccd0da }
/* GenericEmph */ .chroma .ge { font-style:italic }
/* GenericError */ .chroma .gr { color:#d20f39 }
/* GenericHeading */ .chroma .gh { color:#fe640b;font-weight:bold }
/* GenericInserted */ .chroma .gi { color:#40a02b;background-color:#ccd0da }
/* GenericOutput */ .chroma .go { color:#4c4f69 }
/* GenericPrompt */ .chroma .gp { color:#4c4f69 }
/* GenericStrong */ .chroma .gs { font-weight:bold }
/* GenericSubheading */ .chroma .gu { color:#fe640b;font-weight:bold }
/* GenericTraceback */ .chroma .gt { color:#d20f39 }
/* GenericUnderline */ .chroma .gl { text-decoration:underline }
/* Generated from: hugo gen chromastyles --style=catppuccin-mocha, scoped to dark scheme.
   Light-only selectors are overridden with the mocha base color so no light rule leaks. */

@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) .bg { color:#cdd6f4;background-color:#1e1e2e; }
:root:not([data-theme="light"]) .chroma { color:#cdd6f4;background-color:#1e1e2e;-webkit-text-size-adjust:none; }
:root:not([data-theme="light"]) .chroma .x { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .err { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .cl { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
:root:not([data-theme="light"]) .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
:root:not([data-theme="light"]) .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
:root:not([data-theme="light"]) .chroma .hl { background-color:#45475a }
:root:not([data-theme="light"]) .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f849c }
:root:not([data-theme="light"]) .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f849c }
:root:not([data-theme="light"]) .chroma .line { display:flex; }
:root:not([data-theme="light"]) .chroma .k { color:#cba6f7 }
:root:not([data-theme="light"]) .chroma .kc { color:#fab387 }
:root:not([data-theme="light"]) .chroma .kd { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .kn { color:#94e2d5 }
:root:not([data-theme="light"]) .chroma .kp { color:#cba6f7 }
:root:not([data-theme="light"]) .chroma .kr { color:#cba6f7 }
:root:not([data-theme="light"]) .chroma .kt { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .na { color:#89b4fa }
:root:not([data-theme="light"]) .chroma .nc { color:#f9e2af }
:root:not([data-theme="light"]) .chroma .no { color:#f9e2af }
:root:not([data-theme="light"]) .chroma .nd { color:#89b4fa;font-weight:bold }
:root:not([data-theme="light"]) .chroma .ni { color:#94e2d5 }
:root:not([data-theme="light"]) .chroma .ne { color:#fab387 }
:root:not([data-theme="light"]) .chroma .nl { color:#89dceb }
:root:not([data-theme="light"]) .chroma .nn { color:#fab387 }
:root:not([data-theme="light"]) .chroma .nx { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .py { color:#fab387 }
:root:not([data-theme="light"]) .chroma .nt { color:#cba6f7 }
:root:not([data-theme="light"]) .chroma .nb { color:#89dceb }
:root:not([data-theme="light"]) .chroma .bp { color:#89dceb }
:root:not([data-theme="light"]) .chroma .nv { color:#f5e0dc }
:root:not([data-theme="light"]) .chroma .vc { color:#f5e0dc }
:root:not([data-theme="light"]) .chroma .vg { color:#f5e0dc }
:root:not([data-theme="light"]) .chroma .vi { color:#f5e0dc }
:root:not([data-theme="light"]) .chroma .vm { color:#f5e0dc }
:root:not([data-theme="light"]) .chroma .nf { color:#89b4fa }
:root:not([data-theme="light"]) .chroma .fm { color:#89b4fa }
:root:not([data-theme="light"]) .chroma .ld { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .s { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .sa { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .sb { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .sc { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .dl { color:#89b4fa }
:root:not([data-theme="light"]) .chroma .sd { color:#6c7086 }
:root:not([data-theme="light"]) .chroma .s2 { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .se { color:#89b4fa }
:root:not([data-theme="light"]) .chroma .sh { color:#6c7086 }
:root:not([data-theme="light"]) .chroma .si { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .sx { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .sr { color:#94e2d5 }
:root:not([data-theme="light"]) .chroma .s1 { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .ss { color:#a6e3a1 }
:root:not([data-theme="light"]) .chroma .m { color:#fab387 }
:root:not([data-theme="light"]) .chroma .mb { color:#fab387 }
:root:not([data-theme="light"]) .chroma .mf { color:#fab387 }
:root:not([data-theme="light"]) .chroma .mh { color:#fab387 }
:root:not([data-theme="light"]) .chroma .mi { color:#fab387 }
:root:not([data-theme="light"]) .chroma .il { color:#fab387 }
:root:not([data-theme="light"]) .chroma .mo { color:#fab387 }
:root:not([data-theme="light"]) .chroma .o { color:#89dceb;font-weight:bold }
:root:not([data-theme="light"]) .chroma .ow { color:#89dceb;font-weight:bold }
:root:not([data-theme="light"]) .chroma .or { color:#89dceb;font-weight:bold }
:root:not([data-theme="light"]) .chroma .c { color:#6c7086;font-style:italic }
:root:not([data-theme="light"]) .chroma .ch { color:#585b70;font-style:italic }
:root:not([data-theme="light"]) .chroma .cm { color:#6c7086;font-style:italic }
:root:not([data-theme="light"]) .chroma .c1 { color:#6c7086;font-style:italic }
:root:not([data-theme="light"]) .chroma .cs { color:#6c7086;font-style:italic }
:root:not([data-theme="light"]) .chroma .cp { color:#6c7086;font-style:italic }
:root:not([data-theme="light"]) .chroma .cpf { color:#6c7086;font-weight:bold;font-style:italic }
:root:not([data-theme="light"]) .chroma .gd { color:#f38ba8;background-color:#313244 }
:root:not([data-theme="light"]) .chroma .ge { font-style:italic }
:root:not([data-theme="light"]) .chroma .gr { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .gh { color:#fab387;font-weight:bold }
:root:not([data-theme="light"]) .chroma .gi { color:#a6e3a1;background-color:#313244 }
:root:not([data-theme="light"]) .chroma .go { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .gp { color:#cdd6f4 }
:root:not([data-theme="light"]) .chroma .gs { font-weight:bold }
:root:not([data-theme="light"]) .chroma .gu { color:#fab387;font-weight:bold }
:root:not([data-theme="light"]) .chroma .gt { color:#f38ba8 }
:root:not([data-theme="light"]) .chroma .gl { text-decoration:underline }
}

:root[data-theme="dark"] .bg { color:#cdd6f4;background-color:#1e1e2e; }
:root[data-theme="dark"] .chroma { color:#cdd6f4;background-color:#1e1e2e;-webkit-text-size-adjust:none; }
:root[data-theme="dark"] .chroma .x { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .err { color:#f38ba8 }
:root[data-theme="dark"] .chroma .cl { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
:root[data-theme="dark"] .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
:root[data-theme="dark"] .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
:root[data-theme="dark"] .chroma .hl { background-color:#45475a }
:root[data-theme="dark"] .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f849c }
:root[data-theme="dark"] .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f849c }
:root[data-theme="dark"] .chroma .line { display:flex; }
:root[data-theme="dark"] .chroma .k { color:#cba6f7 }
:root[data-theme="dark"] .chroma .kc { color:#fab387 }
:root[data-theme="dark"] .chroma .kd { color:#f38ba8 }
:root[data-theme="dark"] .chroma .kn { color:#94e2d5 }
:root[data-theme="dark"] .chroma .kp { color:#cba6f7 }
:root[data-theme="dark"] .chroma .kr { color:#cba6f7 }
:root[data-theme="dark"] .chroma .kt { color:#f38ba8 }
:root[data-theme="dark"] .chroma .na { color:#89b4fa }
:root[data-theme="dark"] .chroma .nc { color:#f9e2af }
:root[data-theme="dark"] .chroma .no { color:#f9e2af }
:root[data-theme="dark"] .chroma .nd { color:#89b4fa;font-weight:bold }
:root[data-theme="dark"] .chroma .ni { color:#94e2d5 }
:root[data-theme="dark"] .chroma .ne { color:#fab387 }
:root[data-theme="dark"] .chroma .nl { color:#89dceb }
:root[data-theme="dark"] .chroma .nn { color:#fab387 }
:root[data-theme="dark"] .chroma .nx { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .py { color:#fab387 }
:root[data-theme="dark"] .chroma .nt { color:#cba6f7 }
:root[data-theme="dark"] .chroma .nb { color:#89dceb }
:root[data-theme="dark"] .chroma .bp { color:#89dceb }
:root[data-theme="dark"] .chroma .nv { color:#f5e0dc }
:root[data-theme="dark"] .chroma .vc { color:#f5e0dc }
:root[data-theme="dark"] .chroma .vg { color:#f5e0dc }
:root[data-theme="dark"] .chroma .vi { color:#f5e0dc }
:root[data-theme="dark"] .chroma .vm { color:#f5e0dc }
:root[data-theme="dark"] .chroma .nf { color:#89b4fa }
:root[data-theme="dark"] .chroma .fm { color:#89b4fa }
:root[data-theme="dark"] .chroma .ld { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .s { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .sa { color:#f38ba8 }
:root[data-theme="dark"] .chroma .sb { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .sc { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .dl { color:#89b4fa }
:root[data-theme="dark"] .chroma .sd { color:#6c7086 }
:root[data-theme="dark"] .chroma .s2 { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .se { color:#89b4fa }
:root[data-theme="dark"] .chroma .sh { color:#6c7086 }
:root[data-theme="dark"] .chroma .si { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .sx { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .sr { color:#94e2d5 }
:root[data-theme="dark"] .chroma .s1 { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .ss { color:#a6e3a1 }
:root[data-theme="dark"] .chroma .m { color:#fab387 }
:root[data-theme="dark"] .chroma .mb { color:#fab387 }
:root[data-theme="dark"] .chroma .mf { color:#fab387 }
:root[data-theme="dark"] .chroma .mh { color:#fab387 }
:root[data-theme="dark"] .chroma .mi { color:#fab387 }
:root[data-theme="dark"] .chroma .il { color:#fab387 }
:root[data-theme="dark"] .chroma .mo { color:#fab387 }
:root[data-theme="dark"] .chroma .o { color:#89dceb;font-weight:bold }
:root[data-theme="dark"] .chroma .ow { color:#89dceb;font-weight:bold }
:root[data-theme="dark"] .chroma .or { color:#89dceb;font-weight:bold }
:root[data-theme="dark"] .chroma .c { color:#6c7086;font-style:italic }
:root[data-theme="dark"] .chroma .ch { color:#585b70;font-style:italic }
:root[data-theme="dark"] .chroma .cm { color:#6c7086;font-style:italic }
:root[data-theme="dark"] .chroma .c1 { color:#6c7086;font-style:italic }
:root[data-theme="dark"] .chroma .cs { color:#6c7086;font-style:italic }
:root[data-theme="dark"] .chroma .cp { color:#6c7086;font-style:italic }
:root[data-theme="dark"] .chroma .cpf { color:#6c7086;font-weight:bold;font-style:italic }
:root[data-theme="dark"] .chroma .gd { color:#f38ba8;background-color:#313244 }
:root[data-theme="dark"] .chroma .ge { font-style:italic }
:root[data-theme="dark"] .chroma .gr { color:#f38ba8 }
:root[data-theme="dark"] .chroma .gh { color:#fab387;font-weight:bold }
:root[data-theme="dark"] .chroma .gi { color:#a6e3a1;background-color:#313244 }
:root[data-theme="dark"] .chroma .go { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .gp { color:#cdd6f4 }
:root[data-theme="dark"] .chroma .gs { font-weight:bold }
:root[data-theme="dark"] .chroma .gu { color:#fab387;font-weight:bold }
:root[data-theme="dark"] .chroma .gt { color:#f38ba8 }
:root[data-theme="dark"] .chroma .gl { text-decoration:underline }
