@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}.hf-site{--s1:var(--surface);--s2:var(--surface-2);--s3:var(--surface-3);--bds:var(--line);--bd:var(--line-strong);--bdx:var(--line-x);--tx:var(--text);--tx2:var(--text-2);--tx3:var(--muted);--ac:var(--brand);--acx:var(--accent-text);--acbg:var(--brand-soft);--ok:var(--good);--okbg:var(--good-soft);--wn:var(--warn);--wnbg:var(--warn-soft);--fl:var(--bad);--flbg:var(--bad-soft);--as:var(--assumed);--asbg:var(--assumed-soft);--rf:var(--refused);--rfbg:var(--refused-soft);--rn:var(--running);--rnbg:var(--running-soft);--on:var(--on-status);--s1c:var(--series-1);--s2c:var(--series-2);--img:#13161b}:root[data-theme=light] .hf-site{--img:#f4f6f9}@keyframes hfFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(-.4deg)}}.hf-p-home{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-home *{box-sizing:border-box}.hf-p-home a{color:var(--acx);text-decoration:none}.hf-p-home a:hover{text-decoration:underline}.hf-p-home button{font:inherit;color:inherit}.hf-p-home :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-home .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-home .hf-u{color:var(--tx3);font-weight:400}.hf-p-home .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-home .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-home .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-home a.hf-wm{color:var(--tx);letter-spacing:.005em;font-size:18px;font-weight:700}.hf-p-home a.hf-wm:hover{text-decoration:none}.hf-p-home .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-home .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-home .hf-navl a:hover{color:var(--tx);text-decoration:none}.hf-p-home .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-home .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-home .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-home .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-home .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-home .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-home .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-home .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-home .hf-btn.hf-ib{width:40px;padding:0}.hf-p-home .hf-menu-btn{display:none!important}.hf-p-home .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-home .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-home .hf-sec{border-top:1px solid var(--bds);padding:104px 0;scroll-margin-top:64px}.hf-p-home .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-home .hf-h2{letter-spacing:-.015em;text-wrap:balance;margin:12px 0 14px;font-size:clamp(28px,3vw,40px);font-weight:600;line-height:1.12}.hf-p-home .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:700px;margin:0;font-size:17px}.hf-p-home .hf-shead{flex-direction:column;margin-bottom:44px;display:flex}.hf-p-home .hf-shot{color:#e6eaef;background:#13161b;border:1px solid #2b333d;border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-home .hf-shot-bar{color:#a9b3bf;white-space:nowrap;background:#171b21;border-bottom:1px solid #262e38;flex:none;align-items:center;gap:10px;height:34px;padding:0 12px;font:500 11.5px IBM Plex Mono,monospace;display:flex;overflow:hidden}.hf-p-home .hf-shot-bar .hf-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.hf-p-home .hf-shot-bar .hf-tag{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;border:1px solid #323c48;border-radius:2px;padding:2px 6px;font:600 10px IBM Plex Mono,monospace}.hf-p-home .hf-shot img{width:100%;height:auto;display:block}.hf-p-home .hf-cap{color:var(--tx3);text-wrap:pretty;margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-home .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-home .hf-st{width:16px;height:16px;color:var(--on);flex:none;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-home .hf-st.hf-ok{background:var(--ok);border-radius:50%}.hf-p-home .hf-st.hf-fl{background:var(--fl);border-radius:2px}.hf-p-home .hf-st.hf-wn{background:var(--wn);clip-path:polygon(50% 0,100% 100%,0 100%);width:18px;padding-top:5px;font-size:9px}.hf-p-home .hf-st.hf-rf{background:var(--rf);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);font-size:9px}.hf-p-home .hf-st.hf-as{border:1.5px dashed var(--as);color:var(--as);border-radius:3px}.hf-p-home .hf-vb{border:1px solid var(--bd);background:var(--s2);height:22px;color:var(--tx);white-space:nowrap;border-radius:11px;align-items:center;gap:6px;padding:0 9px 0 6px;font:500 12px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-home .hf-vi{box-sizing:border-box;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.hf-p-home .hf-vi.hf-validated{background:var(--ok)}.hf-p-home .hf-vi.hf-partial{background:linear-gradient(90deg,var(--wn) 50%,transparent 50%);border:1.5px solid var(--wn)}.hf-p-home .hf-vi.hf-notbuilt{border:1.5px dashed var(--tx3)}.hf-p-home .hf-vi.hf-workflow{border:1.5px solid var(--tx3);border-radius:2px}.hf-p-home .hf-rule{border:1px solid var(--bd);color:var(--tx2);white-space:nowrap;background:var(--s1);border-radius:2px;padding:3px 7px;font:500 11px IBM Plex Mono,monospace}.hf-p-home .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;vertical-align:2px;letter-spacing:.02em;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-home .hf-hero{position:relative;overflow:hidden}.hf-p-home .hf-gridbg{background-image:linear-gradient(var(--bds) 1px,transparent 1px),linear-gradient(90deg,var(--bds) 1px,transparent 1px);opacity:.6;pointer-events:none;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 70% at 70% 45%,#000 0%,#0000 72%);mask-image:radial-gradient(60% 70% at 70% 45%,#000 0%,#0000 72%)}.hf-p-home .hf-hero-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:32px;min-height:660px;padding:80px 0 88px;display:grid;position:relative}.hf-p-home .hf-h1{letter-spacing:-.025em;text-wrap:balance;margin:18px 0 20px;font-size:clamp(38px,4.4vw,60px);font-weight:600;line-height:1.04}.hf-p-home .hf-sub{color:var(--tx2);text-wrap:pretty;max-width:520px;margin:0 0 30px;font-size:18px;line-height:1.55}.hf-p-home .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-home .hf-chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:540px;margin-top:36px;display:grid}.hf-p-home .hf-chip{border:1px solid var(--bd);background:var(--s1);min-height:36px;color:var(--tx);border-radius:4px;align-items:center;gap:9px;padding:6px 12px 6px 9px;font:500 12.5px/1.35 IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-hero-art{min-width:0;position:relative}.hf-p-home .hf-hero-art img{width:116%;max-width:none;margin-left:-4%;animation:9s ease-in-out infinite hfFloat;display:block;-webkit-mask-image:radial-gradient(58% 56% at 50% 52%,#000 62%,#0000 100%);mask-image:radial-gradient(58% 56% at 50% 52%,#000 62%,#0000 100%)}@media (prefers-reduced-motion:reduce){.hf-p-home .hf-hero-art img{animation:none}}.hf-p-home .hf-anno{color:var(--tx2);background:color-mix(in srgb,var(--s1) 90%,transparent);border:1px solid var(--bd);white-space:nowrap;border-radius:4px;align-items:center;gap:8px;padding:6px 10px;font:500 11.5px IBM Plex Mono,monospace;display:flex;position:absolute}.hf-p-home .hf-steps3{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch;display:grid}.hf-p-home .hf-arrow{color:var(--tx3);justify-content:center;align-items:center;display:flex}.hf-p-home .hf-scard{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-home .hf-scard .hf-pic{background:var(--img);border-bottom:1px solid var(--bds);height:236px;position:relative;overflow:hidden}.hf-p-home .hf-scard .hf-pic img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-home .hf-scard .hf-txt{flex-direction:column;gap:6px;padding:20px 22px 22px;display:flex}.hf-p-home .hf-num{color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-home .hf-scard h3{margin:0;font-size:19px;font-weight:600}.hf-p-home .hf-scard p{color:var(--tx2);text-wrap:pretty;margin:0;font-size:14.5px}.hf-p-home .hf-inset{background:#13161b;border:1px solid #323c48;border-radius:4px;width:46%;position:absolute;bottom:12px;right:12px;overflow:hidden;box-shadow:0 8px 24px #00000073}.hf-p-home .hf-inset img{height:auto!important}.hf-p-home .hf-story{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:40px;display:grid}.hf-p-home .hf-stagebtns{flex-direction:column;gap:8px;display:flex}.hf-p-home .hf-stb{text-align:left;border:1px solid var(--bds);background:var(--s1);cursor:pointer;border-radius:6px;grid-template-columns:28px minmax(0,1fr);gap:4px 12px;width:100%;padding:14px 16px;display:grid}.hf-p-home .hf-stb:hover{border-color:var(--bd)}.hf-p-home .hf-stb.hf-on{border-color:var(--acx);background:var(--acbg)}.hf-p-home .hf-stb .hf-k{color:var(--tx3);padding-top:2px;font:600 12px IBM Plex Mono,monospace}.hf-p-home .hf-stb.hf-on .hf-k{color:var(--acx)}.hf-p-home .hf-stb .hf-h{font-size:15px;font-weight:600}.hf-p-home .hf-stb .hf-d{color:var(--tx2);grid-column:2;font-size:13.5px;line-height:1.45}.hf-p-home .hf-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.hf-p-home .hf-verdict{border:1px solid var(--bd);background:var(--s1);border-radius:8px;overflow:hidden}.hf-p-home .hf-banner{background:var(--flbg);border-bottom:1px solid var(--fl);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 18px;display:flex}.hf-p-home .hf-banner b{font-size:16px}.hf-p-home .hf-gates{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hf-p-home .hf-gate{border-bottom:1px solid var(--bds);border-right:1px solid var(--bds);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:4px 12px;padding:14px 18px;display:grid}.hf-p-home .hf-gate .hf-h{font-size:14px;font-weight:600}.hf-p-home .hf-gate .hf-v{color:var(--tx2);overflow-wrap:anywhere;grid-column:2;font:12px/1.5 IBM Plex Mono,monospace}.hf-p-home .hf-gate.hf-f{background:color-mix(in srgb,var(--flbg) 55%,transparent)}.hf-p-home .hf-runline{color:var(--tx3);background:var(--s2);flex-wrap:wrap;gap:16px;padding:10px 18px;font:11.5px IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-refuse{border:1px solid var(--rf);background:var(--rfbg);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;margin-top:20px;padding:16px 18px;display:grid}.hf-p-home .hf-tabs{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.hf-p-home .hf-tb{border:1px solid var(--bd);background:var(--s1);height:36px;color:var(--tx2);cursor:pointer;border-radius:18px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.hf-p-home .hf-tb:hover{color:var(--tx);border-color:var(--bdx)}.hf-p-home .hf-tb.hf-on{background:var(--acbg);border-color:var(--acx);color:var(--tx)}.hf-p-home .hf-tb .hf-n{color:var(--tx3);font:500 11px IBM Plex Mono,monospace}.hf-p-home .hf-mgrid{grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr));gap:16px;display:grid}.hf-p-home .hf-mcard{text-align:left;border:1px solid var(--bds);background:var(--s1);cursor:pointer;border-radius:8px;flex-direction:column;min-width:0;padding:0;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.hf-p-home .hf-mcard:hover{border-color:var(--bdx);transform:translateY(-2px)}.hf-p-home .hf-mcard.hf-on{border-color:var(--acx);box-shadow:0 0 0 1px var(--acx)}.hf-p-home .hf-thumb{border-bottom:1px solid var(--bds);color:#e6eaef;background:#13161b;height:156px;position:relative;overflow:hidden}.hf-p-home .hf-thumb img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-home .hf-pos-c{object-position:center}.hf-p-home .hf-pos-l{object-position:left center}.hf-p-home .hf-pos-r{object-position:right center}.hf-p-home .hf-pos-t{object-position:center 30%}.hf-p-home .hf-pos-m{object-position:center 40%}.hf-p-home .hf-cbody{flex-direction:column;flex:1;gap:6px;padding:14px 16px 16px;display:flex}.hf-p-home .hf-cname{font-size:15.5px;font-weight:600;line-height:1.3}.hf-p-home .hf-cdesc{color:var(--tx2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.hf-p-home .hf-cmeta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;padding-top:8px;display:flex}.hf-p-home .hf-dthumb{background:#13161b;flex-direction:column;justify-content:center;gap:8px;padding:16px;display:flex;position:absolute;inset:0}.hf-p-home .hf-dtiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.hf-p-home .hf-dtile{background:#1b2129;border:1px solid #2b333d;border-radius:4px;padding:6px 9px}.hf-p-home .hf-dtile .hf-l{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;font:600 9.5px IBM Plex Sans,sans-serif}.hf-p-home .hf-dtile .hf-v{color:#e6eaef;white-space:nowrap;font:500 15px IBM Plex Mono,monospace}.hf-p-home .hf-dtile .hf-v span{color:#8592a0;font-size:11px}.hf-p-home .hf-drow{color:#cfd6de;border-bottom:1px solid #222a33;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:8px;padding-bottom:5px;font:11.5px IBM Plex Mono,monospace;display:grid}.hf-p-home .hf-drow .hf-okd{background:#3fb97a;border-radius:50%;width:12px;height:12px}.hf-p-home .hf-code{color:#cfd6de;font:12px/1.7 IBM Plex Mono,monospace}.hf-p-home .hf-code .hf-k{color:#6aa3e8}.hf-p-home .hf-pages{justify-content:center;align-items:flex-end;gap:10px;height:100%;display:flex}.hf-p-home .hf-pg{background:#f4f6f9;border-radius:2px;flex-direction:column;gap:4px;width:84px;height:112px;padding:6px;display:flex;box-shadow:0 6px 18px #00000080}.hf-p-home .hf-pg img{object-fit:cover;border-radius:1px;width:100%;height:38px}.hf-p-home .hf-pg i{background:#cbd2da;border-radius:1px;height:3px;display:block}.hf-p-home .hf-nbx{color:#8592a0;border:1.5px dashed #4a5664;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font:500 12px IBM Plex Mono,monospace;display:flex;position:absolute;inset:18px}.hf-p-home .hf-detail{border:1px solid var(--acx);background:var(--s1);border-radius:10px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);margin-bottom:28px;scroll-margin-top:80px;display:grid;overflow:hidden}.hf-p-home .hf-detail .hf-vis{color:#e6eaef;background:#13161b;justify-content:center;align-items:center;min-height:340px;display:flex;position:relative}.hf-p-home .hf-detail .hf-vis img{width:100%;height:auto;display:block}.hf-p-home .hf-detail .hf-info{flex-direction:column;gap:14px;min-width:0;padding:26px 28px;display:flex}.hf-p-home .hf-detail h3{margin:0;font-size:24px;font-weight:600;line-height:1.2}.hf-p-home .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-home .hf-li{color:var(--tx2);grid-template-columns:16px minmax(0,1fr);align-items:start;gap:10px;font-size:13.5px;line-height:1.45;display:grid}.hf-p-home .hf-li .hf-st{margin-top:2px}.hf-p-home .hf-xbtn{color:#e6eaef;cursor:pointer;z-index:2;background:#1b2129;border:1px solid #323c48;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:12px;right:12px}.hf-p-home .hf-vgrid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch;gap:20px;display:grid}.hf-p-home .hf-vgrid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.hf-p-home .hf-panel{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.hf-p-home .hf-panel h3{margin:0;font-size:17px;font-weight:600}.hf-p-home .hf-crow{border-bottom:1px solid var(--bds);grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:4px 10px;padding:9px 0;display:grid}.hf-p-home .hf-crow .hf-t{font-size:13.5px;line-height:1.35}.hf-p-home .hf-crow .hf-c{color:var(--tx3);font:11px IBM Plex Mono,monospace}.hf-p-home .hf-crow .hf-n{text-align:right;white-space:nowrap;font:500 12.5px IBM Plex Mono,monospace}.hf-p-home .hf-crow .hf-n span{color:var(--tx3);font-size:11px;font-weight:400;display:block}.hf-p-home .hf-vtrack{grid-template-columns:minmax(0,190px) minmax(0,1fr);align-items:center;gap:14px;padding:10px 0;display:grid}.hf-p-home .hf-vtrack .hf-l{font-size:13.5px;line-height:1.3}.hf-p-home .hf-vtrack .hf-l span{color:var(--tx3);font:11.5px IBM Plex Mono,monospace;display:block}.hf-p-home .hf-trk{height:30px;position:relative}.hf-p-home .hf-trk .hf-base{background:var(--bd);height:2px;position:absolute;top:14px;left:0;right:0}.hf-p-home .hf-trk .hf-band{background:var(--okbg);border:1px dashed var(--ok);border-radius:3px;height:18px;position:absolute;top:6px;left:8.33%;right:8.33%}.hf-p-home .hf-trk .hf-zero{background:var(--tx3);width:1.5px;position:absolute;top:0;bottom:0;left:50%}.hf-p-home .hf-trk .hf-dot{background:var(--ok);border:2px solid var(--s1);border-radius:50%;width:14px;height:14px;margin-left:-7px;position:absolute;top:8px}.hf-p-home .hf-trk .hf-val{color:var(--tx);white-space:nowrap;font:600 11px IBM Plex Mono,monospace;position:absolute;top:-2px;transform:translate(12px)}.hf-p-home .hf-axis{grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:14px;display:grid}.hf-p-home .hf-axis .hf-ticks{color:var(--tx3);justify-content:space-between;font:10.5px IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-rb{grid-template-columns:repeat(auto-fill,minmax(min(132px,100%),1fr));gap:8px;display:grid}.hf-p-home .hf-rbt{border:1px solid var(--bds);background:var(--s2);border-radius:6px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.hf-p-home .hf-rbt .hf-f{align-items:center;gap:8px;font:600 13px IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-rbt .hf-s{color:var(--tx3);font:11px IBM Plex Mono,monospace}.hf-p-home .hf-fmts{grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,6fr);align-items:center;gap:24px;display:grid}.hf-p-home .hf-fcol h3{align-items:center;gap:10px;margin:0 0 4px;font-size:17px;font-weight:600;display:flex}.hf-p-home .hf-fcol p{color:var(--tx3);margin:0 0 16px;font-size:13px}.hf-p-home .hf-ftiles{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:8px;display:grid}.hf-p-home .hf-ftile{border:1px solid var(--bds);background:var(--s1);border-radius:6px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;padding:9px 10px;display:grid}.hf-p-home .hf-ftile .hf-nm{overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.25}.hf-p-home .hf-ftile .hf-rb2{color:var(--ok);grid-column:2;align-items:center;gap:5px;font:10.5px IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-ficon{width:30px;height:36px;position:relative}.hf-p-home .hf-ficon span{text-align:center;color:var(--acx);letter-spacing:.02em;font:700 7.5px IBM Plex Mono,monospace;position:absolute;bottom:7px;left:0;right:0}.hf-p-home .hf-fcenter{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.hf-p-home .hf-fcenter img{width:150%;max-width:none;display:block}.hf-p-home .hf-targets{border-top:1px solid var(--bds);flex-wrap:wrap;align-items:center;gap:8px;margin-top:36px;padding-top:24px;display:flex}.hf-p-home .hf-tgt{border:1px solid var(--bd);background:var(--s1);border-radius:17px;align-items:center;height:34px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.hf-p-home .hf-who{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:20px;display:grid}.hf-p-home .hf-wcard{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.hf-p-home .hf-wcard .hf-pic{border-bottom:1px solid var(--bds);background:#13161b;height:210px;overflow:hidden}.hf-p-home .hf-wcard .hf-pic img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-home .hf-wcard .hf-txt{flex-direction:column;gap:10px;padding:22px 24px 24px;display:flex}.hf-p-home .hf-wcard h3{margin:0;font-size:19px;font-weight:600}.hf-p-home .hf-flow{color:var(--tx2);flex-wrap:wrap;align-items:center;gap:6px;font:500 12px IBM Plex Mono,monospace;display:flex}.hf-p-home .hf-flow span.hf-s{border:1px solid var(--bd);background:var(--s2);color:var(--tx);border-radius:3px;padding:4px 8px}.hf-p-home .hf-final{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:32px;display:grid}.hf-p-home .hf-final img{border:1px solid var(--bds);border-radius:8px;width:100%;display:block}.hf-p-home .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:56px 0 40px}.hf-p-home .hf-fgrid{grid-template-columns:minmax(0,2fr) repeat(5,minmax(0,1fr));gap:24px;display:grid}.hf-p-home .hf-fgrid h4{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);margin:0 0 12px;font:600 11px IBM Plex Sans,sans-serif}.hf-p-home .hf-fgrid ul{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.hf-p-home .hf-fgrid a{color:var(--tx2);font-size:14px}.hf-p-home .hf-fgrid a:hover{color:var(--tx)}.hf-p-home .hf-fbot{border-top:1px solid var(--bds);color:var(--tx3);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:44px;padding-top:20px;font:12px IBM Plex Mono,monospace;display:flex}@media (width<=1100px){.hf-p-home .hf-navl{display:none}.hf-p-home .hf-navr .hf-hide-sm{display:none!important}.hf-p-home .hf-menu-btn{display:inline-flex!important}.hf-p-home .hf-fmts{grid-template-columns:minmax(0,1fr)}.hf-p-home .hf-fcenter img{width:70%}.hf-p-home .hf-fgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.hf-p-home .hf-fgrid .hf-brand{grid-column:1/-1}}@media (width<=1020px){.hf-p-home .hf-hero-grid{grid-template-columns:minmax(0,1fr);min-height:0;padding:48px 0 56px}.hf-p-home .hf-hero-art img{width:100%;margin:0}.hf-p-home .hf-steps3{grid-template-columns:minmax(0,1fr);gap:8px}.hf-p-home .hf-arrow{height:36px;transform:rotate(90deg)}.hf-p-home .hf-story,.hf-p-home .hf-vgrid,.hf-p-home .hf-vgrid2,.hf-p-home .hf-final,.hf-p-home .hf-detail{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.hf-p-home .hf-wrap{padding:0 16px}.hf-p-home .hf-sec{padding:64px 0}.hf-p-home .hf-chips,.hf-p-home .hf-pair,.hf-p-home .hf-gates{grid-template-columns:minmax(0,1fr)}.hf-p-home .hf-anno{display:none}.hf-p-home .hf-vtrack,.hf-p-home .hf-axis{grid-template-columns:minmax(0,1fr)}.hf-p-home .hf-axis div:first-child{display:none}.hf-p-home .hf-fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.hf-p-home .hf-btn.hf-lg{width:100%}}.hf-p-m-hull{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-m-hull *{box-sizing:border-box}.hf-p-m-hull a{color:var(--acx);text-decoration:none}.hf-p-m-hull a:hover{text-decoration:underline}.hf-p-m-hull button{font:inherit;color:inherit}.hf-p-m-hull :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-m-hull .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-m-hull .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-m-hull .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-m-hull .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-m-hull a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-m-hull a.hf-wm:hover{text-decoration:none}.hf-p-m-hull .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-m-hull .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-m-hull .hf-navl a:hover,.hf-p-m-hull .hf-navl a.hf-on{color:var(--tx);text-decoration:none}.hf-p-m-hull .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-m-hull .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-hull .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-hull .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-m-hull .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-m-hull .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-m-hull .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-m-hull .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-m-hull .hf-btn.hf-ib{width:40px;padding:0}.hf-p-m-hull .hf-menu-btn{display:none!important}.hf-p-m-hull .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-m-hull .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-m-hull .hf-crumb{color:var(--tx3);flex-wrap:wrap;align-items:center;gap:8px;padding-top:28px;font:500 12.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-hull .hf-crumb a{color:var(--tx2)}.hf-p-m-hull .hf-mh{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:40px;padding:20px 0 32px;display:grid}.hf-p-m-hull .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:0 0 14px;font-size:clamp(34px,3.6vw,50px);font-weight:600;line-height:1.06}.hf-p-m-hull .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:640px;margin:0 0 22px;font-size:17px}.hf-p-m-hull .hf-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.hf-p-m-hull .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-m-hull .hf-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.hf-p-m-hull .hf-tile{background:var(--s1);border:1px solid var(--bds);border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.hf-p-m-hull .hf-tile.hf-as{border:1px dashed var(--as);background:var(--asbg)}.hf-p-m-hull .hf-tile .hf-l{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-hull .hf-tile .hf-v{white-space:nowrap;font:500 21px/1.15 IBM Plex Mono,monospace}.hf-p-m-hull .hf-tile .hf-v span{color:var(--tx3);font-size:12px;font-weight:400}.hf-p-m-hull .hf-tile .hf-s{color:var(--tx3);font:11.5px IBM Plex Mono,monospace}.hf-p-m-hull .hf-tile.hf-as .hf-s{color:var(--as)}.hf-p-m-hull .hf-seq{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr);align-items:center;display:grid}.hf-p-m-hull .hf-seqa{color:var(--tx3);justify-content:center;align-items:center;display:flex}.hf-p-m-hull .hf-shot{color:#e6eaef;background:#13161b;border:1px solid #2b333d;border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-m-hull .hf-shot-bar{color:#a9b3bf;white-space:nowrap;background:#171b21;border-bottom:1px solid #262e38;flex:none;align-items:center;gap:10px;height:34px;padding:0 12px;font:500 11.5px IBM Plex Mono,monospace;display:flex;overflow:hidden}.hf-p-m-hull .hf-shot-bar .hf-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.hf-p-m-hull .hf-shot-bar .hf-tag{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;border:1px solid #323c48;border-radius:2px;padding:2px 6px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-hull .hf-shot .hf-pic{height:240px;overflow:hidden}.hf-p-m-hull .hf-shot .hf-pic img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-m-hull .hf-shot img.hf-full{width:100%;height:auto;display:block}.hf-p-m-hull .hf-cap{color:var(--tx3);margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-m-hull .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-m-hull .hf-sec{border-top:1px solid var(--bds);padding:64px 0}.hf-p-m-hull .hf-h2{letter-spacing:-.01em;margin:8px 0 18px;font-size:clamp(24px,2.4vw,32px);font-weight:600;line-height:1.15}.hf-p-m-hull .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-m-hull .hf-two{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:40px;display:grid}.hf-p-m-hull .hf-prose p{color:var(--tx2);text-wrap:pretty;margin:0 0 14px;font-size:16px;line-height:1.6}.hf-p-m-hull .hf-prose p b{color:var(--tx);font-weight:600}.hf-p-m-hull .hf-std{flex-direction:column;gap:8px;display:flex}.hf-p-m-hull .hf-stdi{border:1px solid var(--bds);background:var(--s1);border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:4px 12px;padding:12px 14px;display:grid}.hf-p-m-hull .hf-stdi .hf-d{color:var(--tx2);grid-column:2;font-size:13.5px}.hf-p-m-hull .hf-stdi .hf-h{font-size:14.5px;font-weight:600}.hf-p-m-hull .hf-stdi .hf-st{margin-top:2px}.hf-p-m-hull .hf-stdi.hf-f{border-color:var(--fl);background:var(--flbg)}.hf-p-m-hull .hf-io{grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:stretch;display:grid}.hf-p-m-hull .hf-iocol{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:2px;min-width:0;padding:20px 22px;display:flex}.hf-p-m-hull .hf-iocol h3{margin:0 0 10px;font-size:15px;font-weight:600}.hf-p-m-hull .hf-ioi{border-bottom:1px solid var(--bds);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:9px 0;font-size:14px;display:grid}.hf-p-m-hull .hf-ioi:last-child{border-bottom:0}.hf-p-m-hull .hf-ioi .hf-v{color:var(--tx2);text-align:right;font:500 12.5px IBM Plex Mono,monospace}.hf-p-m-hull .hf-iomid{color:var(--tx3);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 8px;display:flex}.hf-p-m-hull .hf-engine{border:1px solid var(--acx);background:var(--acbg);text-align:center;color:var(--tx);border-radius:6px;padding:10px 12px;font:600 12px IBM Plex Mono,monospace}.hf-p-m-hull .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-hull .hf-st{width:16px;height:16px;color:var(--on);flex:none;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-hull .hf-st.hf-ok{background:var(--ok);border-radius:50%}.hf-p-m-hull .hf-st.hf-fl{background:var(--fl);border-radius:2px}.hf-p-m-hull .hf-st.hf-wn{background:var(--wn);clip-path:polygon(50% 0,100% 100%,0 100%);width:18px;padding-top:5px;font-size:9px}.hf-p-m-hull .hf-st.hf-rf{background:var(--rf);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);font-size:9px}.hf-p-m-hull .hf-st.hf-as{border:1.5px dashed var(--as);color:var(--as);border-radius:3px;font-size:10px}.hf-p-m-hull .hf-vb{border:1px solid var(--bd);background:var(--s2);height:24px;color:var(--tx);white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:0 10px 0 7px;font:500 12.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-hull .hf-vi{box-sizing:border-box;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.hf-p-m-hull .hf-vi.hf-validated{background:var(--ok)}.hf-p-m-hull .hf-vi.hf-partial{background:linear-gradient(90deg,var(--wn) 50%,transparent 50%);border:1.5px solid var(--wn)}.hf-p-m-hull .hf-rule{border:1px solid var(--bd);color:var(--tx2);white-space:nowrap;background:var(--s1);border-radius:2px;padding:3px 8px;font:500 11.5px IBM Plex Mono,monospace}.hf-p-m-hull .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-hull .hf-verdict{border:1px solid var(--bd);background:var(--s1);border-radius:8px;overflow:hidden}.hf-p-m-hull .hf-banner{background:var(--flbg);border-bottom:1px solid var(--fl);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 18px;display:flex}.hf-p-m-hull .hf-banner b{font-size:16px}.hf-p-m-hull .hf-gates{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.hf-p-m-hull .hf-gate{border-bottom:1px solid var(--bds);border-right:1px solid var(--bds);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:4px 10px;padding:14px 16px;display:grid}.hf-p-m-hull .hf-gate .hf-h{font-size:14px;font-weight:600}.hf-p-m-hull .hf-gate .hf-v{color:var(--tx2);overflow-wrap:anywhere;grid-column:2;font:12px/1.5 IBM Plex Mono,monospace}.hf-p-m-hull .hf-gate.hf-f{background:color-mix(in srgb,var(--flbg) 55%,transparent)}.hf-p-m-hull .hf-runline{color:var(--tx3);background:var(--s2);flex-wrap:wrap;gap:16px;padding:10px 18px;font:11.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-hull .hf-valid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.hf-p-m-hull .hf-panel{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.hf-p-m-hull .hf-panel h3{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600;display:flex}.hf-p-m-hull .hf-li{color:var(--tx2);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.45;display:grid}.hf-p-m-hull .hf-li .hf-st{margin-top:2px}.hf-p-m-hull .hf-refuse{border:1px solid var(--rf);background:var(--rfbg);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;padding:16px 18px;display:grid}.hf-p-m-hull .hf-rel{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;display:grid}.hf-p-m-hull a.hf-rc{border:1px solid var(--bds);background:var(--s1);color:var(--tx);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.hf-p-m-hull a.hf-rc:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-hull .hf-rc .hf-p{background:#13161b;height:150px;overflow:hidden}.hf-p-m-hull .hf-rc .hf-p img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-m-hull .hf-rc .hf-b{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.hf-p-m-hull .hf-rc .hf-n{font-weight:600}.hf-p-m-hull .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-m-hull .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-m-hull .hf-fbot nav{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hf-p-m-hull .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-m-hull .hf-navl{display:none}.hf-p-m-hull .hf-navr .hf-hide-sm{display:none!important}.hf-p-m-hull .hf-menu-btn{display:inline-flex!important}.hf-p-m-hull .hf-gates{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1020px){.hf-p-m-hull .hf-mh,.hf-p-m-hull .hf-two,.hf-p-m-hull .hf-valid{grid-template-columns:minmax(0,1fr)}.hf-p-m-hull .hf-io{grid-template-columns:minmax(0,1fr);gap:10px}.hf-p-m-hull .hf-iomid{flex-direction:row;padding:8px 0}.hf-p-m-hull .hf-iomid svg{transform:rotate(90deg)}.hf-p-m-hull .hf-seq{grid-template-columns:minmax(0,1fr);gap:6px}.hf-p-m-hull .hf-seqa{height:30px;transform:rotate(90deg)}}@media (width<=640px){.hf-p-m-hull .hf-wrap{padding:0 16px}.hf-p-m-hull .hf-sec{padding:48px 0}.hf-p-m-hull .hf-tiles,.hf-p-m-hull .hf-gates{grid-template-columns:minmax(0,1fr)}}.hf-p-m-intact{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-m-intact *{box-sizing:border-box}.hf-p-m-intact a{color:var(--acx);text-decoration:none}.hf-p-m-intact a:hover{text-decoration:underline}.hf-p-m-intact button{font:inherit;color:inherit}.hf-p-m-intact :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-m-intact .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-m-intact .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-m-intact .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-m-intact .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-m-intact a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-m-intact a.hf-wm:hover{text-decoration:none}.hf-p-m-intact .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-m-intact .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-m-intact .hf-navl a:hover,.hf-p-m-intact .hf-navl a.hf-on{color:var(--tx);text-decoration:none}.hf-p-m-intact .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-m-intact .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-intact .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-intact .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-m-intact .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-m-intact .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-m-intact .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-m-intact .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-m-intact .hf-btn.hf-ib{width:40px;padding:0}.hf-p-m-intact .hf-menu-btn{display:none!important}.hf-p-m-intact .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-m-intact .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-m-intact .hf-crumb{color:var(--tx3);flex-wrap:wrap;align-items:center;gap:8px;padding-top:28px;font:500 12.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-intact .hf-crumb a{color:var(--tx2)}.hf-p-m-intact .hf-mh{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:40px;padding:20px 0 32px;display:grid}.hf-p-m-intact .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:0 0 14px;font-size:clamp(34px,3.6vw,50px);font-weight:600;line-height:1.06}.hf-p-m-intact .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:640px;margin:0 0 22px;font-size:17px}.hf-p-m-intact .hf-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.hf-p-m-intact .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-m-intact .hf-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.hf-p-m-intact .hf-tile{background:var(--s1);border:1px solid var(--bds);border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.hf-p-m-intact .hf-tile.hf-ok{border-color:var(--ok);background:var(--okbg)}.hf-p-m-intact .hf-tile .hf-l{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-intact .hf-tile .hf-v{white-space:nowrap;font:500 22px/1.15 IBM Plex Mono,monospace}.hf-p-m-intact .hf-tile .hf-v span{color:var(--tx3);font-size:13px;font-weight:400}.hf-p-m-intact .hf-tile .hf-s{color:var(--tx3);font:11.5px IBM Plex Mono,monospace}.hf-p-m-intact .hf-shot{color:#e6eaef;background:#13161b;border:1px solid #2b333d;border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-m-intact .hf-shot-bar{color:#a9b3bf;white-space:nowrap;background:#171b21;border-bottom:1px solid #262e38;flex:none;align-items:center;gap:10px;height:36px;padding:0 14px;font:500 12px IBM Plex Mono,monospace;display:flex;overflow:hidden}.hf-p-m-intact .hf-shot-bar .hf-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.hf-p-m-intact .hf-shot-bar .hf-tag{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;border:1px solid #323c48;border-radius:2px;padding:2px 6px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-intact .hf-shot img{width:100%;height:auto;display:block}.hf-p-m-intact .hf-cap{color:var(--tx3);margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-m-intact .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-m-intact .hf-sec{border-top:1px solid var(--bds);padding:64px 0}.hf-p-m-intact .hf-h2{letter-spacing:-.01em;margin:8px 0 18px;font-size:clamp(24px,2.4vw,32px);font-weight:600;line-height:1.15}.hf-p-m-intact .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-m-intact .hf-two{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:40px;display:grid}.hf-p-m-intact .hf-prose p{color:var(--tx2);text-wrap:pretty;margin:0 0 14px;font-size:16px;line-height:1.6}.hf-p-m-intact .hf-prose p b{color:var(--tx);font-weight:600}.hf-p-m-intact .hf-std{flex-direction:column;gap:8px;display:flex}.hf-p-m-intact .hf-stdi{border:1px solid var(--bds);background:var(--s1);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 12px;padding:12px 14px;display:grid}.hf-p-m-intact .hf-stdi .hf-d{color:var(--tx2);grid-column:2;font-size:13.5px}.hf-p-m-intact .hf-stdi .hf-h{font-size:14.5px;font-weight:600}.hf-p-m-intact .hf-io{grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:stretch;gap:0;display:grid}.hf-p-m-intact .hf-iocol{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:2px;min-width:0;padding:20px 22px;display:flex}.hf-p-m-intact .hf-iocol h3{align-items:center;gap:8px;margin:0 0 10px;font-size:15px;font-weight:600;display:flex}.hf-p-m-intact .hf-ioi{border-bottom:1px solid var(--bds);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:9px 0;font-size:14px;display:grid}.hf-p-m-intact .hf-ioi:last-child{border-bottom:0}.hf-p-m-intact .hf-ioi .hf-v{color:var(--tx2);text-align:right;font:500 12.5px IBM Plex Mono,monospace}.hf-p-m-intact .hf-iomid{color:var(--tx3);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 8px;display:flex}.hf-p-m-intact .hf-engine{border:1px solid var(--acx);background:var(--acbg);text-align:center;color:var(--tx);border-radius:6px;padding:10px 12px;font:600 12px IBM Plex Mono,monospace}.hf-p-m-intact .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-intact .hf-st{width:16px;height:16px;color:var(--on);flex:none;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-intact .hf-st.hf-ok{background:var(--ok);border-radius:50%}.hf-p-m-intact .hf-st.hf-fl{background:var(--fl);border-radius:2px}.hf-p-m-intact .hf-st.hf-wn{background:var(--wn);clip-path:polygon(50% 0,100% 100%,0 100%);width:18px;padding-top:5px;font-size:9px}.hf-p-m-intact .hf-st.hf-rf{background:var(--rf);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);font-size:9px}.hf-p-m-intact .hf-vb{border:1px solid var(--bd);background:var(--s2);height:24px;color:var(--tx);white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:0 10px 0 7px;font:500 12.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-intact .hf-vi{box-sizing:border-box;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.hf-p-m-intact .hf-vi.hf-validated{background:var(--ok)}.hf-p-m-intact .hf-vi.hf-partial{background:linear-gradient(90deg,var(--wn) 50%,transparent 50%);border:1.5px solid var(--wn)}.hf-p-m-intact .hf-vi.hf-notbuilt{border:1.5px dashed var(--tx3)}.hf-p-m-intact .hf-rule{border:1px solid var(--bd);color:var(--tx2);white-space:nowrap;background:var(--s1);border-radius:2px;padding:3px 8px;font:500 11.5px IBM Plex Mono,monospace}.hf-p-m-intact .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-intact .hf-valid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.hf-p-m-intact .hf-panel{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.hf-p-m-intact .hf-panel h3{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600;display:flex}.hf-p-m-intact .hf-li{color:var(--tx2);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.45;display:grid}.hf-p-m-intact .hf-li .hf-st{margin-top:2px}.hf-p-m-intact .hf-note{border:1px solid var(--wn);background:var(--wnbg);border-radius:4px;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:10px 12px;font-size:13.5px;line-height:1.45;display:grid}.hf-p-m-intact .hf-mrow{border-bottom:1px solid var(--bds);grid-template-columns:18px minmax(0,230px) minmax(0,1fr) 140px;align-items:center;gap:14px;padding:10px 0;display:grid}.hf-p-m-intact .hf-mrow .hf-t{font-size:14px;line-height:1.3}.hf-p-m-intact .hf-mrow .hf-t span{color:var(--tx3);font:11px IBM Plex Mono,monospace;display:block}.hf-p-m-intact .hf-mrow .hf-bar{background:var(--s3);border-radius:2px;height:10px;position:relative;overflow:hidden}.hf-p-m-intact .hf-mrow .hf-bar i{background:var(--ok);border-radius:2px;position:absolute;top:0;bottom:0;left:0}.hf-p-m-intact .hf-mrow .hf-n{text-align:right;white-space:nowrap;font:500 12.5px IBM Plex Mono,monospace}.hf-p-m-intact .hf-mrow .hf-n span{color:var(--tx3);font-size:11px;font-weight:400;display:block}.hf-p-m-intact .hf-rel{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;display:grid}.hf-p-m-intact a.hf-rc{border:1px solid var(--bds);background:var(--s1);color:var(--tx);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.hf-p-m-intact a.hf-rc:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-intact .hf-rc .hf-p{background:#13161b;height:150px;overflow:hidden}.hf-p-m-intact .hf-rc .hf-p img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-m-intact .hf-rc .hf-b{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.hf-p-m-intact .hf-rc .hf-n{font-weight:600}.hf-p-m-intact .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-m-intact .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-m-intact .hf-fbot nav{flex-wrap:wrap;gap:18px;display:flex}.hf-p-m-intact .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-m-intact .hf-navl{display:none}.hf-p-m-intact .hf-navr .hf-hide-sm{display:none!important}.hf-p-m-intact .hf-menu-btn{display:inline-flex!important}}@media (width<=1020px){.hf-p-m-intact .hf-mh,.hf-p-m-intact .hf-two,.hf-p-m-intact .hf-valid{grid-template-columns:minmax(0,1fr)}.hf-p-m-intact .hf-io{grid-template-columns:minmax(0,1fr);gap:10px}.hf-p-m-intact .hf-iomid{flex-direction:row;padding:8px 0}.hf-p-m-intact .hf-iomid svg{transform:rotate(90deg)}.hf-p-m-intact .hf-mrow{grid-template-columns:18px minmax(0,1fr) 120px}.hf-p-m-intact .hf-mrow .hf-bar{grid-area:2/2/auto/-1}}@media (width<=640px){.hf-p-m-intact .hf-wrap{padding:0 16px}.hf-p-m-intact .hf-sec{padding:48px 0}.hf-p-m-intact .hf-tiles{grid-template-columns:minmax(0,1fr)}}.hf-p-m-strength{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-m-strength *{box-sizing:border-box}.hf-p-m-strength a{color:var(--acx);text-decoration:none}.hf-p-m-strength a:hover{text-decoration:underline}.hf-p-m-strength button{font:inherit;color:inherit}.hf-p-m-strength :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-m-strength .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-m-strength .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-m-strength .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-m-strength .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-m-strength a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-m-strength a.hf-wm:hover{text-decoration:none}.hf-p-m-strength .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-m-strength .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-m-strength .hf-navl a:hover,.hf-p-m-strength .hf-navl a.hf-on{color:var(--tx);text-decoration:none}.hf-p-m-strength .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-m-strength .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-strength .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-strength .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-m-strength .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-m-strength .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-m-strength .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-m-strength .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-m-strength .hf-btn.hf-ib{width:40px;padding:0}.hf-p-m-strength .hf-menu-btn{display:none!important}.hf-p-m-strength .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-m-strength .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-m-strength .hf-crumb{color:var(--tx3);flex-wrap:wrap;align-items:center;gap:8px;padding-top:28px;font:500 12.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-strength .hf-crumb a{color:var(--tx2)}.hf-p-m-strength .hf-mh{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:end;gap:40px;padding:20px 0 32px;display:grid}.hf-p-m-strength .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:0 0 14px;font-size:clamp(34px,3.6vw,50px);font-weight:600;line-height:1.06}.hf-p-m-strength .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:640px;margin:0 0 22px;font-size:17px}.hf-p-m-strength .hf-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.hf-p-m-strength .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-m-strength .hf-tgroup{flex-direction:column;gap:8px;display:flex}.hf-p-m-strength .hf-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.hf-p-m-strength .hf-tile{background:var(--s1);border:1px solid var(--bds);border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.hf-p-m-strength .hf-tile .hf-l{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-strength .hf-tile .hf-v{white-space:nowrap;font:500 20px/1.15 IBM Plex Mono,monospace}.hf-p-m-strength .hf-tile .hf-v span{color:var(--tx3);font-size:12px;font-weight:400}.hf-p-m-strength .hf-tile .hf-s{color:var(--tx3);font:11.5px IBM Plex Mono,monospace}.hf-p-m-strength .hf-shot{color:#e6eaef;background:#13161b;border:1px solid #2b333d;border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-m-strength .hf-shot-bar{color:#a9b3bf;white-space:nowrap;background:#171b21;border-bottom:1px solid #262e38;flex:none;align-items:center;gap:10px;height:36px;padding:0 14px;font:500 12px IBM Plex Mono,monospace;display:flex;overflow:hidden}.hf-p-m-strength .hf-shot-bar .hf-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.hf-p-m-strength .hf-shot-bar .hf-tag{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;border:1px solid #323c48;border-radius:2px;padding:2px 6px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-strength .hf-shot img{width:100%;height:auto;display:block}.hf-p-m-strength .hf-profile{background:#13161b;border-top:1px dashed #323c48;padding:6px 0 10px}.hf-p-m-strength .hf-profile img{width:100%;height:auto;display:block}.hf-p-m-strength .hf-plabel{color:#8592a0;padding:0 14px 6px;font:500 11px IBM Plex Mono,monospace}.hf-p-m-strength .hf-cap{color:var(--tx3);margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-m-strength .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-m-strength .hf-sec{border-top:1px solid var(--bds);padding:64px 0}.hf-p-m-strength .hf-h2{letter-spacing:-.01em;margin:8px 0 18px;font-size:clamp(24px,2.4vw,32px);font-weight:600;line-height:1.15}.hf-p-m-strength .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-m-strength .hf-two{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:40px;display:grid}.hf-p-m-strength .hf-prose p{color:var(--tx2);text-wrap:pretty;margin:0 0 14px;font-size:16px;line-height:1.6}.hf-p-m-strength .hf-prose p b{color:var(--tx);font-weight:600}.hf-p-m-strength .hf-std{flex-direction:column;gap:8px;display:flex}.hf-p-m-strength .hf-stdi{border:1px solid var(--bds);background:var(--s1);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 12px;padding:12px 14px;display:grid}.hf-p-m-strength .hf-stdi .hf-d{color:var(--tx2);grid-column:2;font-size:13.5px}.hf-p-m-strength .hf-stdi .hf-h{font-size:14.5px;font-weight:600}.hf-p-m-strength .hf-io{grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:stretch;display:grid}.hf-p-m-strength .hf-iocol{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:2px;min-width:0;padding:20px 22px;display:flex}.hf-p-m-strength .hf-iocol h3{margin:0 0 10px;font-size:15px;font-weight:600}.hf-p-m-strength .hf-ioi{border-bottom:1px solid var(--bds);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:9px 0;font-size:14px;display:grid}.hf-p-m-strength .hf-ioi:last-child{border-bottom:0}.hf-p-m-strength .hf-ioi .hf-v{color:var(--tx2);text-align:right;font:500 12.5px IBM Plex Mono,monospace}.hf-p-m-strength .hf-iomid{color:var(--tx3);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 8px;display:flex}.hf-p-m-strength .hf-engine{border:1px solid var(--acx);background:var(--acbg);text-align:center;color:var(--tx);border-radius:6px;padding:10px 12px;font:600 12px IBM Plex Mono,monospace}.hf-p-m-strength .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-strength .hf-st{width:16px;height:16px;color:var(--on);flex:none;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-strength .hf-st.hf-ok{background:var(--ok);border-radius:50%}.hf-p-m-strength .hf-st.hf-wn{background:var(--wn);clip-path:polygon(50% 0,100% 100%,0 100%);width:18px;padding-top:5px;font-size:9px}.hf-p-m-strength .hf-st.hf-nb{border:1.5px dashed var(--tx3);border-radius:50%}.hf-p-m-strength .hf-vb{border:1px solid var(--bd);background:var(--s2);height:24px;color:var(--tx);white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:0 10px 0 7px;font:500 12.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-strength .hf-vi{box-sizing:border-box;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.hf-p-m-strength .hf-vi.hf-validated{background:var(--ok)}.hf-p-m-strength .hf-vi.hf-partial{background:linear-gradient(90deg,var(--wn) 50%,transparent 50%);border:1.5px solid var(--wn)}.hf-p-m-strength .hf-rule{border:1px solid var(--bd);color:var(--tx2);white-space:nowrap;background:var(--s1);border-radius:2px;padding:3px 8px;font:500 11.5px IBM Plex Mono,monospace}.hf-p-m-strength .hf-valid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.hf-p-m-strength .hf-panel{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.hf-p-m-strength .hf-panel h3{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600;display:flex}.hf-p-m-strength .hf-li{color:var(--tx2);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.45;display:grid}.hf-p-m-strength .hf-li .hf-st{margin-top:2px}.hf-p-m-strength .hf-gap{border:1.5px dashed var(--bdx);background:var(--s2);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:16px 18px;display:grid}.hf-p-m-strength .hf-env{flex-direction:column;gap:14px;display:flex}.hf-p-m-strength .hf-erow{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:14px;display:grid}.hf-p-m-strength .hf-erow .hf-k{font-size:14px;font-weight:600}.hf-p-m-strength .hf-bars{flex-direction:column;gap:5px;display:flex}.hf-p-m-strength .hf-br{grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:10px;display:grid}.hf-p-m-strength .hf-br .hf-b{background:var(--s3);border-radius:2px;height:14px;position:relative}.hf-p-m-strength .hf-br .hf-b i{border-radius:2px;position:absolute;top:0;bottom:0;left:0}.hf-p-m-strength .hf-br .hf-n{color:var(--tx2);white-space:nowrap;text-align:right;font:500 12px IBM Plex Mono,monospace}.hf-p-m-strength .hf-key{color:var(--tx3);flex-wrap:wrap;gap:18px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-m-strength .hf-key span{align-items:center;gap:6px;display:inline-flex}.hf-p-m-strength .hf-key i{border-radius:2px;width:14px;height:8px;display:inline-block}.hf-p-m-strength .hf-rel{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;display:grid}.hf-p-m-strength a.hf-rc{border:1px solid var(--bds);background:var(--s1);color:var(--tx);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.hf-p-m-strength a.hf-rc:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-strength .hf-rc .hf-p{background:#13161b;height:150px;overflow:hidden}.hf-p-m-strength .hf-rc .hf-p img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-m-strength .hf-rc .hf-b{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.hf-p-m-strength .hf-rc .hf-n{font-weight:600}.hf-p-m-strength .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-m-strength .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-m-strength .hf-fbot nav{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hf-p-m-strength .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-m-strength .hf-navl{display:none}.hf-p-m-strength .hf-navr .hf-hide-sm{display:none!important}.hf-p-m-strength .hf-menu-btn{display:inline-flex!important}}@media (width<=1020px){.hf-p-m-strength .hf-mh,.hf-p-m-strength .hf-two,.hf-p-m-strength .hf-valid{grid-template-columns:minmax(0,1fr)}.hf-p-m-strength .hf-io{grid-template-columns:minmax(0,1fr);gap:10px}.hf-p-m-strength .hf-iomid{flex-direction:row;padding:8px 0}.hf-p-m-strength .hf-iomid svg{transform:rotate(90deg)}.hf-p-m-strength .hf-erow{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.hf-p-m-strength .hf-wrap{padding:0 16px}.hf-p-m-strength .hf-sec{padding:48px 0}.hf-p-m-strength .hf-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.hf-p-m-strength .hf-br{grid-template-columns:minmax(0,1fr)}.hf-p-m-strength .hf-br .hf-n{text-align:left}}.hf-p-m-seakeeping{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-m-seakeeping *{box-sizing:border-box}.hf-p-m-seakeeping a{color:var(--acx);text-decoration:none}.hf-p-m-seakeeping a:hover{text-decoration:underline}.hf-p-m-seakeeping button{font:inherit;color:inherit}.hf-p-m-seakeeping :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-m-seakeeping .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-m-seakeeping .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-m-seakeeping .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-m-seakeeping .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-m-seakeeping a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-m-seakeeping a.hf-wm:hover{text-decoration:none}.hf-p-m-seakeeping .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-m-seakeeping .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-m-seakeeping .hf-navl a:hover,.hf-p-m-seakeeping .hf-navl a.hf-on{color:var(--tx);text-decoration:none}.hf-p-m-seakeeping .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-m-seakeeping .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-seakeeping .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-seakeeping .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-m-seakeeping .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-m-seakeeping .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-m-seakeeping .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-m-seakeeping .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-m-seakeeping .hf-btn.hf-ib{width:40px;padding:0}.hf-p-m-seakeeping .hf-menu-btn{display:none!important}.hf-p-m-seakeeping .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-m-seakeeping .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-m-seakeeping .hf-crumb{color:var(--tx3);flex-wrap:wrap;align-items:center;gap:8px;padding-top:28px;font:500 12.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-seakeeping .hf-crumb a{color:var(--tx2)}.hf-p-m-seakeeping .hf-mh{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:40px;padding:20px 0 32px;display:grid}.hf-p-m-seakeeping .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:0 0 14px;font-size:clamp(34px,3.6vw,50px);font-weight:600;line-height:1.06}.hf-p-m-seakeeping .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:640px;margin:0 0 22px;font-size:17px}.hf-p-m-seakeeping .hf-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.hf-p-m-seakeeping .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-m-seakeeping .hf-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.hf-p-m-seakeeping .hf-tile{background:var(--s1);border:1px solid var(--bds);border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.hf-p-m-seakeeping .hf-tile .hf-l{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-seakeeping .hf-tile .hf-v{white-space:nowrap;font:500 21px/1.15 IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-tile .hf-v span{color:var(--tx3);font-size:12px;font-weight:400}.hf-p-m-seakeeping .hf-tile .hf-s{color:var(--tx3);font:11.5px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-shot{color:#e6eaef;background:#13161b;border:1px solid #2b333d;border-radius:8px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hf-p-m-seakeeping .hf-shot-bar{color:#a9b3bf;white-space:nowrap;background:#171b21;border-bottom:1px solid #262e38;flex:none;align-items:center;gap:10px;height:36px;padding:0 14px;font:500 12px IBM Plex Mono,monospace;display:flex;overflow:hidden}.hf-p-m-seakeeping .hf-shot-bar .hf-t{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.hf-p-m-seakeeping .hf-shot-bar .hf-tag{letter-spacing:.06em;text-transform:uppercase;color:#8592a0;border:1px solid #323c48;border-radius:2px;padding:2px 6px;font:600 10px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-shot img{width:100%;height:auto;display:block}.hf-p-m-seakeeping .hf-cap{color:var(--tx3);margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-m-seakeeping .hf-sec{border-top:1px solid var(--bds);padding:64px 0}.hf-p-m-seakeeping .hf-h2{letter-spacing:-.01em;margin:8px 0 18px;font-size:clamp(24px,2.4vw,32px);font-weight:600;line-height:1.15}.hf-p-m-seakeeping .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-two{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:40px;display:grid}.hf-p-m-seakeeping .hf-prose p{color:var(--tx2);text-wrap:pretty;margin:0 0 14px;font-size:16px;line-height:1.6}.hf-p-m-seakeeping .hf-prose p b{color:var(--tx);font-weight:600}.hf-p-m-seakeeping .hf-std{flex-direction:column;gap:8px;display:flex}.hf-p-m-seakeeping .hf-stdi{border:1px solid var(--bds);background:var(--s1);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 12px;padding:12px 14px;display:grid}.hf-p-m-seakeeping .hf-stdi .hf-d{color:var(--tx2);grid-column:2;font-size:13.5px}.hf-p-m-seakeeping .hf-stdi .hf-h{font-size:14.5px;font-weight:600}.hf-p-m-seakeeping .hf-io{grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:stretch;display:grid}.hf-p-m-seakeeping .hf-iocol{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:2px;min-width:0;padding:20px 22px;display:flex}.hf-p-m-seakeeping .hf-iocol h3{margin:0 0 10px;font-size:15px;font-weight:600}.hf-p-m-seakeeping .hf-ioi{border-bottom:1px solid var(--bds);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:9px 0;font-size:14px;display:grid}.hf-p-m-seakeeping .hf-ioi:last-child{border-bottom:0}.hf-p-m-seakeeping .hf-ioi .hf-v{color:var(--tx2);text-align:right;font:500 12.5px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-iomid{color:var(--tx3);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 8px;display:flex}.hf-p-m-seakeeping .hf-engine{border:1px solid var(--acx);background:var(--acbg);text-align:center;color:var(--tx);border-radius:6px;padding:10px 12px;font:600 12px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-m-seakeeping .hf-st{width:16px;height:16px;color:var(--on);flex:none;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-seakeeping .hf-st.hf-ok{background:var(--ok);border-radius:50%}.hf-p-m-seakeeping .hf-st.hf-wn{background:var(--wn);clip-path:polygon(50% 0,100% 100%,0 100%);width:18px;padding-top:5px;font-size:9px}.hf-p-m-seakeeping .hf-vb{border:1px solid var(--bd);background:var(--s2);height:24px;color:var(--tx);white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:0 10px 0 7px;font:500 12.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-m-seakeeping .hf-vi{box-sizing:border-box;border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.hf-p-m-seakeeping .hf-vi.hf-validated{background:var(--ok)}.hf-p-m-seakeeping .hf-vi.hf-partial{background:linear-gradient(90deg,var(--wn) 50%,transparent 50%);border:1.5px solid var(--wn)}.hf-p-m-seakeeping .hf-rule{border:1px solid var(--bd);color:var(--tx2);white-space:nowrap;background:var(--s1);border-radius:2px;padding:3px 8px;font:500 11.5px IBM Plex Mono,monospace}.hf-p-m-seakeeping .hf-valid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.hf-p-m-seakeeping .hf-panel{background:var(--s1);border:1px solid var(--bds);border-radius:8px;flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.hf-p-m-seakeeping .hf-panel h3{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:16px;font-weight:600;display:flex}.hf-p-m-seakeeping .hf-li{color:var(--tx2);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.45;display:grid}.hf-p-m-seakeeping .hf-li .hf-st{margin-top:2px}.hf-p-m-seakeeping .hf-partialbar{border:1px solid var(--wn);background:var(--wnbg);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin-top:20px;padding:14px 18px;display:grid}.hf-p-m-seakeeping .hf-heads{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.hf-p-m-seakeeping .hf-hd{border:1px solid var(--bds);background:var(--s1);border-radius:8px;flex-direction:column;gap:8px;padding:16px 18px;display:flex}.hf-p-m-seakeeping .hf-hd .hf-top{align-items:center;gap:12px;display:flex}.hf-p-m-seakeeping .hf-hd .hf-rows{flex-direction:column;gap:4px;font:12.5px IBM Plex Mono,monospace;display:flex}.hf-p-m-seakeeping .hf-hd .hf-rows div{border-bottom:1px solid var(--bds);justify-content:space-between;gap:8px;padding:4px 0;display:flex}.hf-p-m-seakeeping .hf-hd .hf-rows span{color:var(--tx3)}.hf-p-m-seakeeping .hf-rel{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;display:grid}.hf-p-m-seakeeping a.hf-rc{border:1px solid var(--bds);background:var(--s1);color:var(--tx);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.hf-p-m-seakeeping a.hf-rc:hover{border-color:var(--bdx);text-decoration:none}.hf-p-m-seakeeping .hf-rc .hf-p{background:#13161b;height:150px;overflow:hidden}.hf-p-m-seakeeping .hf-rc .hf-p img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-m-seakeeping .hf-rc .hf-b{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.hf-p-m-seakeeping .hf-rc .hf-n{font-weight:600}.hf-p-m-seakeeping .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-m-seakeeping .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-m-seakeeping .hf-fbot nav{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hf-p-m-seakeeping .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-m-seakeeping .hf-navl{display:none}.hf-p-m-seakeeping .hf-navr .hf-hide-sm{display:none!important}.hf-p-m-seakeeping .hf-menu-btn{display:inline-flex!important}}@media (width<=1020px){.hf-p-m-seakeeping .hf-mh,.hf-p-m-seakeeping .hf-two,.hf-p-m-seakeeping .hf-valid{grid-template-columns:minmax(0,1fr)}.hf-p-m-seakeeping .hf-io{grid-template-columns:minmax(0,1fr);gap:10px}.hf-p-m-seakeeping .hf-iomid{flex-direction:row;padding:8px 0}.hf-p-m-seakeeping .hf-iomid svg{transform:rotate(90deg)}.hf-p-m-seakeeping .hf-heads{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.hf-p-m-seakeeping .hf-wrap{padding:0 16px}.hf-p-m-seakeeping .hf-sec{padding:48px 0}.hf-p-m-seakeeping .hf-tiles{grid-template-columns:minmax(0,1fr)}}.hf-p-pricing{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-pricing *{box-sizing:border-box}.hf-p-pricing a{color:var(--acx);text-decoration:none}.hf-p-pricing a:hover{text-decoration:underline}.hf-p-pricing button{font:inherit;color:inherit}.hf-p-pricing :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-pricing .hf-m{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.hf-p-pricing .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-pricing .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-pricing .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-pricing a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-pricing a.hf-wm:hover{text-decoration:none}.hf-p-pricing .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-pricing .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-pricing .hf-navl a:hover,.hf-p-pricing .hf-navl a.hf-on{color:var(--tx);text-decoration:none}.hf-p-pricing .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-pricing .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-pricing .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-pricing .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-pricing .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-pricing .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-pricing .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-pricing .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-pricing .hf-btn.hf-ib{width:40px;padding:0}.hf-p-pricing .hf-btn.hf-full{width:100%}.hf-p-pricing .hf-menu-btn{display:none!important}.hf-p-pricing .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-pricing .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-pricing .hf-ph{border-bottom:1px solid var(--bds);position:relative;overflow:hidden}.hf-p-pricing .hf-ph-grid{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:center;gap:32px;padding:56px 0 40px;display:grid}.hf-p-pricing .hf-ph img{width:112%;max-width:none;margin-left:-4%;display:block;-webkit-mask-image:radial-gradient(58% 56% at 50% 52%,#000 60%,#0000 100%);mask-image:radial-gradient(58% 56% at 50% 52%,#000 60%,#0000 100%)}.hf-p-pricing .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-pricing .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:14px 0 16px;font-size:clamp(36px,4vw,54px);font-weight:600;line-height:1.05}.hf-p-pricing .hf-lead{color:var(--tx2);text-wrap:pretty;max-width:560px;margin:0;font-size:17px}.hf-p-pricing .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;letter-spacing:.02em;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-pricing .hf-tiers{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:20px;padding:48px 0 24px;display:grid}.hf-p-pricing .hf-tier{background:var(--s1);border:1px solid var(--bds);border-radius:10px;flex-direction:column;gap:18px;padding:28px 28px 30px;display:flex;position:relative}.hf-p-pricing .hf-tier.hf-hl{border-color:var(--acx);box-shadow:0 0 0 1px var(--acx)}.hf-p-pricing .hf-pill{background:var(--ac);color:#fff;letter-spacing:.02em;border-radius:12px;align-items:center;height:24px;padding:0 10px;font:600 11.5px IBM Plex Sans,sans-serif;display:inline-flex;position:absolute;top:-12px;left:28px}.hf-p-pricing .hf-tier h2{margin:0;font-size:22px;font-weight:600}.hf-p-pricing .hf-tier .hf-who{color:var(--tx2);min-height:44px;margin:4px 0 0;font-size:14.5px}.hf-p-pricing .hf-price{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.hf-p-pricing .hf-price .hf-v{letter-spacing:-.02em;font:500 40px/1 IBM Plex Mono,monospace}.hf-p-pricing .hf-price .hf-u{color:var(--tx3);font:13px IBM Plex Mono,monospace}.hf-p-pricing .hf-feats{border-top:1px solid var(--bds);flex-direction:column;gap:10px;margin:0;padding:18px 0 0;list-style:none;display:flex}.hf-p-pricing .hf-feats li{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:14px;line-height:1.4;display:grid}.hf-p-pricing .hf-st{width:16px;height:16px;color:var(--on);background:var(--ok);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-pricing .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-pricing .hf-incl{border-top:1px solid var(--bds);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:32px;margin-top:32px;padding:48px 0 72px;display:grid}.hf-p-pricing .hf-incl h3{letter-spacing:-.01em;margin:8px 0 12px;font-size:26px;font-weight:600}.hf-p-pricing .hf-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.hf-p-pricing .hf-thumbs a{background:#13161b;border:1px solid #2b333d;border-radius:6px;height:96px;display:block;overflow:hidden}.hf-p-pricing .hf-thumbs img{object-fit:cover;width:100%;height:100%;display:block}.hf-p-pricing .hf-proofs{flex-direction:column;gap:8px;margin:18px 0 22px;display:flex}.hf-p-pricing .hf-proof{align-items:center;gap:10px;font:500 13px IBM Plex Mono,monospace;display:flex}.hf-p-pricing .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-pricing .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-pricing .hf-fbot nav{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hf-p-pricing .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-pricing .hf-navl{display:none}.hf-p-pricing .hf-navr .hf-hide-sm{display:none!important}.hf-p-pricing .hf-menu-btn{display:inline-flex!important}}@media (width<=1020px){.hf-p-pricing .hf-ph-grid,.hf-p-pricing .hf-incl{grid-template-columns:minmax(0,1fr)}.hf-p-pricing .hf-ph img{width:100%;margin:0}}@media (width<=640px){.hf-p-pricing .hf-wrap{padding:0 16px}.hf-p-pricing .hf-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}}.hf-p-demo{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}.hf-p-demo *{box-sizing:border-box}.hf-p-demo a{color:var(--acx);text-decoration:none}.hf-p-demo a:hover{text-decoration:underline}.hf-p-demo button,.hf-p-demo input,.hf-p-demo textarea{font:inherit;color:inherit}.hf-p-demo :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-demo .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}.hf-p-demo .hf-nav{z-index:30;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bds);position:sticky;top:0}.hf-p-demo .hf-navin{align-items:center;gap:28px;height:64px;display:flex}.hf-p-demo a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-demo a.hf-wm:hover{text-decoration:none}.hf-p-demo .hf-navl{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.hf-p-demo .hf-navl a{color:var(--tx2);white-space:nowrap;font-size:14px;font-weight:500}.hf-p-demo .hf-navl a:hover{color:var(--tx);text-decoration:none}.hf-p-demo .hf-navr{align-items:center;gap:8px;margin-left:auto;display:flex}.hf-p-demo .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-demo .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-demo .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-demo .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-demo .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-demo .hf-btn.hf-gh:hover{color:var(--tx);background:var(--s3)}.hf-p-demo .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-demo .hf-btn.hf-ib{width:40px;padding:0}.hf-p-demo .hf-menu-btn{display:none!important}.hf-p-demo .hf-mnav{flex-direction:column;padding:4px 0 16px;display:flex}.hf-p-demo .hf-mnav a{color:var(--tx);border-bottom:1px solid var(--bds);padding:13px 0;font-weight:500}.hf-p-demo .hf-dg{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:48px;padding:64px 0 80px;display:grid}.hf-p-demo .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-demo .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:14px 0 12px;font-size:clamp(34px,3.6vw,48px);font-weight:600;line-height:1.06}.hf-p-demo .hf-lead{color:var(--tx2);text-wrap:pretty;margin:0 0 28px;font-size:16.5px}.hf-p-demo .hf-form{flex-direction:column;gap:16px;display:flex}.hf-p-demo .hf-row2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.hf-p-demo .hf-fld{flex-direction:column;gap:6px;min-width:0;display:flex}.hf-p-demo .hf-fld label,.hf-p-demo .hf-legend{color:var(--tx2);font-size:13px;font-weight:500}.hf-p-demo .hf-inp{border:1px solid var(--bd);background:var(--bg);border-radius:4px;outline:none;width:100%;height:44px;padding:0 12px;font-size:15px}.hf-p-demo .hf-inp:focus{border-color:var(--acx);outline:2px solid var(--acx);outline-offset:1px}.hf-p-demo textarea.hf-inp{resize:vertical;height:104px;padding:10px 12px;line-height:1.45}.hf-p-demo fieldset{border:0;min-width:0;margin:0;padding:0}.hf-p-demo .hf-vt{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.hf-p-demo .hf-vtb{border:1px solid var(--bd);background:var(--s1);height:36px;color:var(--tx2);cursor:pointer;border-radius:18px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.hf-p-demo .hf-vtb.hf-on{background:var(--acbg);border-color:var(--acx);color:var(--tx)}.hf-p-demo .hf-box{border:1.5px solid var(--bdx);border-radius:2px;width:12px;height:12px;display:inline-block}.hf-p-demo .hf-vtb.hf-on .hf-box{background:var(--acx);border-color:var(--acx)}.hf-p-demo .hf-note{color:var(--tx3);font:12px IBM Plex Mono,monospace}.hf-p-demo .hf-art{position:relative}.hf-p-demo .hf-art img{border:1px solid var(--bds);border-radius:10px;width:100%;display:block}.hf-p-demo .hf-cap{color:var(--tx3);margin-top:10px;font:12px/1.55 IBM Plex Mono,monospace}.hf-p-demo .hf-cap b{color:var(--tx2);font-weight:500}.hf-p-demo .hf-done{border:1px solid var(--ok);background:var(--okbg);border-radius:8px;flex-direction:column;gap:10px;padding:22px 24px;display:flex}.hf-p-demo .hf-st{width:18px;height:18px;color:var(--on);background:var(--ok);border-radius:50%;flex:none;justify-content:center;align-items:center;font:700 11px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-demo .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-demo .hf-foot{border-top:1px solid var(--bds);background:var(--s1);padding:28px 0}.hf-p-demo .hf-fbot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font:12px IBM Plex Mono,monospace;display:flex}.hf-p-demo .hf-fbot nav{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hf-p-demo .hf-fbot a{color:var(--tx2);font-family:IBM Plex Sans,sans-serif;font-size:13.5px}@media (width<=1100px){.hf-p-demo .hf-navl{display:none}.hf-p-demo .hf-navr .hf-hide-sm{display:none!important}.hf-p-demo .hf-menu-btn{display:inline-flex!important}}@media (width<=1020px){.hf-p-demo .hf-dg{grid-template-columns:minmax(0,1fr)}.hf-p-demo .hf-art{order:-1}}@media (width<=640px){.hf-p-demo .hf-wrap{padding:0 16px}.hf-p-demo .hf-row2{grid-template-columns:minmax(0,1fr)}.hf-p-demo .hf-dg{padding:32px 0 56px}}.hf-p-next{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;position:relative;overflow-x:hidden}.hf-p-next *{box-sizing:border-box}.hf-p-next a{color:var(--acx);text-decoration:none}.hf-p-next a:hover{text-decoration:underline}.hf-p-next button{font:inherit;color:inherit}.hf-p-next :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-next .hf-wrap{max-width:1240px;margin:0 auto;padding:0 32px;position:relative}.hf-p-next .hf-top{border-bottom:1px solid var(--bds);align-items:center;gap:16px;height:64px;display:flex}.hf-p-next a.hf-wm{color:var(--tx);font-size:18px;font-weight:700}.hf-p-next .hf-btn{border:1px solid var(--bd);background:var(--s3);height:40px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font:500 14px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-next .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-next .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-next .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000}.hf-p-next .hf-btn.hf-lg{height:48px;padding:0 22px;font-size:15px}.hf-p-next .hf-bgimg{opacity:.16;pointer-events:none;width:66%;position:absolute;top:40px;right:-6%;-webkit-mask-image:radial-gradient(60% 55%,#000 50%,#0000 100%);mask-image:radial-gradient(60% 55%,#000 50%,#0000 100%)}.hf-p-next .hf-cn{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:48px;padding:72px 0 80px;display:grid}.hf-p-next .hf-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--acx);font:600 12px IBM Plex Mono,monospace}.hf-p-next .hf-h1{letter-spacing:-.02em;text-wrap:balance;margin:14px 0;font-size:clamp(32px,3.4vw,46px);font-weight:600;line-height:1.08}.hf-p-next .hf-lead{color:var(--tx2);text-wrap:pretty;margin:0 0 26px;font-size:16.5px}.hf-p-next .hf-ctas{flex-wrap:wrap;gap:10px;display:flex}.hf-p-next .hf-road{background:color-mix(in srgb,var(--s1) 94%,transparent);border:1px solid var(--bds);border-radius:10px;overflow:hidden}.hf-p-next .hf-ph{border-bottom:1px solid var(--bds);grid-template-columns:22px 92px minmax(0,1fr);align-items:start;gap:4px 14px;padding:14px 20px;display:grid}.hf-p-next .hf-ph:last-child{border-bottom:0}.hf-p-next .hf-ph.hf-done{background:var(--okbg)}.hf-p-next .hf-ph.hf-next{background:var(--acbg)}.hf-p-next .hf-ph .hf-k{color:var(--tx3);padding-top:1px;font:600 12px IBM Plex Mono,monospace}.hf-p-next .hf-ph .hf-t{font-size:14.5px;font-weight:600}.hf-p-next .hf-ph .hf-d{color:var(--tx2);grid-column:3;font-size:13.5px;line-height:1.4}.hf-p-next .hf-mk{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;margin-top:1px;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-next .hf-mk.hf-ok{background:var(--ok);color:var(--on)}.hf-p-next .hf-mk.hf-nx{border:2px solid var(--acx)}.hf-p-next .hf-mk.hf-pl{border:1.5px dashed var(--tx3)}.hf-p-next .hf-from{border-top:1px solid var(--bds);flex-direction:column;gap:6px;margin-top:28px;padding-top:20px;display:flex}.hf-p-next .hf-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);font:600 11px IBM Plex Sans,sans-serif}.hf-p-next .hf-fr{border-bottom:1px solid var(--bds);justify-content:space-between;gap:12px;padding:6px 0;font-size:14px;display:flex}.hf-p-next .hf-fr span:last-child{color:var(--tx3);white-space:nowrap;font:500 12.5px IBM Plex Mono,monospace}@media (width<=1020px){.hf-p-next .hf-cn{grid-template-columns:minmax(0,1fr)}.hf-p-next .hf-bgimg{width:100%;right:0}}@media (width<=640px){.hf-p-next .hf-wrap{padding:0 16px}.hf-p-next .hf-cn{padding:40px 0 56px}.hf-p-next .hf-ph{grid-template-columns:22px minmax(0,1fr)}.hf-p-next .hf-ph .hf-k,.hf-p-next .hf-ph .hf-t,.hf-p-next .hf-ph .hf-d{grid-column:2}}.hf-p-login{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;line-height:1.45;display:flex;position:relative;overflow:hidden}.hf-p-login *{box-sizing:border-box}.hf-p-login a{color:var(--acx);text-decoration:none}.hf-p-login a:hover{text-decoration:underline}.hf-p-login button,.hf-p-login input,.hf-p-login select{font:inherit;color:inherit}.hf-p-login :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-login .hf-bg{opacity:.13;pointer-events:none;width:1500px;max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-46%);-webkit-mask-image:radial-gradient(50% 50%,#000 40%,#0000 100%);mask-image:radial-gradient(50% 50%,#000 40%,#0000 100%)}.hf-p-login .hf-top{align-items:center;gap:12px;height:64px;padding:0 28px;display:flex;position:relative}.hf-p-login a.hf-wm{color:var(--tx);font-size:17px;font-weight:700}.hf-p-login a.hf-wm:hover{text-decoration:none}.hf-p-login .hf-grow{flex:1}.hf-p-login .hf-center{flex:1;justify-content:center;align-items:center;padding:24px 16px 48px;display:flex;position:relative}.hf-p-login .hf-card{background:color-mix(in srgb,var(--s1) 94%,transparent);-webkit-backdrop-filter:blur(6px);border:1px solid var(--bd);border-radius:10px;flex-direction:column;gap:16px;width:440px;max-width:100%;padding:32px 32px 28px;display:flex}.hf-p-login .hf-card h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600}.hf-p-login .hf-sub{color:var(--tx2);margin:-8px 0 4px}.hf-p-login .hf-fld{flex-direction:column;gap:6px;display:flex}.hf-p-login .hf-fld label{color:var(--tx2);justify-content:space-between;align-items:center;font-size:13px;font-weight:500;display:flex}.hf-p-login .hf-inp{border:1px solid var(--bd);background:var(--bg);border-radius:4px;outline:none;width:100%;height:42px;padding:0 12px;font-size:14.5px}.hf-p-login .hf-inp:focus{border-color:var(--acx);outline:2px solid var(--acx);outline-offset:1px}.hf-p-login .hf-inp[readonly]{color:var(--tx2);background:var(--s2)}.hf-p-login .hf-btn{border:1px solid var(--bd);background:var(--s3);height:42px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:10px;width:100%;padding:0 16px;font:500 14.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-login .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-login .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-login .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-login .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000;width:auto;height:36px}.hf-p-login .hf-or{color:var(--tx3);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:12px;display:grid}.hf-p-login .hf-or:before,.hf-p-login .hf-or:after{content:"";background:var(--bd);height:1px}.hf-p-login .hf-sso{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.hf-p-login .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;letter-spacing:.02em;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-login .hf-small{color:var(--tx2);text-align:center;font-size:13px}.hf-p-login .hf-foot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:0 28px 20px;font:11.5px IBM Plex Mono,monospace;display:flex;position:relative}@media (width<=520px){.hf-p-login .hf-card{padding:24px 20px}.hf-p-login .hf-sso{grid-template-columns:minmax(0,1fr)}.hf-p-login .hf-top{padding:0 16px}}.hf-p-signup{color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;line-height:1.45;display:flex;position:relative;overflow:hidden}.hf-p-signup *{box-sizing:border-box}.hf-p-signup a{color:var(--acx);text-decoration:none}.hf-p-signup a:hover{text-decoration:underline}.hf-p-signup button,.hf-p-signup input,.hf-p-signup select{font:inherit;color:inherit}.hf-p-signup :focus-visible{outline:2px solid var(--acx);outline-offset:2px}.hf-p-signup .hf-bg{opacity:.13;pointer-events:none;width:1500px;max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-46%);-webkit-mask-image:radial-gradient(50% 50%,#000 40%,#0000 100%);mask-image:radial-gradient(50% 50%,#000 40%,#0000 100%)}.hf-p-signup .hf-top{align-items:center;gap:12px;height:64px;padding:0 28px;display:flex;position:relative}.hf-p-signup a.hf-wm{color:var(--tx);font-size:17px;font-weight:700}.hf-p-signup a.hf-wm:hover{text-decoration:none}.hf-p-signup .hf-grow{flex:1}.hf-p-signup .hf-center{flex:1;justify-content:center;align-items:center;padding:24px 16px 48px;display:flex;position:relative}.hf-p-signup .hf-card{background:color-mix(in srgb,var(--s1) 94%,transparent);-webkit-backdrop-filter:blur(6px);border:1px solid var(--bd);border-radius:10px;flex-direction:column;gap:16px;width:460px;max-width:100%;padding:32px 32px 28px;display:flex}.hf-p-signup .hf-card h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600}.hf-p-signup .hf-sub{color:var(--tx2);margin:-8px 0 4px}.hf-p-signup .hf-fld{flex-direction:column;gap:6px;display:flex}.hf-p-signup .hf-fld label{color:var(--tx2);justify-content:space-between;align-items:center;font-size:13px;font-weight:500;display:flex}.hf-p-signup .hf-opt{color:var(--tx3);font:400 11.5px IBM Plex Mono,monospace}.hf-p-signup .hf-help{color:var(--tx3);font:11.5px IBM Plex Mono,monospace}.hf-p-signup .hf-inp{border:1px solid var(--bd);background:var(--bg);border-radius:4px;outline:none;width:100%;height:42px;padding:0 12px;font-size:14.5px}.hf-p-signup .hf-inp:focus{border-color:var(--acx);outline:2px solid var(--acx);outline-offset:1px}.hf-p-signup .hf-btn{border:1px solid var(--bd);background:var(--s3);height:42px;color:var(--tx);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:10px;width:100%;padding:0 16px;font:500 14.5px IBM Plex Sans,sans-serif;display:inline-flex}.hf-p-signup .hf-btn:hover{border-color:var(--bdx);text-decoration:none}.hf-p-signup .hf-btn.hf-pri{background:var(--ac);border-color:var(--ac);color:#fff}.hf-p-signup .hf-btn.hf-pri:hover{filter:brightness(1.12)}.hf-p-signup .hf-btn.hf-gh{color:var(--tx2);background:0 0;border-color:#0000;width:auto;height:36px}.hf-p-signup .hf-or{color:var(--tx3);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:12px;display:grid}.hf-p-signup .hf-or:before,.hf-p-signup .hf-or:after{content:"";background:var(--bd);height:1px}.hf-p-signup .hf-sso{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.hf-p-signup .hf-ex{color:var(--as);border:1px dashed var(--as);background:var(--asbg);white-space:nowrap;letter-spacing:.02em;border-radius:2px;padding:1px 5px;font:600 10px IBM Plex Mono,monospace}.hf-p-signup .hf-small{color:var(--tx2);text-align:center;font-size:13px}.hf-p-signup .hf-foot{color:var(--tx3);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:0 28px 20px;font:11.5px IBM Plex Mono,monospace;display:flex;position:relative}@media (width<=520px){.hf-p-signup .hf-card{padding:24px 20px}.hf-p-signup .hf-sso{grid-template-columns:minmax(0,1fr)}.hf-p-signup .hf-top{padding:0 16px}}.hf-site a.hf-scard,.hf-site a.hf-wcard{color:var(--tx);text-decoration:none;transition:border-color .15s,transform .15s}.hf-site a.hf-scard:hover,.hf-site a.hf-wcard:hover{border-color:var(--bdx);transform:translateY(-2px)}.hf-site a.hf-scard p,.hf-site a.hf-wcard p{color:var(--tx2)}.hf-site .hf-err{color:var(--fl);font-size:13px}.hf-site .hf-notice{border:1px solid var(--bd);background:var(--s2);color:var(--tx2);border-radius:4px;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:10px 12px;font-size:13px;line-height:1.45;display:grid}.hf-site .hf-notice .hf-st{margin-top:1px}.hf-site .hf-inp[aria-invalid=true]{border-color:var(--fl)}@media (prefers-reduced-motion:reduce){.hf-site a.hf-scard,.hf-site a.hf-wcard,.hf-site .hf-mcard{transition:none}.hf-site a.hf-scard:hover,.hf-site a.hf-wcard:hover,.hf-site .hf-mcard:hover{transform:none}}.hf-site .hf-notice .hf-st{justify-content:center;align-items:center;width:16px;height:16px;font:700 10px/1 IBM Plex Sans,sans-serif;display:inline-flex}.hf-site .hf-notice .hf-st.hf-as{border:1.5px dashed var(--as);color:var(--as);background:0 0;border-radius:3px}.hf-site .hf-btn:disabled{opacity:.55;cursor:not-allowed}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-duration:initial}}}@layer theme{:root,:host{--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font);--default-mono-font-family:var(--mono);--shadow-lift:var(--shadow-lift)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(h1){font-size:2em}:where(h2){font-size:1.5em}:where(h3){font-size:1.17em}:where(h4){font-size:1em}:where(p,dl,figure,blockquote){margin-block:1em}:where(dd){margin-inline-start:40px}:where(ul){margin-block:1em;padding-inline-start:1.4em;list-style:outside}:where(ol){margin-block:1em;padding-inline-start:1.4em;list-style:decimal}:where(svg){display:inline}:where(button,select){cursor:pointer}html{scroll-behavior:smooth}body{background-color:var(--bg);min-height:100vh;font-family:var(--font);--tw-leading:var(--leading-normal);font-size:15px;line-height:var(--leading-normal);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[hidden]{display:none!important}a{color:var(--accent-text);text-decoration-line:none}a:hover{text-decoration-line:underline}h1,h2,h3,h4{--tw-leading:var(--leading-tight);line-height:var(--leading-tight);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight);margin:0}code,kbd{font-family:var(--mono);font-size:.92em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}}@layer components{.mono{font-family:var(--mono);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.muted{color:var(--muted)}.center{text-align:center}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{min-height:calc(var(--spacing) * 10);cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-sm);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);white-space:nowrap;transition-property:background,border-color,color,transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;font:inherit;border-width:1px;border-color:#0000;font-size:14px;font-weight:600;text-decoration-line:none;transition-duration:.15s;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn[aria-busy=true]{cursor:progress;opacity:.92}.btn-primary{background-color:var(--brand);color:var(--brand-ink);--tw-shadow:var(--shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.btn-primary:hover:not(:disabled){background-color:var(--brand-hover);color:var(--brand-ink);text-decoration-line:none}.btn-secondary{border-color:var(--line-strong);background-color:var(--surface);color:var(--text-2)}.btn-secondary:hover:not(:disabled){border-color:var(--accent-text);color:var(--accent-text);text-decoration-line:none}.btn-ghost{color:var(--text-2);background-color:#0000;border-color:#0000}.btn-ghost:hover{background-color:var(--bg-alt);color:var(--text);text-decoration-line:none}.btn-small{min-height:calc(var(--spacing) * 8);padding-inline:calc(var(--spacing) * 3);font-size:13px}.btn-large{min-height:calc(var(--spacing) * 12);padding-inline:22px;font-size:15px}.btn-block{width:100%}.icon-btn{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--bg-alt);color:var(--text)}.spinner{border:2px solid var(--brand-ink);width:16px;height:16px}@supports (color:color-mix(in lab, red, red)){.spinner{border:2px solid color-mix(in srgb, var(--brand-ink) 35%, transparent)}}.spinner{border-top-color:var(--brand-ink);border-radius:50%;animation:.8s linear infinite spin}.muted-on-brand{opacity:.75;font-weight:500}.brand{color:inherit;letter-spacing:-.01em;align-items:center;gap:10px;font-size:17px;font-weight:700;text-decoration:none;display:inline-flex}.brand-small{gap:8px;font-size:14px}.landing{background:var(--bg)}.site-header{z-index:2;max-width:1200px;color:var(--hero-text);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:20px 24px;display:flex;position:absolute;inset:0 0 auto}.site-nav{align-items:center;gap:24px;display:flex}.site-nav a:not(.btn){color:var(--hero-muted);font-size:14px;font-weight:500;text-decoration:none}.site-nav a:not(.btn):hover{color:var(--hero-text)}.hero{background:radial-gradient(900px 500px at 85% 20%, #13a3b82e, transparent 60%), linear-gradient(var(--hero-line) 1px, transparent 1px) 0 0 / 100% 48px, var(--hero-bg);color:var(--hero-text);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:48px;padding:140px max(24px,50vw - 576px) 96px;display:grid;position:relative;overflow:hidden}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:600}.hero h1{letter-spacing:-.03em;font-size:clamp(38px,5.2vw,64px);font-weight:700;line-height:1.04}.hero .lede{max-width:54ch;color:var(--hero-muted);margin:20px 0 0;font-size:18px;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero .btn-primary{background:var(--hero-draw);color:var(--hero-ink)}.hero .btn-primary:hover{background:var(--hero-draw)}@supports (color:color-mix(in lab, red, red)){.hero .btn-primary:hover{background:color-mix(in srgb, var(--hero-draw) 85%, white)}}.hero .btn-ghost{color:var(--hero-text);border-color:#e9f1f547}.hero .btn-ghost:hover{border-color:var(--hero-text)}.hero-footnote{color:var(--hero-muted);margin:20px 0 0;font-size:13px}.hero-art{justify-content:center;display:flex}.bodyplan{width:100%;max-width:560px;height:auto}.bp-grid line{stroke:#9dc5d638;stroke-width:1px}.bp-grid .bp-cl{stroke:#9dc5d680;stroke-dasharray:10 4 2 4}.bp-lines path{fill:none;stroke:var(--hero-draw);stroke-width:1.7px;stroke-linecap:round;stroke-dasharray:700;stroke-dashoffset:700px;animation:1.4s ease-out forwards draw}.bp-labels text{fill:var(--hero-muted);font-family:var(--mono);letter-spacing:.08em;font-size:11px}@media (prefers-reduced-motion:reduce){.bp-lines path{stroke-dashoffset:0;animation:none}}.section{max-width:1200px;margin:0 auto;padding:88px 24px}.section-alt{background:var(--bg-alt);max-width:none}.section-alt>*{max-width:1152px;margin-left:auto;margin-right:auto}.section-head{margin-bottom:40px}.section-head h2{font-size:clamp(26px,3.2vw,36px)}.section .eyebrow{color:var(--accent-text)}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.step-card,.check-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:28px}.step-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.step-icon{background:var(--brand-soft);width:44px;height:44px;color:var(--accent-text);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.step-icon svg{width:22px;height:22px}.step-num{color:var(--line-strong);font-family:var(--mono);font-size:28px;font-weight:500}.step-card h3,.check-card h3{margin-bottom:8px;font-size:18px}.step-card p,.check-card p{color:var(--text-2);margin:0}.checks{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.check-card{border-top:3px solid var(--brand)}.formats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.format{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);gap:2px;padding:16px 18px;display:grid}.format strong{font-family:var(--mono);font-size:14px;font-weight:500}.format span{color:var(--muted);font-size:13px}.cta{border-radius:var(--radius);background:var(--hero-bg);color:var(--hero-text);justify-content:space-between;align-items:center;gap:24px;margin-top:56px;padding:32px 36px;display:flex}.cta h3{font-size:22px}.cta p{color:var(--hero-muted);margin:4px 0 0}.cta .btn-primary{background:var(--hero-draw);color:var(--hero-ink)}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:28px 24px 40px;font-size:13px;display:flex}.app-header{z-index:10;border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:32px;height:64px;padding:0 24px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.app-header{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.app-header{-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px)}.tabs{scrollbar-width:none;align-self:stretch;gap:4px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex;position:relative}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent-text)}.tab-short{display:none}.tab-badge{background:var(--brand-soft);color:var(--accent-text);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.server-warning{border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn);margin:16px 24px 0;padding:12px 16px;font-size:14px}.app-main{max-width:1320px;margin:0 auto;padding:28px 24px 64px}.tool-grid{grid-template-columns:minmax(0,440px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.panel{border-radius:var(--radius);border-style:var(--tw-border-style);border-width:1px;border-color:var(--line);background-color:var(--surface);min-width:0;padding:calc(var(--spacing) * 6);--tw-shadow:var(--shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.panel-head{justify-content:space-between;gap:12px;margin-bottom:20px;display:flex}.panel-head h3{font-size:18px}.panel-head p{color:var(--muted);margin:4px 0 0;font-size:14px}.tool-grid>.panel:first-child{position:sticky;top:88px}.form{gap:18px;display:grid}.grid-2{gap:calc(var(--spacing) * 4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field{gap:calc(var(--spacing) * 1.5);min-width:0;display:grid}.field-label{color:var(--text-2);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.optional{color:var(--muted);font-size:12px;font-weight:500}.field-hint{--tw-leading:1.45;color:var(--muted);margin:0;font-size:12.5px;line-height:1.45}.field-error{color:var(--bad);margin:0;font-size:12.5px}.input{min-height:calc(var(--spacing) * 10);border-radius:var(--radius-sm);border-style:var(--tw-border-style);border-width:1px;border-color:var(--line-strong);background-color:var(--surface);width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){.input:hover{border-color:var(--muted)}}.input{font:inherit;font-size:14px}.input:hover{border-color:var(--muted)}.input:focus{border-color:var(--accent-text);--tw-outline-style:none;box-shadow:0 0 0 3px var(--brand);outline-style:none}@supports (color:color-mix(in lab, red, red)){.input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 20%, transparent)}}select.input{appearance:none;text-overflow:ellipsis;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='%23677985' 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 12px center;background-repeat:no-repeat;padding-right:34px}.input-group{position:relative}.input-group .input{padding-right:44px}.input-suffix{color:var(--muted);pointer-events:none;font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.dropzone{border:1.5px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer;align-items:center;gap:14px;padding:22px 18px;font-size:14px;transition:border-color .15s,background .15s;display:flex}.dropzone[data-compact=true]{padding:12px 14px}.dropzone>svg{width:22px;height:22px;color:var(--accent-text);flex:none}.dropzone small{color:var(--muted);font-family:var(--mono);word-spacing:.2em;margin-top:2px;font-size:11.5px;display:block}.dropzone:hover,.dropzone[data-dragging=true]{border-color:var(--accent-text);background:var(--brand-soft)}.link-like{color:var(--accent-text);font-weight:600}.file-chip{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:10px;padding:10px 8px 10px 14px;display:flex}.file-chips{flex-direction:column;gap:8px;display:flex}.file-chips>.btn{align-self:flex-start}.file-chip>svg{color:var(--accent-text);flex:none}.file-chip-text{flex:1;min-width:0;display:grid}.file-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.file-chip small{color:var(--muted);font-size:12px}.toggle-row{align-items:flex-start;gap:12px;display:flex}.toggle-label{cursor:pointer;font-size:14px;font-weight:600}.switch{appearance:none;background:var(--line-strong);cursor:pointer;border-radius:999px;flex:none;width:36px;height:20px;margin:1px 0 0;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch:checked{background:var(--brand)}.switch:checked:after{transform:translate(16px)}.segmented{border:0;min-width:0;margin:0;padding:0}.segmented legend{margin-bottom:6px;padding:0}.segmented-options{gap:8px;display:grid}.segment{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;gap:1px;padding:10px 12px;transition:border-color .15s,background .15s;display:grid}.segment input{opacity:0;pointer-events:none;position:absolute}.segment strong{font-size:14px}.segment small{color:var(--muted);font-size:12px}.segment[data-checked=true]{border-color:var(--accent-text);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.segment:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.disclosure{border:1px solid var(--line);border-radius:var(--radius-sm)}.disclosure-head{width:100%;color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:11px 14px;font-size:14px;font-weight:600;display:flex}.disclosure-chevron{color:var(--muted);transition:transform .15s}.disclosure[data-open=true] .disclosure-chevron{transform:rotate(90deg)}.disclosure-body{gap:16px;padding:4px 14px 16px;display:grid}.note{border-left:3px solid var(--line-strong);background:var(--surface-2);color:var(--text-2);border-radius:0 6px 6px 0;margin:0;padding:12px 14px;font-size:13px;line-height:1.55}.banner{border-radius:var(--radius-sm);overflow-wrap:anywhere;gap:10px;padding:12px 14px;font-size:14px;display:flex}.banner>svg{flex:none;margin-top:1px}.banner-ok{background-color:var(--good-soft);color:var(--good)}.banner-error{background-color:var(--bad-soft);color:var(--bad)}.banner-warn{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn)}@supports (color:color-mix(in lab, red, red)){.banner-warn{border:1px solid color-mix(in srgb, var(--warn) 35%, transparent)}}.banner-stage{text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:12px;font-weight:700}.banner-text{white-space:pre-wrap}.banner-note{margin-top:4px;font-size:13px}.banner-link{color:inherit;margin-top:6px;font-weight:600;display:inline-block}.result{gap:20px;display:grid}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tile{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);min-width:0;padding:14px 16px}.tile-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.tile-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;overflow-wrap:anywhere;margin-top:4px;font-size:22px;font-weight:700}.tile-detail{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:12.5px}.tile[data-tone=good]{border-color:var(--good)}@supports (color:color-mix(in lab, red, red)){.tile[data-tone=good]{border-color:color-mix(in srgb, var(--good) 35%, transparent)}}.tile[data-tone=good]{background:var(--good-soft)}.tile[data-tone=good] .tile-value{color:var(--good)}.tile[data-tone=bad]{border-color:var(--bad)}@supports (color:color-mix(in lab, red, red)){.tile[data-tone=bad]{border-color:color-mix(in srgb, var(--bad) 35%, transparent)}}.tile[data-tone=bad]{background:var(--bad-soft)}.tile[data-tone=bad] .tile-value{color:var(--bad)}.viewer{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--viewer-bg);position:relative;overflow:hidden}.viewer-canvas{height:380px}.viewer-canvas canvas{cursor:grab;display:block;width:100%!important;height:100%!important}.viewer-canvas canvas:active{cursor:grabbing}.d2-compass{pointer-events:none;letter-spacing:.08em;color:var(--muted);font-size:11px;font-weight:800;position:absolute;inset:0 0 34px}.d2-compass span{background:var(--surface);border-radius:4px;padding:2px 6px;position:absolute}@supports (color:color-mix(in lab, red, red)){.d2-compass span{background:color-mix(in srgb, var(--surface) 80%, transparent)}}.d2-c-left{top:50%;left:8px;transform:translateY(-50%)}.d2-c-right{top:50%;right:8px;transform:translateY(-50%)}.d2-c-top{top:8px;left:50%;transform:translate(-50%)}.d2-c-bottom{bottom:8px;left:50%;transform:translate(-50%)}.viewer-views{z-index:2;border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:2px;padding:2px;display:flex;position:absolute;top:10px;left:10px}@supports (color:color-mix(in lab, red, red)){.viewer-views{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.viewer-views{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.viewer-view{color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.viewer-view:hover{background:var(--surface-2);color:var(--text)}.viewer-view:disabled{opacity:.4;cursor:default}.viewer-view.is-on{background:var(--brand-soft);color:var(--accent-text)}.viewer-caption{color:var(--muted);pointer-events:none;justify-content:space-between;gap:12px;padding:8px 12px;font-size:12px;display:flex;position:absolute;inset:auto 0 0}.viewer-empty{min-height:120px;color:var(--muted);text-align:center;justify-content:center;align-items:center;padding:20px;font-size:14px;display:flex}.viewer-empty p{margin:0}.result-actions{gap:10px;display:grid}.downloads{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.download{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 12px;font-size:13.5px;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.download>svg{color:var(--accent-text);flex:none}.download:hover{border-color:var(--accent-text);background:var(--brand-soft)}.download-text{min-width:0;display:grid}.download-text small{color:var(--muted);font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;overflow:hidden}.download-primary{border-color:var(--accent-text);background:var(--brand);color:var(--brand-ink);grid-column:1/-1}.download-primary>svg,.download-primary small{color:inherit;opacity:.85}.download-primary:hover{background:var(--brand-hover);color:var(--brand-ink)}.warnings{border:1px solid var(--warn)}@supports (color:color-mix(in lab, red, red)){.warnings{border:1px solid color-mix(in srgb, var(--warn) 30%, transparent)}}.warnings{border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn)}.warnings summary{cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.warnings-more{color:var(--muted);margin-left:auto;font-size:12.5px;font-weight:500}.warnings ul{color:var(--text-2);overflow-wrap:anywhere;margin:0;padding:0 16px 12px 38px;font-size:13px}.warnings li+li{margin-top:4px}.metrics{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;overflow:hidden}.metric{grid-template-columns:minmax(120px,.4fr) minmax(0,1fr);gap:16px;padding:9px 14px;font-size:13.5px;display:grid}.metric:nth-child(odd){background:var(--surface-2)}.metric dt{color:var(--muted)}.metric dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-weight:600}.metric[data-tone=good] dd{color:var(--good)}.metric[data-tone=bad] dd{color:var(--bad)}.more-figures summary{color:var(--text-2);cursor:pointer;margin-bottom:10px;font-size:14px;font-weight:600}.empty{border:1.5px dashed var(--line);border-radius:var(--radius-sm);text-align:center;justify-items:center;gap:8px;padding:72px 24px;display:grid}.empty-icon{background:var(--brand-soft);width:56px;height:56px;color:var(--accent-text);border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.empty h4{font-size:16px}.empty p{max-width:44ch;color:var(--muted);margin:0;font-size:14px}@media (width<=1100px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.hero{grid-template-columns:1fr;gap:24px;padding-top:120px}.hero-art{order:-1}.bodyplan{max-width:420px}.steps,.checks{grid-template-columns:1fr}.formats{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-grid{grid-template-columns:minmax(0,1fr)}.tool-grid>.panel:first-child{position:static}}@media (width<=640px){body{font-size:14px}.site-header{padding:16px}.site-nav a:not(.btn){display:none}.hero{padding:96px 16px 64px}.hero .lede{font-size:16px}.section{padding:64px 16px}.cta{flex-direction:column;align-items:flex-start;padding:24px}.app-header{gap:12px;padding:0 12px}.app-header .brand span{display:none}.tab{padding:0 10px}.tab-label,.tab-badge{display:none}.tab-short{display:inline}.app-main{padding:16px 16px 48px}.panel{padding:18px 16px}.grid-2{grid-template-columns:minmax(0,1fr)}.segmented-options{grid-template-columns:minmax(0,1fr)!important}.metric{grid-template-columns:minmax(0,1fr);gap:2px}.viewer-canvas{height:280px}.site-footer{padding:24px 16px 32px}}.project-chip{border:1px solid var(--line);max-width:220px;color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;overflow:hidden}.project-dot{background:var(--good);border-radius:50%;flex:none;width:8px;height:8px}.app-body{grid-template-columns:220px minmax(0,1fr);max-width:1560px;margin:0 auto;display:grid}.app-body .app-main{min-width:0;max-width:none;margin:0}.tool-rail{align-self:start;gap:2px;max-height:calc(100vh - 64px);padding:28px 8px 28px 20px;display:grid;position:sticky;top:64px;overflow-y:auto}.rail-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px 10px;font-size:12px;font-weight:700}.rail-item{border-radius:var(--radius-sm);color:var(--text-2);flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:8px 10px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.rail-item small{color:var(--muted);font-size:11px;font-weight:600}.rail-item:hover{background:var(--surface-2);color:var(--text)}.rail-item[aria-current=page]{background:var(--brand-soft);color:var(--accent-text)}.rail-item[data-planned=true]{color:var(--muted)}.rail-planned{border:1px dashed var(--line-strong);border-radius:999px;padding:0 6px}.tool-head{margin-bottom:20px}.tool-head h2{font-size:22px}.tool-head p{margin:4px 0 0}.stack{gap:calc(var(--spacing) * 5);display:grid}.tool-grid-wide{grid-template-columns:minmax(0,560px) minmax(0,1fr)}.grid-3{gap:calc(var(--spacing) * 3.5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.form-inline{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end}.subform{border:1px solid var(--line);border-radius:var(--radius-sm);gap:10px;min-width:0;margin:0;padding:12px 14px;display:grid;overflow-x:auto}.row-cells{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.row-cells label{color:var(--muted);gap:4px;font-size:12px;font-weight:600;display:grid}.input-cell{font-size:13px;font-family:var(--mono);padding:6px 8px}.edit-table{border-collapse:collapse;font-size:13px}.edit-table th{color:var(--muted);text-align:left;padding:0 6px 6px 0;font-size:12px;font-weight:600}.edit-table td{padding:2px 6px 2px 0}.tank-fills{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.tank-fills label{gap:4px;font-size:13px;font-weight:600;display:grid}.source-note{color:var(--muted);margin:12px 0 0;font-size:12.5px;line-height:1.55}.small{font-size:12.5px}.chip-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{border:1px solid var(--line);background:var(--surface-2);color:var(--text-2);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12px}.chip:hover{border-color:var(--bad);color:var(--bad)}.pill{background:var(--surface-2);border:1px solid var(--line);color:var(--muted);letter-spacing:.04em;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.pill-good{background-color:var(--good-soft);color:var(--good);border-color:#0000}.pill-bad{background-color:var(--bad-soft);color:var(--bad);border-color:#0000}.planned{justify-items:start;gap:10px;display:grid}.planned p{margin:0}.code{border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--mono);margin:0;padding:14px;font-size:12.5px;line-height:1.6;overflow-x:auto}.chart{margin:0}.chart svg{width:100%;height:auto;display:block}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-axis{stroke:var(--muted);stroke-width:1.2px}.chart-tick{fill:var(--muted);font-size:11px;font-family:var(--mono)}.chart-label{fill:var(--text-2);font-size:12px;font-weight:600}.chart-note{font-size:11px;font-weight:600}.chart-legend{color:var(--text-2);flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:12px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i{border-radius:2px;width:14px;height:3px;display:inline-block}.chart-empty{text-align:center;padding:24px}.drawing{border-radius:var(--radius-sm);background:var(--surface-2);width:100%;height:auto;display:block}.drawing-section{max-width:560px;margin:0 auto}.draw-hull{fill:var(--viewer-hull)}@supports (color:color-mix(in lab, red, red)){.draw-hull{fill:color-mix(in srgb, var(--viewer-hull) 22%, transparent)}}.draw-hull{stroke:var(--viewer-hull);stroke-width:1.5px}.draw-tank{fill:none;stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.draw-fluid{fill:var(--series-1);opacity:.35}.draw-water{stroke:var(--series-1);stroke-width:2px}.draw-perp{stroke:var(--muted);stroke-width:1px;stroke-dasharray:6 4}.draw-g{fill:var(--bad)}.draw-label{fill:var(--text-2);font-size:11px}.data-table{gap:8px;margin-top:12px;display:grid}.data-table-head{justify-content:space-between;align-items:center;font-size:12.5px;display:flex}.data-table-scroll{border:1px solid var(--line);border-radius:var(--radius-sm);max-height:520px;overflow:auto}.data-table table{border-collapse:collapse;width:100%;font-size:12.5px}.data-table th{background:var(--surface-2);border-bottom:1px solid var(--line);color:var(--text-2);text-align:right;white-space:nowrap;padding:8px 10px;font-weight:600;position:sticky;top:0}.data-table th small{color:var(--muted);font-weight:500;display:block}.data-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:5px 10px}.data-table th:first-child,.data-table td:first-child{text-align:left}.criteria{gap:8px;display:grid}.criterion{border-radius:var(--radius-sm);background:var(--good-soft);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.criterion[data-pass=false]{background:var(--bad-soft)}.criterion-icon{color:var(--good);display:inline-flex}.criterion[data-pass=false] .criterion-icon{color:var(--bad)}.criterion strong{font-size:14px;display:block}.criterion small{color:var(--muted);font-size:12px}@media (width<=960px){.app-body{grid-template-columns:minmax(0,1fr)}.tool-rail{gap:6px;max-height:none;padding:12px 16px 0;display:flex;position:static;overflow-x:auto}.rail-title{display:none}.rail-item{white-space:nowrap;flex:none}.tool-grid-wide{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.grid-3{grid-template-columns:minmax(0,1fr)}.project-chip{max-width:120px}.criterion{grid-template-columns:auto minmax(0,1fr)}.criterion .mono{grid-column:2}}.check-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 12px;font-size:13px;display:grid}.check-grid label{align-items:center;gap:6px;display:flex}.criterion[data-pass=none]{background:var(--surface-2)}.criterion[data-pass=none] .criterion-icon{color:var(--muted)}.tool-crumb{text-transform:uppercase;letter-spacing:.05em;margin:0 0 2px;font-size:11px;font-weight:700}.tool-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.state-pill{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.state-ready{background:var(--good-soft);color:var(--good)}.state-in-progress{background:var(--warn-soft);color:var(--warn)}.gaps{border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn);margin-top:10px;padding:8px 12px;font-size:13px}.gaps summary{cursor:pointer;font-weight:600}.gaps ul,.gap-list{margin:8px 0 0;padding-left:18px}.need-chips,.next-steps{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.need-chip{background:var(--warn-soft);color:var(--warn);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;text-decoration:none}.next-steps{border-top:1px solid var(--line);margin-top:28px;padding-top:16px}.next-chip{border:1px solid var(--line);background:var(--surface);color:var(--accent-text);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.next-chip:hover{border-color:var(--accent-text)}.tool-link{color:var(--accent-text);font-weight:600}.rail-item{flex-wrap:nowrap;align-items:flex-start}.rail-text{gap:1px;display:grid}.rail-dot,.rail-legend span{background:var(--good);border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px;display:inline-block}[data-state=needs-setup]>.rail-dot,.rail-legend span[data-state=needs-setup]{background:var(--warn)}[data-state=in-progress]>.rail-dot,[data-state=not-built]>.rail-dot,.rail-legend span[data-state=in-progress]{background:var(--line-strong)}.rail-item[data-state=in-progress],.rail-item[data-state=not-built]{color:var(--muted)}.rail-legend{margin:16px 10px 0;line-height:1.8}.rail-legend span{vertical-align:middle;margin:0 4px 0 0}.quickstart{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.quickstart .banner{flex-basis:100%}.quickstart-compact .btn{padding:6px 12px;font-size:13px}.sample-row{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);gap:8px;margin-bottom:18px;padding:12px 14px;display:grid}.empty-project{justify-items:start;gap:8px;display:grid}.empty-project h4{margin:0}.quick-condition{border-radius:var(--radius-sm);background:var(--warn-soft);gap:8px;padding:12px 14px;display:grid}.quick-condition p{margin:0}.module-map{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;display:grid}.module-group{align-content:start;gap:6px;display:grid}.module-group h4{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 4px;font-size:13px}.module-card{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);background:var(--surface);gap:10px;padding:8px 10px;text-decoration:none;display:flex}.module-card:hover{border-color:var(--accent-text)}.module-card strong{font-size:13.5px;display:block}.module-card small{color:var(--muted);font-size:12px}.module-card[data-state=in-progress]{background:var(--surface-2)}.checklist{gap:4px;display:grid}.check-row{border-radius:var(--radius-sm);color:var(--text);gap:10px;padding:7px 8px;text-decoration:none;display:flex}.check-row:hover{background:var(--surface-2)}.check-row strong{font-size:14px}.check-row em{color:var(--accent-text);font-style:normal;font-weight:700}.check-row small{color:var(--muted);font-size:12px;display:block}.check-ok,.check-no{width:18px;font-weight:700}.check-ok{color:var(--good)}.check-no{color:var(--warn)}.ship-drawing{grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:12px;margin-top:16px;display:grid}.draw-compartment{fill:none;stroke:var(--text-2);stroke-width:1px}.draw-section{fill:none;stroke:var(--viewer-hull);stroke-width:1.2px}.charts-2{gap:16px}.mini-table{border-collapse:collapse;width:100%;margin:8px 0;font-size:13px}.mini-table td{border-bottom:1px solid var(--line);padding:5px 8px}.swatch{vertical-align:middle;width:12px;height:3px;margin-right:8px;display:inline-block}.report{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:22px;padding:28px;display:grid}.report h1{margin:0;font-size:26px}.report h2{border-bottom:2px solid var(--brand);padding-bottom:4px;font-size:18px}.report h3{font-size:15px}.report-condition{gap:10px;margin-bottom:18px;display:grid}@media (width<=960px){.ship-drawing{grid-template-columns:minmax(0,1fr)}}@media print{:is(.app-header,.tool-rail,.tool-head,.next-steps,.no-print,.panel:not(:has(.report))){display:none!important}.app-body{display:block}.report{border:none;padding:0}.report-condition,.report section{break-inside:avoid-page}.data-table-scroll{max-height:none;overflow:visible}}.wb-page{background:var(--bg);flex-direction:column;height:100vh;display:flex;overflow:hidden}.wb-bar{border-bottom:1px solid var(--line);background:var(--surface);white-space:nowrap;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:13px;display:flex}.wb-crumb{color:var(--muted);font-weight:600;text-decoration:none}.wb-crumb:hover{color:var(--text)}.wb-sep{color:var(--line-strong)}.wb-title{margin:0 4px 0 0;font-size:15px;font-weight:800}.wb-meta{color:var(--muted);font-size:12px;font-weight:600}.wb-about{margin-left:auto;position:relative}.wb-about>summary{cursor:pointer;border:1px solid var(--line);color:var(--text-2);border-radius:6px;padding:4px 10px;font-weight:600;list-style:none}.wb-about-pop{z-index:30;border:1px solid var(--line-strong);background:var(--surface);white-space:normal;border-radius:10px;gap:8px;width:min(520px,90vw);padding:12px 14px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 40px #00000038}.wb-main{flex-direction:column;flex:1;min-height:0;padding:8px 10px 10px;display:flex;overflow:auto}.module-root{gap:16px;display:grid}.wb-main>[role=tabpanel]:not([hidden]),.wb-main .module-root{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.wb-main .module-root>:last-child{flex:1;min-height:520px}.wb-main .module-root>section:first-child{flex:none}.tanks-shell{grid-template-columns:228px minmax(0,1fr);gap:8px;min-height:0;font-size:13px;display:grid;position:relative}.wb-pane{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;min-height:0;overflow:hidden}.tanks-tree{overflow:auto}.wb-center{min-width:0;min-height:0;display:grid}.tanks-view{flex-direction:column;display:flex}.wb-split{cursor:row-resize;touch-action:none;position:relative}.wb-split:after{content:"";background:var(--line-strong);border-radius:3px;width:44px;height:3px;margin-left:-22px;position:absolute;top:2px;left:50%}.wb-split:hover:after{background:var(--brand)}.tanks-dock{flex-direction:column;display:flex}.tree-toggle{display:none}@media (width<=1100px){.tanks-shell{grid-template-columns:minmax(0,1fr)}.tanks-tree{z-index:6;width:250px;transition:transform .18s;position:absolute;top:0;bottom:0;left:0;transform:translate(-110%);box-shadow:0 12px 32px #0000002e}.tanks-shell.tree-open .tanks-tree{transform:none}.tree-toggle{align-self:flex-start;margin:6px 6px 0;display:inline-flex}}@media (width<=899px){.wb-page{height:auto;overflow:visible}.wb-center{grid-template-rows:60vh 7px auto!important}}.wb-input,.tanks-shell .input{box-sizing:border-box;border:1px solid var(--line-strong);background:var(--surface);width:100%;height:28px;min-height:28px;color:var(--text);font:inherit;border-radius:6px;padding:3px 8px;font-size:13px}select.wb-input{appearance:none;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23677985' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:26px}.wb-input:focus,.tanks-shell .input:focus{border-color:var(--accent-text);box-shadow:0 0 0 2px var(--brand);outline:none}@supports (color:color-mix(in lab, red, red)){.wb-input:focus,.tanks-shell .input:focus{box-shadow:0 0 0 2px color-mix(in srgb, var(--brand) 22%, transparent)}}.wb-input.num,.tanks-shell .input-cell{font-family:var(--mono);font-size:12.5px}.wb-input-bare{background:0 0;border-color:#0000;height:24px;min-height:24px;padding:2px 4px}.wb-input-bare:hover{border-color:var(--line-strong)}.tanks-shell .btn{border-radius:6px;min-height:28px;padding:0 10px;font-size:12.5px}.tanks-shell .btn-small{min-height:26px}.dock{flex-direction:column;flex:1;min-height:0;display:flex}.dock-bar{border-bottom:1px solid var(--line);background:var(--surface-2);align-items:center;gap:10px;min-height:40px;padding:0 10px 0 14px;display:flex}.dock-title{align-items:baseline;gap:10px;min-width:0;display:flex}.dock-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.dock-sub,.dock-state{color:var(--muted);white-space:nowrap;font-size:12px}.dock-state{border:1px solid var(--line);border-radius:999px;padding:1px 8px}.dock-state.is-dirty{color:var(--warn);border-color:var(--warn)}@supports (color:color-mix(in lab, red, red)){.dock-state.is-dirty{border-color:color-mix(in srgb, var(--warn) 40%, var(--line))}}.dock-state.is-dirty{background:var(--warn-soft)}.dock-actions{gap:6px;margin-left:auto;display:flex}.dock-body{flex:1;grid-template-columns:minmax(250px,290px) minmax(220px,250px) minmax(0,1fr);min-height:0;display:grid}.dock-col{border-right:1px solid var(--line);min-width:0;min-height:0;padding:10px 12px 14px;overflow:auto}.dock-col:last-child{border-right:0}.dock-h{white-space:nowrap;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:800}.dock-colhead{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.dock-colhead .dock-h{margin:0}.dock-note{color:var(--muted);margin:8px 0 0;font-size:11.5px}.dock-scroll{flex:1;min-height:0;overflow:auto}.dock-empty{gap:6px;max-width:720px;padding:18px;display:grid}.dock-empty p{margin:0}.props{gap:6px;display:grid}.prop{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;display:grid}.prop-indent{grid-template-columns:84px minmax(0,1fr);padding-left:12px}.prop-k{color:var(--text-2);gap:0;font-size:12.5px;font-weight:600;line-height:1.2;display:grid}.prop-k .prop-hint{font-size:10.5px;font-weight:500}.prop-v{min-width:0}.prop-hint{color:var(--muted);white-space:nowrap;font-size:11.5px}.prop-check{color:var(--text-2);grid-template-columns:auto auto 1fr;justify-content:start;padding:4px 0;font-size:12.5px;font-weight:600}.wb-table{border-collapse:collapse;width:100%;font-size:12.5px}.wb-table th{z-index:1;border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--muted);text-align:left;white-space:nowrap;padding:6px 8px;font-size:11.5px;font-weight:700;position:sticky;top:0}.wb-table td{border-bottom:1px solid var(--line);white-space:nowrap;padding:4px 8px}.wb-table tbody tr{cursor:pointer}.wb-table tbody tr:hover td{background:var(--surface-2)}.wb-table tr.is-selected td{background:var(--brand-soft)}.wb-table .num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}.sg-table th,.sg-table td{padding:3px 5px}.wb-tools{gap:2px;display:flex}.wb-tool{border:1px solid var(--line);background:var(--surface);width:24px;height:24px;color:var(--text-2);font:inherit;cursor:pointer;border-radius:5px;place-items:center;font-size:13px;display:inline-grid}.wb-tool:hover:not(:disabled){border-color:var(--accent-text);color:var(--accent-text)}.wb-tool:disabled{opacity:.4;cursor:default}.wb-tool-danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad)}.dock-def{flex-direction:column;padding:0;display:flex}.def-tabs{border-bottom:1px solid var(--line);background:var(--surface-2);gap:0;padding:0 8px;display:flex;overflow-x:auto}.def-tab{color:var(--text-2);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:9px 8px 8px;font-size:12.5px;font-weight:600;display:inline-flex}.def-tab:hover{color:var(--text)}.def-tab[aria-selected=true]{color:var(--accent-text);border-bottom-color:var(--accent-text)}.def-n{background:var(--line);width:17px;height:17px;color:var(--text-2);border-radius:4px;place-items:center;font-size:10.5px;font-weight:800;display:inline-grid}.def-tab[aria-selected=true] .def-n{background:var(--brand);color:var(--brand-ink)}.def-body{flex:1;align-content:start;gap:10px;min-height:0;padding:12px 14px 16px;display:grid;overflow:auto}.def-hint{color:var(--muted);margin:0;font-size:11.5px}.def-body .source-note{margin:0;font-size:11.5px}.def-body .field-label{font-size:12px}.def-body .segmented-options{gap:4px}.def-body .segment{min-height:0;padding:5px 10px}.lim-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 22px;display:grid}.lim-row{grid-template-columns:52px 168px minmax(0,1fr);align-items:center;gap:8px;display:grid}.lim-k{color:var(--text-2);font-size:12.5px;font-weight:700}.lim-r{font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.wb-details>summary{cursor:pointer;color:var(--text-2);font-size:12px;font-weight:600}.wb-details[open]{gap:6px;display:grid}.points-grid{grid-template-columns:minmax(0,auto) minmax(180px,230px);align-items:start;gap:14px;display:grid}.points-grid .edit-table td,.points-grid .edit-table th{padding:1px 4px}.points-grid tr.is-active td{background:var(--brand-soft)}.corner-diagram{width:100%}.cd-edge{stroke:var(--text-2);stroke-width:1.5px}.cd-hidden{stroke-dasharray:4 4;opacity:.5}.cd-corner circle{fill:var(--surface);stroke:var(--brand);stroke-width:1.5px}.cd-corner text{fill:var(--brand);font-size:11px;font-weight:800}.cd-corner.is-active circle{fill:var(--brand)}.cd-corner.is-active text{fill:var(--brand-ink)}.cd-axis{letter-spacing:.05em;fill:var(--muted);font-size:9.5px;font-weight:700}.surface-input{display:inline-block;position:relative}.surface-menu{z-index:40;border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;min-width:100%;max-height:240px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 2px);left:0;overflow:auto;box-shadow:0 12px 28px #00000038}.surface-menu li{cursor:pointer;white-space:nowrap;border-radius:5px;gap:0;padding:4px 8px;font-size:12.5px;display:grid}.surface-menu li[aria-selected=true]{background:var(--brand-soft)}.dock-status{border-top:1px solid var(--line);background:var(--surface-2);align-items:center;gap:12px;min-height:38px;padding:0 12px;display:flex}.rs{flex-wrap:wrap;align-items:stretch;row-gap:2px;min-width:0;display:flex}.rs-item{border-right:1px solid var(--line);white-space:nowrap;align-items:baseline;gap:5px;padding:4px 8px;display:inline-flex}.rs-item:first-child{padding-left:0}.rs-k{color:var(--muted);font-size:11.5px;font-weight:700}.rs-v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.rs-side{align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.rs-msg{color:var(--muted);white-space:normal;overflow-wrap:anywhere;max-width:56ch;padding:4px 0;font-size:12px;line-height:1.35}.rs-msg.is-error{color:var(--bad);white-space:normal}@media (width<=1279px){.dock-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(240px,280px) minmax(0,1fr)}.dock-props{grid-row:span 2}.dock-parts{border-right:0;border-bottom:1px solid var(--line);max-height:180px}}@media (width<=899px){.dock-body,.lim-grid,.points-grid{grid-template-columns:minmax(0,1fr)}.dock-col{border-right:0;border-bottom:1px solid var(--line)}}.tanks-shell .tree{gap:4px;padding:8px;font-size:12.5px}.tanks-shell .tree-head{gap:6px}.tree{gap:6px;padding:10px;font-size:13px;display:grid}.tree-head{background:var(--surface);z-index:1;border-bottom:1px solid var(--line);gap:6px;margin:-10px -10px 0;padding:10px;display:grid;position:sticky;top:-10px}.tree-filter{width:100%}.tree-empty,.tree-foot{margin:6px 4px}.tree-group-head{justify-content:space-between;align-items:center;display:flex}.tree-caret{letter-spacing:.02em;color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;padding:4px 2px;font-size:12px;font-weight:700}.tree-rows{gap:1px;margin:0;padding:0;list-style:none;display:grid}.tree-row{border-radius:6px;align-items:center;display:flex}.tree-row:hover{background:var(--surface-2)}.tree-row.is-selected{background:var(--brand-soft);box-shadow:inset 2px 0 0 var(--brand)}.tree-row.is-hidden .tree-pick{opacity:.45}.tree-pick{min-width:0;color:var(--text);cursor:pointer;text-align:left;font:inherit;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:4px 6px;display:flex}.tree-swatch{vertical-align:-1px;border-radius:3px;flex:none;width:11px;height:11px;display:inline-block}.tree-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tree-vol{color:var(--muted);font-size:11.5px}.tree-eye{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:11px}.vp{flex-direction:column;flex:1;min-height:0;display:flex}.vp-bar{border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:40px;padding:4px 8px;font-size:12.5px;display:flex}.vp-tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;gap:2px;padding:2px;display:flex}.vp-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 11px;font-size:12.5px;font-weight:600}.vp-tab[aria-selected=true]{background:var(--surface);color:var(--accent-text);box-shadow:0 1px 2px #00000014}.vp-controls{flex-wrap:wrap;flex:1;align-items:center;gap:6px 10px;min-width:0;display:flex}.vp-controls label{align-items:center;gap:6px;display:inline-flex}.vp-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.vp-body>.viewer,.vp-body>.drawing2d{border:0;border-radius:0;flex:1;min-height:0}.vp-setup{flex:1;min-height:0;padding:12px;overflow:auto}.setup-grid .panel{overflow-x:auto}.setup-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:12px;display:grid}.vp-legend{color:var(--muted);pointer-events:none;background:var(--surface);justify-items:end;gap:1px;font-size:11px;display:grid;position:absolute;top:8px;right:10px}@supports (color:color-mix(in lab, red, red)){.vp-legend{background:color-mix(in srgb, var(--surface) 80%, transparent)}}.vp-legend{border-radius:6px;padding:4px 6px}.vp-draft-error{max-width:60%;color:var(--bad);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:12px;position:absolute;bottom:34px;left:10px}.viewer-fill{flex-direction:column;display:flex}.viewer-fill .viewer-canvas{flex:1;height:auto;min-height:260px}.viewer-empty{color:var(--muted);place-items:center;min-height:260px;display:grid}.drawing2d{background:var(--viewer-bg);flex-direction:column;display:flex;position:relative}.drawing2d-canvas{touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none;flex:1;width:100%;min-height:0}.drawing2d-bar{border-top:1px solid var(--line);color:var(--muted);background:var(--surface);justify-content:space-between;align-items:center;gap:8px;padding:4px 10px;font-size:12px;display:flex}.d2-hull{fill:var(--surface);stroke:var(--text);stroke-width:1.4px;vector-effect:non-scaling-stroke}.d2-axis{stroke:var(--muted);stroke-width:.8px;stroke-dasharray:8 4 2 4}.d2-tank{fill-opacity:.55;stroke-width:1px;stroke-opacity:.95;cursor:pointer}.d2-tank.is-hover{fill-opacity:.75}.d2-tank.is-selected{fill-opacity:.85;stroke-width:2.5px;stroke:var(--brand)!important}.d2-tank.is-replaced{display:none}.d2-draft{fill:var(--brand);fill-opacity:.22;stroke:var(--brand);stroke-width:2px;stroke-dasharray:6 4;pointer-events:none}.d2-tick line{stroke:var(--muted);stroke-width:.8px}.d2-tick text,.d2-label{fill:var(--text);pointer-events:none;font-family:inherit}.d2-label{paint-order:stroke;stroke:var(--surface);stroke-opacity:.7;font-weight:600}.insp{align-content:start;gap:12px;padding:14px 14px 0;display:grid}.insp-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.insp-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11.5px;font-weight:700}.insp-title{text-overflow:ellipsis;margin:2px 0 0;font-size:20px;overflow:hidden}.insp-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.insp-tile{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:1px;min-width:0;padding:7px 8px;display:grid}.insp-tile-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:10.5px;font-weight:700}.insp-tile-value{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.insp-tile-detail{color:var(--muted);font-size:10.5px}.insp-section{border-top:1px solid var(--line);gap:10px;padding-top:12px;display:grid}.insp-section h4{color:var(--text-2);margin:0;font-size:13px}.insp-section .grid-2{gap:10px}.insp-foot{z-index:2;border-top:1px solid var(--line);background:var(--surface);align-items:center;gap:8px;margin:0 -14px;padding:10px 14px;display:flex;position:sticky;bottom:0}.insp-foot-msg{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.part-list{gap:4px;display:grid}.part-row{border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 6px;display:flex}.part-row.is-selected{border-color:var(--accent-text);background:var(--brand-soft)}.part-kind{color:var(--text-2);font-size:12px;font-weight:600}.kind-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.kind-tab{border:1px solid var(--line);background:var(--surface);color:var(--text-2);cursor:pointer;border-radius:7px;padding:5px 4px;font-size:12px;font-weight:600}.kind-tab[aria-selected=true]{border-color:var(--accent-text);color:var(--accent-text);background:var(--brand-soft)}.part-form{gap:8px;display:grid}.btn-danger{color:var(--bad)}.howto{color:var(--text-2);gap:6px;margin:0;padding-left:18px;display:grid}.facts{gap:6px;margin:0;display:grid}.facts>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:4px;display:flex}.facts dt{color:var(--muted);font-size:13px}.facts dd{margin:0;font-size:13px}.dock-editor{position:relative}.dock-pad{padding:12px 14px}.side-badge{border:1px solid;border-radius:4px;flex:none;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10.5px;font-weight:800;line-height:1;display:inline-grid}.side-badge.side-P,.side-text.side-P,.side-preview.side-P{color:var(--bad)}.side-badge.side-S,.side-text.side-S,.side-preview.side-S{color:var(--good)}.side-badge.side-C,.side-text.side-C{color:var(--text-2)}.side-badge.side-P{background:var(--bad-soft)}.side-badge.side-S{background:var(--good-soft)}.side-text{font-size:12.5px;font-weight:700}.side-row{flex-wrap:wrap;align-items:flex-end;gap:10px 22px;display:flex}.side-row .segmented{min-width:280px}.side-row.is-P .segment[data-checked=true]{box-shadow:inset 0 0 0 1px var(--bad);color:var(--bad)}.side-row.is-S .segment[data-checked=true]{box-shadow:inset 0 0 0 1px var(--good);color:var(--good)}.skin-field{gap:4px;min-width:180px;display:grid}.side-preview{background:var(--surface-2);border:1px solid var(--line);font-family:var(--mono);color:var(--text-2);border-radius:6px;margin:0;padding:6px 10px;font-size:12px;font-weight:700}.side-preview.is-error{color:var(--bad);border-color:var(--bad)}@supports (color:color-mix(in lab, red, red)){.side-preview.is-error{border-color:color-mix(in srgb, var(--bad) 40%, var(--line))}}.side-preview.is-error{background:var(--bad-soft)}.lim-hint{color:var(--muted);font-size:10.5px;font-weight:500;display:block}.lim-r.is-error{color:var(--bad)}.surface-menu .surface-group{cursor:default;padding:0;display:block}.surface-menu .surface-group+.surface-group{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.surface-menu ul{margin:0;padding:0;list-style:none}.surface-menu-h{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;font-size:10.5px;font-weight:800;display:block}.prop-side{align-items:center;gap:8px;display:inline-flex}.prop-warn{background:var(--warn-soft);color:var(--warn);border-radius:6px;margin:0;padding:6px 8px;font-size:12px;line-height:1.35}.dock-notes{border-top:1px solid var(--warn);gap:6px;max-height:132px;padding:8px 14px;display:grid;overflow:auto}@supports (color:color-mix(in lab, red, red)){.dock-notes{border-top:1px solid color-mix(in srgb, var(--warn) 35%, var(--line))}}.dock-notes{background:var(--warn-soft);color:var(--text);font-size:12.5px}.dock-notes section{gap:2px;display:grid}.dock-notes-h{color:var(--warn);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.dock-notes ul{gap:2px;margin:0;padding-left:18px;display:grid}.collision{z-index:35;background:var(--bg);place-items:center;padding:16px;display:grid;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.collision{background:color-mix(in srgb, var(--bg) 62%, transparent)}}.collision-inline .collision{background:0 0;padding:0;position:static}.collision-card{border:1px solid var(--bad);gap:8px;width:min(460px,100%);padding:14px 16px;display:grid}@supports (color:color-mix(in lab, red, red)){.collision-card{border:1px solid color-mix(in srgb, var(--bad) 45%, var(--line-strong))}}.collision-card{border-left:4px solid var(--bad);background:var(--surface);border-radius:10px;box-shadow:0 16px 40px #00000047}.collision-title{color:var(--bad);margin:0;font-size:14px}.collision-msg{color:var(--text-2);margin:0;font-size:12.5px}.collision-list{gap:2px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.collision-list li{background:var(--bad-soft);border-radius:5px;justify-content:space-between;gap:12px;padding:3px 8px;display:flex}.collision-actions,.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-backdrop{z-index:1000;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line-strong);background:var(--surface);width:min(420px,100%);color:var(--text);border-radius:12px;gap:8px;padding:16px 18px;display:grid;box-shadow:0 24px 60px #00000059}.modal-title{margin:0;font-size:15px}.modal-body{color:var(--text-2);font-size:13px}.btn-destructive{background:var(--bad);border-color:var(--bad);color:#fff}.btn-destructive:hover:not(:disabled){background:var(--bad)}@supports (color:color-mix(in lab, red, red)){.btn-destructive:hover:not(:disabled){background:color-mix(in srgb, var(--bad) 85%, #000)}}.tree-head-row{align-items:center;gap:6px;display:flex}.tree-head-row .btn-primary{flex:1}.tree-caret{flex:1;align-items:center;gap:6px;min-width:0;display:inline-flex}.tree-caret-mark{width:10px;color:var(--muted)}.tree-group-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-swatch-group{border-radius:50%;width:10px;height:10px}.tree-count{background:var(--surface-2);border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-left:2px;padding:0 6px;font-size:10.5px;font-weight:700}.tree-eye{border-radius:5px;place-items:center;display:inline-grid}.tree-eye:hover{color:var(--text);background:var(--surface-3)}.tree-eye.is-off{color:var(--line-x)}.tree-pick .side-badge{min-width:16px;height:16px;font-size:9.5px}.overlap-flag{color:var(--warn);flex:none;font-size:12px}.tree-check{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:4px;margin:0;padding:8px 10px;font-size:12px;display:grid}.tree-check.is-warn{border-color:var(--warn)}@supports (color:color-mix(in lab, red, red)){.tree-check.is-warn{border-color:color-mix(in srgb, var(--warn) 45%, var(--line))}}.tree-check.is-warn{background:var(--warn-soft)}.tree-check.is-ok{border-color:var(--good)}@supports (color:color-mix(in lab, red, red)){.tree-check.is-ok{border-color:color-mix(in srgb, var(--good) 40%, var(--line))}}.tree-check.is-ok{background:var(--good-soft)}.tree-check.is-error{color:var(--bad);background:var(--bad-soft)}.tree-check-head{justify-content:space-between;align-items:center;display:flex}.tree-check ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.tree-check li{justify-content:space-between;gap:8px;display:flex}.tree-check-pick{color:var(--accent-text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.overview-table .tank-cell{align-items:center;gap:7px;display:inline-flex}.stage-panel{justify-items:start;gap:10px;display:grid}.stage-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;width:100%;margin:0;padding:0;list-style:none;display:grid}.stage{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:6px;min-width:0;padding:6px 8px;font-size:12px;display:grid}.stage-dot{background:var(--line-strong);border-radius:999px;width:8px;height:8px}.stage-label{overflow-wrap:anywhere;min-width:0}@media (width<=420px){.stage-strip{grid-template-columns:minmax(0,1fr)}}.refusal-detail{font-family:var(--mono);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:12px}.stage-time{color:var(--muted);font-size:11px}.stage-error{color:var(--bad);grid-column:1/-1}.stage[data-state=done]{color:var(--text-2)}.stage[data-state=done] .stage-dot{background:var(--good)}.stage[data-state=running]{border-color:var(--running)}@supports (color:color-mix(in lab, red, red)){.stage[data-state=running]{border-color:color-mix(in srgb, var(--running) 45%, transparent)}}.stage[data-state=running]{background:var(--running-soft);color:var(--text)}.stage[data-state=running] .stage-dot{background:var(--running);animation:1.2s ease-in-out infinite stage-pulse}.stage[data-state=failed]{border-color:var(--bad)}@supports (color:color-mix(in lab, red, red)){.stage[data-state=failed]{border-color:color-mix(in srgb, var(--bad) 45%, transparent)}}.stage[data-state=failed]{background:var(--bad-soft);color:var(--text)}.stage[data-state=failed] .stage-dot{background:var(--bad)}@keyframes stage-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.stage[data-state=running] .stage-dot{animation:none}}.reading-card{gap:12px;display:grid}.reading-group{border:0;gap:8px;margin:0;padding:0;display:grid}.reading-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 14px;display:grid}.reading-field{border-left:3px solid #0000;padding-left:8px}.reading-field[data-source=declared]{border-left-color:var(--brand)}.reading-field[data-source=sheet]{border-left-color:var(--good)}.reading-field[data-source=model]{border-left-color:var(--running)}.reading-field[data-source=assumed]{border-left-color:var(--assumed)}.reading-badge{background:var(--surface-3);color:var(--muted);letter-spacing:.02em;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.reading-field[data-source=sheet] .reading-badge{background:var(--good-soft);color:var(--good)}.reading-field[data-source=model] .reading-badge{background:var(--running-soft);color:var(--running)}.reading-field[data-source=assumed] .reading-badge{background:var(--assumed-soft);color:var(--assumed)}.reading-field[data-source=declared] .reading-badge{background:var(--brand-soft);color:var(--accent-text)}.question-cards{gap:10px;display:grid}.question-card{border:1px solid var(--warn);gap:8px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.question-card{border:1px solid color-mix(in srgb, var(--warn) 40%, transparent)}}.question-card{border-radius:var(--radius);background:var(--warn-soft)}.question-text{color:var(--text);margin:0;font-weight:600}.question-suggested{color:var(--text-2);margin:0;font-size:13px}.question-actions,.question-type{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.question-type .input-group,.question-type>.input{flex:160px}.question-assume{justify-items:start;gap:4px;padding-top:4px;display:grid}.question-assume .field-hint{margin:0}.limitations h4,.accuracy h4{margin:0 0 8px;font-size:14px}.limitation-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.limitation{border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);gap:4px;padding:10px 12px;font-size:13px;display:grid}.limitation[data-severity=informational]{border-left-color:var(--running)}.limitation[data-severity=limits_accuracy]{border-left-color:var(--warn)}.limitation[data-severity=blocking]{border-left-color:var(--bad)}.limitation-what{color:var(--text)}.limitation-detail{color:var(--muted)}.limitation-lift{color:var(--text-2)}.accuracy{border-radius:var(--radius-sm);border:1px solid var(--line);padding:10px 12px;font-size:13px}.accuracy p{margin:0}.accuracy[data-tone=good]{border-color:var(--good)}@supports (color:color-mix(in lab, red, red)){.accuracy[data-tone=good]{border-color:color-mix(in srgb, var(--good) 35%, transparent)}}.accuracy[data-tone=good]{background:var(--good-soft)}.accuracy[data-tone=bad]{border-color:var(--bad)}@supports (color:color-mix(in lab, red, red)){.accuracy[data-tone=bad]{border-color:color-mix(in srgb, var(--bad) 35%, transparent)}}.accuracy[data-tone=bad]{background:var(--bad-soft)}.draft-notice{border-radius:var(--radius-sm);border:1px solid var(--warn);gap:8px;padding:10px 12px;display:grid}@supports (color:color-mix(in lab, red, red)){.draft-notice{border:1px solid color-mix(in srgb, var(--warn) 50%, transparent)}}.draft-notice{background:var(--warn-soft);font-size:13px}.draft-notice h4{letter-spacing:.02em;margin:0;font-size:14px}.draft-notice p{margin:0}.assumed-card{border-radius:var(--radius-sm);border:1px solid var(--line);gap:8px;padding:10px 12px;font-size:13px;display:grid}.assumed-card h4{margin:0;font-size:14px}.assumed-card p,.assumed-terms{margin:0}.assumed-terms{color:var(--text-2);padding-left:18px}.assumed-table{border-collapse:collapse;width:100%;font-size:12px}.assumed-table th,.assumed-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:4px 6px}.assumed-table tr[data-chosen=true] td{font-weight:600}.assumed-why{color:var(--text-2)}.assumed-actions{flex-wrap:wrap;gap:6px;display:flex}.assumed-search summary{cursor:pointer;color:var(--text-2)}.exports summary{cursor:pointer;color:var(--text-2);margin-bottom:8px;font-size:13px}@media (width<=640px){.stage-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-grid{grid-template-columns:1fr}}}@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-x-0{inset-inline:0}.top-0{top:0}.top-1\/2{top:50%}.top-12{top:calc(var(--spacing) * 12)}.top-16{top:calc(var(--spacing) * 16)}.left-3{left:calc(var(--spacing) * 3)}.z-40{z-index:40}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-1{margin-inline:var(--spacing)}.mx-1\.5{margin-inline:calc(var(--spacing) * 1.5)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.h-1{height:var(--spacing)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-28{height:calc(var(--spacing) * 28)}.h-\[420px\]{height:420px}.max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.min-h-\[188px\]{min-height:188px}.min-h-screen{min-height:100vh}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-80{width:calc(var(--spacing) * 80)}.w-full{width:100%}.w-px{width:1px}.max-w-\[640px\]{max-width:640px}.max-w-\[760px\]{max-width:760px}.max-w-\[880px\]{max-width:880px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1400px\]{max-width:1400px}.max-w-full{max-width:100%}.max-w-none{max-width:none}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-7{row-gap:calc(var(--spacing) * 7)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-card{border-radius:var(--radius)}.rounded-control{border-radius:var(--radius-sm)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-card{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent-text{border-color:var(--accent-text)}.border-bad\/30{border-color:var(--bad)}@supports (color:color-mix(in lab, red, red)){.border-bad\/30{border-color:color-mix(in oklab, var(--bad) 30%, transparent)}}.border-good\/25{border-color:var(--good)}@supports (color:color-mix(in lab, red, red)){.border-good\/25{border-color:color-mix(in oklab, var(--good) 25%, transparent)}}.border-line{border-color:var(--line)}.border-line-strong{border-color:var(--line-strong)}.border-warn\/25{border-color:var(--warn)}@supports (color:color-mix(in lab, red, red)){.border-warn\/25{border-color:color-mix(in oklab, var(--warn) 25%, transparent)}}.bg-\(--c\){background-color:var(--c)}.bg-\[color-mix\(in_srgb\,var\(--bg\)_86\%\,transparent\)\]{background-color:var(--bg)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--bg\)_86\%\,transparent\)\]{background-color:color-mix(in srgb,var(--bg) 86%,transparent)}}.bg-bad-soft{background-color:var(--bad-soft)}.bg-bg{background-color:var(--bg)}.bg-brand{background-color:var(--brand)}.bg-brand-soft{background-color:var(--brand-soft)}.bg-current{background-color:currentColor}.bg-good{background-color:var(--good)}.bg-good-soft{background-color:var(--good-soft)}.bg-line{background-color:var(--line)}.bg-surface{background-color:var(--surface)}.bg-surface-2{background-color:var(--surface-2)}.bg-surface-3{background-color:var(--surface-3)}.bg-transparent{background-color:#0000}.bg-warn{background-color:var(--warn)}.bg-warn-soft{background-color:var(--warn-soft)}.p-0{padding:0}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pb-1{padding-bottom:var(--spacing)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.font-mono{font-family:var(--mono)}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16\.5px\]{font-size:16.5px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[26px\]{font-size:26px}.text-\[30px\]{font-size:30px}.leading-\[1\.15\]{--tw-leading:1.15;line-height:1.15}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-text{color:var(--accent-text)}.text-bad{color:var(--bad)}.text-brand-ink{color:var(--brand-ink)}.text-good{color:var(--good)}.text-ink{color:var(--text)}.text-ink-2{color:var(--text-2)}.text-line-strong{color:var(--line-strong)}.text-muted{color:var(--muted)}.text-warn{color:var(--warn)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-75{opacity:.75}.shadow-card{--tw-shadow:var(--shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lift{--tw-shadow:var(--shadow-lift);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-accent-text:hover{border-color:var(--accent-text)}.hover\:border-line-strong:hover{border-color:var(--line-strong)}.hover\:bg-brand-soft\/60:hover{background-color:var(--brand-soft)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-brand-soft\/60:hover{background-color:color-mix(in oklab, var(--brand-soft) 60%, transparent)}}.hover\:bg-surface-2:hover{background-color:var(--surface-2)}.hover\:bg-surface-3:hover{background-color:var(--surface-3)}.hover\:text-ink:hover{color:var(--text)}.hover\:no-underline:hover{text-decoration-line:none}.hover\:shadow-lift:hover{--tw-shadow:var(--shadow-lift);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.aria-expanded\:bg-brand-soft[aria-expanded=true]{background-color:var(--brand-soft)}.aria-expanded\:text-accent-text[aria-expanded=true]{color:var(--accent-text)}.aria-\[current\=page\]\:border-accent-text[aria-current=page]{border-color:var(--accent-text)}.aria-\[current\=page\]\:bg-brand-soft[aria-current=page]{background-color:var(--brand-soft)}.aria-\[current\=page\]\:font-semibold[aria-current=page]{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.aria-\[current\=page\]\:text-accent-text[aria-current=page],.aria-\[current\=true\]\:text-accent-text[aria-current=true]{color:var(--accent-text)}.aria-\[current\=true\]\:text-ink[aria-current=true]{color:var(--text)}@media (prefers-reduced-motion:no-preference){.motion-safe\:animate-pulse{animation:var(--animate-pulse)}}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-\[38px\]{font-size:38px}}@media (width>=48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[1\.2fr_2fr\]{grid-template-columns:1.2fr 2fr}.md\:items-center{align-items:center}}@media (width>=64rem){.lg\:sticky{position:sticky}.lg\:top-24{top:calc(var(--spacing) * 24)}.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_360px\]{grid-template-columns:1fr 360px}.lg\:grid-cols-\[250px_minmax\(0\,1fr\)\]{grid-template-columns:250px minmax(0,1fr)}.lg\:items-end{align-items:flex-end}.lg\:gap-1{gap:var(--spacing)}.lg\:overflow-visible{overflow:visible}.lg\:border-transparent{border-color:#0000}.lg\:bg-transparent{background-color:#0000}}@media (width>=80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes draw{to{stroke-dashoffset:0}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1216;--bg-alt:#0a0d10;--surface:#151a20;--surface-2:#1b2129;--surface-3:#222a33;--text:#e6eaef;--text-2:#a9b3bf;--muted:#8592a0;--line:#262e38;--line-strong:#323c48;--line-x:#4a5664;--brand:#2f6db5;--brand-hover:#3a7cc8;--brand-ink:#fff;--brand-soft:#16263a;--accent:#6aa3e8;--accent-text:#6aa3e8;--good:#3fb97a;--good-soft:#12291e;--bad:#f06a5e;--bad-soft:#33171a;--warn:#e0a23a;--warn-soft:#2e2412;--assumed:#b79cf0;--assumed-soft:#231c33;--refused:#e37db8;--refused-soft:#331a2a;--running:#3ec1d3;--running-soft:#10292d;--on-status:#0f1216;--statusbar:#0a0d10;--figure:#13161b;--figure-bar:#171b21;--figure-line:#262e38;--series-1:#56b4e9;--series-2:#e69f00;--series-3:#cc79a7;--series-4:#f0e442;--series-5:#3d8fd6;--series-6:#d55e00;--hero-bg:#0a0d10;--hero-text:#e6eaef;--hero-muted:#a9b3bf;--hero-line:#a9b3bf1f;--hero-draw:#6aa3e8;--hero-ink:#0f1216;--viewer-bg:linear-gradient(180deg, #13161b 0%, #1b2129 100%);--viewer-hull:#6aa3e8;--viewer-grid:#4a5664;--shadow:0 0 0 0 transparent;--shadow-lift:0 8px 24px #00000073;--radius:6px;--radius-sm:4px;--font:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--cat-drawings:#6aa3e8;--cat-export:#a594f0;--cat-tanks:#3fc9a6;--cat-hydrostatics:#3ec1d3;--cat-loading:#e0a23a;--cat-stability:#3fb97a;--cat-strength:#b98bff;--cat-dynamics:#56b4e9;--cat-compliance:#f06a5e;--cat-advanced:#8592a0}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f5f7;--bg-alt:#e1e5ea;--surface:#fff;--surface-2:#fff;--surface-3:#eef1f4;--text:#161b22;--text-2:#4a5562;--muted:#5f6b78;--line:#e1e5ea;--line-strong:#cbd2da;--line-x:#9aa4b0;--brand:#1f5aa6;--brand-hover:#194b8b;--brand-ink:#fff;--brand-soft:#e5eef9;--accent:#1f5aa6;--accent-text:#1f5aa6;--good:#1e7a4c;--good-soft:#e6f4ec;--bad:#b42a22;--bad-soft:#fbe7e5;--warn:#9a6100;--warn-soft:#fbf0dc;--assumed:#6b45b8;--assumed-soft:#efe9fa;--refused:#a62c78;--refused-soft:#f9e6f1;--running:#0b7a8c;--running-soft:#e2f4f6;--on-status:#fff;--statusbar:#e1e5ea;--series-1:#2f7fb8;--series-2:#b57a00;--series-3:#a8558a;--series-4:#8a7d00;--series-5:#1f5aa6;--series-6:#b04b00;--hero-bg:#0f1216;--viewer-bg:linear-gradient(180deg, #eef1f4 0%, #f9fafb 100%);--viewer-hull:#1f5aa6;--viewer-grid:#9aa4b0;--shadow-lift:0 8px 24px #161b2229;--cat-drawings:#1f5aa6;--cat-export:#5b45b8;--cat-tanks:#0f7a62;--cat-hydrostatics:#0b7a8c;--cat-loading:#9a6100;--cat-stability:#1e7a4c;--cat-strength:#7a3fc4;--cat-dynamics:#2f7fb8;--cat-compliance:#b42a22;--cat-advanced:#5f6b78}.link-button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
