:root{--bg:#fbfaf7;--surface:#fff;--text:#1d1f22;--muted:#5a6068;--line:#e3e0d8;--accent:#1f6f5c;--accent-soft:#e5f1ed;--warn-soft:#fdf3e1;--warn-line:#e8c98a;--note-soft:#eef1fb;--note-line:#a9b6e6;--radius:10px;--measure:44rem;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--serif:Charter, "Bitstream Charter", "Sitka Text", Cambria, Georgia, serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--bg:#15171a;--surface:#1d2024;--text:#e7e5e0;--muted:#a2a8b0;--line:#2f3338;--accent:#6cc4a9;--accent-soft:#1d2f2a;--warn-soft:#2d2618;--warn-line:#7a6231;--note-soft:#1e2336;--note-line:#46558c}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:1.0625rem;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.15em}.wrap{max-width:68rem;margin:0 auto;padding:0 1rem}.skip{position:absolute;left:-999px}.skip:focus{background:var(--surface);z-index:10;padding:.5rem 1rem;top:1rem;left:1rem}.site-header{border-bottom:1px solid var(--line);background:var(--surface)}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding-top:.9rem;padding-bottom:.9rem;display:flex}.brand{font-family:var(--serif);color:var(--text);font-size:1.35rem;font-weight:700;text-decoration:none}.brand:before{content:"✓";color:var(--accent);margin-right:.35rem}.site-header ul,.site-footer ul{flex-wrap:wrap;gap:.25rem 1.1rem;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{color:var(--muted);font-size:.95rem;text-decoration:none}.site-header nav a:hover{color:var(--accent)}main{padding-top:2rem;padding-bottom:3rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:1.5rem 0 2.5rem;font-size:.9rem}.site-footer a{color:var(--muted)}.footer-disclosure,.footer-small{margin:.9rem 0 0}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;line-height:1.25}h1{margin:.3rem 0 .8rem;font-size:clamp(1.8rem,4vw,2.5rem)}.lede{color:var(--muted);max-width:var(--measure);font-size:1.15rem}.post-list{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.25rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.card img{aspect-ratio:16/9;object-fit:cover;width:100%}.card-body{padding:1rem 1.1rem 1.2rem}.card h2,.card h3{margin:.25rem 0 .5rem;font-size:1.2rem}.card h2 a,.card h3 a{color:var(--text);text-decoration:none}.card h2 a:hover,.card h3 a:hover{color:var(--accent)}.card p{color:var(--muted);margin:0;font-size:.97rem}.meta{color:var(--muted);font-size:.85rem}.meta a{color:var(--muted)}.empty{color:var(--muted);font-style:italic}.post{max-width:var(--measure);margin:0 auto}.post-body{font-family:var(--serif);font-size:1.14rem}.post-body h2{margin-top:2.2rem}.post-body pre{font-family:var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem;font-size:.85rem;line-height:1.5;overflow-x:auto}.post-body code{font-family:var(--mono);font-size:.88em}.post-body table{border-collapse:collapse;width:100%;font-family:var(--font);font-size:.95rem;display:block;overflow-x:auto}.post-body th,.post-body td{border:1px solid var(--line);text-align:left;padding:.45rem .65rem}.hero{margin:1.5rem 0}.hero img{border-radius:var(--radius);width:100%}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:.3rem;margin:0;padding:0;font-size:.88rem;list-style:none;display:flex}.breadcrumbs li+li:before{content:"›";margin-right:.3rem}.breadcrumbs a{color:var(--muted)}.label{text-transform:uppercase;letter-spacing:.06em;background:var(--accent-soft);color:var(--accent);border-radius:4px;margin:.8rem 0 0;padding:.2rem .55rem;font-size:.78rem;font-weight:600;display:inline-block}.callout{border:1px solid var(--warn-line);background:var(--warn-soft);border-radius:var(--radius);margin:1.25rem 0;padding:.75rem 1rem;font-size:.95rem}.callout p{margin:0}.author-note{border-left:4px solid var(--note-line);background:var(--note-soft);border-radius:0 var(--radius) var(--radius) 0;font-family:var(--font);margin:1.6rem 0;padding:.8rem 1.1rem;font-size:1rem}.author-note-head{text-transform:uppercase;letter-spacing:.05em;margin:0 0 .3rem;font-size:.85rem;font-weight:700}.author-note>:last-child{margin-bottom:0}figure{margin:1.8rem 0}figure img{border-radius:8px}figcaption{font-family:var(--font);color:var(--muted);margin-top:.5rem;font-size:.88rem}.credit{font-size:.8rem;display:block}.ai-mark{color:var(--text);font-weight:600}.product{font-family:var(--font);border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);margin:1.2rem 0;padding:.75rem 1rem;font-size:1rem;display:block}.product a{font-weight:600}.aff-why{color:var(--muted);font-size:.92rem;display:block}.product-panel{font-family:var(--font);margin:2.5rem 0 0}.product-panel h2{font-size:1.2rem}.product-panel ul{margin:0;padding:0;list-style:none}.product-panel .product{margin:.6rem 0}.references{border-top:1px solid var(--line);font-family:var(--font);margin-top:2.8rem;padding-top:.6rem;font-size:.95rem}.references ol{padding-left:1.3rem}.references li{margin:.35rem 0}.ai-disclosure{font-family:var(--font);color:var(--muted);margin-top:1.8rem;font-size:.9rem}.related{max-width:var(--measure);margin:3rem auto 0}.tag-list{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.tag-list a{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:.1rem .7rem;font-size:.88rem;text-decoration:none;display:inline-block}.prose{max-width:var(--measure)}.video{border-radius:var(--radius);margin:1.5rem 0;overflow:hidden}.newsletter{max-width:var(--measure);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:3rem auto 0;padding:1.1rem 1.25rem 1.3rem}.newsletter h2{margin:0 0 .3rem;font-size:1.25rem}.newsletter p{color:var(--muted);margin:0 0 .8rem;font-size:.95rem}.newsletter form{flex-wrap:wrap;gap:.5rem;display:flex}.newsletter input[type=email]{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:8px;flex:14rem;padding:.55rem .75rem}.newsletter button{font:inherit;background:var(--accent);color:var(--surface);cursor:pointer;border:0;border-radius:8px;padding:.55rem 1.1rem;font-weight:600}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
