/*  ---------------------------------------------------------
    la_post.css
--------------------------------------------------------- */

:root {
    --clr-bg-snippet: rgb(30,30,30);
}

.page-post {
    --knob-stack-start-mt: var(--sz-400);
    --knob-fs-std: var(--fsz-clamp-320-980-16x18);
    --knob-flh-std: var(--flh-med);
    --knob-fs-secondary-heading: var(--fsz-clamp-320-980-16x24);
    --knob-fw-secondary-heading: var(--fw-bold);
}

.page-post p {
    overflow-wrap: anywhere;
}

.post-heading {
    --knob-stack-start-mt: var(--sz-200);
    --knob-ff-brand: var(--ff-serif);
    --knob-fs-brand: var(--fsz-clamp-320-980-24x42);
    --knob-fw-brand: var(--fw-xlight);
}

.post-desc {
    --knob-fs-std: var(--fsz-clamp-320-980-16x20);
}

.post-img-container {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

.post-img-container:focus-visible {
    outline: 2px solid var(--clr-med-dark);
    outline-offset: 4px;
}

.post-img {
    display: block;
    max-width: 100%;
    margin: auto;
    height: auto;
}

.post-img-screenshot {
    display: block;
    max-width: none;
    height: auto;   
}

/* Wrapper for the snippet. */
.post-snippet {
    --knob-site-mt: var(--sz-300);
    max-width: 100%;
    padding: var(--sz-300);
    background: #1f1f1f;
    box-shadow: var(--site-box-shadow-soft);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

/* Standard snippet font styling. */
.post-snippet-font-std {
    font-family: var(--ff-post-snippet);
    font-size: var(--knob-post-snippet-fs, var(--fsz-clamp-320-980-16x18));
    font-weight: var(--fw-light);
    line-height: var(--flh-tight);
    color: var(--knob-post-snippet-fc);
}

/* Snippet lines: font-size: 0 removes whitespace nodes created by pretty-printed HTML
   between token spans. All visible text MUST be in spans. */
.post-snippet p {
    margin: 0;
    font-size: 0;
    line-height: 0;
    white-space: nowrap;
}

/* Python code block colors. */
.code-python-default-fc  { --knob-post-snippet-fc: #cccccc; } /* generic text */
.code-python-comment-fc  { --knob-post-snippet-fc: #6a9955; }
.code-python-keyword-fc  { --knob-post-snippet-fc: #c586c0; } /* import, def, with, for, in, etc. */
.code-python-type-fc     { --knob-post-snippet-fc: #4ec9b0; } /* modules, types, base64, boto3, etc */
.code-python-func-fc     { --knob-post-snippet-fc: #dcdcaa; } /* function names, builtins */
.code-python-var-fc      { --knob-post-snippet-fc: #9cdcfe; } /* variable names */
.code-python-op-fc       { --knob-post-snippet-fc: #d4d4d4; } /* =, +, etc */
.code-python-string-fc   { --knob-post-snippet-fc: #ce9178; }
.code-python-number-fc   { --knob-post-snippet-fc: #b5cea8; }
.code-python-special-fc  { --knob-post-snippet-fc: #569cd6; } /* def, f-strings bits, etc */

/* PHP code block colors. */
.code-php-default-fc  { --knob-post-snippet-fc: #cccccc; } /* generic text / punctuation */
.code-php-comment-fc  { --knob-post-snippet-fc: #6a9955; } /* // comments */
.code-php-keyword-fc  { --knob-post-snippet-fc: #c586c0; } /* try, catch, new, exit, etc. */
.code-php-type-fc     { --knob-post-snippet-fc: #4ec9b0; } /* PDO, PDOException, etc. */
.code-php-func-fc     { --knob-post-snippet-fc: #dcdcaa; } /* setAttribute, log, getMessage */
.code-php-var-fc      { --knob-post-snippet-fc: #9cdcfe; } /* $pdo, $e, $error_logger, ${db_*} */
.code-php-op-fc       { --knob-post-snippet-fc: #d4d4d4; } /* =, ::, ->, ), ;, etc. */
.code-php-string-fc   { --knob-post-snippet-fc: #ce9178; } /* string literals */
.code-php-number-fc   { --knob-post-snippet-fc: #b5cea8; } /* numeric literals like 65535 */
.code-php-special-fc  { --knob-post-snippet-fc: #569cd6; } /* reserved/special if you ever need */

/* Linux / configuration block colors. */
.code-config-default-fc {
    --knob-post-snippet-fc: #cccccc;
}

/* Bash / shell script block colors. */
.code-bash-default-fc  { --knob-post-snippet-fc: #cccccc; } /* generic text */
.code-bash-comment-fc  { --knob-post-snippet-fc: #6a9955; } /* comments */
.code-bash-keyword-fc  { --knob-post-snippet-fc: #c586c0; } /* if, then, else, fi */
.code-bash-command-fc  { --knob-post-snippet-fc: #dcdcaa; } /* psql, echo, exit, set */
.code-bash-var-fc      { --knob-post-snippet-fc: #9cdcfe; } /* DB_HOST, DB_USER, etc. */
.code-bash-option-fc   { --knob-post-snippet-fc: #569cd6; } /* --host, --username, etc. */
.code-bash-string-fc   { --knob-post-snippet-fc: #ce9178; } /* quoted strings */
.code-bash-special-fc  { --knob-post-snippet-fc: #4ec9b0; } /* $?, variable expansion if desired */

/* PostgreSQL / psql code block colors. */
.code-sql-default-fc  { --knob-post-snippet-fc: #bbbebf; } /* generic text */
.code-sql-comment-fc  { --knob-post-snippet-fc: #8b949e; }
.code-sql-keyword-fc  { --knob-post-snippet-fc: #ff7b74; } /* SELECT, FROM, WHERE, BEGIN, etc. */
.code-sql-meta-fc     { --knob-post-snippet-fc: #ff7b74; } /* \set, \connect, \ir, \echo */
.code-sql-string-fc   { --knob-post-snippet-fc: #a3d5fd; } /* quoted literals */
.code-sql-func-fc     { --knob-post-snippet-fc: #bbbebf; } /* pg_terminate_backend(), etc. */
.code-sql-path-fc     { --knob-post-snippet-fc: #75bffc; } /* .sql filename */

