.pattern-page[data-astro-cid-b4mckdvt]{position:relative;z-index:1;max-width:760px;margin:0 auto;padding:80px 32px 120px;display:flex;flex-direction:column;gap:40px}.breadcrumb[data-astro-cid-b4mckdvt]{font-family:var(--font-mono);font-style:normal;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-dim)}.breadcrumb[data-astro-cid-b4mckdvt] a[data-astro-cid-b4mckdvt]{color:var(--ink-dim);text-decoration:none}.breadcrumb[data-astro-cid-b4mckdvt] a[data-astro-cid-b4mckdvt]:hover{color:var(--gold)}.meta-head[data-astro-cid-b4mckdvt]{display:flex;align-items:baseline;gap:14px}.meta-glyph[data-astro-cid-b4mckdvt]{font-size:28px;color:var(--tint, var(--gold));line-height:1}.pattern-title[data-astro-cid-b4mckdvt]{font-size:48px;line-height:1.05;color:var(--ink)}.meta-row[data-astro-cid-b4mckdvt]{display:flex;align-items:center;gap:12px;margin-top:14px}.meta-type[data-astro-cid-b4mckdvt]{font-family:var(--font-mono);font-style:normal;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-dim)}.meta-sep[data-astro-cid-b4mckdvt]{color:var(--ink-faint)}.meta-complexity[data-astro-cid-b4mckdvt]{font-size:14px;letter-spacing:3px;color:var(--gold)}.pattern-note[data-astro-cid-b4mckdvt]{font-size:17px;line-height:1.55;color:var(--ink);margin-top:18px}.pattern-body[data-astro-cid-b4mckdvt]{font-size:17px;line-height:1.7;color:var(--ink)}.pattern-body[data-astro-cid-b4mckdvt] h2{font-size:28px;color:var(--ink);margin:40px 0 14px}.pattern-body[data-astro-cid-b4mckdvt] h3{font-size:21px;color:var(--ink);margin:28px 0 10px}.pattern-body[data-astro-cid-b4mckdvt] p{margin:0 0 18px}.pattern-body[data-astro-cid-b4mckdvt] ul,.pattern-body[data-astro-cid-b4mckdvt] ol{margin:0 0 18px;padding-left:24px}.pattern-body[data-astro-cid-b4mckdvt] li{margin-bottom:8px}.pattern-body[data-astro-cid-b4mckdvt] a{color:var(--gold);text-decoration:none;border-bottom:.5px solid var(--paper-border)}.pattern-body[data-astro-cid-b4mckdvt] a:hover{color:var(--gold-bright)}.pattern-body[data-astro-cid-b4mckdvt] code{font-family:var(--font-mono);font-style:normal;font-size:14px;color:var(--gold-bright);background:#d4b15e14;padding:1px 5px}.pattern-body[data-astro-cid-b4mckdvt] pre{font-family:var(--font-mono);font-size:13.5px;line-height:1.6;background:var(--paper);border:.5px solid var(--paper-border);padding:18px 20px;overflow-x:auto;margin:0 0 24px}.pattern-body[data-astro-cid-b4mckdvt] pre code{background:none;padding:0;color:var(--ink)}.pattern-body[data-astro-cid-b4mckdvt] blockquote{border-left:.5px solid var(--paper-border);padding-left:18px;margin:0 0 18px;color:var(--ink-dim);font-style:italic}.pattern-body[data-astro-cid-b4mckdvt] table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px}.pattern-body[data-astro-cid-b4mckdvt] th,.pattern-body[data-astro-cid-b4mckdvt] td{border:.5px solid var(--paper-border);padding:8px 12px;text-align:left}.pattern-body[data-astro-cid-b4mckdvt] th{font-style:normal;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-dim)}.footer-row[data-astro-cid-b4mckdvt]{display:flex;align-items:center;justify-content:space-between;padding-top:32px;border-top:.5px solid var(--line-faint)}.nav-link[data-astro-cid-b4mckdvt]{font-size:15px;color:var(--gold);text-decoration:none;font-style:italic}.nav-link[data-astro-cid-b4mckdvt]:hover{color:var(--gold-bright)}.footer-coord[data-astro-cid-b4mckdvt]{font-family:var(--font-mono);font-style:normal;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-faint)}.pattern-page[data-astro-cid-b4mckdvt][data-domain=frontend]{--tint: var(--tint-frontend)}.pattern-page[data-astro-cid-b4mckdvt][data-domain=backend]{--tint: var(--tint-backend)}.pattern-page[data-astro-cid-b4mckdvt][data-domain=data]{--tint: var(--tint-data)}.pattern-page[data-astro-cid-b4mckdvt][data-domain=infra]{--tint: var(--tint-infra)}@media(max-width:640px){.pattern-page[data-astro-cid-b4mckdvt]{padding:60px 20px 80px}.pattern-title[data-astro-cid-b4mckdvt]{font-size:36px}.footer-row[data-astro-cid-b4mckdvt]{flex-direction:column;align-items:flex-start;gap:16px}}
