:root{--paper:#f7f5f0;--ink:#141414;--muted:#555;--body-soft:#3a3a3a;--accent-blue:#3a5bd9;--library-green:#2e4a3e;--on-green:#f4efe3;--on-green-soft:#dce6e0;--on-green-muted:#c9d8cf;--strike:#f08a7e;--card:#fbf7ec;--card-ink:#2a2622;--card-rule:#c9bfa9;--card-fine:#5a5249;--card-pocket:#d9c8a5;--stamp-purple:#6b3fa0;--stamp-red:#b3261e;--status-green:#2e8b57;--tile-yellow:#ffd84d;--spine-cream:#f1e8d4;--spine-cream-ink:#2a211b;--spine-sand:#e0d0b2;--spine-sand-ink:#2a211b;--spine-camel:#b89b72;--spine-camel-ink:#2a211b;--spine-brick:#9c3d2e;--spine-brick-ink:#fbefe6;--spine-oxblood:#6a2a28;--spine-oxblood-ink:#f4e6da;--spine-sage:#a9b89e;--spine-sage-ink:#2a211b;--spine-taupe:#7a6a58;--spine-taupe-ink:#f6f1ea;--spine-ink:#16161a;--spine-ink-ink:#f4efe3;--spine-shadow:inset -5px 0 0 #00000029, inset 0 0 0 1px #f4efe338;--ribbon:#c23b2e;--cat-egg-color:var(--ink);--pile-green:#2f4b3a;--pile-green-ink:#f3eee4;--pile-mustard:#d9a441;--pile-mustard-ink:#2a211b;--pile-navy:#3b4a6b;--pile-navy-ink:#eef1f7;--border:2px solid var(--ink);--radius-tile:18px;--radius-pill:999px;--touch:44px;--page-max:1180px;--gutter:5%}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-display);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:var(--ink);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--accent-blue)}:focus-visible{outline:3px solid var(--accent-blue);outline-offset:3px}button{font:inherit;color:inherit;cursor:pointer}img,svg{max-width:100%;display:block}.container{max-width:var(--page-max);margin-inline:auto}.mono{font-family:var(--font-mono)}.section-title{letter-spacing:-.03em;margin:8px 0 0;font-size:clamp(40px,5vw,64px);font-weight:800;line-height:1}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);z-index:10;background:var(--ink);color:var(--paper);font-family:var(--font-mono);border-radius:var(--radius-pill);padding:10px 16px;font-size:14px;position:absolute;top:-100px}.skip-link:focus{color:var(--paper);top:12px}.ribbon{filter:drop-shadow(0 2px 1.5px #0000004d);pointer-events:none;width:16px;height:34px;position:absolute}.ribbon:before{content:"";background:var(--ribbon);clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);position:absolute;inset:0}.site-header[data-astro-cid-fzpbxy5g]{padding:22px var(--gutter) 0;font-family:var(--font-mono);color:var(--muted);font-size:13px}.site-header__inner[data-astro-cid-fzpbxy5g]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 14px;display:flex}.site-header__seen[data-astro-cid-fzpbxy5g]{text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:10px;margin:0;display:flex}.site-header__dot[data-astro-cid-fzpbxy5g]{background:var(--status-green);border-radius:50%;flex:none;width:8px;height:8px}.site-header__links[data-astro-cid-fzpbxy5g]{flex-wrap:wrap;gap:0 22px;margin:0;padding:0;list-style:none;display:flex}.site-header__links[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{min-height:var(--touch);color:var(--muted);align-items:center;display:inline-flex}.site-header__links[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover,.site-header__links[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g][aria-current=page]{color:var(--ink)}.site-header__links[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g][aria-current=page]{font-weight:700}.site-header__links[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover{color:var(--accent-blue)}.site-footer[data-astro-cid-nns7i3if]{padding:56px var(--gutter) 28px;border-top:var(--border);font-family:var(--font-mono);color:var(--muted);font-size:13px}.site-footer__inner[data-astro-cid-nns7i3if]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 20px;display:flex}.site-footer[data-astro-cid-nns7i3if] p[data-astro-cid-nns7i3if]{margin:0}.site-footer__hi[data-astro-cid-nns7i3if]{font-family:var(--font-serif);color:var(--ink);font-size:clamp(26px,3vw,34px);line-height:1.25}.site-footer[data-astro-cid-nns7i3if] .site-footer__hi[data-astro-cid-nns7i3if]{margin-bottom:12px}.site-footer__hi[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{color:var(--ink);text-underline-offset:4px;text-decoration-thickness:2px}.site-footer__hi[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover{color:var(--accent-blue)}.site-footer__links[data-astro-cid-nns7i3if]{gap:20px;margin:0;padding:0;list-style:none;display:flex}.site-footer__links[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{min-height:var(--touch);align-items:center;display:inline-flex}.cat-egg{aspect-ratio:200/170;pointer-events:none;user-select:none;z-index:1;width:clamp(130px,20vw,220px);color:var(--cat-egg-color,currentColor);position:fixed;bottom:0;overflow:hidden}.cat-egg svg{width:100%;height:100%;display:block}.cat-egg--perch{position:absolute;bottom:auto}.cat-egg--paws{width:clamp(110px,15vw,180px);position:absolute;overflow:visible}.cat-egg-host{position:relative;overflow:clip}.cat-egg__head{fill:currentColor;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;opacity:.35}.cat-egg__tailpath{fill:none;stroke:currentColor;stroke-width:9px;stroke-linecap:round;opacity:.35}.cat-egg__paw{fill:currentColor}.cat-egg__g{transform-origin:0 0}.cat-egg__peek{animation:2s ease-in-out both cat-egg-peek;transform:translate(40px,50px)}.cat-egg__tilt{animation:2s ease-in-out both cat-egg-tilt;transform:translate(-30px,50px)}.cat-egg__ears{animation:2s ease-in-out both cat-egg-ears;transform:translateY(52px)}.cat-egg__tail{animation:2s ease-in-out both cat-egg-tail;transform:translateY(60px)}.cat-egg__print{opacity:0;animation:1.1s ease-in-out both cat-egg-fade}@keyframes cat-egg-peek{0%{transform:translate(40px,50px)}20%{transform:translate(40px,8px)}45%{transform:translate(40px,8px)}70%{transform:translate(-8px,12px)}to{transform:translate(-70px,50px)}}@keyframes cat-egg-tilt{0%{transform:translate(-30px,50px)rotate(0)}22%{transform:translate(-30px,8px)rotate(-10deg)}45%{transform:translate(-30px,8px)rotate(-10deg)}62%{transform:translate(-30px,8px)rotate(9deg)}78%{transform:translate(-30px,8px)rotate(9deg)}to{transform:translate(-30px,50px)rotate(0)}}@keyframes cat-egg-ears{0%{transform:translateY(52px)rotate(0)}25%{transform:translateY(27px)rotate(0)}45%{transform:translateY(27px)rotate(-3deg)}60%{transform:translateY(27px)rotate(3deg)}75%{transform:translateY(27px)rotate(0)}to{transform:translateY(52px)rotate(0)}}@keyframes cat-egg-tail{0%{transform:translateY(60px)rotate(0)}18%{transform:translateY(0)rotate(0)}34%{transform:rotate(-7deg)}52%{transform:rotate(6deg)}70%{transform:rotate(-4deg)}85%{transform:translateY(0)rotate(0)}to{transform:translateY(60px)rotate(0)}}@keyframes cat-egg-fade{0%{opacity:0}20%{opacity:.14}65%{opacity:.14}to{opacity:0}}@media (prefers-reduced-motion:reduce){.cat-egg{display:none}}
