:root{color-scheme:light;--bg:#f5f0e8;--panel:rgba(255, 252, 247, 0.9);--panel-strong:#fffaf2;--text:#1f1b18;--muted:#65584c;--accent:#b64a2b;--accent-soft:rgba(182, 74, 43, 0.12);--border:rgba(101, 88, 76, 0.2);--shadow:0 24px 60px rgba(70, 42, 25, 0.12);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Georgia,times new roman,serif;color:var(--text);background:radial-gradient(circle at top,rgba(255,220,181,.55),transparent 35%),linear-gradient(180deg,#f8f1e5 0%,#f2e8da 100%)}a{color:var(--accent)}.shell{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:1.25rem 0 4rem}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;padding:1rem 1.25rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.brand{font-size:1.2rem;font-weight:700;text-decoration:none}.top-nav{display:flex;flex-wrap:wrap;gap:1rem}.top-nav a{text-decoration:none}.content{padding:2rem;background:var(--panel-strong);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.page-header{margin-bottom:2rem}.eyebrow{margin:0 0 .5rem;color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.lede{margin:0;max-width:60ch;color:var(--muted);font-size:1.05rem;line-height:1.7}.prose{max-width:72ch;line-height:1.8}.prose img,.prose video{max-width:100%}.prose code{padding:.1rem .35rem;background:var(--accent-soft);border-radius:999px}.prose pre{overflow-x:auto;padding:1rem;background:#201916;border-radius:18px;color:#f8efe7}.prose pre code{padding:0;background:0 0}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:2rem}.card{display:block;height:100%;padding:1.1rem;background:#fff;border:1px solid var(--border);border-radius:20px;color:inherit;text-decoration:none;box-shadow:0 10px 30px rgba(70,42,25,8%);transition:transform 150ms ease,box-shadow 150ms ease,border-color 150ms ease}.card:hover,.card:focus-visible{transform:translateY(-2px);border-color:rgba(182,74,43,.4);box-shadow:0 18px 36px rgba(70,42,25,.12)}.card h2,.card h3,.section-heading h2{margin-top:0}.meta{color:var(--muted);font-size:.92rem}.frontend-section{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--border)}@media(max-width:720px){.shell{width:min(100% - 1rem,1120px)}.content{padding:1.25rem}}