@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/69bc46473dfaa9fa-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/bf12ccbafdbe00b7-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/da522a9b642f99ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/8a053b136321ec99-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/2a8fe189f1a8dd0c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/c214ffb7f5362987-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_47a99b{font-family:Archivo,Archivo Fallback}.__variable_47a99b{--font-display:"Archivo","Archivo Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_9f0762{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_9f0762{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--bg:#F2EDE0;--bg-deep:#E5DDC8;--ink:#0F1B27;--ink-2:#3A4656;--ink-3:#6F7886;--line:rgba(15,27,39,0.13);--line-2:rgba(15,27,39,0.3);--ember:#A86400;--ember-2:#E0A12A;--flag:#F0C43C;--flag-ink:#0F1B27;--lagoon:#2F6B72;--ok:#2E7559;--bad:#B23A2F;--screen-bg:#0D1823;--tile-bg:#FBF8F0;--checker:repeating-conic-gradient(var(--flag) 0 25%,var(--ink) 0 50%) 0 0 /10px 10px;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0B141C;--bg-deep:#060C12;--ink:#EFE8D6;--ink-2:#AEB4BC;--ink-3:#737D89;--line:rgba(239,232,214,0.12);--line-2:rgba(239,232,214,0.26);--ember:#E8BE45;--ember-2:#F2D27A;--flag:#E8BE45;--flag-ink:#0B141C;--lagoon:#5E9EA3;--ok:#6BB892;--bad:#E06A5E;--screen-bg:#060C12;--tile-bg:#111D28;--checker:repeating-conic-gradient(var(--flag) 0 25%,#060C12 0 50%) 0 0 /10px 10px;color-scheme:dark}}:root[data-theme=dark]{--bg:#0B141C;--bg-deep:#060C12;--ink:#EFE8D6;--ink-2:#AEB4BC;--ink-3:#737D89;--line:rgba(239,232,214,0.12);--line-2:rgba(239,232,214,0.26);--ember:#E8BE45;--ember-2:#F2D27A;--flag:#E8BE45;--flag-ink:#0B141C;--lagoon:#5E9EA3;--ok:#6BB892;--bad:#E06A5E;--screen-bg:#060C12;--tile-bg:#111D28;--checker:repeating-conic-gradient(var(--flag) 0 25%,#060C12 0 50%) 0 0 /10px 10px;color-scheme:dark}:root{--font-sans:var(--font-display)}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink)}html{scroll-behavior:smooth}body{font-family:var(--font-sans),system-ui,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}a{color:inherit;text-decoration:none}button{font:inherit}pre{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}h1,h2,h3{margin:0;font-weight:500;letter-spacing:-.02em;text-wrap:balance}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 5px var(--flag)}.mono{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;letter-spacing:0}.mono,.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dim{color:var(--ink-3)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}html{scroll-behavior:auto}.scale .base{stroke-dashoffset:0}}.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:50;opacity:.04;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain .9s steps(4) infinite}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .grain{mix-blend-mode:screen;opacity:.07}}:root[data-theme=dark] .grain{mix-blend-mode:screen;opacity:.07}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(-1%,-1%)}to{transform:translate(2%,2%)}}::selection{background:var(--flag);color:var(--flag-ink)}@view-transition{navigation:auto}::view-transition-new(root),::view-transition-old(root){animation-duration:.28s}::view-transition-new(screen),::view-transition-old(screen){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}.rise{animation:rise .9s cubic-bezier(.2,.7,.1,1) both}.rise.d1{animation-delay:.08s}.rise.d2{animation-delay:.18s}.rise.d3{animation-delay:.3s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.fade{animation:fade 1.2s ease-out .2s both}@keyframes fade{0%{opacity:0}to{opacity:1}}.rule-2{height:6px;background:var(--checker);background-size:6px 6px;border-top:1px solid var(--ink);opacity:.9}.masthead,.rule-2{display:block}.masthead .row{display:flex;align-items:center;gap:28px;padding:18px 28px 16px;max-width:1560px;margin:0 auto}.ident{display:inline-flex;align-items:center;gap:12px;flex:none}.ident .text{display:grid;grid-gap:3px;gap:3px}.seal{display:block;width:34px;height:34px;flex:none;animation:turn 90s linear infinite;transform-origin:50% 50%}.seal .ring{fill:var(--flag);stroke:var(--ink);stroke-width:1.4}.seal .inner{fill:none}.seal .inner,.seal .ticks{stroke:#0F1B27;stroke-width:.8}.seal .ltr{font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:125%;font-size:11px;fill:#0F1B27;animation:turn 90s linear infinite reverse;transform-origin:50% 50%}.seal.postgres .ring{stroke:var(--ink)}.seal.memory .ring{stroke-dasharray:2 1.6}@keyframes turn{to{transform:rotate(1turn)}}.wordmark{position:relative;display:inline-block;font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:850;font-stretch:125%;font-style:normal;font-size:25px;line-height:1;letter-spacing:.01em;text-transform:uppercase;color:var(--ink);white-space:nowrap;width:max-content}.wordmark:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:3px;background:var(--flag);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.2,.7,.2,1)}.ident:focus-visible .wordmark:after,.ident:hover .wordmark:after{transform:scaleX(1)}.sub{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);line-height:1.2}.nav{display:flex;align-items:center;gap:4px;margin-left:auto}.nav a{display:inline-flex;align-items:baseline;gap:7px;padding:7px 12px;font-size:14px;font-weight:600;color:var(--ink-2);white-space:nowrap;transition:color .15s,background .15s}.nav a:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.nav .no{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0}.nav a[aria-current=page]{color:var(--flag-ink);background:var(--flag)}.nav a[aria-current=page] .no{color:var(--flag-ink)}@media (max-width:700px){.masthead .row{flex-wrap:wrap;gap:6px 16px;padding:12px 16px 0}.wordmark{font-size:24px}.nav{flex:1 0 100%;margin:4px -16px 0;padding:0 12px 10px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:18px}.nav::-webkit-scrollbar{display:none}}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:6px;border:1px solid var(--line-2);background:var(--tile-bg);color:var(--ink);font-size:13.5px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.btn:hover{border-color:var(--ink-3);transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:default;transform:none}.btn.primary{background:var(--flag);color:var(--flag-ink);border:1.5px solid var(--ink);border-radius:0;font-weight:700;box-shadow:2px 2px 0 var(--ink)}.btn.primary:hover{background:var(--flag);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}.btn.primary:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn.sm{padding:6px 11px;font-size:12.5px}.btn .arr{transition:transform .15s}.btn:hover .arr{transform:translateX(2px)}.page{padding:28px;max-width:1560px;margin:0 auto}.top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:10px 0 24px;flex-wrap:wrap}.top h1{font-size:46px;font-weight:850;font-stretch:125%;letter-spacing:-.02em;line-height:.95;text-transform:uppercase}.top p{margin:10px 0 0;font-size:15px;color:var(--ink-2);max-width:58ch;line-height:1.5}.sec-h{display:flex;justify-content:space-between;gap:16px;padding:6px 0 12px;border-bottom:1.5px solid var(--ink);margin-bottom:22px}.sec-h,.sec-h h2{align-items:baseline}.sec-h h2{display:inline-flex;gap:0;font-size:15px;font-weight:800;font-stretch:125%;text-transform:uppercase;letter-spacing:.02em;color:var(--ink)}.sec-h .count{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;color:var(--ink-3);font-size:12px;text-transform:none;letter-spacing:0;margin-left:10px}.quiet{padding:24px 0;font-size:13px}.quiet,.sub-h{color:var(--ink-3)}.sub-h{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin:16px 0 8px}.ledger,.ledger .row{display:grid;min-width:0}.ledger .row{grid-template-columns:72px 96px 64px minmax(0,1fr) 92px 56px;grid-gap:14px;gap:14px;align-items:baseline;padding:11px 10px;margin:0 -10px;border-bottom:1px solid var(--line);color:var(--ink);transition:background .15s}.ledger a.row:hover,a.ledger .row:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.ledger .row:has(.stamp.held),.ledger .row:has(.stamp.refused){box-shadow:inset 2px 0 0 color-mix(in srgb,var(--bad) 70%,transparent)}.ledger .head{position:relative;padding:4px 10px 8px;border-bottom:1px solid var(--line-2);margin-bottom:4px;box-shadow:none!important}.ledger .head:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--line)}.ledger .row.head>*{text-transform:uppercase;letter-spacing:.08em;font-weight:500;font-family:inherit}.ledger .row.head>*,.ledger .t{font-size:11px;color:var(--ink-3);white-space:nowrap}.ledger .t{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0}.ledger .no{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}.ledger .kind{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);white-space:nowrap}.ledger .what{font-size:14px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.ledger .what.mono{font-size:12.5px}.ledger .score,.ledger .st{white-space:nowrap}.ledger .score{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--ink-2)}.ledger .row.head .score,.ledger .score{text-align:right}.ledger .empty{grid-column:1/-1;padding:18px 0;color:var(--ink-3);font-size:13px;border-bottom:1px solid var(--line)}@media (max-width:700px){.ledger .head{display:none}.ledger .row{grid-template-columns:auto auto 1fr auto;gap:4px 12px;padding:10px 0 10px 10px;margin:0}.ledger .t{grid-column:1;grid-row:1}.ledger .no{grid-column:2;grid-row:1}.ledger .kind{grid-column:3;grid-row:1}.ledger .score{grid-column:4;grid-row:1}.ledger .what{grid-column:1/4;grid-row:2}.ledger .st{grid-column:4;grid-row:2;text-align:right}}.stamp{display:inline-block;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:10.5px;font-weight:500;line-height:1.3;text-transform:uppercase;letter-spacing:.12em;text-indent:.12em;color:var(--ink-3);border:1.5px solid;border-radius:3px;padding:2px 7px;transform:rotate(-6deg);opacity:.92;mix-blend-mode:multiply;white-space:nowrap;vertical-align:middle;text-align:center}.stamp.cleared{color:var(--ok)}.stamp.review{color:var(--ember)}.stamp.held,.stamp.refused{color:var(--bad)}.stamp.held:not(.lg),.stamp.refused:not(.lg){background:color-mix(in srgb,var(--bad) 9%,transparent)}.stamp.lg{border-width:2px;font-weight:600;font-size:13px;padding:4px 11px 3px;animation:press .22s cubic-bezier(.2,.7,.2,1) both}.stamp.lg .at{display:block;font-size:9.5px;letter-spacing:.08em;text-indent:.08em;text-transform:none;margin-top:1px;opacity:.85}@keyframes press{0%{opacity:0;transform:rotate(-6deg) scale(1.12)}to{opacity:.92;transform:rotate(-6deg) scale(1)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .stamp{mix-blend-mode:normal}}:root[data-theme=dark] .stamp{mix-blend-mode:normal}.scale{display:block;width:100%;height:16px;overflow:visible}.scale .base{stroke:var(--line-2);stroke-width:1;stroke-dasharray:800;stroke-dashoffset:800;animation:draw .7s cubic-bezier(.2,.7,.2,1) .05s forwards}.scale .tick{stroke:var(--line-2);stroke-width:1;vector-effect:non-scaling-stroke}.scale .flag{color:var(--ink-3);animation:fade .3s ease-out .45s both}.scale .flag.medium{color:var(--ember)}.scale .flag.high{color:var(--bad)}.scale .flag line{stroke:currentColor;stroke-width:1.5;vector-effect:non-scaling-stroke}.scale .flag polygon{fill:currentColor}.scale .cap{fill:var(--ok);animation:fade .3s ease-out .6s both}@keyframes draw{to{stroke-dashoffset:0}}.certificate{position:relative;border:1px solid var(--line-2);border-radius:0;background:var(--tile-bg);padding:0 22px 22px;min-width:0}.certificate:before{content:"";display:block;height:4px;background:var(--flag);margin:-1px -23px 20px}.cert-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.cert-head>div{min-width:0}.cert-head .stamp.lg{flex:none;margin:4px 6px 0 0}.cert-title{font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:125%;font-size:22px;text-transform:uppercase;letter-spacing:0;line-height:1.05;color:var(--ink)}.cert-meta{margin:6px 0 0;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;color:var(--ink-3);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.cert-meta a{border-bottom:1px solid var(--line-2)}.cert-meta a:hover{border-color:var(--ember)}.cert-say{margin:12px 0 0;font-size:16.5px;line-height:1.45;color:var(--ink);max-width:56ch;text-wrap:balance}.cert-sec{padding:16px 0 2px;margin-top:16px;border-top:1px solid var(--line);min-width:0}.cert-sec>.lbl,.cert-sec>h2{display:flex;align-items:baseline;gap:10px;margin:0 0 10px;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.cert-sec>.lbl .count,.cert-sec>h2 .count{text-transform:none;letter-spacing:0}.cert-sec>p{margin:0 0 8px}.cert-sec>p:last-child{margin-bottom:0}.cert-empty{display:grid;place-items:center;min-height:300px;border-style:dashed;padding:22px;color:var(--ink-3);font-size:13px;text-align:center}.cert-empty:before{position:absolute;left:0;right:0;top:0;margin:4px 0 0}@media (max-width:560px){.cert-head{flex-wrap:wrap}.cert-head .stamp.lg{order:-1;margin:0 0 6px}.certificate{padding:0 16px 16px}.certificate:before{margin:-1px -17px 16px}}.declaration{display:grid;grid-gap:22px;gap:22px}.declaration .field>span{display:flex;align-items:baseline;gap:8px}.declaration .field>span .n,.declaration .n{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;color:var(--ink-3);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.declaration .field>span .lbl{color:var(--ink-2)}.exhibits{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font-size:12.5px}.exhibits .lbl{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-right:2px}.exhibits a,.exhibits button{background:none;border:0;padding:0;color:var(--ink-2);cursor:pointer;border-bottom:1px solid var(--line-2);transition:color .15s,border-color .15s}.exhibits a:hover,.exhibits button:hover{color:var(--ink);border-color:var(--ember)}.record{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:40px;gap:40px;align-items:start}.margin{display:block;font-size:12.5px;min-width:0}.margin h2{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin:22px 0 4px}.margin h2:first-child{margin-top:0}.margin .note{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}.margin .note .k,.margin dt{color:var(--ink-3);flex:none;margin:0}.margin .note .v,.margin dd{margin:0;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;text-align:right;overflow-wrap:anywhere;min-width:0;letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.margin dl{margin:0}.margin a{border-bottom:1px solid var(--line-2)}.margin a:hover{border-color:var(--ember)}.margin .same{list-style:none;margin:0;padding:0}.margin .same li{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0}.margin .same li .stamp{flex:none}.margin .same li a{border-bottom:0}.margin .same li a:hover{color:var(--ember)}.margin .quiet{padding:10px 0}@media (max-width:980px){.record{grid-template-columns:1fr;gap:28px}}.findings,.reasons{list-style:none;margin:0;padding:0;font-size:13.5px;line-height:1.5;color:var(--ink-2);max-width:68ch}.findings li,.reasons li{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line)}.findings li:last-child,.reasons li:last-child{border-bottom:0}.findings .m,.reasons .m{width:1ch;color:var(--ink-3)}.findings .l,.findings .m,.reasons .l,.reasons .m{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;flex:none}.findings .l,.reasons .l{font-size:12.5px;color:var(--ink);min-width:12ch}.findings .v,.reasons .v{flex:none;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);min-width:6ch}.findings .d,.reasons .d{min-width:0;overflow-wrap:anywhere}.findings .d q,.reasons .d code{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12.5px;color:var(--ink);quotes:"\201C" "\201D"}.findings .high .m,.findings .high .v,.reasons .high .m,.reasons .high .v{color:var(--bad)}.findings .medium .m,.findings .medium .v,.reasons .medium .m,.reasons .medium .v{color:var(--ember)}.findings .decoded .v:after{content:" · decoded";text-transform:none;letter-spacing:0}.reasons .path{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;color:var(--ink-3)}@media (max-width:560px){.findings li,.reasons li{flex-wrap:wrap}.findings .d,.reasons .d{flex:1 0 100%;padding-left:calc(1ch + 10px)}}mark[data-rule]{background:color-mix(in srgb,var(--flag) 28%,transparent);border-bottom:1.5px solid var(--ember);border-radius:0;color:inherit;padding:0}mark[data-severity=high]{background:color-mix(in srgb,var(--bad) 11%,transparent);border-bottom-color:var(--bad)}mark[data-severity=info],mark[data-severity=low]{background:color-mix(in srgb,var(--ink-3) 18%,transparent);border-bottom-color:var(--ink-3)}.envelope{margin:0;background:var(--screen-bg);color:#EFE8D6;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12.5px;line-height:1.55;border-radius:0;padding:14px 16px;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);border-left:2px solid color-mix(in srgb,var(--flag) 70%,transparent)}.detail{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:40px;gap:40px;align-items:start}@media (max-width:980px){.detail{grid-template-columns:1fr;gap:28px}}.side{display:grid;grid-gap:30px;gap:30px}.blk h2{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:500;padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:14px}.blk p{margin:0 0 8px;line-height:1.5}.blk p:last-child{margin-bottom:0}.blk ul{margin:6px 0 0;padding-left:16px}.blk li{margin:3px 0}.kv{display:grid;grid-template-columns:auto 1fr;grid-gap:7px 14px;gap:7px 14px;font-size:13.5px;margin:0}.kv dt{color:var(--ink-3);margin:0}.kv dd{margin:0;text-align:right;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.kv dd a{border-bottom:1px solid var(--line-2)}.kv dd a:hover{border-color:var(--ember)}.kv .copy{background:none;border:1px solid var(--line);border-radius:4px;padding:0 7px;font-size:11.5px;line-height:1.5;color:var(--ink-2);cursor:pointer;margin-left:8px}.kv .copy:hover{color:var(--ink);border-color:var(--ink-3)}.quote{margin-top:12px;padding-left:14px;border-left:1px solid var(--ember);color:var(--ink-2);font-size:14px;line-height:1.55}.held-banner{border:1px solid color-mix(in srgb,var(--bad) 45%,transparent);color:var(--bad);border-radius:6px;padding:12px 16px;margin-bottom:16px;font-size:13.5px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:40px;gap:40px;align-items:start}@media (max-width:980px){.split{grid-template-columns:1fr;gap:28px}}.form{display:grid;grid-gap:22px;gap:22px}.actions{gap:14px;align-items:center;font-size:13px}.actions,.presets{display:flex;flex-wrap:wrap;color:var(--ink-3)}.presets{gap:6px 14px;font-size:12.5px}.presets button{background:none;border:0;padding:0;color:var(--ink-2);cursor:pointer;border-bottom:1px solid var(--line-2)}.presets button:hover{color:var(--ink);border-color:var(--ember)}.field{display:grid;grid-gap:6px;gap:6px}.field>span{font-size:12px;color:var(--ink-3)}.field input,.field select,.field textarea{width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line-2);border-radius:0;padding:8px 0;font:inherit;font-size:14.5px;transition:border-color .15s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 2px 0 var(--flag)}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:22px}.field select:disabled{opacity:.4}.field textarea{resize:vertical;field-sizing:content;min-height:3lh;max-height:16lh}.field input.code,.field textarea.code{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:13px}.field small{font-size:12px;color:var(--ink-3)}.field small.error{color:var(--bad)}.field.inline{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2)}.field input[type=checkbox],.field input[type=range]{width:auto;accent-color:var(--ink)}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px}@media (max-width:640px){.grid2{grid-template-columns:1fr}}.seg{display:inline-flex;gap:14px;font-size:13px}.seg a,.seg button{padding:0;border:0;background:none;color:var(--ink-3);cursor:pointer}.seg a[aria-current=page],.seg button[aria-pressed=true]{color:var(--ink);font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--flag);text-decoration-color:var(--flag);text-decoration-thickness:3px;text-underline-offset:6px}.seg .count{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0;margin-left:5px}.mode-pill{border:1px solid;border-radius:999px;padding:1px 9px;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em}.mode-pill.memory{color:var(--ink-2);border-style:dashed}.mode-pill.postgres{color:var(--ember)}.chip{display:inline-block;box-sizing:border-box;height:20px;line-height:18px;min-width:64px;text-align:center;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11.5px;letter-spacing:.03em;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:0 8px;white-space:nowrap}.chip:hover{border-color:var(--ember)}.chip.high{color:var(--bad)}.chip.medium{color:var(--ember)}.chip.info,.chip.low{color:var(--ink-3)}.state{display:inline-flex;align-items:center;gap:7px}.tbl{overflow-x:auto}.prose table,.tbl table{width:100%;border-collapse:collapse;font-size:13.5px;margin:12px 0 18px}.prose th,.tbl th{text-align:left;font-weight:500;color:var(--ink-3);font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:6px 12px 10px 0;border-bottom:1px solid var(--line-2);white-space:nowrap}.prose td,.tbl td{padding:11px 12px 11px 0;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-2)}.prose td:first-child,.tbl td:first-child{color:var(--ink)}.prose .r,.tbl .r{text-align:right}.prose td.mono,.tbl .mono{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.notice{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:10px 12px;border-radius:6px;font-size:13.5px;line-height:1.45;border:1px solid var(--line);color:var(--ink-2);background:var(--tile-bg);animation:pop .14s ease-out}.notice.error{border-color:color-mix(in srgb,var(--bad) 45%,transparent);color:var(--ink);background:color-mix(in srgb,var(--bad) 10%,var(--tile-bg))}.notice.done{border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 8%,var(--tile-bg));color:var(--ink)}.busy:before,.notice.busy:before{content:"";width:10px;height:10px;margin-top:4px;border-radius:50%;border:1.5px solid var(--ink-3);border-top-color:var(--ember);animation:spin .8s linear infinite;flex:none}.busy{display:inline-flex;align-items:center;gap:8px;color:var(--ink-3);font-size:13px}.busy:before{margin-top:0}.notice span{flex:1 1}.notice-x{background:none;border:0;color:var(--ink-3);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.notice-x:hover{color:var(--ink)}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(1turn)}}.prose{max-width:720px;padding-top:26px;min-width:0}.prose h1{font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:850;font-stretch:125%;font-size:46px;text-transform:uppercase;letter-spacing:-.02em;line-height:.95;margin-bottom:14px}.prose .lede{font-size:16.5px;color:var(--ink-2);line-height:1.55;margin-bottom:30px}.prose h2{position:relative;font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:112%;font-size:26px;letter-spacing:-.015em;margin:40px 0 12px;padding-top:24px;border-top:1px solid var(--line-2);scroll-margin-top:24px}.prose h2 .sn{display:inline-block;margin-right:12px;vertical-align:.3em;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;font-weight:500;letter-spacing:0;color:var(--ink-3)}.prose h3{font-family:var(--font-sans),sans-serif;font-weight:600;font-size:16.5px;letter-spacing:-.01em;margin:22px 0 8px}.prose li,.prose p{color:var(--ink-2);line-height:1.6;max-width:66ch}.prose p{margin:0 0 12px}.prose b{color:var(--ink);font-weight:500}.prose ol,.prose ul{padding-left:20px;margin:8px 0 14px}.prose li{margin:4px 0}.prose code{color:var(--ink)}.prose code,.prose pre{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12.5px}.prose pre{background:var(--screen-bg);color:#EFE8D6;border:1px solid var(--line);border-left:2px solid color-mix(in srgb,var(--flag) 70%,transparent);border-radius:0;padding:12px 14px;overflow-x:auto;max-width:100%;white-space:pre-wrap;word-break:break-word;line-height:1.55;margin:10px 0 14px}.prose pre code{color:inherit;font-size:inherit}.prose a:not(.btn){border-bottom:1px solid var(--line-2)}.prose a:not(.btn):hover{border-color:var(--ember)}.prose .defs{display:grid;grid-template-columns:130px 1fr;grid-gap:8px 16px;gap:8px 16px;margin:12px 0 0}.prose .defs dt{color:var(--ink);font-weight:500;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12.5px}.prose .defs dd{margin:0;color:var(--ink-2);line-height:1.5}.method{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);border-radius:4px;padding:2px 6px}.toc{list-style:none;margin:0 0 34px;padding:0;font-size:13.5px;max-width:66ch}.toc li{display:flex;align-items:baseline;gap:8px;padding:4px 0;color:var(--ink-2)}.toc li:after{content:"";flex:1 1;min-width:24px;margin:0 6px;border-bottom:1px dotted var(--line-2);transform:translateY(-4px)}.toc .n{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:0;color:var(--ink-3);min-width:3ch;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.toc a{border-bottom:0;color:var(--ink)}.toc a:hover{color:var(--ember)}.toc .pg{order:1;font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;font-size:11px;letter-spacing:0;color:var(--ink-3)}@media (max-width:700px){.prose h1{font-size:34px}.prose h2{font-size:24px}.prose table{display:block;overflow-x:auto}.prose .defs{grid-template-columns:1fr;gap:2px}.prose .defs dd{margin-bottom:10px}}.colophon{position:relative;margin-top:88px;padding:24px 28px 30px;background:#0F1B27;color:#8E97A3;font-size:12px;line-height:1.7}.colophon:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--flag)}.colophon .row{display:flex;flex-wrap:wrap;align-items:baseline;max-width:1560px;margin:0 auto}.colophon .nm{font-family:var(--font-display),"Archivo",system-ui,sans-serif;font-weight:850;font-stretch:125%;text-transform:uppercase;font-size:14px;color:#EFE8D6;letter-spacing:.02em}.colophon .sep{padding:0 7px;color:#4F5A67}.colophon a{color:#D9D3C4;border-bottom:1px solid #3a4656;transition:border-color .15s,color .15s}.colophon a:hover{color:#FFFFFF;border-color:var(--flag)}.colophon .num{font-family:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;letter-spacing:0;color:#D9D3C4}@media (max-width:700px){.page{padding:20px 16px}.sec-h{flex-wrap:wrap;align-items:center;row-gap:8px}.sec-h h2{flex:1 0 100%}.sec-h .count{margin-left:10px}.seg{flex-wrap:wrap;gap:6px 14px}.top h1{font-size:32px}.nav a{padding:6px 10px}.colophon{margin-top:56px;padding:20px 16px 26px}}