@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.d8e4bce2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.a62025f2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_16eb964b-module__TINe3G__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_16eb964b-module__TINe3G__variable{--ob-sans:"DM Sans","DM Sans Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.4b5f6188.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.d8302362.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.e316a4a9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.f2813c2a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.dm_mono_b5f20a3d-module__a6RTTq__className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.dm_mono_b5f20a3d-module__a6RTTq__variable{--ob-mono:"DM Mono","DM Mono Fallback"}
.ob{--bv-10:#f2f7ff;--bv-50:#e8f2fd;--bv-100:#c8e0fb;--bv-400:#2e84ef;--bv-500:#1e66e5;--bv-600:#1656c5;--bv-700:#103a8c;--bv-800:#0c2865;--gv-50:#d9faed;--gv-500:#10c27b;--gv-600:#0d9b62;--gv-700:#0a7449;--go-50:#fef9e6;--go-500:#e5a000;--go-600:#b77f00;--go-700:#895f00;--pu-50:#f4f1fb;--pu-100:#e7e0f6;--pu-500:#6b4fbb;--pu-600:#573f9a;--pu-700:#43307a;--re-50:#fde8e8;--re-100:#fac2c1;--re-200:#f79c9a;--re-500:#ec221f;--re-600:#bd1b19;--re-700:#8e1413;--n-0:#fff;--n-50:#f9fafb;--n-100:#f3f4f6;--n-150:#eceef1;--n-200:#e4e7eb;--n-300:#d0d5dd;--n-400:#98a2b3;--n-500:#667085;--n-600:#475467;--n-700:#344054;--n-800:#1d2939;--n-900:#101828;--f-sans:var(--ob-sans),"DM Sans",-apple-system,BlinkMacSystemFont,sans-serif;--f-mono:var(--ob-mono),"DM Mono","Fira Code",monospace;--r-lg:8px;--r-xl:10px;--r-2xl:12px;--r-full:9999px;--sh-1:0px 1px 2px #1018280d;--sh-2:0px 1px 2px #1018280a,0px 2px 6px #1018280f;--ease:cubic-bezier(.16,1,.3,1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100dvh;font-family:var(--f-sans);color:var(--n-900);background:var(--n-50);-webkit-font-smoothing:antialiased;text-align:left;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);font-size:14px;line-height:1.5}.ob *,.ob :before,.ob :after{box-sizing:border-box;border:0 solid;margin:0;padding:0}.ob h1,.ob h2,.ob h3,.ob h4{font-size:inherit;font-weight:inherit}.ob ul,.ob ol{list-style:none}.ob button,.ob input,.ob select,.ob textarea{font:inherit;color:inherit;letter-spacing:inherit;background:0 0}.ob button{cursor:pointer}.ob button:disabled{cursor:not-allowed}.ob svg{vertical-align:middle;display:inline-block}.ob .page{max-width:960px;margin:0 auto;padding:44px 32px 56px}.ob .page.with-rail{max-width:1240px}.ob a{color:var(--bv-600);text-decoration:none}.ob a:hover{text-decoration:underline}.ob a:focus-visible{outline:2px solid var(--bv-500);outline-offset:2px;border-radius:2px}.ob .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ob b,.ob strong{font-weight:600}.ob .head{margin-bottom:14px}.ob .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--bv-500);align-items:center;gap:8px;margin-bottom:12px;font-size:11px;font-weight:600;display:flex}.ob .eyebrow .dotmark{background:var(--bv-500);width:7px;height:7px;box-shadow:0 0 0 3px var(--bv-50);border-radius:50%;flex-shrink:0}.ob .head h1{letter-spacing:-.035em;max-width:22ch;margin-bottom:10px;font-size:33px;font-weight:700;line-height:1.1}.ob .head h1 em{color:var(--bv-500);font-style:normal}.ob .head .sub{color:var(--n-600);max-width:64ch;font-size:15px;line-height:1.55}.ob .chips{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.ob .chip{border-radius:var(--r-full);background:var(--n-0);border:1px solid var(--n-200);color:var(--n-700);box-shadow:var(--sh-1);align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.ob .chip b{color:var(--n-900);font-weight:600}.ob .chip .k{font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--n-400);font-size:10px}.ob .northstar{border-radius:var(--r-xl);background:linear-gradient(180deg,var(--bv-10),var(--n-0));border:1px solid var(--bv-100);margin-top:22px;padding:20px 22px}.ob .northstar .q{letter-spacing:-.02em;color:var(--bv-800);max-width:62ch;font-size:17px;font-weight:600;line-height:1.4}.ob .northstar .q b{color:var(--bv-600)}.ob .northstar p{color:var(--n-600);max-width:66ch;margin-top:10px;font-size:13px;line-height:1.55}.ob .honest{border-radius:var(--r-xl);background:var(--bv-10);border:1px solid var(--bv-100);color:var(--bv-800);align-items:flex-start;gap:13px;padding:16px 18px;font-size:13px;line-height:1.6;display:flex}.ob .honest .hb{flex:1;min-width:0}.ob .honest h4{font-family:var(--f-mono);letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin-bottom:7px;font-size:10.5px;font-weight:500}.ob .honest p{margin-bottom:7px}.ob .honest p:last-child{margin-bottom:0}.ob .honest svg{width:18px;height:18px;color:var(--bv-500);flex-shrink:0;margin-top:1px}.ob .honest.gold{background:var(--go-50);color:var(--go-700);border-color:#f5e4a8}.ob .honest.gold svg{color:var(--go-600)}.ob .honest.green{background:var(--gv-50);color:var(--gv-700);border-color:#a8e9cc}.ob .honest.green svg{color:var(--gv-600)}.ob .honest.red{background:var(--re-50);border-color:var(--re-100);color:var(--re-700)}.ob .honest.red svg{color:var(--re-500)}.ob .section{margin-top:40px;scroll-margin-top:16px}.ob .sec-head{margin-bottom:16px}.ob .sec-tag{font-family:var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--bv-500);align-items:center;gap:7px;margin-bottom:8px;font-size:11px;font-weight:500;display:inline-flex}.ob .sec-tag .n{border-radius:var(--r-full);background:var(--bv-50);min-width:20px;height:20px;color:var(--bv-600);justify-content:center;align-items:center;padding:0 6px;font-weight:500;display:inline-flex}.ob .sec-head h2{letter-spacing:-.025em;font-size:22px;font-weight:700;line-height:1.2}.ob .sec-head h2 em{color:var(--bv-500);font-style:normal}.ob .sec-head .lede{color:var(--n-600);max-width:70ch;margin-top:7px;font-size:13.5px;line-height:1.55}.ob .stack{flex-direction:column;gap:12px;display:flex}.ob .mt14{margin-top:14px}.ob .mt22{margin-top:22px}.ob .mb10{margin-bottom:10px}.ob .mb12{margin-bottom:12px}.ob .grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.ob .grid.two{grid-template-columns:repeat(2,1fr)}.ob .card{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-2xl);box-shadow:var(--sh-2);padding:18px}.ob .card h3{letter-spacing:-.01em;align-items:center;gap:8px;margin-bottom:5px;font-size:14px;font-weight:600;display:flex}.ob .card h3 svg{width:16px;height:16px;color:var(--bv-500);flex-shrink:0}.ob .card p{color:var(--n-600);font-size:12.5px;line-height:1.5}.ob .card p+p{margin-top:6px}.ob .card p b{color:var(--n-800)}.ob .status{border-radius:var(--r-full);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:5px;padding:2px 9px 2px 7px;font-size:11px;font-weight:600;display:inline-flex}.ob .status .sd{border-radius:50%;flex-shrink:0;width:6px;height:6px}.ob .status.active{background:var(--gv-50);color:var(--gv-700)}.ob .status.active .sd{background:var(--gv-500)}.ob .status.available{background:var(--bv-50);color:var(--bv-700)}.ob .status.available .sd{background:var(--bv-500)}.ob .status.roadmap{background:var(--go-50);color:var(--go-700)}.ob .status.roadmap .sd{background:var(--go-500)}.ob .status.platform{background:var(--n-100);color:var(--n-600)}.ob .status.platform .sd{background:var(--n-400)}.ob .status.decision{background:var(--pu-50);color:var(--pu-700)}.ob .status.decision .sd{background:var(--pu-500)}.ob .status.correct{background:var(--re-50);color:var(--re-700)}.ob .status.correct .sd{background:var(--re-500)}.ob .tbl-wrap{border:1px solid var(--n-200);border-radius:var(--r-2xl);box-shadow:var(--sh-2);background:var(--n-0);overflow:hidden}.ob .tbl-scroll{overflow-x:auto}.ob table{border-collapse:collapse;width:100%;min-width:560px;font-size:12.5px}.ob thead th{background:var(--n-50);text-align:left;color:var(--n-700);border-bottom:1px solid var(--n-200);letter-spacing:.01em;padding:11px 14px;font-size:11.5px;font-weight:600}.ob tbody td{border-bottom:1px solid var(--n-150);color:var(--n-600);vertical-align:top;padding:10px 14px;line-height:1.5}.ob tbody tr:last-child td{border-bottom:none}.ob tbody td.lead{color:var(--n-800);white-space:nowrap;font-weight:600}.ob tbody td b{color:var(--n-800);font-weight:600}.ob .tbl-title{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.ob .tbl-title h3{letter-spacing:-.02em;font-size:15px;font-weight:700}.ob .tbl-title p{color:var(--n-600);font-size:12.5px}.ob .tbl-title p b{color:var(--n-800)}.ob .road{flex-direction:column;gap:10px;display:flex}.ob .phase{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);gap:14px;padding:15px 18px;display:flex}.ob .phase .pn{border-radius:var(--r-lg);background:var(--n-900);width:30px;height:30px;color:var(--n-0);font-family:var(--f-mono);flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.ob .phase.hi .pn{background:var(--bv-500)}.ob .phase .pb{flex:1;min-width:0}.ob .phase .pt{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;font-size:13.5px;font-weight:600;display:flex}.ob .phase .flag{font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.03em;color:var(--bv-600);background:var(--bv-50);border-radius:var(--r-full);padding:2px 7px;font-size:10px;font-weight:500}.ob .phase .pd{color:var(--n-600);font-size:12.5px;line-height:1.55}.ob .phase .pd b{color:var(--n-800);font-weight:600}.ob .diff{counter-reset:d;flex-direction:column;gap:9px;display:flex}.ob .ditem{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);align-items:flex-start;gap:13px;padding:14px 16px;display:flex}.ob .ditem:before{counter-increment:d;content:counter(d);background:var(--pu-50);width:24px;height:24px;color:var(--pu-600);font-family:var(--f-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:500;display:flex}.ob .ditem .db{flex:1;min-width:0}.ob .ditem .dq{color:var(--n-900);margin-bottom:3px;font-size:13px;font-weight:600}.ob .ditem .dd{color:var(--n-600);font-size:12.5px;line-height:1.55}.ob .ditem .dd b{color:var(--n-800)}.ob code{font-family:var(--f-mono);background:var(--n-100);color:var(--n-800);word-break:break-word;border-radius:4px;padding:1px 5px;font-size:11.5px}.ob .note{color:var(--n-500);margin-top:12px;font-size:12.5px;font-style:italic;line-height:1.55}.ob .note b{color:var(--n-700);font-style:normal}.ob .foot{border-top:1px solid var(--n-200);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:44px;padding-top:18px;display:flex}.ob .foot .l{color:var(--n-500);font-size:12.5px}.ob .foot .l b{color:var(--n-800);font-weight:600}.ob .foot .r{font-family:var(--f-mono);color:var(--n-400);font-size:11px}.ob .btn{color:var(--n-800);background:var(--n-0);border:1px solid var(--n-300);border-radius:var(--r-lg);box-shadow:var(--sh-1);transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1.3;display:inline-flex}.ob .btn:hover:not(:disabled){background:var(--n-50);border-color:var(--n-400)}.ob .btn:disabled{opacity:.55}.ob .btn svg{flex-shrink:0;width:15px;height:15px}.ob .btn.primary{color:var(--n-0);background:var(--bv-500);border-color:var(--bv-500)}.ob .btn.primary:hover:not(:disabled){background:var(--bv-600);border-color:var(--bv-600)}.ob .btn.ghost{box-shadow:none;color:var(--bv-600);background:0 0;border-color:#0000;padding:6px 10px}.ob .btn.ghost:hover:not(:disabled){background:var(--bv-10);border-color:#0000}.ob .btn.sm{padding:5px 10px;font-size:12px}.ob .btn.icon{width:30px;height:30px;padding:5px}.ob .btn.danger:hover:not(:disabled){color:var(--re-600);border-color:var(--re-200);background:var(--re-50)}.ob .btn:focus-visible,.ob .iconbtn:focus-visible{outline:2px solid var(--bv-500);outline-offset:2px}.ob .iconbtn{border-radius:var(--r-full);width:22px;height:22px;color:var(--n-500);justify-content:center;align-items:center;display:inline-flex}.ob .iconbtn:hover:not(:disabled){background:var(--n-150);color:var(--n-900)}.ob .iconbtn:disabled{opacity:.35}.ob .iconbtn svg{width:13px;height:13px}.ob .btnrow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ob .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.ob .fields .full{grid-column:1/-1}.ob .field{flex-direction:column;gap:5px;min-width:0;display:flex}.ob .field>label,.ob .lbl{color:var(--n-800);font-size:12.5px;font-weight:600}.ob .field .hint{color:var(--n-500);font-size:12px;line-height:1.45}.ob .field .err,.ob .err{color:var(--re-600);font-size:12px;line-height:1.45}.ob .in{background:var(--n-0);border:1px solid var(--n-300);border-radius:var(--r-lg);width:100%;color:var(--n-900);box-shadow:var(--sh-1);transition:border-color .15s var(--ease),box-shadow .15s var(--ease);min-height:38px;padding:8px 11px;font-size:13.5px;line-height:1.4}.ob .in::placeholder{color:var(--n-400)}.ob .in:hover:not(:disabled){border-color:var(--n-400)}.ob .in:focus{border-color:var(--bv-500);box-shadow:0 0 0 3px var(--bv-100);outline:none}.ob .in[aria-invalid=true]{border-color:var(--re-500)}.ob .in[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--re-100)}.ob .in:disabled{background:var(--n-50);color:var(--n-600)}.ob textarea.in{resize:vertical;min-height:88px}.ob select.in{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:32px}.ob fieldset{min-width:0}.ob fieldset.plain{border:0}.ob legend{color:var(--n-800);margin-bottom:6px;padding:0;font-size:12.5px;font-weight:600}.ob .choices{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;display:grid}.ob .choice{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease);align-items:flex-start;gap:10px;padding:12px 14px;display:flex;position:relative}.ob .choice:hover{border-color:var(--n-300)}.ob .choice input{appearance:none;border:1.5px solid var(--n-300);background:var(--n-0);cursor:pointer;border-radius:50%;flex-shrink:0;width:16px;height:16px;margin-top:2px}.ob .choice input:checked{border:5px solid var(--bv-500)}.ob .choice input:focus-visible{outline:2px solid var(--bv-500);outline-offset:2px}.ob .choice:has(input:checked){border-color:var(--bv-400);background:var(--bv-10)}.ob .choice .ct{color:var(--n-900);font-size:13px;font-weight:600}.ob .choice .cd{color:var(--n-600);margin-top:2px;font-size:12px;line-height:1.45;display:block}.ob fieldset.field>.hint{margin-bottom:8px}.ob .field.center{justify-content:center}.ob .field>label.toggle,.ob .rowgrid .field>label.toggle{color:var(--n-800);font-size:12.5px;font-weight:500}.ob .honest.intro{margin-bottom:18px}.ob .tagbox>p:empty{margin-top:-8px}.ob .toggle{cursor:pointer;color:var(--n-800);align-items:flex-start;gap:10px;font-size:13px;display:flex}.ob .toggle input{appearance:none;border:1.5px solid var(--n-300);background:var(--n-0);cursor:pointer;border-radius:5px;flex-shrink:0;place-content:center;width:18px;height:18px;margin-top:1px;display:grid}.ob .toggle input:after{content:"";border-left:2px solid var(--n-0);border-bottom:2px solid var(--n-0);opacity:0;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.ob .toggle input:checked{background:var(--bv-500);border-color:var(--bv-500)}.ob .toggle input:checked:after{opacity:1}.ob .toggle input:focus-visible{outline:2px solid var(--bv-500);outline-offset:2px}.ob .toggle .td{color:var(--n-500);margin-top:1px;font-size:12px;display:block}.ob .tagbox{flex-direction:column;gap:8px;display:flex}.ob .tags{flex-wrap:wrap;gap:6px;display:flex}.ob .tag{border-radius:var(--r-full);background:var(--bv-50);color:var(--bv-800);border:1px solid var(--bv-100);align-items:center;gap:4px;max-width:100%;padding:3px 4px 3px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.ob .tag .tx{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ob .tag .iconbtn{color:var(--bv-700)}.ob .tag .iconbtn:hover:not(:disabled){background:var(--bv-100)}.ob .tags.ordered{counter-reset:st;flex-flow:column;gap:5px}.ob .tags.ordered .tag{border-radius:var(--r-lg);background:var(--n-0);border-color:var(--n-200);color:var(--n-800);box-shadow:var(--sh-1);justify-content:space-between;padding:4px 4px 4px 8px}.ob .tags.ordered .tag .tx{flex:1}.ob .tags.ordered .tag .tx:before{counter-increment:st;content:counter(st);border-radius:var(--r-full);background:var(--bv-50);width:20px;height:20px;color:var(--bv-600);font-family:var(--f-mono);justify-content:center;align-items:center;margin-right:9px;font-size:11px;display:inline-flex}.ob .tags.ordered .tag .iconbtn{color:var(--n-500)}.ob .tags .empty{color:var(--n-400);font-size:12.5px;font-style:italic}.ob .addrow{gap:6px;display:flex}.ob .addrow .in{flex:1;min-width:0}.ob .pastebox{border:1px dashed var(--n-300);border-radius:var(--r-lg);background:var(--n-0);flex-direction:column;gap:6px;padding:10px;display:flex}.ob .rows{flex-direction:column;gap:10px;display:flex}.ob .rowcard{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);padding:12px 14px 14px}.ob .rowcard.bad{border-color:var(--re-200)}.ob .rowcard-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.ob .rowcard-top .rn{font-family:var(--f-mono);color:var(--n-400);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:500}.ob .rowcard-top .rt{color:var(--n-900);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.ob .rowcard-top .rt.ph{color:var(--n-400);font-weight:500}.ob .rowgrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 12px;display:grid}.ob .rowgrid .wide{grid-column:1/-1}.ob .rowgrid .field>label{color:var(--n-600);font-size:11.5px;font-weight:600}.ob .rowgrid .in{min-height:34px;padding:6px 10px;font-size:13px}.ob .rows-empty{color:var(--n-500);background:var(--n-0);border:1px dashed var(--n-300);border-radius:var(--r-xl);text-align:center;padding:16px;font-size:13px}.ob .ihead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;display:flex}.ob .ihead .head{margin-bottom:0}.ob .ihead h1{max-width:none}.ob .pbar{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;padding:12px 16px;display:flex}.ob .pbar .pl{color:var(--n-600);font-size:12.5px}.ob .pbar .pl b{color:var(--n-900);font-family:var(--f-mono);font-weight:500}.ob .pbar .track{border-radius:var(--r-full);background:var(--n-150);flex:200px;height:8px;overflow:hidden}.ob .pbar .fill{border-radius:var(--r-full);background:var(--bv-500);height:100%;transition:width .4s var(--ease);display:block}.ob .pbar.full .fill{background:var(--gv-500)}.ob .savestate{color:var(--n-500);align-items:center;gap:6px;min-height:26px;font-size:12px;font-weight:500;display:inline-flex}.ob .savestate svg{width:14px;height:14px}.ob .savestate.ok{color:var(--gv-700)}.ob .savestate.bad{color:var(--re-600)}.ob .savestate .btn{margin-left:4px}.ob .spin{animation:1s linear infinite ob-spin}@keyframes ob-spin{to{transform:rotate(360deg)}}.ob .ishell{margin-top:22px;display:block}.ob .snav{top:env(safe-area-inset-top,0px);z-index:5;background:var(--n-50);border-bottom:1px solid var(--n-200);margin:0 -4px;padding:10px 4px;position:sticky}.ob .snav ol{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;display:flex;overflow-x:auto}.ob .snav ol::-webkit-scrollbar{display:none}.ob .snav a{border-radius:var(--r-full);color:var(--n-600);white-space:nowrap;transition:background .15s var(--ease),color .15s var(--ease);border:1px solid #0000;align-items:center;gap:7px;padding:6px 12px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.ob .snav a:hover{background:var(--n-100);color:var(--n-800);text-decoration:none}.ob .snav a:focus-visible{outline:2px solid var(--bv-500);outline-offset:1px}.ob .snav a[aria-current=step]{background:var(--n-0);border-color:var(--n-200);color:var(--bv-700);box-shadow:var(--sh-1)}.ob .snav .rn{font-family:var(--f-mono);color:var(--n-400);font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:500}.ob .snav .ok{background:var(--gv-500);width:16px;height:16px;color:var(--n-0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ob .snav .ok svg{width:10px;height:10px}.ob .snav .ok.bad{background:var(--re-500)}.ob .snav a>span:empty,.ob .snav .rail-title{display:none}.ob .spane{min-width:0;padding-top:20px}.ob .spane .section{margin-top:0}.ob .spane:focus,.ob .sec-head h2[tabindex="-1"]:focus{outline:none}.ob .pager{border-top:1px solid var(--n-200);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:28px;padding-top:18px;display:flex}.ob .pager .spacer{flex:1}@media (min-width:1100px){.ob .ishell{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:40px;display:grid}.ob .snav{background:0 0;border:0;max-height:calc(100vh - 48px);margin:0;padding:0;top:24px;overflow-y:auto}.ob .snav .rail-title{font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--n-400);margin-bottom:10px;padding-left:10px;font-size:10px;font-weight:500;display:block}.ob .snav ol{flex-direction:column;gap:1px;overflow:visible}.ob .snav a{border:0;border-left:2px solid var(--n-200);border-radius:0 var(--r-lg)var(--r-lg)0;white-space:normal;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:7px 8px 7px 10px;font-weight:500;line-height:1.35;display:grid}.ob .snav a:hover{background:var(--bv-10);color:var(--bv-600)}.ob .snav a[aria-current=step]{background:var(--bv-10);border-left-color:var(--bv-500);box-shadow:none;font-weight:600}.ob .snav a[aria-current=step] .rn{color:var(--bv-500)}.ob .spane{padding-top:0}}.ob .block{margin-top:26px}.ob .block:first-child{margin-top:0}.ob .block-h{letter-spacing:-.015em;color:var(--n-900);margin-bottom:4px;font-size:14px;font-weight:700}.ob .block-d{color:var(--n-600);max-width:70ch;margin-bottom:12px;font-size:12.5px;line-height:1.5}.ob .block-d b{color:var(--n-800)}.ob .issues{margin-bottom:16px}.ob .issues ul{margin-top:4px;padding-left:18px;list-style:outside}.ob .kinds{flex-direction:column;gap:12px;display:flex}.ob .kind{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);padding:14px 16px}.ob .kind-top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.ob .kind-top h3{flex:1;min-width:0;font-size:13.5px;font-weight:600}.ob .drop{border:1.5px dashed var(--n-300);border-radius:var(--r-lg);text-align:center;background:var(--n-50);color:var(--n-600);transition:border-color .15s var(--ease),background .15s var(--ease);flex-direction:column;align-items:center;gap:6px;padding:16px;font-size:12.5px;display:flex}.ob .drop svg{width:20px;height:20px;color:var(--n-400)}.ob .drop.over{border-color:var(--bv-500);background:var(--bv-10)}.ob .drop .btn{margin-top:4px}.ob .files{flex-direction:column;gap:6px;margin-top:10px;display:flex}.ob .file{border:1px solid var(--n-150);border-radius:var(--r-lg);background:var(--n-0);align-items:center;gap:10px;padding:8px 10px;font-size:12.5px;display:flex}.ob .file svg.fi{width:16px;height:16px;color:var(--n-400);flex-shrink:0}.ob .file .fn{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--n-800);flex:1;font-weight:500;overflow:hidden}.ob .file .fs{font-family:var(--f-mono);color:var(--n-500);white-space:nowrap;font-size:11px}.ob .file.bad{border-color:var(--re-100);background:var(--re-50)}.ob .file .fbar{border-radius:var(--r-full);background:var(--n-150);flex:0 0 90px;height:6px;overflow:hidden}.ob .file .fbar span{background:var(--bv-500);height:100%;transition:width .2s linear;display:block}.ob details.xspec{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1)}.ob details.xspec>summary{cursor:pointer;color:var(--n-800);align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:600;list-style:none;display:flex}.ob details.xspec>summary::-webkit-details-marker{display:none}.ob details.xspec>summary svg{width:15px;height:15px;color:var(--n-500);transition:transform .15s var(--ease)}.ob details.xspec[open]>summary svg{transform:rotate(90deg)}.ob details.xspec>summary:focus-visible{outline:2px solid var(--bv-500);outline-offset:-2px;border-radius:var(--r-xl)}.ob details.xspec .xbody{padding:4px 16px 16px}.ob .checks{flex-direction:column;gap:7px;display:flex}.ob .checkrow{background:var(--n-0);border:1px solid var(--n-200);border-radius:var(--r-xl);box-shadow:var(--sh-1);align-items:center;gap:12px;padding:11px 14px;display:flex}.ob .checkrow .ci{background:var(--n-100);width:22px;height:22px;color:var(--n-400);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ob .checkrow .ci svg{width:13px;height:13px}.ob .checkrow.done{background:var(--gv-50);border-color:#a8e9cc}.ob .checkrow.done .ci{background:var(--gv-500);color:var(--n-0)}.ob .checkrow .cb{flex:1;min-width:0}.ob .checkrow .cn{color:var(--n-900);font-size:13px;font-weight:600;display:block}.ob .checkrow .cs{color:var(--n-600);font-size:12px;display:block}.ob .statecard{text-align:center;max-width:520px;margin:12vh auto 0}.ob .statecard .card{padding:28px 26px}.ob .statecard h1{letter-spacing:-.025em;margin:10px 0 6px;font-size:22px;font-weight:700}.ob .statecard p{color:var(--n-600);font-size:13.5px}.ob .statecard .btnrow{justify-content:center}.ob .statecard .big{background:var(--bv-50);width:36px;height:36px;color:var(--bv-500);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.ob .statecard .big svg{width:18px;height:18px}.ob .skel{background:linear-gradient(90deg,var(--n-150),var(--n-100),var(--n-150));background-size:200% 100%;border-radius:6px;height:12px;animation:1.4s ease-in-out infinite ob-shimmer;display:block}@keyframes ob-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:820px){.ob .grid,.ob .grid.two,.ob .fields{grid-template-columns:1fr}.ob .page{padding:28px 16px 44px}.ob .head h1{font-size:27px}}@media (prefers-reduced-motion:no-preference){.ob .card,.ob .phase,.ob .ditem{animation:ob-fade .45s var(--ease)both}.ob .grid .card:nth-child(2){animation-delay:40ms}.ob .grid .card:nth-child(3){animation-delay:80ms}.ob .grid .card:nth-child(4){animation-delay:.12s}.ob .spane>.section{animation:ob-fade .3s var(--ease)both}@keyframes ob-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){.ob *,.ob :before,.ob :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
