:root{--c-red-50: #FFF8F8;--c-red-100: #FFEFEE;--c-red-200: #FFDDDA;--c-red-300: #FFC3BE;--c-red-400: #FF8F8A;--c-red-500: #FF424A;--c-red-600: #D60B2A;--c-red-700: #A2001C;--c-red-800: #6A000E;--c-red-900: #320003;--c-crimson-50: #FFF8F9;--c-crimson-100: #FFEFF1;--c-crimson-200: #FFDCE2;--c-crimson-300: #FFC1CC;--c-crimson-400: #FF8BA5;--c-crimson-500: #F04E7E;--c-crimson-600: #C92960;--c-crimson-700: #9B1246;--c-crimson-800: #66022A;--c-crimson-900: #310010;--c-amber-50: #FFF9F1;--c-amber-100: #FFF1DF;--c-amber-200: #FFE1B9;--c-amber-300: #FFCA7F;--c-amber-400: #EFA200;--c-amber-500: #C38400;--c-amber-600: #9A6700;--c-amber-700: #744C00;--c-amber-800: #4A2F00;--c-amber-900: #211300;--c-green-50: #EFFFF2;--c-green-100: #D9FFE1;--c-green-200: #ABFDBF;--c-green-300: #74F39B;--c-green-400: #00CC66;--c-green-500: #00AF57;--c-green-600: #008A43;--c-green-700: #006730;--c-green-800: #00411C;--c-green-900: #001D09;--c-sky-50: #F4FBFF;--c-sky-100: #E6F7FF;--c-sky-200: #C8EDFF;--c-sky-300: #9DDFFF;--c-sky-400: #24C4FF;--c-sky-500: #00A0D3;--c-sky-600: #007EA7;--c-sky-700: #005E7D;--c-sky-800: #003B50;--c-sky-900: #001925;--c-blue-50: #F7FAFF;--c-blue-100: #EDF4FF;--c-blue-200: #D8E7FF;--c-blue-300: #BBD6FF;--c-blue-400: #86B5FF;--c-blue-500: #5B92E3;--c-blue-600: #1F63C8;--c-blue-700: #1551A8;--c-blue-800: #073270;--c-blue-900: #011436;--c-neutral-50: #FBFAFA;--c-neutral-100: #F4F3F3;--c-neutral-200: #E8E5E5;--c-neutral-300: #D7D3D3;--c-neutral-400: #B7B3B2;--c-neutral-500: #959190;--c-neutral-600: #767271;--c-neutral-700: #585454;--c-neutral-800: #373534;--c-neutral-900: #131313;--c-brand-primary: var(--c-red-500);--c-brand-emphasis: var(--c-red-700);--c-brand-soft: var(--c-red-50);--c-ink-strong: var(--c-neutral-900);--c-ink-default: var(--c-neutral-800);--c-ink-muted: var(--c-neutral-700);--c-ink-subtle: var(--c-neutral-600);--c-ink-on-emphasis: var(--c-neutral-50);--c-ink-link: var(--c-blue-600);--c-ink-link-hover: var(--c-blue-500);--c-surface-page: var(--c-neutral-50);--c-surface-raised: #FFFFFF;--c-surface-sunken: var(--c-neutral-100);--c-surface-emphasis: var(--c-neutral-900);--c-surface-brand-soft: var(--c-red-50);--c-surface-action-soft: var(--c-blue-50);--c-line-soft: var(--c-neutral-200);--c-line-default: var(--c-neutral-300);--c-line-strong: var(--c-neutral-500);--c-line-on-emphasis: var(--c-neutral-700);--c-action-primary: var(--c-blue-600);--c-action-primary-hover: var(--c-blue-500);--c-action-primary-soft: var(--c-blue-50);--c-signal-success: var(--c-green-400);--c-signal-success-soft: var(--c-green-50);--c-signal-warning: var(--c-amber-400);--c-signal-warning-soft: var(--c-amber-50);--c-signal-danger: var(--c-crimson-600);--c-signal-danger-soft: var(--c-crimson-50);--c-signal-info: var(--c-sky-600);--c-signal-info-soft: var(--c-sky-50);--font-display: "Sora", system-ui, sans-serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--font-social: "DM Sans", system-ui, sans-serif;--fs-x-small: clamp(.9rem, 1.5vw, 1rem);--fs-small: clamp(1rem, 1.6vw, 1.2rem);--fs-base: clamp(1.13rem, 1.8vw, 1.3rem);--fs-medium: clamp(1.3rem, 2.2vw, 1.6rem);--fs-large: clamp(1.5rem, 3vw, 2rem);--fs-x-large: clamp(2rem, 4vw, 2.8rem);--fs-xx-large: clamp(2.6rem, 6vw, 3.75rem);--fs-xxx-large: clamp(3rem, 8vw, 4.8rem);--lh-none: 1;--lh-tight: 1.1;--lh-snug: 1.2;--lh-normal: 1.5;--lh-relaxed: 1.625;--lh-loose: 2;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--sp-small: clamp(.5rem, 2.5vw, 1rem);--sp-medium: clamp(1.5rem, 4vw, 2rem);--sp-large: clamp(2rem, 5vw, 3rem);--sp-x-large: clamp(3rem, 7vw, 5rem);--sp-xx-large: clamp(4rem, 9vw, 7rem);--sp-xxx-large: clamp(5rem, 12vw, 9rem);--sp-xxxx-large: clamp(6rem, 14vw, 13rem);--radius-button: 100px;--radius-card: 16px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--c-surface-page);color:var(--c-ink-strong);font-family:var(--font-body);font-weight:400;line-height:var(--lh-relaxed);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}img,svg{display:block;max-width:100%}::selection{background:var(--c-action-primary);color:var(--c-ink-on-emphasis)}:where(a,button,[role=button],input,select,textarea):focus-visible{outline:2px solid var(--c-action-primary);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--diff-added: var( --c-green-600 );--diff-added-bg: var( --c-green-50 );--diff-removed: var( --c-crimson-600 );--diff-removed-bg: var( --c-crimson-50 );--diff-changed: var( --c-amber-600 );--diff-changed-bg: var( --c-amber-50 );--diff-moved: var( --c-sky-700 );--diff-moved-bg: var( --c-sky-50 );--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--fs-code: 12.5px;--grid-max: 1180px}.page{max-width:var( --grid-max );margin:0 auto;padding:0 var( --sp-medium ) var( --sp-x-large )}.masthead{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:1rem 0;margin-bottom:var( --sp-medium )}.masthead__brand{display:flex;align-items:center;gap:1rem}.masthead__lockup{width:28px;height:28px}.masthead__brand-text{font-weight:var( --fw-medium );font-size:.8125rem;color:var( --c-ink-muted );padding-left:1rem;border-left:1px solid var( --c-line-default )}.masthead__nav{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.75rem;font-weight:var( --fw-medium );color:var( --c-ink-muted )}.masthead__nav a{border-bottom:1px solid transparent;padding-bottom:2px;transition:color .15s ease,border-color .15s ease}.masthead__nav a:hover{color:var( --c-ink-strong );border-bottom-color:var( --c-action-primary )}.hero--compact{margin-bottom:var( --sp-medium )}.hero__kicker{display:flex;align-items:center;gap:.875rem;font-family:var( --mono );font-size:.6875rem;font-weight:var( --fw-medium );letter-spacing:.18em;text-transform:uppercase;color:var( --c-ink-muted );margin-bottom:clamp(.75rem,2vw,1.25rem)}.hero__kicker:before{content:"";width:32px;height:1px;background:var( --c-brand-primary )}.hero__kicker span+span{position:relative;padding-left:1rem}.hero__kicker span+span:before{content:"";position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:50%;background:var( --c-line-strong );transform:translateY(-50%)}.hero__title{font-size:clamp(2rem,5vw,3.25rem);line-height:.92;letter-spacing:-.035em;color:var( --c-ink-strong )}.hero__title-line--display{font-weight:var( --fw-bold );display:block}.hero__sub{font-size:var( --fs-small );line-height:var( --lh-relaxed );color:var( --c-ink-muted );max-width:60ch;margin-top:clamp(.875rem,2vw,1.25rem)}.colophon{margin-top:var( --sp-large );padding-top:1.5rem;border-top:1px solid var( --c-line-default )}.colophon__col p{font-size:.75rem;line-height:var( --lh-relaxed );color:var( --c-ink-muted );max-width:70ch}.colophon a{color:var( --c-action-primary );border-bottom:1px solid currentColor}.colophon a:hover{color:var( --c-ink-strong )}.panel{background:var( --c-surface-raised );border:1px solid var( --c-line-soft );border-radius:var( --radius-card );margin-bottom:1.25rem;overflow:hidden}.tabs,.toolbar{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-bottom:1px solid var( --c-line-soft );flex-wrap:wrap}.tabs__spacer{flex:1}.tab{border:1px solid transparent;background:none;color:var( --c-ink-muted );font-family:var( --font-body );font-size:.8125rem;font-weight:var( --fw-medium );line-height:1.2;padding:.35rem .9rem;border-radius:var( --radius-button );cursor:pointer;transition:background .15s ease,color .15s ease}.tab:hover{color:var( --c-ink-strong );background:var( --c-surface-sunken )}.tab.is-active{background:var( --c-surface-emphasis );border-color:var( --c-surface-emphasis );color:var( --c-ink-on-emphasis )}.link{border:0;background:none;color:var( --c-action-primary );font-family:var( --font-body );font-size:.8125rem;font-weight:var( --fw-medium );cursor:pointer;padding:.35rem .5rem;border-radius:var( --radius-button )}.link:hover{background:var( --c-action-primary-soft )}.input{padding:.75rem}.input--panes{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.input--panes label{display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;font-weight:var( --fw-medium );letter-spacing:.06em;text-transform:uppercase;color:var( --c-ink-subtle )}textarea{width:100%;min-height:11rem;resize:vertical;padding:.7rem .85rem;border:1px solid var( --c-line-default );border-radius:10px;background:var( --c-surface-page );color:var( --c-ink-strong );font-family:var( --mono );font-size:var( --fs-code );line-height:1.5;white-space:pre;overflow-wrap:normal;overflow-x:auto}.check{display:inline-flex;align-items:center;gap:.4rem;font-size:.8125rem;color:var( --c-ink-muted );cursor:pointer}.check input{accent-color:var( --c-action-primary )}.stats{margin-left:auto;font-size:.78rem;color:var( --c-ink-subtle );font-variant-numeric:tabular-nums}.stats b,.file__stats b{font-weight:var( --fw-bold )}.stats .s-added,.file__stats .s-added{color:var( --diff-added )}.stats .s-removed,.file__stats .s-removed{color:var( --diff-removed )}.stats .s-changed,.file__stats .s-changed{color:var( --diff-changed )}.stats .s-moved,.file__stats .s-moved{color:var( --diff-moved )}.notice{padding:.65rem .9rem;border-bottom:1px solid var( --c-line-soft );background:var( --c-signal-warning-soft );color:var( --c-amber-700 );font-size:.8125rem;line-height:var( --lh-normal )}.is-hidden{display:none!important}.output{padding:.75rem;overflow-x:auto}.empty{padding:2rem;text-align:center;color:var( --c-ink-subtle );font-size:.875rem}.file{border:1px solid var( --c-line-soft );border-radius:10px;margin-bottom:.6rem}.file[open] > .file__head{border-bottom:1px solid var( --c-line-soft )}.file__head{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;padding:.45rem .7rem;cursor:pointer;background:var( --c-surface-page );border-radius:9px}.file__path{font-family:var( --mono );font-size:var( --fs-code );font-weight:var( --fw-bold );color:var( --c-ink-strong )}.file__stats{margin-left:auto;font-size:.75rem;color:var( --c-ink-subtle );font-variant-numeric:tabular-nums}.file__note{padding:.45rem .7rem;font-size:.75rem;color:var( --c-ink-subtle );border-bottom:1px solid var( --c-line-soft )}.file__body{padding:.5rem;overflow-x:auto}.tree{list-style:none}.tree .tree{margin-left:.65rem;padding-left:.7rem;border-left:1px solid var( --c-line-soft )}.row{margin:1px 0}.row__head{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap;padding:.15rem .4rem;border-radius:6px;font-family:var( --mono );font-size:var( --fs-code );line-height:1.6}.row--added>.row__head{background:var( --diff-added-bg )}.row--removed>.row__head{background:var( --diff-removed-bg )}.row--changed>.row__head{background:var( --diff-changed-bg )}.row--moved>.row__head,.row--movedout>.row__head{background:var( --diff-moved-bg )}.row--movedout{opacity:.8}.row.is-collapsed>.tree,.row.is-collapsed>.detail{display:none}.row.is-collapsed>.row__head .twisty{transform:rotate(-90deg)}.twisty{color:var( --c-ink-subtle );font-size:.7rem;line-height:1;width:.9rem;flex:none;transition:transform .12s ease}.twisty--empty{visibility:hidden}.gutter{width:.8rem;flex:none;font-weight:var( --fw-bold );color:var( --c-ink-subtle )}.row--added .gutter{color:var( --diff-added )}.row--removed .gutter{color:var( --diff-removed )}.row--changed .gutter{color:var( --diff-changed )}.row--moved .gutter,.row--movedout .gutter{color:var( --diff-moved )}.block{font-weight:var( --fw-bold );color:var( --c-ink-strong )}.label{color:var( --c-ink-muted )}.label:before{content:'"'}.label:after{content:'"'}.note{font-family:var( --font-body );font-size:.6875rem;font-weight:var( --fw-medium );letter-spacing:.02em;padding:.05rem .5rem;border-radius:var( --radius-button );color:var( --c-ink-subtle );background:var( --c-surface-sunken )}.note--move,.note--attrmove{color:var( --diff-moved );background:var( --diff-moved-bg );box-shadow:inset 0 0 0 1px currentColor}.note--attrmove{margin-left:.3rem}.detail{margin:.15rem 0 .4rem 1.7rem}.attrs{list-style:none}.attr{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem;font-family:var( --mono );font-size:12px;line-height:1.6;padding:.05rem .4rem;border-radius:5px}.attr--added{background:var( --diff-added-bg )}.attr--removed{background:var( --diff-removed-bg )}.attr--changed{background:var( --diff-changed-bg )}.attr--unchanged{color:var( --c-ink-subtle )}.attr__path{color:var( --c-ink-muted )}.attr__path:after{content:":"}.attr--added .attr__path,.attr--removed .attr__path,.attr--changed .attr__path{color:var( --c-ink-strong );font-weight:var( --fw-bold )}.attr__value{word-break:break-all}.attr--removed .attr__value,.attr__value--old{color:var( --diff-removed );text-decoration:line-through}.attr--added .attr__value,.attr__value--new{color:var( --diff-added )}.attr__arrow{color:var( --c-ink-subtle )}.markup{display:flex;gap:.45rem;align-items:baseline;margin-top:.2rem;padding:.2rem .4rem;font-family:var( --mono );font-size:12px;line-height:1.6}.markup__label{flex:none;font-family:var( --font-body );font-size:.6875rem;color:var( --c-ink-subtle )}.markup__code{word-break:break-word;white-space:pre-wrap}.w--add{background:var( --diff-added-bg );color:var( --diff-added );border-radius:3px}.w--remove{background:var( --diff-removed-bg );color:var( --diff-removed );text-decoration:line-through;border-radius:3px}.sbs{display:grid;grid-template-columns:1fr 1fr;gap:0 .75rem;min-width:44rem}.sbs__head{position:sticky;top:0;background:var( --c-surface-raised );border-bottom:1px solid var( --c-line-soft );padding:.25rem .4rem;font-size:.6875rem;font-weight:var( --fw-medium );text-transform:uppercase;letter-spacing:.12em;color:var( --c-ink-subtle );z-index:1}.cell{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap;font-family:var( --mono );font-size:var( --fs-code );line-height:1.6;padding:.15rem .4rem;border-radius:6px;padding-left:calc(.4rem + var( --depth, 0 ) * .9rem);min-height:1.6rem}.cell--added{background:var( --diff-added-bg )}.cell--removed{background:var( --diff-removed-bg )}.cell--changed{background:var( --diff-changed-bg )}.cell--moved,.cell--movedout{background:var( --diff-moved-bg )}.cell--empty{background:repeating-linear-gradient(135deg,transparent,transparent 5px,var( --c-neutral-100 ) 5px,var( --c-neutral-100 ) 6px)}.cell__attrs{font-family:var( --font-body );font-size:.6875rem;color:var( --c-ink-subtle )}[data-pair].is-linked{box-shadow:inset 0 0 0 1px var( --diff-moved )}@media(max-width:720px){.input--panes{grid-template-columns:1fr}}
