@font-face{font-family:"Ubuntu Sans";src:url("fonts/UbuntuSans.ttf") format("truetype");font-style:normal;font-weight:100 900;font-stretch:75% 100%;font-display:swap}
:root{--paper:#F3F2EE;--ink:#111111;--muted:#62625e;--line:#d4d4ce;--blue:#2447FF;--selection:#e7ecff;--panel:#efefec;--sans:"Ubuntu Sans",Arial,sans-serif;--display:"Ubuntu Sans","Arial Narrow",Arial,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--width:1480px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.5 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button,a,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a{color:var(--blue);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration:underline}button:disabled{cursor:default;opacity:.65}button{background:none}h1,h2,h3,h4,p,dl{margin:0}p+p{margin-top:1rem}h1,h2{font-family:var(--display);font-stretch:condensed;font-weight:850;font-variation-settings:"wdth" 75;line-height:1.03;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(2.75rem,4.25vw,4.7rem)}h2{font-size:clamp(2.3rem,3.5vw,3.55rem)}h3{font-size:1.1rem;line-height:1.35;font-weight:550}h4{font: .8rem/1.4 var(--mono);text-transform:uppercase}code,.micro,.eyebrow,.machine-list{font-family:var(--mono)}code{font-size:.83em;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere}img,svg{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}::selection{background:#ccd7ff;color:var(--ink)}.skip-link{position:fixed;top:-100px;left:1rem;z-index:20;padding:1rem;background:var(--ink);color:white}.skip-link:focus{top:1rem}
.site-header{border-bottom:1px solid var(--line)}.header-inner{max-width:var(--width);margin:auto;display:flex;align-items:center;gap:1.5rem;padding:1.15rem 2rem}.wordmark{font:bold 1.35rem var(--mono);letter-spacing:.18em;color:var(--ink);text-decoration:none}.header-meta{font:.65rem var(--mono);color:var(--muted);white-space:nowrap;border-left:1px solid var(--line);padding:1rem 0 1rem 1.5rem}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:1.25rem}.site-header nav>a:not(.button){font-size:.8rem;color:var(--ink);text-decoration:none;padding:.8rem 0}.site-header nav a:hover{color:var(--blue)}.languages{display:flex;align-items:center;gap:.4rem;font:.75rem var(--mono)}.languages a{display:inline-flex;align-items:center;min-height:44px;padding:0 .25rem;text-decoration:none}.languages [aria-current]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.25rem;min-height:44px;border:1px solid var(--line);padding:.65rem 1rem;text-decoration:none;color:var(--ink);font-size:.88rem;line-height:1.35}.button:hover{border-color:var(--ink);text-decoration:none}.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.primary:hover{background:#333;color:white!important}.nav-install{font-size:.78rem;white-space:nowrap}
main{max-width:var(--width);margin:auto;padding:0 2rem}.chapter{display:grid;grid-template-columns:3rem minmax(0,.9fr) minmax(0,1.75fr);gap:2rem;padding:3.5rem 0;border-bottom:1px solid var(--line)}.chapter>*{min-width:0}.chapter-number{font-family:var(--display);font-stretch:condensed;font-weight:300;font-size:1.7rem;line-height:1;border-bottom:1px solid var(--line);align-self:start;padding-bottom:1.25rem}.chapter-intro{padding-right:1rem}.eyebrow{font-size:.69rem;line-height:1.6;text-transform:uppercase;letter-spacing:.025em;margin-bottom:1.1rem}.chapter-intro>.eyebrow::before{content:"";display:inline-block;width:6px;height:6px;margin-right:.65rem;vertical-align:middle;border-radius:50%;background:var(--ink)}.intro{margin-top:1.25rem;line-height:1.5;color:#41413e;font-size:1.04rem}.chapter-intro>.text-link{display:inline-block;margin-top:1.5rem}.chapter-body>p:first-child{margin-bottom:1.3rem}.chapter-body>h3{margin-bottom:.65rem}.chapter-body>h3+p{color:var(--muted);margin-bottom:1.5rem}.hero{grid-template-columns:3rem minmax(0,1.08fr) minmax(0,1.7fr);padding-top:3.6rem;padding-bottom:3rem;border-bottom:0}.hero .chapter-intro{padding-right:0}.hero .eyebrow{font-size:.66rem}.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.6rem 0 1rem}.hero .actions .primary{flex:1}.hero .intro{max-width:39ch}.hero .copy-group{max-width:360px}.hero .chapter-intro>.text-link{margin-top:.5rem}.text-link,.text-button{font-size:.9rem;text-decoration:none}.text-link span{padding-left:.3rem}.text-button{color:var(--blue);min-height:44px;border:0;padding:.65rem 0;text-align:left}.micro{font-size:.72rem;line-height:1.65;color:var(--muted)}.metadata-strip{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:.61rem/1.6 var(--mono);color:#51514e}.mobile-number{display:none}.blue{color:var(--blue)}
.panel-heading{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:baseline;margin-bottom:.6rem}.panel-heading h2{font:500 .78rem var(--mono);letter-spacing:0;text-transform:uppercase}.panel-heading .micro{font-size:.62rem}.example-note{font-size:.77rem;line-height:1.5;color:var(--muted);margin-bottom:1.1rem}.connection-status{font-size:.8rem;margin-bottom:1rem;color:var(--muted)}.connection-status:empty{display:none}.inspector-steps{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.9rem}.inspector-step{min-width:0;border-left:1px solid var(--line);padding-left:.85rem}.inspector-step>summary{display:block;font:500 .72rem/1.5 var(--mono);text-transform:uppercase;min-height:62px}.inspector-step>summary::after{display:none}.step-index{display:block;font:300 1.3rem var(--display);font-stretch:condensed;margin-bottom:.45rem}.inspector-step>p{margin:.6rem 0;font-size:.67rem}.record-fields{display:grid;gap:.35rem}.record-field{border:1px solid transparent;text-align:left;padding:.4rem .35rem;width:100%;border-radius:2px;font:.72rem/1.45 var(--mono);overflow-wrap:anywhere;min-height:44px}.record-field[aria-pressed=true]{background:var(--selection);border-color:#aabcfb;color:var(--blue)}.field-label{display:block;color:var(--muted);font-size:.65rem;margin-bottom:.22rem}.byte-grid{max-height:265px;overflow:auto;font:.58rem/1.8 var(--mono);margin:.6rem 0;background:#f1f0ec;scrollbar-width:thin}.byte-line{white-space:nowrap}.byte-offset{color:var(--muted);margin-right:.5rem}.byte{display:inline-block;padding:0 1px}.byte.selected{background:#c8d5ff;color:#001d85}.explanation{font-size:.78rem;margin-top:.75rem}.explanation summary{color:var(--blue);padding:.55rem 1rem .55rem 0;min-height:44px}.explanation summary::after{right:0}.explanation p{margin:.8rem 0}.coverage dt{font-size:.68rem;overflow-wrap:anywhere;margin-top:.75rem}.coverage dd{margin:.35rem 0;color:var(--muted)}.hash-block{min-width:0;margin:.4rem 0}.hash-label{display:block;color:var(--muted);font:.63rem/1.4 var(--mono);overflow-wrap:anywhere}.hash-display{display:flex;align-items:center;gap:.2rem;min-width:0}.hash-display code{font-size:.74rem;flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.6}.hash-copy{flex-shrink:0;min-height:44px;min-width:36px;border:0;font-size:1.25rem}.full-hash{display:block;font: .72rem/1.7 var(--mono);overflow-wrap:anywhere;user-select:all;padding:.5rem;background:var(--panel)}.hash-block details{margin:.15rem 0}.hash-block summary{font-size:.64rem;color:var(--muted);padding:.2rem 1.1rem .2rem 0;min-height:28px}.hash-block summary::after{right:0}.hash-block .copy-status{font-size:.68rem}
summary{position:relative;list-style:none;min-height:44px;padding:.8rem 1.8rem .8rem 0}summary::-webkit-details-marker{display:none}summary::after{content:"+";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);font:400 1.1rem var(--sans)}details[open]>summary::after{content:"−"}.copy-group{margin:.8rem 0}.command{display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:var(--panel);border:1px solid var(--line);padding:.2rem .5rem .2rem .9rem;min-width:0}.command code{font-size:.82rem;user-select:all;min-width:0}.command button{border:0;padding:.5rem;min-height:44px;display:flex;align-items:center;gap:.5rem;font-size:.77rem}.command button span{font-size:1.1rem}.copy-status{font-size:.76rem;color:var(--muted);margin-top:.3rem}.copy-status:empty{display:none}.modify-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:1.6rem 0}.modify-grid>div+div{border-left:1px solid var(--line);padding-left:2rem}.modify-grid h4{margin-bottom:1rem}.sample-text{font:.87rem/1.65 var(--mono);padding:1rem;background:var(--panel);margin:.5rem 0 1rem;overflow-wrap:anywhere}.modify-grid label{display:block}.modify-grid select{font-size:.85rem;margin-top:.25rem}.result-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;margin:.5rem 0}.result-panel .eyebrow{margin-bottom:.4rem}.verdict{display:block;font:600 1.1rem/1.4 var(--mono);overflow-wrap:anywhere}.verdict::before{content:"";display:inline-block;background:currentColor;width:8px;height:8px;border-radius:50%;margin-right:.5rem;vertical-align:middle}.result-panel p:not(.eyebrow){font-size:.88rem;margin-top:.5rem}.boundary{font-size:.85rem;line-height:1.6;color:var(--muted);margin:1.2rem 0}.assurance-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:1.5rem}.assurance-row{border-bottom:1px solid var(--line)}.assurance-row summary{display:grid;grid-template-columns:1.5rem minmax(0,1fr) minmax(0,.7fr);align-items:center;gap:.6rem;font-size:.82rem;line-height:1.35;padding:1rem 1.1rem 1rem 0}.row-number{font:.78rem var(--mono);color:var(--muted)}.property-state{font-size:.65rem;text-align:right;overflow-wrap:anywhere}.property-state::before{content:"• ";font-size:1rem}.assurance-description{padding:0 .6rem 1rem 2.1rem;font-size:.82rem;color:var(--muted)}.assurance-description>code{font-size:.74rem}.assurance-description p{margin-top:.5rem}.wide-button{border:0;background:var(--panel);padding:.9rem;width:100%;font-size:.85rem;min-height:44px;margin-top:1rem}.states{border-left:1px solid var(--line);padding-left:1.2rem}.states summary{font:.7rem var(--mono);text-transform:uppercase;padding-top:0;min-height:30px}.states dl>div{margin:1rem 0}.states dt{font-size:.86rem}.states dd{font-size:.78rem;line-height:1.5;color:var(--muted);margin:.2rem 0 0}
.comparisons{display:grid;grid-template-columns:1fr 1fr;gap:1.8rem}.comparison{min-width:0}.comparison+ .comparison{border-left:1px solid var(--line);padding-left:1.8rem}.comparison h3{font:500 .78rem/1.5 var(--mono);text-transform:uppercase;margin-bottom:1.15rem}.compare-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.6rem}.compare-pair>div{min-width:0}.run-label{font:.67rem var(--mono);text-transform:uppercase}.compare-result{background:var(--panel);padding:.9rem;margin-top:1rem}.compare-result[data-state=NOT_COMPARABLE]{background:#e9edfb}.compare-result[data-state=NOT_COMPARABLE]>.verdict{color:var(--blue)}.compare-result .verdict{font-size:1rem}.compare-result p{font-size:.82rem;margin:.6rem 0}.compare-result dl{font:.65rem/1.7 var(--mono);overflow-wrap:anywhere}.compare-result dd{margin:0 0 .5rem}.compare-result dt{color:var(--muted);font-size:.6rem}.other-scenarios{border-top:1px solid var(--line);margin-top:1.5rem}.other-scenarios>summary{font-size:.87rem}.other-scenarios select{margin:.5rem 0 1rem}.other-scenarios .comparison{max-width:650px}.offline-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0 0 1.4rem;gap:1.2rem}.offline-flow li{border-left:1px solid var(--line);padding-left:1rem;min-width:0}.offline-flow .step-index{margin-bottom:1rem}.offline-flow h3{font:.77rem/1.5 var(--mono);margin-bottom:.8rem}.offline-flow p{font-size:.88rem;color:var(--muted)}.file-pair{margin-top:1rem}.file-pair code{display:block;overflow-wrap:anywhere;font-size:.67rem}.offline-flow+.copy-group{max-width:500px}.use-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:2rem}.use-grid article{border-left:1px solid var(--line);padding-left:1rem}.use-grid h3{font:500 .85rem/1.4 var(--mono);margin:.65rem 0 1rem}.use-grid article>p:not(.micro){font-size:.9rem;color:#4a4a46}.audience{margin-top:1.4rem;line-height:1.9}.boundaries{display:grid;grid-template-columns:1fr 1fr;gap:1.7rem}.boundaries>details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.boundaries>details>summary{font-size:1rem;padding-top:1.1rem;padding-bottom:1.1rem}.disclosure-body{padding:.8rem 0 1.4rem;font-size:.93rem}.disclosure-body h3{font-size:1rem}.disclosure-body ul{padding-left:1.2rem;color:#494944;line-height:1.7}.disclosure-body>p{color:var(--muted)}.disclosure-body h3:not(:first-child){border-top:1px solid var(--line);padding-top:1.5rem;margin-top:1.5rem}.conditions dt{margin-top:1.4rem}.conditions dd{margin:.5rem 0;color:var(--muted)}.closing{font-family:var(--display);font-stretch:condensed;font-weight:350;font-size:clamp(1.4rem,2vw,2.1rem);line-height:1.3;margin-top:2rem;letter-spacing:-.015em}.closing br{display:block;content:"";margin-bottom:.7rem}.release-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}.release-grid article{border-left:1px solid var(--line);padding-left:1rem}.release-grid h3{font:.78rem var(--mono);margin-bottom:1rem}.release-grid p{font-size:.9rem;color:var(--muted)}.release-grid .machine-list{font-size:.7rem;line-height:1.9;color:var(--ink)}#release h2{font-size:clamp(3.1rem,4.5vw,4.8rem);text-wrap:initial}#release .intro{font:.7rem var(--mono)}#release .copy-group{margin-top:2rem}.release-links{display:flex;gap:2rem;margin-top:1rem}.feedback-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:2rem 0}.feedback-grid article{border-left:1px solid var(--line);padding-left:1rem}.feedback-grid h3{font:.8rem/1.5 var(--mono);text-transform:uppercase;margin:.8rem 0}.feedback-grid p{font-size:.9rem;color:var(--muted)}.feedback-grid a{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem;text-decoration:none;margin-top:.5rem}.local-notice{padding:1rem;background:var(--panel);border-left:2px solid #74746c;margin:1.5rem 0 .8rem;font-size:.85rem}.local-notice p{margin-top:.5rem;color:var(--muted)}#feedback-flow{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.flow-progress{font:.75rem var(--mono);color:var(--muted);margin-bottom:1rem}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:1.2rem;padding:0;margin-bottom:1rem;font-weight:500}.radio-options{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.radio-options label{border:1px solid var(--line);padding:.7rem;display:flex;align-items:center;gap:.4rem;min-height:48px;font-size:.9rem;cursor:pointer}.radio-options label:has(input:checked){background:var(--selection);border-color:var(--blue)}input[type=radio],input[type=checkbox]{accent-color:var(--blue);width:18px;height:18px;flex-shrink:0}select,textarea,input[type=text]{width:100%;max-width:100%;background:var(--paper);border:1px solid var(--muted);border-radius:0;padding:.7rem;min-height:44px}textarea{resize:vertical;display:block;margin:.5rem 0 1rem}.opt-in{display:flex;align-items:center;gap:.5rem;min-height:44px;font-size:.9rem}.flow-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.flow-controls .text-button{margin-left:auto}.site-footer{max-width:var(--width);margin:auto;padding:2rem;display:flex;justify-content:space-between;gap:2rem}.site-footer p{font-size:.82rem;color:var(--muted);margin-top:.75rem}.site-footer .micro{font-size:.66rem}.site-footer nav{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.site-footer nav>a{font-size:.85rem;min-height:44px;display:flex;align-items:center;text-decoration:none}
@media(min-width:1600px){.chapter{gap:2.5rem}.hero .chapter-intro{padding-right:1rem}}
@media(max-width:1250px){.header-meta{display:none}.chapter{gap:1.4rem;grid-template-columns:2rem minmax(0,.9fr) minmax(0,1.6fr)}.hero{grid-template-columns:2rem minmax(0,.8fr) minmax(0,1.3fr)}.hero h1{font-size:3rem}.inspector-steps{grid-template-columns:1fr}.inspector-step{border-left:0;border-top:1px solid var(--line);padding-left:0}.inspector-step>summary{min-height:44px;display:flex;align-items:center;gap:.7rem;padding-right:1.5rem}.inspector-step>summary::after{display:block}.step-index{display:inline-block;margin:0}.record-fields{grid-template-columns:1fr 1fr}.record-field:first-child,.record-field:nth-child(2){grid-column:1/-1}.byte-grid{font-size:.7rem}.inspector-step>p{font-size:.73rem}.assurance-layout{grid-template-columns:1fr}.states{border-left:0;border-top:1px solid var(--line);padding:1rem 0 0}.states dl{display:grid;grid-template-columns:1fr 1fr;gap:.3rem 1rem}.comparisons{grid-template-columns:1fr}.comparison+.comparison{border-left:0;border-top:1px solid var(--line);padding:1.6rem 0 0}.offline-flow{grid-template-columns:1fr 1fr}.release-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.boundaries{grid-template-columns:1fr;gap:0}.use-grid,.feedback-grid{gap:1rem}.site-header nav{gap:1rem}}
@media(max-width:1000px){.header-inner{padding:1rem 1.5rem;flex-wrap:wrap}.site-header nav{gap:1rem}.site-header .nav-install{display:none}main{padding:0 1.5rem}.chapter,.hero{grid-template-columns:1.7rem minmax(0,.8fr) minmax(0,1fr);gap:1.25rem}.chapter-intro{padding-right:0}h2{font-size:2.65rem}.hero h1{font-size:2.85rem}.use-grid,.feedback-grid{grid-template-columns:1fr}.use-grid article,.feedback-grid article{padding:1.2rem 0;border-left:0;border-top:1px solid var(--line)}.audience{margin-top:.8rem}.feedback-grid{margin:1rem 0}.assurance-row summary{grid-template-columns:1.2rem 1fr}.property-state{grid-column:2;text-align:left}.modify-grid{grid-template-columns:1fr;gap:1.5rem}.modify-grid>div+div{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0 0}.radio-options{grid-template-columns:1fr}}
@media(max-width:760px){html{scroll-padding-top:.75rem}.header-inner{position:relative;padding:1.15rem 1.4rem;justify-content:space-between}.wordmark{font-size:1.2rem}.site-header nav{flex-basis:100%;display:flex;flex-wrap:wrap;margin:0;gap:.35rem 1.1rem}.js #menu-toggle{display:flex;align-items:center;gap:.6rem;min-height:44px;border:0;font:.8rem var(--mono);padding:.5rem 0 .5rem .6rem}.js #site-nav{display:none}.js #site-nav.is-open{display:flex}.site-header nav>a:not(.button){padding:.7rem .15rem;min-height:44px}.site-header .nav-install{display:flex}.site-header nav .languages{margin-left:auto}main{padding:0 1.4rem}.chapter,.hero{display:block;padding:2.4rem 0 2.8rem}.chapter-number{display:none}.mobile-number{display:inline}.chapter-intro>.eyebrow::before{display:none}.eyebrow,.hero .eyebrow{font-size:.69rem;line-height:1.6;margin-bottom:1.35rem}.chapter-intro{padding:0;margin-bottom:2rem}.hero .chapter-intro{margin-bottom:2.4rem}h1,.hero h1{font-size:clamp(2.5rem,10.6vw,3.8rem);line-height:1.02}h2{font-size:clamp(2.35rem,10vw,3.65rem);line-height:1.03}:lang(fr) h1,:lang(fr) h2{font-size:clamp(2.2rem,9.6vw,3.45rem)}.intro{font-size:1.08rem;line-height:1.5;margin-top:1.25rem}.actions{margin-top:1.7rem}.hero .actions .primary{width:100%;flex:auto;justify-content:space-between}.hero .actions>.button:not(.primary){width:100%}.hero .copy-group{max-width:none}.hero .chapter-intro>.text-link{margin-top:.75rem;min-height:44px}.metadata-strip{flex-direction:column;font-size:.59rem;padding:1rem 0}.inspector{border-top:1px solid var(--line);padding-top:1.4rem}.panel-heading{display:block}.panel-heading h2{font-size:.87rem;margin-bottom:.5rem}.panel-heading .micro{font-size:.65rem}.example-note{font-size:.8rem}.inspector-steps{gap:0}.inspector-step>summary{font-size:.8rem;min-height:62px;gap:.9rem}.inspector-step .step-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;background:var(--ink);color:var(--paper);border-radius:50%;font-size:.8rem}.record-fields{display:block;padding:0 0 1.2rem}.record-field{font-size:.85rem;padding:.65rem .55rem}.field-label{font-size:.72rem}.inspector-step>p{font-size:.75rem}.byte-grid{font-size:.66rem;max-height:280px;margin:1rem 0}.explanation{font-size:.87rem;margin-bottom:1rem}.hash-label{font-size:.7rem}.hash-display code{font-size:.82rem}.hash-copy{min-width:44px}.hash-block summary{font-size:.72rem;min-height:44px}.hash-block{margin:.6rem 0}.command{padding-left:.75rem}.command code{font-size:.78rem}.command button{font-size:.75rem;padding:.4rem .25rem}.modify-grid{margin-top:1.5rem}.sample-text{font-size:.92rem}.assurance-row summary{grid-template-columns:1.4rem minmax(0,1fr);font-size:1rem;gap:.65rem;padding:1.1rem 1.6rem 1.1rem 0}.property-state{font-size:.75rem}.assurance-description{padding-left:2rem;font-size:.9rem}.assurance-description>code{font-size:.7rem}.states{margin-top:1rem}.states summary{font-size:.8rem;min-height:44px;padding-top:.6rem}.states dl{display:block}.states dl>div{margin:1.4rem 0}.states dd{font-size:.92rem}.states dt{font-size:1rem}.wide-button{font-size:.92rem;padding:1rem}.comparisons{gap:2rem}.comparison h3{font-size:.84rem;line-height:1.6}.compare-result{padding:1rem}.compare-result .verdict{font-size:1.05rem}.compare-result p{font-size:.92rem}.compare-result dl{font-size:.73rem}.compare-result dt{font-size:.66rem}.compare-pair{gap:1rem}.offline-flow{grid-template-columns:1fr;gap:0}.offline-flow li{position:relative;padding:0 0 2rem 2.75rem;border-left:1px solid var(--line);margin-left:.8rem}.offline-flow .step-index{position:absolute;left:-.9rem;top:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink);color:var(--paper);font: .75rem var(--mono);width:28px;height:28px}.offline-flow h3{font-size:.82rem;margin-bottom:.8rem}.offline-flow p{font-size:1rem}.file-pair code{font-size:.8rem}.use-grid{margin-top:1.5rem}.use-grid h3{font-size:.94rem}.use-grid article>p:not(.micro){font-size:1rem}.audience{font-size:.78rem;line-height:1.9}.boundaries>details>summary{font-size:1rem;padding:1.4rem 1.5rem 1.4rem 0}.disclosure-body{font-size:1rem;line-height:1.65}.disclosure-body h3{font-size:1rem;line-height:1.6}.disclosure-body li{margin:.55rem 0}.closing{font-size:1.8rem;line-height:1.3;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.closing br{margin-bottom:1rem}.release-grid{grid-template-columns:1fr;gap:0}.release-grid article{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0}.release-grid h3{font-size:.87rem;margin-bottom:1rem}.release-grid p{font-size:1.05rem}.release-grid .machine-list{font-size:.85rem}#release h2{font-size:4rem}#release .intro{font-size:.75rem}#release .copy-group{margin-top:.5rem}.release-links{flex-direction:column;gap:0}.release-links a{padding:1rem 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.feedback-grid article{padding:1.5rem 0}.feedback-grid h3{font-size:.87rem}.feedback-grid p{font-size:1rem}.feedback-grid a{font-size:.9rem}.local-notice{font-size:.9rem}.flow-controls .text-button{margin-left:0}.site-footer{display:block;padding:2rem 1.4rem}.site-footer nav{margin-top:1.5rem;gap:.65rem 1rem}.site-footer .languages{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Text enlargement must reflow long labels and navigation, including FR. */
body{overflow-wrap:anywhere}
.header-inner,.site-header nav{flex-wrap:wrap;min-width:0}
.site-header nav{max-width:100%}
/* Keep the keyboard-only link clipped until focus, including full-page captures. */
.skip-link{top:0;left:0;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{top:1rem;left:1rem;width:auto;height:auto;padding:1rem;clip-path:none}
/* Compare reads identity A/B, response A/B, then the recorded outcome. */
.comparison-dimension + .comparison-dimension{border-top:1px solid var(--line);padding-top:1.25rem;margin-top:1.25rem}
.comparison-dimension h4{font-size:.85rem;line-height:1.5}
.hash-relation{font-size:1rem;font-weight:550;margin:.5rem 0 .9rem}
.comparison-note{font-size:.875rem;line-height:1.6;color:var(--muted);margin:.7rem 0}
#derived-hashes>.hash-block{padding:.45rem}
#derived-hashes>.selected-derived{background:var(--selection);box-shadow:inset 3px 0 var(--blue)}
.derived-selection{display:block;font-size:.75rem;font-weight:550;color:var(--blue);margin-bottom:.5rem}
/* R2: the initial comparison ends at its outcome; technical data follows on demand. */
.comparison-details{border-top:1px solid var(--line);margin-top:1rem}
.comparison-details>summary{min-height:44px;padding:.75rem 1.5rem .75rem 0;font-size:.875rem}
.comparison-details .full-hash{flex:1;min-width:0;font-size:.875rem;line-height:1.6}
.comparison-details .hash-copy{min-width:44px;min-height:44px;flex-shrink:0}
.comparison-metadata{margin-top:1.25rem;border-top:1px solid var(--line);padding-top:.75rem;font:.875rem/1.6 var(--mono)}
.comparison-metadata dt{margin-top:.6rem;color:var(--muted)}
.comparison-metadata dd{margin:0;overflow-wrap:anywhere}
/* Functional state colors and distinct markers; the state name always remains visible. */
:root{--invalid:#A52A2A}
.verdict,.property-state{color:var(--muted)}
.verdict::before,.property-state::before{content:"…";display:inline-block;width:1em;height:auto;background:none;border-radius:0;margin-right:.4em;font-size:1em;text-align:center;vertical-align:baseline}
:is(.verdict,.property-state)[data-state=VALID]{color:var(--ink)}
:is(.verdict,.property-state)[data-state=VALID]::before{content:"●"}
:is(.verdict,.property-state):is([data-state=INVALID],[data-state=INVALID_BUNDLE]){color:var(--invalid)}
:is(.verdict,.property-state):is([data-state=INVALID],[data-state=INVALID_BUNDLE])::before{content:"×"}
:is(.verdict,.property-state)[data-state=ABSENT]::before{content:"○"}
:is(.verdict,.property-state)[data-state=UNESTABLISHED]::before{content:"◇"}
:is(.verdict,.property-state)[data-state=NOT_EVALUATED]::before{content:"–"}
.verdict[data-state=NOT_COMPARABLE]{color:var(--blue)}
.verdict[data-state=NOT_COMPARABLE]::before{content:"≠"}
.verdict:is([data-state=CHANGED],[data-state=UNCHANGED]){color:var(--ink)}
.verdict[data-state=CHANGED]::before{content:"≠"}
.verdict[data-state=UNCHANGED]::before{content:"="}
@media(max-width:760px){
  .compare-pair{grid-template-columns:minmax(0,1fr);gap:.8rem}
  .compare-pair>div+div{border-top:1px solid var(--line);padding-top:.8rem}
  .comparison-dimension h4,.comparison .run-label,.comparison .hash-label,.comparison .hash-display code,.comparison .full-hash,.comparison .hash-block summary,.comparison .micro,.compare-result dt,.compare-result dd{font-size:.875rem;line-height:1.6}
  .comparison .hash-copy{min-width:44px;min-height:44px}
  .comparison .hash-block summary{min-height:44px}
  .comparison .hash-display{flex-wrap:nowrap}
  .comparison .hash-display code{flex-basis:auto}
}

/* Reuse the approved copy control; keep the contact address readable on mobile. */
#contact-email{font-size:1rem}

/* Experience B is opt-in. Existing presentation A keeps its styles and layout. */
[data-experience=guided] .guided-instruction{font-size:1rem;font-weight:550;margin:1.25rem 0 .8rem}
[data-experience=guided] .guided-fields{display:grid;gap:.65rem}
[data-experience=guided] .guided-fields .record-field{font:1.05rem/1.5 var(--sans);padding:.85rem 1rem;border:1px solid var(--muted);border-radius:0;min-height:72px}
[data-experience=guided] .guided-fields .field-label{font:.875rem/1.5 var(--mono);color:var(--ink);margin-bottom:.4rem}
[data-experience=guided] .guided-fields [aria-pressed=true]{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue);color:var(--ink)}
[data-experience=guided] .guided-evidence{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;margin:1.25rem 0}
[data-experience=guided] .guided-evidence>*{min-width:0}
[data-experience=guided] .guided-canonical{border-left:3px solid var(--muted);padding:.75rem;background:var(--panel)}
[data-experience=guided] .guided-evidence[data-available=true] .guided-canonical{border-color:var(--blue);background:var(--selection)}
[data-experience=guided] .guided-canonical h3{font:.875rem/1.5 var(--mono);margin-bottom:.65rem}
[data-experience=guided] #guided-byte-excerpt{display:block;white-space:pre-wrap;font:.875rem/1.6 var(--mono);color:var(--ink)}
[data-experience=guided] #guided-byte-range{font-size:.75rem;margin-top:.7rem;overflow-wrap:anywhere}
[data-experience=guided] .guided-selected-hash{margin:0;padding:.75rem;background:var(--selection);border-left:3px solid var(--blue)}
[data-experience=guided] #guided-primary-hash .hash-display{display:block}
[data-experience=guided] #guided-primary-hash .hash-copy{display:block;margin-left:auto}
[data-experience=guided] .hero .guided-evidence .copy-group{max-width:none}
[data-experience=guided] :is(.guided-evidence,.guided-modify,.guided-inspector-details) :is(.hash-label,.full-hash,.hash-display code,.hash-block summary){font-size:.875rem;line-height:1.6}
[data-experience=guided] .guided-selected-hash .full-hash{background:transparent;padding:.5rem 0}
[data-experience=guided] :is(.guided-evidence,.guided-modify,.guided-inspector-details) .hash-copy{min-width:44px;min-height:44px}
[data-experience=guided] :is(.guided-inspector-details,.guided-modify-reference){border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
[data-experience=guided] :is(.guided-inspector-details,.guided-modify-reference)>summary{font-size:.875rem;min-height:48px}
[data-experience=guided] .inspector-steps{grid-template-columns:minmax(0,1fr);gap:0}
[data-experience=guided] .inspector-step{border:0;border-top:1px solid var(--line);padding:0}
[data-experience=guided] .inspector-step>summary{font-size:.875rem;min-height:48px;display:flex;align-items:center;gap:.75rem;padding-right:1.5rem}
[data-experience=guided] .inspector-step>summary::after{display:block}
[data-experience=guided] .inspector-step .step-index{display:none}
[data-experience=guided] .inspector-step .record-field{font-size:.875rem;cursor:default}
[data-experience=guided] .inspector-step .field-label{font-size:.8rem}
[data-experience=guided] .inspector-step>p{font-size:.8rem}
[data-experience=guided] .hash-block summary{min-height:44px}
[data-experience=guided] .guided-modify{margin:1.25rem 0}
[data-experience=guided] .guided-modify-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin:.75rem 0}
[data-experience=guided] .guided-modify .sample-text{font-size:1rem;margin:.6rem 0}
[data-experience=guided] .guided-modify>.micro{font-size:.875rem;margin-top:1rem}
[data-experience=guided] .guided-modify-reference{margin-top:1rem}
[data-experience=guided] .guided-modify-reference h4{margin:.75rem 0}
[data-experience=guided] .guided-modify-reference .micro{font-size:.8rem}
[data-experience=guided] .guided-modify-reference #modify-reason{padding:.75rem 0;overflow-wrap:anywhere}
@media(max-width:1250px){[data-experience=guided] .guided-evidence{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){[data-experience=guided] .guided-fields .record-field{font-size:1rem}}
