/* Shared stylesheet for the archive pages (posts, pages, library). */
:root{
  --ink:#0b0f17; --navy:#101726; --ivory:#f3ecdd; --paper:#e8dfcb; --brass:#b8893a; --oxblood:#6e2428;
  --muted:rgba(243,236,221,.72); --line:rgba(184,137,58,.35);
  --display:'Fraunces',Georgia,'Times New Roman',serif;
  --body:'Albert Sans',system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
  --measure:62ch;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;background:var(--ink);color:var(--ivory);font-family:var(--body);font-size:19px;line-height:1.6;
  overflow-wrap:anywhere;word-break:normal}
@media (max-width:600px){body{font-size:17px}}
a{color:var(--brass);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--paper)}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}
.bar{background:var(--navy);border-bottom:1px solid var(--line)}
.bar-in{max-width:60rem;margin:0 auto;padding:12px 16px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.bar .brand{font-family:var(--display);font-weight:600;font-size:.95em;color:var(--ivory);text-decoration:none;letter-spacing:.01em}
.bar .brand:hover{color:var(--brass)}
.bar .nav{font-family:var(--mono);font-size:.8em;text-transform:none;white-space:nowrap}
.wrap{max-width:calc(var(--measure) + 32px);margin:0 auto;padding:28px 16px 48px}
.wrap.wide{max-width:60rem}
h1,h2,h3,h4,h5,h6{font-family:var(--display);color:var(--ivory);line-height:1.2;font-weight:700}
h1{font-size:2em;margin:.2em 0 .35em;font-weight:700}
h1.long{font-size:1.45em;font-weight:600}
@media (max-width:600px){h1{font-size:1.65em}h1.long{font-size:1.3em}}
.content h2{font-size:1.45em;margin:1.8em 0 .5em}
.content h3{font-size:1.25em;margin:1.6em 0 .4em}
.content h4,.content h5,.content h6{font-size:1.08em;margin:1.4em 0 .4em}
.date{font-family:var(--mono);font-size:.78em;color:var(--muted);margin:0 0 .8em}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.6em;padding:0}
.chip{display:inline-block;font-family:var(--mono);font-size:.74em;line-height:1.3;color:var(--ivory);
  background:rgba(110,36,40,.45);border:1px solid var(--line);border-radius:999px;padding:3px 11px;text-decoration:none;cursor:pointer}
button.chip{appearance:none;-webkit-appearance:none}
.chip:hover{background:var(--brass);color:var(--ink);border-color:var(--brass)}
.chip[aria-pressed="true"]{background:var(--brass);color:var(--ink);border-color:var(--brass)}
.chip .n{opacity:.75;margin-left:.35em}
.content{max-width:var(--measure)}
.content p{margin:0 0 1.05em}
.content p.fig{margin:1.2em 0}
.content img{display:block;max-width:100%;height:auto;margin:1em auto;border:1px solid var(--line)}
.content p img{margin:.6em auto}
.content blockquote{margin:1.6em 0;padding:.2em 0 .2em 1.1em;border-left:3px solid var(--brass);
  font-family:var(--display);font-style:italic;color:var(--paper)}
.content blockquote p{margin:0 0 .8em}
.content ul,.content ol{margin:0 0 1.1em;padding-left:1.4em}
.content li{margin:.3em 0}
.content hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.content pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--navy);border:1px solid var(--line);padding:12px;font-family:var(--mono);font-size:.82em}
.content code{font-family:var(--mono);font-size:.88em}
.table-wrap{overflow-x:auto;margin:1.2em 0;max-width:100%}
.content table{border-collapse:collapse;width:100%}
.content th,.content td{border:1px solid var(--line);padding:6px 8px;vertical-align:top;text-align:left}
.content td p{margin:0 0 .5em}
.video{position:relative;aspect-ratio:16/9;margin:1.4em 0;background:var(--navy);max-width:100%}
.embed{margin:1.4em 0;max-width:100%}
.embed iframe{width:100%;height:640px;border:0;background:var(--navy)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.foot{border-top:1px solid var(--line);background:var(--navy)}
.foot-in{max-width:60rem;margin:0 auto;padding:16px;font-family:var(--mono);font-size:.78em;color:var(--muted)}
/* library */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:1.2em 0 1em}
.controls input[type=search]{flex:1 1 16rem;min-width:0;font:inherit;font-size:1em;color:var(--ivory);background:var(--navy);
  border:1px solid var(--line);border-radius:4px;padding:10px 12px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.seg button{font-family:var(--mono);font-size:.8em;color:var(--ivory);background:transparent;border:0;padding:10px 14px;cursor:pointer}
.seg button+button{border-left:1px solid var(--line)}
.seg button[aria-pressed="true"]{background:var(--brass);color:var(--ink)}
.labels{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 .6em}
.more{font-family:var(--mono);font-size:.78em;color:var(--brass);background:transparent;border:0;padding:4px 0;cursor:pointer;text-decoration:underline}
.count{font-family:var(--mono);font-size:.8em;color:var(--muted);margin:.8em 0 1em}
.results{list-style:none;margin:0;padding:0}
.item{border-top:1px solid var(--line);padding:16px 0}
.item .meta{font-family:var(--mono);font-size:.74em;color:var(--muted);display:flex;gap:12px;margin-bottom:4px}
.item .t{font-family:var(--display);font-weight:600;font-size:1.12em;line-height:1.3;color:var(--ivory);text-decoration:none;display:block}
.item .t:hover{color:var(--brass);text-decoration:underline}
.item .chips{margin:8px 0 0}
.item .ex{margin:8px 0 0;max-width:var(--measure);font-size:.9em;color:var(--muted)}
.item .chip{font-size:.68em}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
