/* Kernel — a man page: monospace, section labels in caps, indented blocks; htop meters, dmesg log, systemd units. */
:root { --t-font-display: "JetBrains Mono", ui-monospace, monospace; --t-font-body: "JetBrains Mono", ui-monospace, monospace; --t-max: 1000px; --t-radius: 4px; --t-radius-sm: 3px; --t-radius-pill: 3px; --t-shadow: none; --t-size-1: 0.95rem; }
body { line-height: 1.6; }

/* the man page (the Kernel signature) */
.t-hero--manpage .t-hero__inner { grid-template-columns: 1fr; gap: 0; padding-block: 16px clamp(24px, 4vw, 40px); }
.t-man__head { display: flex; justify-content: space-between; gap: 12px; font-weight: 700; padding-block: 8px 18px; border-block-end: 1px solid var(--t-line); margin-block-end: 18px; }
.t-man__body { display: grid; gap: 24px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 760px) { .t-man__body { grid-template-columns: minmax(0, 1fr) auto; } }
.t-man__sect { font-weight: 700; margin: 18px 0 6px; letter-spacing: .04em; }
.t-man__sect:first-child { margin-block-start: 0; }
.t-man__block { padding-inline-start: clamp(16px, 4vw, 40px); }
.t-man__block--actions { padding-block-start: 22px; }
.t-hero--manpage .t-name { font-size: clamp(1.6rem, 3.6vw, 2.4rem); font-weight: 700; letter-spacing: 0; display: inline; }
.t-hero--manpage .t-name::after { content: " — "; font-weight: 400; }
.t-hero--manpage .t-headline { display: inline; margin: 0; color: var(--t-text); font-size: var(--t-size-2); }
.t-man__synopsis { margin: 0; overflow-wrap: anywhere; }
.t-man__synopsis b { color: var(--t-accent-text); }
.t-hero--manpage .t-tagline { margin: 0; }
.t-man__uptime { margin: 0; }
.t-man__prompt { color: var(--t-accent-text); font-weight: 700; }
.t-hero--manpage .t-actions { margin: 0; }
.t-hero--manpage .t-links--hero { margin-block-start: 12px; }
.t-man__photo { display: grid; gap: 6px; justify-items: center; border: 1px dashed var(--t-line); padding: 10px; }
.t-hero--manpage .t-photo { width: clamp(120px, 14vw, 160px); border-radius: 3px; box-shadow: none; image-rendering: auto; }
.t-man__caption { font-size: var(--t-size-0); color: var(--t-muted); }
.btn { --bs-btn-border-radius: 3px; --bs-btn-font-weight: 700; }
.btn-primary::before { content: "$ "; opacity: .7; }
.t-link { border-radius: 3px; background: transparent; font-size: var(--t-size-0); }
.t-link::before { content: "→ "; color: var(--t-muted); }

/* sections */
.t-section__title { font-size: var(--t-size-2); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; border-block-end: 1px solid var(--t-line); padding-block-end: 6px; }
.t-section--summary .t-section__title { display: none; }
.t-summary { padding-inline-start: clamp(16px, 4vw, 40px); max-width: 72ch; font-size: var(--t-size-2); }
.t-summary::before { content: "# "; color: var(--t-muted); }
.t-prose, .t-list, .t-timeline, .t-quotes, .t-chips, .t-top, .t-dmesg, .t-units { padding-inline-start: clamp(8px, 2vw, 24px); }
.t-top__head { margin: 0 0 10px; color: var(--t-muted); }

/* htop meters */
.t-top__group + .t-top__group { margin-block-start: 14px; }
.t-top__group h3 { font-size: var(--t-size-0); color: var(--t-muted); margin: 0 0 6px; font-weight: 400; }
.t-top__group h3::before { content: "## "; }
.t-top__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.t-top__row { display: grid; grid-template-columns: 2.2em minmax(0, 1fr); gap: 0 10px; align-items: center; }
@media (min-width: 600px) { .t-top__row { grid-template-columns: 2.2em minmax(0, 1fr) minmax(120px, 220px) 3.5em; } }
.t-top__cpu { color: var(--t-accent-text); }
.t-top__name { overflow-wrap: anywhere; }
.t-top__bar { height: 14px; border: 1px solid var(--t-line); border-radius: 2px; padding: 1px; display: block; grid-column: 2; }
@media (min-width: 600px) { .t-top__bar { grid-column: auto; } }
.t-top__fill { display: block; height: 100%; width: calc(var(--lvl, 0) * 20%); background: repeating-linear-gradient(90deg, var(--t-accent) 0 3px, transparent 3px 5px); }
.t-top__fill[data-level="1"] { --lvl: 1; } .t-top__fill[data-level="2"] { --lvl: 2; } .t-top__fill[data-level="3"] { --lvl: 3; } .t-top__fill[data-level="4"] { --lvl: 4; } .t-top__fill[data-level="5"] { --lvl: 5; }
.t-top__pct { color: var(--t-muted); text-align: end; grid-column: 2; }
@media (min-width: 600px) { .t-top__pct { grid-column: auto; } }

/* dmesg boot log */
.t-dmesg__log { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.t-dmesg__entry { display: grid; gap: 4px 14px; }
@media (min-width: 700px) { .t-dmesg__entry { grid-template-columns: 19ch minmax(0, 1fr); } }
.t-dmesg__t { color: var(--t-muted); white-space: pre; }
.t-dmesg__entry--now .t-dmesg__t { color: var(--t-accent-text); }
.t-dmesg__body .t-item__title { font-size: var(--t-size-2); font-weight: 700; margin: 0; }
.t-dmesg__body .t-item__sub { color: var(--t-muted); margin: 0; }
.t-dmesg__body .t-item__text { margin: 6px 0 0; }
.t-dmesg__ok { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 2px; }
.t-dmesg__tag { color: var(--t-accent-text); font-weight: 700; }

/* systemd units */
.t-units { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
.t-unit { border: 1px solid var(--t-line); background: var(--t-surface); padding: 14px 16px; overflow-wrap: anywhere; }
.t-unit__name { font-size: var(--t-size-1); font-weight: 700; margin: 0 0 6px; }
.t-unit__dot { color: var(--t-accent-text); }
.t-unit__desc { font-weight: 400; color: var(--t-muted); }
.t-unit__props { display: grid; grid-template-columns: 8ch minmax(0, 1fr); gap: 2px 10px; margin: 0; }
.t-unit__props dt { color: var(--t-muted); text-align: end; }
.t-unit__props dd { margin: 0; }
.t-unit__props b { color: var(--t-accent-text); }
.t-unit__log { margin: 8px 0 0; color: var(--t-text); padding-inline-start: 1ch; border-inline-start: 2px solid var(--t-line); }

.t-list li strong { font-weight: 700; }
.t-list li::before { content: "* "; color: var(--t-accent-text); }
.t-chip { border-radius: 3px; background: transparent; }
.t-chip::before { content: "#"; color: var(--t-muted); }
.t-quote { background: transparent; border: 0; border-inline-start: 2px solid var(--t-line); border-radius: 0; }
.t-quote__mark { display: none; }
.t-quote blockquote::before { content: "> "; color: var(--t-muted); }
.card { border-radius: 3px; }
.form-control { border-radius: 3px; }
.t-footer { border-block-start: 1px solid var(--t-line); }
.t-footer::before { content: "EOF"; color: var(--t-muted); }
