:root{color-scheme:light dark;--r-chip:12px;--r-count:8px;--r-lg:12px;--r-md:8px;--r-round:50%;--r-sm:4px;--aipox-appbar-h:44px;--aipox-bar-block-size:calc(var(--ctl-h) + 20px);--aipox-toast-inset-top:calc(var(--aipox-appbar-h) + var(--aipox-bar-block-size) + var(--space-2));--aipox-toast-inset-x:12px;--aipox-toast-width:22.5rem;--aipox-toast-bg:var(--surface);--aipox-object-gap:12px;--aipox-section-pad:12px;--aipox-form-col-gap:16px;--aipox-field-max:22rem;--aipox-workspace-inset:var(--space-2);--aipox-field-small-min:16rem;--aipox-field-small-max:28rem;--aipox-field-large-min:22rem;--aipox-field-large-max:44rem;--aipox-page-width-wide:90rem;--aipox-page-width-narrow:47.5rem;--aipox-page-width-focused:30rem;--aipox-sheet-s:30rem;--aipox-sheet-wide:45rem;--aipox-sheet-m:40rem;--aipox-sheet-l:60rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-sans:"Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--ctl-h:36px;--f-gap:12px;--f-section-gap:16px;--fs:14px;--ic:18px;--lh:20px;--nav-h:36px;--pad-x:10px;--row-h:36px;--tab-h:36px;--canvas:#f7f6fb;--bg:#efedf6;--border:#dcdae5;--border-subtle:#e8e6ef;--border-input:#757e8d;--border-strong:#c3c0cf;--danger:#b42318;--danger-soft:#fdecea;--danger-text:#9a1c13;--focus:#7c3aed;--hover:#eeebf6;--info-soft:#e0f1f4;--info-text:#0b5c66;--mark:#ffe7a3;--neutral-soft:#eceef1;--neutral-text:#3d4552;--on-danger:#fff;--on-primary:#fff;--primary:#7c3aed;--primary-hover:#6d28d9;--primary-text:#6d28d9;--sel:#ede9fe;--success-soft:#e3f3e8;--success-text:#17612f;--surface:#fff;--surface-2:#e9e7f0;--text:#151a21;--text-2:#4b5565;--warning:#b25e00;--warning-soft:#fff1d6;--warning-text:#7a4100;--shadow-1:0 1px 2px #1018280f, 0 2px 8px #1018280f;--shadow-2:0 12px 32px #10182824, 0 2px 6px #1018280f;--placeholder:#6e6a7e;--disabled-edge:#8e8aa0;--section-bg:var(--surface);--section-border:#ece9f3;--section-shadow:0 1px 2px #2d1e5a0a, 0 8px 24px #2d1e5a12;--section-radius:16px;--section-pad:calc(var(--aipox-section-pad) + 4px);--section-gap:var(--f-section-gap);--field-bg:var(--surface);--bar-bg:#fcfbfe;--grid-head-bg:#f3f1f9;--figure-bg:var(--surface);--figure-border:#ece9f3;--figure-radius:16px;--figure-shadow:var(--section-shadow);--primary-from:#7c3aed;--primary-to:#2563eb;--primary-hover-from:#6d28d9;--primary-hover-to:#1d4ed8;--primary-active-from:#5b21b6;--primary-active-to:#1e40af;--primary-lift:0 1px 2px #3c28b42e, 0 4px 12px #503cdc38;--glow-start:#7c3aed17;--glow-end:#2563eb12;--appbar-tint:transparent;--appbar-edge:transparent;--menu-bg:transparent;--menu-edge:transparent;--menu-brand-edge:transparent;--menu-foot-edge:transparent;--menu-active-bg:var(--surface);--menu-active-ring:var(--section-border);--menu-active-shadow:0 1px 2px #2d1e5a0f, 0 2px 8px #2d1e5a0f;--menu-active-radius:var(--r-md);--statusbar-bg:transparent;--statusbar-edge:transparent;--shell-glow:radial-gradient(ellipse 45% 420px at 12% 0, var(--glow-start), transparent 72%), radial-gradient(ellipse 45% 360px at 78% 0, var(--glow-end), transparent 72%);--content-glow:none;--aipox-scrollbar-thumb:var(--border-input);--aipox-scrollbar-thumb-hover:var(--text-2);--aipox-scrollbar-size:10px;--overview-inset:16px;--overview-radius:16px;--overview-ring:var(--section-border);--overview-bg:var(--surface);--overview-shadow:var(--section-shadow);--overview-foot-shadow:0 10px 20px -10px #2d1e5a24;--aipox-bg:var(--bg);--aipox-surface:var(--surface);--aipox-surface-2:var(--surface-2);--aipox-text:var(--text);--aipox-text-2:var(--text-2);--aipox-border:var(--border);--aipox-border-subtle:var(--border-subtle);--aipox-border-input:var(--border-input);--aipox-primary:var(--primary);--aipox-primary-hover:var(--primary-hover);--aipox-focus:var(--focus);--aipox-danger:var(--danger);--aipox-success:var(--success-text);--aipox-warning:var(--warning);--aipox-hover:var(--hover);--aipox-control:var(--ctl-h);--aipox-radius:var(--r-md);--aipox-shadow-1:var(--shadow-1);--aipox-shadow-2:var(--shadow-2)}@media (prefers-color-scheme:dark){:root{--aipox-toast-bg:var(--surface-2);--canvas:var(--bg);--bg:#0d0a17;--border:#2a2440;--border-subtle:#201a30;--border-input:#6b7686;--border-strong:#3a3352;--danger:#ff8f84;--danger-soft:#3b1d1b;--danger-text:#ffb3ab;--focus:#a78bfa;--hover:#221b36;--info-soft:#12303a;--info-text:#7fd3de;--mark:#5a4a16;--neutral-soft:#262035;--neutral-text:#cfcadb;--on-danger:#2a0a07;--on-primary:#1a0b3d;--primary:#a78bfa;--primary-hover:#c4b5fd;--primary-text:#c4b5fd;--sel:#2d2252;--success-soft:#14301f;--success-text:#93e0b3;--surface:#161122;--surface-2:#1d1730;--text:#eceaf3;--text-2:#aba4bf;--warning:#f0b45a;--warning-soft:#3a2b13;--warning-text:#f6c982;--shadow-1:0 1px 2px #00000080;--shadow-2:0 12px 32px #0000008c;--placeholder:#8e88a3;--disabled-edge:#4a4363;--section-bg:var(--surface);--section-border:#251e3a;--section-radius:16px;--section-pad:calc(var(--aipox-section-pad) + 4px);--section-gap:var(--f-section-gap);--section-shadow:0 1px 2px #00000073, 0 8px 24px #0000004d;--bar-bg:#120e1e;--grid-head-bg:#1b1529;--figure-bg:var(--surface);--figure-border:#251e3a;--figure-radius:16px;--figure-shadow:var(--section-shadow);--glow-start:#a78bfa21;--glow-end:#60a5fa1a;--appbar-tint:transparent;--appbar-edge:transparent;--menu-bg:transparent;--menu-edge:transparent;--menu-brand-edge:transparent;--menu-foot-edge:transparent;--menu-active-bg:var(--surface);--menu-active-ring:var(--section-border);--menu-active-radius:var(--r-md);--menu-active-shadow:0 1px 2px #0006, 0 2px 8px #00000040;--statusbar-bg:transparent;--statusbar-edge:transparent;--shell-glow:radial-gradient(ellipse 45% 420px at 12% 0, var(--glow-start), transparent 72%), radial-gradient(ellipse 45% 360px at 78% 0, var(--glow-end), transparent 72%);--primary-from:#a78bfa;--primary-to:#8fb4ff;--primary-hover-from:#c4b5fd;--primary-hover-to:#bfdbfe;--primary-active-from:#8b6cf6;--primary-active-to:#7aa7f7;--primary-lift:0 1px 2px #0006, 0 4px 14px #8b6cf638;--overview-ring:var(--section-border);--overview-shadow:var(--section-shadow);--overview-foot-shadow:0 10px 20px -10px #00000080}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--site-font:"Inter Variable", var(--font-sans);--site-radius:16px;--site-gutter:16px;--brand-gradient:linear-gradient(135deg, var(--primary-from), var(--primary-to));--brand-panel:linear-gradient(135deg, #7c3aed, #2563eb);--glass:color-mix(in srgb, var(--canvas) 82%, transparent)}@media (width>=640px){:root{--site-gutter:24px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{background-color:var(--canvas);background-image:radial-gradient(ellipse 55% 420px at 18% 0, var(--glow-start), transparent 72%), radial-gradient(ellipse 50% 380px at 82% 0, var(--glow-end), transparent 72%);min-height:100vh;color:var(--text);font-family:var(--site-font);-webkit-font-smoothing:antialiased;background-repeat:no-repeat;margin:0;font-size:16px;line-height:1.6}img,svg{max-width:100%;display:block}a{color:var(--primary-text);text-underline-offset:3px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}h1,h2,h3{letter-spacing:-.015em;margin:0;font-weight:650;line-height:1.2}p{margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;border-radius:var(--r-md);background:var(--surface);color:var(--text);box-shadow:var(--shadow-2);padding:8px 14px;position:absolute;top:-48px;left:12px}.skip-link:focus{top:12px}.icon{flex:none;width:1em;height:1em}.icon svg{width:100%;height:100%}.container{width:100%;max-width:72rem;padding-inline:var(--site-gutter);margin-inline:auto}.container-md{max-width:64rem}.container-sm{max-width:48rem}.stack>*+*{margin-top:1rem}.grid{gap:1rem;display:grid}@media (width>=640px){.grid-sm-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-sm-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.grid-lg-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-lg-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.section{padding-block:3.5rem}.section-tight{padding-block:2rem}.section-head{max-width:42rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--primary-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;font-weight:600;display:block}.label-mono{letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6875rem}.h1{hyphens:auto;overflow-wrap:break-word;font-size:clamp(2.125rem,1.4rem + 3vw,3.25rem);line-height:1.1}.h2{font-size:clamp(1.625rem,1.3rem + 1.2vw,2rem)}.h3{font-size:1.125rem}.kicker+.h1,.kicker+.h2{margin-top:.75rem}.lead{color:var(--text-2);margin-top:1rem;font-size:1.125rem;line-height:1.7}.muted{color:var(--text-2)}.small{font-size:.875rem;line-height:1.6}.xsmall{font-size:.75rem}.prose p,.prose ul,.prose ol{color:var(--text-2);margin-top:1rem;line-height:1.75}.prose ul{padding-left:1.25rem}.prose li+li{margin-top:.5rem}.prose strong,.strong{color:var(--text);font-weight:600}.grad-text{background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.link{color:var(--primary-text);font-weight:500;text-decoration:none}.link:hover{text-decoration:underline}.btn{border-radius:var(--r-md);min-height:40px;font:inherit;white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.9375rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn .icon{width:16px;height:16px}.btn-sm{min-height:36px;padding:0 .75rem;font-size:.875rem}.btn-lg{min-height:48px;padding:0 1.375rem;font-size:1rem}.btn-block{width:100%}.btn-primary{background:var(--primary);background-image:var(--brand-gradient);box-shadow:var(--primary-lift);color:var(--on-primary)}.btn-primary:hover{background-image:linear-gradient(135deg, var(--primary-hover-from), var(--primary-hover-to))}.btn-outline{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.btn-outline:hover,.btn-ghost:hover{background:var(--hover)}.btn-ghost{color:var(--text);background:0 0}.btn-on-brand{color:#3b1d8f;background:#fff}.btn-on-brand:hover{background:#f3f0ff}.btn-on-brand-outline{color:#fff;background:#ffffff1a;border-color:#ffffff8c}.btn-on-brand-outline:hover{background:#fff3}.btn-on-brand:focus-visible,.btn-on-brand-outline:focus-visible{outline-color:#fff}.btn-row{flex-wrap:wrap;gap:.75rem;display:flex}.card{border:1px solid var(--section-border);border-radius:var(--site-radius);background:var(--surface);box-shadow:var(--section-shadow)}.card-pad{padding:1.5rem}.card-pad-sm{padding:1.25rem}.card-quiet{border:1px solid var(--section-border);border-radius:var(--site-radius);background:var(--bar-bg)}a.card{color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}a.card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.card-link-cta{color:var(--primary-text);align-items:center;gap:.375rem;margin-top:1rem;font-size:.875rem;display:flex}.brand-panel{border-radius:var(--site-radius);background:var(--brand-panel);box-shadow:var(--primary-lift);color:#fff}.brand-panel h2,.brand-panel h3,.brand-panel a:not(.btn){color:#fff}.end-cta{text-align:center;margin-block:3.5rem;padding:2.5rem 1.5rem}.end-cta p{max-width:36rem;margin:1rem auto 0}.end-cta h2{max-width:40rem;margin-inline:auto;font-size:clamp(1.75rem,1.3rem + 1.6vw,2.25rem)}.end-cta .btn-row{justify-content:center;margin-top:2rem}@media (width>=640px){.end-cta{padding:3.5rem}}.icon-tile{border-radius:var(--r-md);background:var(--sel);width:40px;height:40px;color:var(--primary-text);flex:none;place-items:center;display:grid}.icon-tile .icon{width:20px;height:20px}.icon-tile-sm{width:28px;height:28px}.icon-tile-sm .icon{width:15px;height:15px}.pill{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-flex}.pill .icon{width:14px;height:14px}.badge-brand{background:var(--brand-panel);letter-spacing:.08em;text-transform:uppercase;color:#fff;border-radius:999px;padding:.25rem .625rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.625rem;font-weight:600}.tag-mono{letter-spacing:.08em;text-transform:uppercase;color:var(--primary-text);margin-top:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.625rem;display:block}.check-list{gap:.625rem;margin:0;padding:0;list-style:none;display:grid}.check-list li{gap:.625rem;display:flex}.check-list .icon{width:16px;height:16px;color:var(--success-text);margin-top:.25rem}.site-header{z-index:40;border-bottom:1px solid var(--border-subtle);background:var(--glass);backdrop-filter:blur(12px);position:sticky;top:0}.site-header-row{justify-content:space-between;align-items:center;gap:.5rem;min-height:64px;display:flex}.brand{color:var(--text);align-items:center;gap:.625rem;text-decoration:none;display:inline-flex}.brand-mark{border-radius:var(--r-md);background:var(--brand-panel);width:32px;height:32px;box-shadow:var(--primary-lift);color:#fff;place-items:center;font-size:.875rem;font-weight:700;display:grid}.brand-name{font-size:1.125rem;font-weight:650}.site-nav{gap:1.5rem;font-size:.875rem;display:none}.site-nav a{color:var(--text-2);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text)}.site-nav a[aria-current=page]{font-weight:600}.header-actions{align-items:center;gap:.375rem;display:flex}.hide-xs{display:none}@media (width>=640px){.hide-xs{display:inline}}@media (width>=1024px){.site-nav{display:flex}.lg-hidden{display:none}}.menu{position:relative}.menu>summary{list-style:none}.menu>summary::-webkit-details-marker{display:none}.menu-panel{z-index:50;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);min-width:13rem;box-shadow:var(--shadow-2);padding:.375rem;position:absolute;top:calc(100% + 8px);right:0}.menu-panel a{border-radius:var(--r-md);color:var(--text);padding:.625rem .75rem;text-decoration:none;display:block}.menu-panel a:hover{background:var(--hover)}.menu-panel a[aria-current=page],.menu-panel a[aria-current=true]{color:var(--primary-text);font-weight:600}.menu-panel .btn{margin-top:.375rem;display:flex}.menu-panel-wide{width:min(20rem,100vw - 32px)}.hero{align-items:center;gap:2.5rem;padding-block:3rem;display:grid}@media (width>=1024px){.hero{grid-template-columns:1.05fr 1fr;padding-block:4rem}}.hero .pill{margin-bottom:1.5rem}.hero-lead{max-width:36rem}.hero .btn-row{margin-top:2rem}.browser-frame{box-shadow:var(--shadow-2);overflow:hidden}.browser-bar{border-bottom:1px solid var(--border-subtle);background:var(--bar-bg);align-items:center;gap:6px;padding:.625rem 1rem;display:flex}.browser-bar .dot{background:var(--surface-2);border-radius:50%;width:10px;height:10px}.browser-bar .address{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:999px;margin-left:.5rem;padding:.125rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6875rem}.browser-frame img{width:100%;height:auto}.trust-strip{border-block:1px solid var(--border-subtle);color:var(--text-2);flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.75rem;padding-block:1.5rem;font-size:.875rem;font-weight:600;display:flex}.why-grid{gap:1rem;margin-top:2rem;display:grid}@media (width>=1024px){.why-grid{grid-template-columns:1fr auto 1fr}.why-center{max-width:15rem}}.why-center{text-align:center;place-content:center;padding:1.5rem;display:grid}.why-center .icon{width:24px;height:24px;margin:0 auto .5rem}.why-card h3{color:var(--text-2);font-size:.875rem}.why-card ul{color:var(--text-2);margin:.75rem 0 0;padding-left:1.125rem;font-size:.875rem}.why-card li+li{margin-top:.375rem}.excel{margin-top:1.5rem;padding:1.5rem}@media (width>=640px){.excel{padding:2rem}}.excel .check-list{color:var(--text-2);margin-top:1.5rem;font-size:.875rem}@media (width>=640px){.excel .check-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}}.model-chain{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin:2rem 0 0;padding:0;font-size:.875rem;font-weight:500;list-style:none;display:flex}.model-chain li{align-items:center;gap:.75rem;display:flex}.model-node{border:1px solid var(--section-border);border-radius:var(--r-md);background:var(--surface);align-items:center;gap:.5rem;padding:.5rem .75rem;display:inline-flex}.feature-head{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.step-head{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.split{gap:2rem;display:grid}@media (width>=1024px){.split{grid-template-columns:1fr 1.1fr;align-items:center}.split-price{grid-template-columns:minmax(0,22.5rem) 1fr}}.service-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 .5rem;display:flex}.price-mono{color:var(--primary-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem;font-weight:600}.price-card{overflow:hidden}.price-card-top{background:var(--brand-panel);color:#fff;padding:1.25rem 1.5rem}.price-card-top .label-mono{color:#fff}.price-figure{margin-top:.5rem;font-size:2.25rem;font-weight:650}.price-figure span{font-size:1.0625rem;font-weight:400}.table-wrap{position:relative;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table th,.table td{text-align:left;vertical-align:top;padding:.75rem}.table thead th{color:var(--text-2);font-weight:500}.table tbody tr{border-top:1px solid var(--border-subtle)}.table-card{border:1px solid var(--section-border);border-radius:var(--site-radius);background:var(--surface);box-shadow:var(--section-shadow);position:relative;overflow-x:auto}.table-card thead tr{background:var(--grid-head-bg)}.table-card thead tr th{border-bottom:1px solid var(--border-subtle)}.table-card tbody tr:first-child{border-top:0}.table .num{text-align:right;font-variant-numeric:tabular-nums}.compare{min-width:50rem}.compare th:not(:first-child),.compare td:not(:first-child){text-align:center}.compare td:first-child{color:var(--text-2)}.compare .ours{background:color-mix(in srgb, var(--sel) 60%, transparent)}.compare-head-ours{background:var(--brand-panel);color:#fff;border-radius:999px;padding:.25rem .75rem;font-weight:600;display:inline-flex}.mark{vertical-align:middle;border-radius:50%;place-items:center;width:24px;height:24px;display:inline-grid;position:relative}.mark .icon{width:14px;height:14px}.mark-ok{background:var(--success-soft);color:var(--success-text)}.mark-partial{background:var(--warning-soft);color:var(--warning-text)}.mark-no{background:var(--neutral-soft);color:var(--neutral-text)}.legend{color:var(--text-2);flex-wrap:wrap;gap:.25rem 1.25rem;margin-top:.75rem;font-size:.75rem;display:flex}.legend span{align-items:center;gap:.375rem;display:inline-flex}.legend .mark{width:16px;height:16px}.legend .mark .icon{width:10px;height:10px}.faq{gap:.75rem;margin-top:1.5rem;display:grid}.faq details{border:1px solid var(--section-border);border-radius:var(--r-lg);background:var(--surface);padding:0 1.25rem}.faq details[open]{border-color:color-mix(in srgb, var(--primary) 35%, var(--section-border))}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--primary-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem}.faq details[open] summary:after{content:"–"}.faq-answer{color:var(--text-2);padding-bottom:1rem;font-size:.875rem;line-height:1.7}.faq-answer .link{align-items:center;gap:.25rem;margin-top:.5rem;display:inline-flex}.chip-links{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.chip-link{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;text-decoration:none;display:inline-flex}.chip-link:hover{border-color:var(--primary);color:var(--text)}.chip-link .icon{width:14px;height:14px}.page-top{padding-top:2.5rem}@media (width>=640px){.page-top{padding-top:3.5rem}}.breadcrumbs ol{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:.375rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:.375rem;display:flex}.breadcrumbs a{color:var(--text-2);text-decoration:none}.breadcrumbs a:hover,.breadcrumbs [aria-current=page]{color:var(--text)}.breadcrumbs .icon{width:14px;height:14px}.article-head{margin-top:1.5rem}.article-section{padding-top:3rem}.toc{margin-top:2rem;padding:1.25rem}.toc ul{gap:.5rem;margin:.75rem 0 0;padding:0;font-size:.875rem;list-style:none;display:grid}@media (width>=640px){.toc ul{grid-template-columns:repeat(2,minmax(0,1fr))}}.row-card{gap:1rem;display:flex}.row-card+.row-card{margin-top:.75rem}.code{color:var(--text-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.steps{gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.steps li{gap:1rem;display:flex}.step-num{border-radius:var(--r-md);background:var(--sel);width:32px;height:32px;color:var(--primary-text);flex:none;place-items:center;font-size:.875rem;font-weight:650;display:grid}.letter{border-radius:var(--r-md);flex:none;place-items:center;width:40px;height:40px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;display:grid}.letter-R{--letter-bg:var(--primary);--letter-fg:var(--on-primary)}.letter-A{--letter-bg:var(--info-soft);--letter-fg:var(--info-text)}.letter-S{--letter-bg:var(--success-soft);--letter-fg:var(--success-text)}.letter-C{--letter-bg:var(--warning-soft);--letter-fg:var(--warning-text)}.letter-I{--letter-bg:var(--neutral-soft);--letter-fg:var(--neutral-text)}.letter,.gen-cell.letter{background:var(--letter-bg);color:var(--letter-fg);border:0}.rule-do{background:var(--success-soft)}.rule-do h3{color:var(--success-text)}.rule-avoid{background:var(--warning-soft)}.rule-avoid h3{color:var(--warning-text)}.rule-do,.rule-avoid{border-radius:var(--site-radius);padding:1.25rem}.rule-do h3,.rule-avoid h3{align-items:center;gap:.5rem;font-size:1rem;display:flex}.rule-do ul,.rule-avoid ul{color:var(--text);margin:.75rem 0 0;padding-left:1.125rem;font-size:.875rem;line-height:1.7}.inline-cta{margin-top:2rem;padding:1.5rem}@media (width>=640px){.inline-cta{padding:2rem}}.inline-cta .btn-row{margin-top:1.25rem}.inline-cta-icon{gap:.75rem;display:flex}.inline-cta-icon>.icon{width:24px;height:24px;margin-top:.25rem}.tool-card{gap:1.25rem;padding:1.5rem;display:grid}@media (width>=640px){.tool-card{grid-template-columns:1.5fr 1fr;align-items:center;padding:1.75rem}}.notice{border:1px solid color-mix(in srgb, var(--primary) 30%, transparent);border-radius:var(--r-lg);background:var(--sel);gap:.75rem;padding:1.25rem;display:flex}.notice>.icon{width:20px;height:20px;color:var(--primary-text);margin-top:.125rem}.stat{padding:1rem}.stat-value{color:var(--primary-text);font-size:1.875rem;font-weight:650}.stat-value.quiet{color:var(--text-2)}.site-footer{border-top:1px solid var(--border-subtle);margin-top:2rem;font-size:.875rem}.footer-grid{gap:2rem;padding-block:2.5rem;display:grid}@media (width>=640px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr}}.footer-grid ul{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.footer-grid a{color:var(--text-2);text-decoration:none}.footer-grid a:hover{color:var(--text)}.footer-grid h2{letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6875rem;font-weight:500}.footer-bottom{border-top:1px solid var(--border-subtle);color:var(--text-2);padding-block:1.5rem}.field-label{margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.input{border:1px solid var(--border-input);border-radius:var(--r-md);background:var(--field-bg);width:100%;min-width:0;min-height:40px;font:inherit;color:var(--text);padding:0 .75rem;font-size:.875rem}.input::placeholder{color:var(--placeholder)}.input-quiet{background:0 0;border-color:#0000}.input-quiet:hover{border-color:var(--border)}.input-center{text-align:center;font-weight:500}.gen-toolbar{flex-direction:column;gap:1rem;display:flex}@media (width>=640px){.gen-toolbar{flex-direction:row;justify-content:space-between;align-items:flex-end}}.gen-toolbar label{flex:1;min-width:0}.gen-status{border-radius:var(--r-md);align-items:flex-start;gap:.625rem;margin-top:1rem;padding:.625rem .75rem;font-size:.875rem;display:flex}.gen-status .icon{width:16px;height:16px;margin-top:.2rem}.gen-status[data-state=ok]{background:var(--success-soft);color:var(--success-text)}.gen-status[data-state=issues]{background:var(--warning-soft);color:var(--warning-text)}.gen-legend{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.gen-legend .pill{font-weight:400}.gen-legend .letter{border-radius:4px;width:20px;height:20px;font-size:.625rem}.gen-matrix{min-width:34rem}.gen-matrix th,.gen-matrix td{vertical-align:middle;padding:.5rem}.gen-matrix thead th{vertical-align:bottom}.gen-matrix .task-col{z-index:1;background:var(--surface);min-width:18rem;position:sticky;left:0}.gen-matrix thead .task-col{background:var(--grid-head-bg)}.gen-matrix .role-col{min-width:9rem}.gen-head-cell,.gen-task-cell{align-items:center;gap:.25rem;display:flex}.gen-row-dot{background:var(--success-text);border-radius:50%;flex:none;width:8px;height:8px}.gen-row-dot[data-invalid=true]{background:var(--warning)}.gen-icon-btn{border-radius:var(--r-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.gen-icon-btn:hover{background:var(--hover);color:var(--danger)}.gen-icon-btn .icon{width:15px;height:15px}.gen-cell{border:1px dashed var(--border-strong);border-radius:var(--r-md);width:40px;height:40px;color:var(--text-2);cursor:pointer;background:0 0;place-items:center;margin-inline:auto;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem;font-weight:700;display:grid}.gen-cell:hover{background:var(--hover)}.print-only{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}@media print{body{background:#fff}.site-header,.site-footer,.no-print,.skip-link{display:none!important}.print-only{display:block}.card,.table-card{box-shadow:none}}.brand-panel p,.prose .brand-panel p{color:#fff}[data-rasci]:not([data-ready]) .js-only{visibility:hidden}.grid>*,.hero>*,.split>*,.why-grid>*{min-width:0}ul.grid,ol.grid,.prose ul.grid{padding-left:0;list-style:none}.term-list{grid-template-columns:auto 1fr;gap:.25rem .75rem;margin:.75rem 0 0;display:grid}.term-list dt{color:var(--text);font-weight:600}.term-list dd{color:var(--text-2);margin:0}
