@import url('/static/tokens.css');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:var(--body)/1.55 system-ui,sans-serif}main{max-width:1120px;margin:auto;padding:var(--s4) var(--s3)}a{color:var(--accent);text-underline-offset:4px}header{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding-bottom:var(--s3);border-bottom:1px solid var(--ink)}header>a:last-child{font-size:var(--small)}.brand{font-weight:750;text-decoration:none;color:var(--ink);letter-spacing:-.03em}h1{font-size:var(--display);line-height:1.08;letter-spacing:-.045em;margin:var(--s5) 0 var(--s3);max-width:20ch}h2{font-size:var(--large);letter-spacing:-.025em;line-height:1.25}p{max-width:68ch}.lede{font-size:var(--s3);color:var(--muted);max-width:48ch;margin-bottom:var(--s4)}label{display:block;font-weight:650}.input{display:flex;gap:var(--s1);margin-top:var(--s1)}input,button{font:inherit;border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2);min-height:52px}input{flex:1;min-width:0;background:var(--surface);color:var(--ink)}button{background:var(--accent);color:var(--on-accent);font-weight:650;cursor:pointer}button:disabled{opacity:.6;cursor:wait}.examples{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1);margin-top:var(--s2);font-size:var(--small);color:var(--muted)}.examples button{border:none;background:transparent;color:var(--accent);font-size:var(--small);font-weight:500;text-decoration:underline;text-underline-offset:4px;padding:var(--s1);min-height:44px}#progress,.caption{font-size:var(--small);color:var(--muted)}#progress{min-height:var(--s3)}section{border-top:1px solid var(--line);margin-top:var(--s4);padding-top:var(--s2)}#result:empty{display:none}.measurement{margin-top:var(--s5)}.measurement>p{color:var(--muted)}table{border-collapse:collapse;width:100%;font-size:var(--body);font-variant-numeric:tabular-nums;margin:var(--s3) 0}caption{text-align:left;color:var(--muted);font-size:var(--small);padding-bottom:var(--s2)}th,td{border-bottom:1px solid var(--line);padding:var(--s2) 0;vertical-align:top}th{text-align:left;font-weight:500}td,th:last-child{text-align:right;white-space:nowrap;padding-left:var(--s2)}tr:first-of-type{font-size:var(--small);color:var(--muted)}td{font-weight:700}.caution{font-weight:600}.method{margin-top:var(--s4);border-top:1px solid var(--line)}details>summary{cursor:pointer;min-height:44px;padding:var(--s1) 0}details p,code,pre,.target,.result-domain{overflow-wrap:anywhere}details>a{display:block;margin:var(--s2) 0}.result-domain{font-size:var(--s3);margin:var(--s1) 0 var(--s3)}.report-note{background:var(--wash);padding:var(--s2)}footer{border-top:1px solid var(--line);margin-top:var(--s5);padding-top:var(--s3);color:var(--muted);font-size:var(--small)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:hover{filter:brightness(.94)}.has-result h1{font-size:var(--large);margin-top:var(--s3)}.has-result h1 br{display:none}.has-result .lede{display:none}.has-result #result{margin-top:var(--s3)}.graph{margin:var(--s4) 0}.graph figcaption{font-weight:650;margin-bottom:var(--s3)}.graph-origin{background:var(--ink);color:var(--paper);padding:var(--s2) var(--s3);display:inline-block;border-radius:var(--radius);font-weight:700;max-width:100%;overflow-wrap:anywhere}.fan{margin-left:var(--s3);padding:var(--s3) 0 0 var(--s4);border-left:2px solid var(--line)}.graph-branch{position:relative;border-bottom:1px solid var(--line);padding:0 0 var(--s3);margin-bottom:var(--s3)}.graph-branch:before{content:'';position:absolute;left:calc(-1 * var(--s4));top:var(--s2);width:var(--s3);border-top:2px solid var(--line)}.graph-branch.linked:before{border-color:var(--accent)}.target{font-size:var(--s3);display:block;line-height:1.25}.state{font-size:var(--small);font-weight:650;color:var(--muted);display:block;margin-top:var(--s1)}.linked .state{color:var(--accent)}.line-label{margin:var(--s2) 0 var(--s1);font-size:var(--small)}code{font:inherit;font-variant-numeric:tabular-nums}pre{white-space:pre-wrap;font:var(--small)/1.5 ui-monospace,monospace;background:var(--wash);padding:var(--s2);margin:var(--s1) 0 var(--s2)}.graph-branch>p{font-size:var(--small);color:var(--muted)}.signal{border-top:1px solid var(--line);padding-top:var(--s2);margin-top:var(--s2)}.signal p{margin:var(--s1) 0}.ignored{font-size:var(--small);padding:var(--s2) 0;border-bottom:1px solid var(--line)}
@media(max-width:600px){main{padding:var(--s3) var(--s2)}header{align-items:flex-start}.brand{max-width:15ch}header>a:last-child{max-width:13ch;text-align:right}h1{margin-top:var(--s4)}.lede{font-size:20px}.input{flex-direction:column}.input button{width:100%}.examples{gap:0 var(--s1)}.examples>span{width:100%}.examples button{padding-left:0;margin-right:var(--s1)}th,td{font-size:var(--small)}th:first-child{max-width:22ch}.fan{margin-left:var(--s1);padding-left:var(--s3)}.graph-branch:before{left:calc(-1 * var(--s3));width:var(--s2)}.target{font-size:20px}.graph-origin{padding:var(--s2)}.measurement{margin-top:var(--s4)}}
@media(prefers-reduced-motion:no-preference){.graph-branch{animation:arrive .22s ease-out}@keyframes arrive{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.has-result h1{display:none}.has-result form{margin-top:var(--s3)}
.graph{position:relative}.graph>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.graph path{fill:none;stroke:var(--line);stroke-width:2}.graph-origin,.fan,.graph figcaption{position:relative;z-index:1}
@media(min-width:760px){.graph{display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:96px}.graph figcaption{grid-column:1/-1}.graph-origin{align-self:center;grid-column:1;padding:var(--s2);font-size:var(--small)}.fan{grid-column:2;margin:0;border:0;padding:0}.graph-branch:before{display:none}.graph-branch:last-child{margin-bottom:0}}

.graph-branch{padding-bottom:var(--s2);margin-bottom:var(--s2)}.graph-branch .line-label{margin:var(--s1) 0}.graph-branch>pre{padding:var(--s1);margin:var(--s1) 0}.graph-branch details{font-size:var(--small)}
