:root{--peat:#120d0b;--loam:#1c1511;--seam:#3a2f26;--marl:#f4ead8;--silt:#c2b19a;--ember:#ff5b1f;--ember-strong:#ff6a33;--ochre:#ffb21e;--amber-fill:#ffb21e;--oxide:#ff6a33;--topsoil:#8f5f36;--clay:#d2683c;--sandstone-band:#e0b266;--limestone:#d6cdb8;--basalt:#4a4a52;--on-strata-dark:#f4ead8;--on-strata-light:#120d0b;--magma:#ff5b1f;--magma-deep:#a63a10;--vein:#35c2a8;--vein-deep:#1f7f6d;--on-vein:#0d1a17;--on-ember:#120d0b;--rule:#8c7660;--focus:#35c2a8;--surface-0:var(--peat);--surface-1:var(--loam);--surface-2:#281e18;--surface-3:#332820;--text-primary:var(--marl);--text-secondary:var(--silt);--text-tertiary:#9a8670;--accent:var(--magma);--accent-hover:var(--ember-strong);--accent-text:#ff6a33;--accent-muted:color-mix(in srgb, var(--accent) 16%, transparent);--on-accent:#120d0b;--flow:var(--vein);--flow-muted:color-mix(in srgb, var(--vein) 16%, transparent);--on-flow:var(--on-vein);--sandstone:#d6c3a0;--sandstone-muted:color-mix(in srgb, var(--sandstone) 22%, transparent);--lock:var(--magma);--lock-muted:color-mix(in srgb, var(--lock) 18%, transparent);--border:var(--seam);--border-hover:#5a4838;--code-bg:#0c0907;--code-text:var(--sandstone);--syntax-keyword:#c09ab3;--syntax-function:#35c2a8;--syntax-string:#e0b266;--syntax-number:#ffb21e;--syntax-comment:#9a8670;--syntax-accent:#ff5b1f;--success:var(--vein);--warning:var(--ochre);--error:var(--oxide);--info:var(--sandstone);--font-display:"Big Shoulders Display", "Arial Narrow", Impact, sans-serif;--font-body:"Instrument Sans", system-ui, "Helvetica Neue", Arial, sans-serif;--font-mono:"Martian Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--space-32:128px;--radius-sm:0;--radius-md:0;--radius-lg:0;--radius-full:0;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.5, 0, .75, 0);--ease-in-out:cubic-bezier(.45, 0, .55, 1);--duration-fast:.22s;--duration-normal:.32s;--duration-slow:.7s;--shadow-sm:0 2px 0 0 #8f5f36, 0 10px 16px -8px #0000008c;--shadow-md:0 3px 0 0 #8f5f36, 0 7px 0 0 #4a4a52, 0 18px 26px -8px #0009;--shadow-lg:0 7px 0 0 #a63a10, 0 22px 30px -8px #000000a6;--shadow-glow:0 0 0 1px #ff5b1f, 0 0 36px 4px #ff5b1f80;--shadow-sunk:inset 0 5px 6px 0 #0000008c;--edge-ledge:polygon(0.0% 6px, 3.5% 4.1px, 8.0% 3.8px, 10.4% 5.9px, 14.8% .4px, 20.4% 1.4px, 23.9% 3px, 27.3% .1px, 31.1% 2.7px, 34.7% 5.8px, 38.9% 3.5px, 42.9% 4.1px, 45.7% 4.7px, 50.9% 5.9px, 54.4% 3.9px, 58.2% 4.3px, 61.3% 4.5px, 65.3% 2.1px, 70.1% 0px, 72.2% 2.8px, 78.0% 3px, 81.1% 2.2px, 84.6% 5.7px, 88.1% 6.6px, 92.5% 5px, 96.6% 6px, 100.0% 6px, 100% 100%, 0 100%);--edge-ledge-b:polygon(0.0% 2.9px, 4.4% 3.8px, 6.7% 2.5px, 9.2% .2px, 13.6% 2.9px, 15.7% 2.1px, 19.0% 2.4px, 23.8% 1.8px, 27.8% 7px, 30.4% 4.3px, 32.5% 2.2px, 36.7% 3.8px, 39.3% 2.4px, 42.2% .9px, 46.5% 3.5px, 50.0% 2.5px, 53.3% .8px, 56.6% 1.5px, 61.2% 5.9px, 64.1% 3.8px, 66.2% 3px, 69.5% 4.6px, 74.0% 3.9px, 77.5% 2px, 81.1% 4.7px, 82.1% 1.5px, 87.7% 0px, 91.2% 1.3px, 92.3% 3.4px, 97.3% 1px, 100.0% 1.8px, 100% 100%, 0 100%);--edge-row:polygon(0.0% 3.5px, 5.3% 2.7px, 9.7% 1.4px, 12.5% 1.9px, 19.2% 3.2px, 23.7% .5px, 27.2% 2.7px, 31.9% 5.1px, 35.2% 2.2px, 40.4% 4.2px, 46.1% 2.7px, 50.7% .7px, 54.8% 0px, 57.9% 3.1px, 62.9% .8px, 69.3% 1.8px, 72.2% 4.1px, 77.4% 4.7px, 81.1% 4.3px, 86.8% 5px, 91.9% 4.1px, 95.1% 1.7px, calc(100% - 4px) 0, calc(100% - 1px) 24%, calc(100% - 6px) 47%, calc(100% - 2px) 72%, calc(100% - 7px) 100%, 0 100%);--edge-chip:polygon(0 5px, 2px 2px, 6px 0, 38% 1px, 72% 0, calc(100% - 7px) 0, calc(100% - 2px) 3px, 100% 8px, 100% calc(100% - 9px), calc(100% - 3px) calc(100% - 3px), calc(100% - 9px) 100%, 62% calc(100% - 1px), 30% 100%, 8px 100%, 2px calc(100% - 3px), 0 calc(100% - 8px));--edge-slab:polygon(0 0, calc(100% - 6px) 0, calc(100% - 2px) 22%, calc(100% - 7px) 47%, calc(100% - 1px) 71%, calc(100% - 5px) 100%, 0 100%);--edge-fault:polygon(0.0% 2.1px, 4.8% 2.5px, 7.9% 5.1px, 11.6% 2.5px, 14.6% 5px, 18.6% 6.6px, 21.9% 2.5px, 27.4% 2.3px, 30.8% 4.7px, 34.3% .5px, 39.1% .3px, 42.7% 3.1px, 47.3% 3.2px, 50.6% 1.9px, 54% 5.2px, 57.2% 5.5px, 61.5% 5.2px, 65.6% 3.9px, 69.6% 4.5px, 72.3% 2.3px, 77.7% 0px, 79.8% 1.3px, 83.5% 1.7px, 88.6% 1.8px, 91.9% 3.1px, 95.6% 5.1px, 100.0% 4.9px, 100% 14px, 100% calc(100% - 12px), 100.0% calc(100% - 4.6px), 97.1% calc(100% - 1.7px), 92.3% calc(100% - .5px), 87.5% calc(100% - 2.8px), 84.5% calc(100% - 1.8px), 81.3% calc(100% - .5px), 77.2% calc(100% - 3.9px), 72.8% calc(100% - 3.7px), 69.8% calc(100% - 4.3px), 64.7% calc(100% - 4.9px), 62.2% calc(100% - 5.9px), 58.7% calc(100% - 2.5px), 54.2% calc(100% - .9px), 50.6% calc(100% - 2.3px), 45.2% calc(100% - 1.5px), 43.0% calc(100% - .8px), 38.2% calc(100% - 4.7px), 33.9% calc(100% - 3.9px), 30.1% calc(100% - 1.7px), 26.5% calc(100% - 5.6px), 22.1% calc(100% - 4.7px), 18.8% calc(100% - 1.9px), 14.8% calc(100% - 2.2px), 11.0% calc(100% - 2.2px), 7.4% calc(100% - 2.3px), 3.9% calc(100% - .6px), 0.0% calc(100% - 3.8px), 0 calc(100% - 9px), 0 12px);--grain:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .3 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--lam:repeating-linear-gradient(180deg, #0000000d 0 1px, transparent 1px 11px, #00000009 11px 12px, transparent 12px 23px);--lit:linear-gradient(180deg, #ffffff29, #fff0 55%);--shade:linear-gradient(180deg, #0000 40%, #00000038)}[data-theme=light]{--surface-0:#f2e9d8;--surface-1:#faf4e6;--surface-2:#fffaf0;--surface-3:#e8dcc4;--text-primary:#1c140f;--text-secondary:#5a4a3b;--text-tertiary:#7a6552;--accent:#c93a08;--accent-hover:#a63200;--accent-text:#b32f00;--on-accent:#fffaf0;--magma:#c93a08;--magma-deep:#8a2a04;--flow:#0b7a68;--on-flow:#fffaf0;--vein:#0b7a68;--vein-deep:#075446;--on-vein:#fffaf0;--focus:#0b6b5b;--rule:#7a6552;--ochre:#8a5a00;--amber-fill:#f2a900;--ember:#c93a08;--ember-strong:#a63200;--on-ember:#1c140f;--oxide:#b32f00;--lock:var(--magma);--warning:var(--ochre);--sandstone:#7a5f35;--code-text:#d6c3a0;--border:#d9ccb2;--border-hover:#bfae8e;--shadow-sm:0 2px 0 0 #8f5f36, 0 8px 14px -8px #3c1e0a4d;--shadow-md:0 3px 0 0 #8f5f36, 0 7px 0 0 #4a4a52, 0 16px 24px -8px #3c1e0a4d;--shadow-lg:0 7px 0 0 #8a2a04, 0 20px 28px -8px #3c1e0a59;--shadow-glow:0 0 0 1px #c93a08, 0 0 30px 2px #c93a0859;--shadow-sunk:inset 0 4px 6px 0 #5a3c1e40}:root{--bbs-font:"VT323", ui-monospace, "SFMono-Regular", Menlo, monospace;--prose-font:"Atkinson Hyperlegible Next", system-ui, sans-serif;--font-display:var(--bbs-font);--font-mono:var(--bbs-font);--font-body:var(--prose-font);--edge-ledge:none;--edge-ledge-b:none;--edge-row:none;--edge-chip:none;--edge-slab:none;--edge-fault:none;--grain:none;--lam:none;--lit:none;--shade:none;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-glow:none;--shadow-sunk:none;--t-frame:var(--vein);--t-hot:var(--magma);--t-kw:var(--clay);--t-str:var(--sandstone-band);--t-num:var(--amber-fill);--moss-t:#7faf45}[data-theme=dark]{--surface-0:#241b15;--surface-1:#2b211a;--surface-2:#33281f;--surface-3:#3d3026;--on-vein:#241b15;--code-bg:#1a130f;--border:#4a3b2f}[data-theme=light]{--t-frame:#075e50;--t-hot:#a02e06;--t-kw:#8e3a16;--t-str:#6e5300;--t-num:#6e5300;--moss-t:#3e6b1e;--limestone:#8a7f6b;--sandstone-band:#b08431;--code-bg:#fffaf0;--code-text:#1c140f}.ln{height:1lh;display:block}.g{width:calc(var(--n) * 1ch);vertical-align:top;height:1lh;display:inline-block}.g-px{background:linear-gradient(var(--t) 50%, var(--b) 50%)}.g-h2{--lw:max(1.5px, .08em);background:linear-gradient(currentColor, currentColor) 0 38% / 100% var(--lw) no-repeat, linear-gradient(currentColor, currentColor) 0 64% / 100% var(--lw) no-repeat}.a-silt{color:var(--text-secondary)}.a-vein,.a-tag{color:var(--t-frame)}.a-label{color:var(--text-primary);background:var(--surface-0)}.a-lock{color:var(--t-hot)}.a-lock-note{color:var(--surface-0);background:var(--t-hot)}.art{font-family:var(--bbs-font);white-space:pre;font-size-adjust:none;line-height:1;display:block;overflow:hidden}.earth{margin:var(--space-16) 0 0;width:100%;font-size:.6vw}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--bbs-font);color:var(--text-primary);background:var(--surface-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100vh;font-size:20px;line-height:1.35;display:flex}body>main{flex:1 0 auto;width:100%}.footer{margin-top:auto}a{color:inherit;text-decoration:none}::selection{background:var(--t-frame);color:var(--surface-0)}:root{accent-color:var(--t-frame);color-scheme:dark}[data-theme=light]{color-scheme:light}body:not(:has(.bbs)) :where(main,article,section){font-size-adjust:.52}html{font-synthesis-weight:none}:where(body:not(:has(.bbs))) :where(main,article,section) :where(p,li,dd,blockquote,figcaption){font-family:var(--prose-font);line-height:1.6}:where(body:not(:has(.bbs))) :where(p,li) code{font-family:var(--bbs-font);color:var(--t-str)}:where(body:not(:has(.bbs))) :where(p,li) a{color:var(--t-frame);text-underline-offset:3px;text-decoration:underline}h1,h2{font-family:var(--bbs-font);text-transform:uppercase;letter-spacing:.04em;color:var(--t-str);font-weight:400;line-height:1}h3,h4{font-family:var(--bbs-font);letter-spacing:.04em;text-transform:uppercase;color:var(--text-primary);font-weight:400}.visually-hidden,.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.no-break,.nowrap{white-space:nowrap}.accent{color:var(--t-hot)}.nav{z-index:100;padding:var(--space-2) var(--space-6) 0;background:var(--surface-0);position:fixed;top:0;left:0;right:0}.nav-inner{max-width:1632px;padding:2px var(--space-4);border:3px double var(--t-frame);justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative}.nav-inner:before,.nav-inner:after,.frame:before,.frame:after,.layer:before,.layer:after{content:"";border:2px solid var(--t-frame);background:var(--surface-0);width:9px;height:9px;position:absolute}.nav-inner:before,.frame:before,.layer:before{top:-7px;left:-7px}.nav-inner:after,.frame:after,.layer:after{bottom:-7px;right:-7px}.nav-logo{align-items:center;gap:var(--space-2);font-family:var(--bbs-font);letter-spacing:.08em;text-transform:uppercase;color:var(--t-frame);font-size:1.75rem;display:flex}.nav-logo-img{object-fit:contain;width:28px;height:28px}.nav-end{align-items:center;gap:var(--space-6);display:flex}.nav-links{align-items:center;gap:var(--space-4);display:flex}.nav-links a{min-height:44px;font-family:var(--bbs-font);letter-spacing:.06em;text-transform:uppercase;color:var(--t-frame);align-items:center;padding:0 4px;font-size:1.25rem;display:flex}.nav-links a:hover,.nav-links a[aria-current=page]{background:var(--t-frame);color:var(--surface-0)}.nav-menu-btn{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);border:1px solid var(--t-frame);color:var(--t-frame);font-family:var(--bbs-font);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;font-size:1.125rem;display:none}.theme-toggle{border:1px solid var(--t-frame);width:36px;height:36px;color:var(--t-frame);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.nav-menu-btn:hover,.nav-menu-btn[aria-expanded=true],.theme-toggle:hover{background:var(--t-frame);color:var(--surface-0)}@media (width<=900px){.nav{padding:var(--space-2) var(--space-3) 0}.nav-inner{gap:var(--space-4);padding-left:var(--space-3);padding-right:var(--space-3)}.nav-logo{flex-shrink:0}.nav-end{gap:var(--space-3)}.theme-toggle{width:44px;height:44px}html:not(.js) .nav-inner,html:not(.js) .nav-end,html:not(.js) .nav-links{flex-wrap:wrap}html:not(.js) .nav-links{gap:0 var(--space-4)}html:not(.js) .nav{position:relative}.js .nav-menu-btn{display:inline-flex}.js .nav-links{max-height:calc(100dvh - 100%);padding:var(--space-2) var(--space-4) var(--space-4);background:var(--surface-0);border:3px double var(--t-frame);flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:calc(100% + 3px);left:-3px;right:-3px;overflow-y:auto}.js .nav.is-open .nav-links{display:flex}.js .nav-links a{border-bottom:1px dashed var(--t-frame);min-height:48px}.js .nav-links a:last-child{border-bottom:none}}.frame,.layer{border:3px double var(--t-frame);padding:var(--space-6);position:relative}.frame-title{background:var(--surface-0);color:var(--t-frame);font-family:var(--bbs-font);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:0 .6em;font-size:1.25rem;position:absolute;top:0;left:50%;translate:-50% -55%}.btn-primary,.btn-secondary,.btn-vein,.bbs-btn{min-height:44px;padding:0 var(--space-3);color:var(--t-frame);font-family:var(--bbs-font);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;font-size:1.375rem;display:inline-flex}.btn-primary:before,.btn-secondary:before,.btn-vein:before{content:"[ "}.btn-primary:after,.btn-secondary:after,.btn-vein:after{content:" ]"}.btn-primary,.bbs-btn.is-hot{background:var(--t-hot);color:var(--on-accent)}.btn-secondary:hover,.btn-secondary:focus-visible,.btn-vein:hover,.btn-vein:focus-visible,.bbs-btn:hover,.bbs-btn:focus-visible{background:var(--t-frame);color:var(--surface-0);outline:none}.btn-primary:hover,.btn-primary:focus-visible,.bbs-btn.is-hot:hover,.bbs-btn.is-hot:focus-visible{background:var(--text-primary);color:var(--surface-0);outline:none}.hero-actions{gap:var(--space-3);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.install-box{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:520px;padding:var(--space-3) 0;border-top:1px dashed var(--t-frame);border-bottom:1px dashed var(--t-frame);display:flex}.install-box code{font-family:var(--bbs-font);color:var(--text-primary);font-size:1.375rem}.install-box code:before{content:"> ";color:var(--t-frame)}.install-box code .pkg{color:var(--text-primary);white-space:nowrap}.install-copy{min-height:44px;padding:0 var(--space-3);color:var(--t-frame);font-family:var(--bbs-font);text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:1.25rem}.install-copy:hover{background:var(--t-frame);color:var(--surface-0)}.tag{font-family:var(--bbs-font);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;padding:0 2px;font-size:1.125rem;display:inline-flex}.tag:before{content:"["}.tag:after{content:"]"}.tag-glyph{letter-spacing:0}.depth-ref{text-transform:none}.tag-locked{color:var(--t-hot)}.tag-inherited{color:var(--t-frame)}.tag-delegated{color:var(--t-num)}.tag-override{color:var(--text-primary)}.inherit-tree{font-family:var(--bbs-font);flex-direction:column;gap:2px;display:flex}ol.inherit-tree{list-style:none}.itrow{font-family:var(--bbs-font);align-items:baseline;gap:var(--space-2);background:var(--band,var(--topsoil));flex-wrap:wrap;padding:8px 12px;font-size:1.25rem;display:flex}.itrow.d0{--band:var(--topsoil)}.itrow.d1{--band:var(--clay);margin-left:2ch}.itrow.d2{--band:var(--sandstone-band);margin-left:4ch}.itrow.d3{--band:var(--limestone);margin-left:6ch}.idepth,.inode,.imeta{background:var(--surface-0);color:var(--text-primary);padding:0 .4em}.inode{text-transform:uppercase;letter-spacing:.04em}.imeta{color:var(--text-secondary);margin-left:auto}@media (width<=480px){.itrow.d1{margin-left:1ch}.itrow.d2{margin-left:2ch}.itrow.d3{margin-left:3ch}}.inherit-config{margin-top:var(--space-4);font-family:var(--bbs-font);flex-direction:column;display:flex}.icfg{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);padding:var(--space-2) 0;border-bottom:1px dashed var(--t-frame);flex-wrap:wrap;font-size:1.25rem;display:flex}.ikey{color:var(--text-secondary)}.ival{color:var(--t-frame)}.icfg-locked .ival,.icfg-locked .ikey{color:var(--t-hot)}.itag{color:var(--text-secondary)}.isolation-stack{font-family:var(--bbs-font);flex-direction:column;gap:6px;display:flex}.isolation-face{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4);border:1px dashed var(--t-frame);flex-wrap:wrap;display:flex}.iso-rls .isolation-face{background:color-mix(in srgb, var(--sandstone-band) 14%, transparent)}.iso-schema .isolation-face{background:color-mix(in srgb, var(--clay) 14%, transparent)}.iso-db .isolation-face{background:color-mix(in srgb, var(--topsoil) 18%, transparent)}.isolation-row.is-active .isolation-face{border:2px solid var(--t-hot)}.isolation-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary);font-size:1.5rem}.isolation-note{color:var(--text-secondary);font-size:1.125rem;display:block}.isolation-mark{text-transform:uppercase;letter-spacing:.06em;color:var(--t-frame);white-space:nowrap;font-size:1.125rem}.isolation-row.is-active .isolation-mark{color:var(--t-hot)}.code-block{border:3px double var(--t-frame);background:var(--code-bg);position:relative}.code-block-header{padding:var(--space-2) var(--space-4);border-bottom:1px dashed var(--t-frame)}.code-block-filename{font-family:var(--bbs-font);letter-spacing:.06em;text-transform:uppercase;color:var(--t-frame);font-size:1.125rem}.code-block pre{padding:var(--space-4);font-family:var(--bbs-font);margin:0;font-size:1.125rem;line-height:1.35;overflow-x:auto}.code-block .astro-code,.post-body .astro-code{--astro-code-color-text:var(--text-primary);--astro-code-color-background:transparent;--astro-code-token-constant:var(--t-num);--astro-code-token-string:var(--t-str);--astro-code-token-string-expression:var(--t-str);--astro-code-token-comment:var(--text-secondary);--astro-code-token-keyword:var(--t-kw);--astro-code-token-parameter:var(--text-primary);--astro-code-token-function:var(--t-frame);--astro-code-token-punctuation:var(--text-secondary);--astro-code-token-link:var(--t-frame);font-family:var(--bbs-font);background:0 0!important}.kw{color:var(--t-kw)}.str{color:var(--t-str)}.num{color:var(--t-num)}.fn{color:var(--t-frame)}.cm{color:var(--text-secondary)}.cta{padding:var(--space-16) var(--space-6)}.cta-inner{justify-content:space-between;align-items:baseline;gap:var(--space-8);flex-wrap:wrap;max-width:1200px;margin:0 auto;display:flex}.cta h2{font-size:clamp(2.25rem,5vw,3.5rem)}.rock-table{margin:var(--space-6) 0;font-family:var(--bbs-font);font-size:1.25rem;line-height:1.35}.rock-head,.rock-row{grid-template-columns:minmax(0, 1.15fr) repeat(var(--rock-cols,2), minmax(0, 1fr));gap:var(--space-4);display:grid}.rock-head{padding:0 var(--space-3) var(--space-2);border-bottom:1px dashed var(--t-frame);letter-spacing:.08em;text-transform:uppercase;color:var(--t-frame);font-size:1.125rem}.rock-rows{flex-direction:column;display:flex}.rock-row{padding:var(--space-2) var(--space-3);border-bottom:1px dashed var(--border)}.rock-row:hover{background:color-mix(in srgb, var(--t-frame) 10%, transparent)}.rock-feat{color:var(--text-primary)}.rock-good{color:var(--t-frame)}.rock-neutral{color:var(--t-num)}.rock-bad,.rock-plain{color:var(--text-secondary)}.rock-cell-label{display:none}@media (width<=640px){.rock-head{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rock-row{gap:var(--space-1) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.rock-feat{grid-column:1/-1}.rock-cell-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:1rem;display:block}}.footer{padding:var(--space-6);border-top:3px double var(--t-frame);font-family:var(--bbs-font);font-size:1.375rem}.footer-inner{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;max-width:1680px;margin:0 auto;display:flex}.footer-meta,.footer-links a{color:var(--text-secondary)}.footer-meta:before{content:"NO CARRIER  ";color:var(--t-frame)}.footer-meta a,.footer-links a:hover{color:var(--text-primary)}.footer-links{align-items:center;gap:var(--space-6);display:flex}.fade-in{transition:transform var(--duration-slow) var(--ease-out)}.js .fade-in{transform:translateY(14px)}.js .fade-in.visible{transform:translateY(0)}.fade-in-delay-1{transition-delay:.1s}.fade-in-delay-2{transition-delay:.2s}.fade-in-delay-3{transition-delay:.3s}:focus-visible{outline:2px solid var(--t-frame);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.fade-in{transform:none!important}*,:before,:after{animation:none!important}}
