.xt{gap:var(--s5);grid-template-columns:minmax(0,1fr);display:grid}.xt-inputs{gap:var(--s4);grid-template-columns:1fr 1fr;display:grid}.xt-pane{gap:var(--s3);min-width:0;padding:var(--s4);background:var(--surface-1);border:1px solid var(--line-firm);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);display:grid}.xt-pane.xt-over{border-color:var(--brass);background:var(--brass-wash)}.xt-phead{justify-content:space-between;align-items:flex-end;gap:var(--s2);flex-wrap:wrap;display:flex}.xt-lbl{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-1);gap:2px;display:grid}.xt-hint{font-family:var(--font-sans);text-transform:none;letter-spacing:0;color:var(--ink-2)}.xt-pacts{align-items:center;gap:var(--s2);display:flex}.xt-file span,.xt-ghost,.xt-run,.xt-save{min-height:44px;padding:0 var(--s3);background:var(--surface-0);border:1px solid var(--line-firm);border-radius:var(--r-md);font-size:var(--step--1);color:var(--ink-1);cursor:pointer;transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);justify-content:center;align-items:center;display:inline-flex}.xt-file span:hover,.xt-ghost:hover{border-color:var(--brass);color:var(--ink-0)}.xt-file input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.xt-run,.xt-save{background:var(--brass);border-color:var(--brass-lo);color:var(--on-brass);font-weight:500}.xt-run:hover,.xt-save:hover{background:var(--brass-hi);color:var(--on-brass)}.xt textarea{resize:vertical;width:100%;min-width:0;min-height:220px;padding:var(--s3);background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-mono);font-size:max(16px, var(--step--1));color:var(--ink-0);white-space:pre;contain:paint;transition:border-color var(--dur) var(--ease);line-height:1.55}.xt textarea:focus{border-color:var(--brass);outline:none}.xt-pfacts{gap:var(--s2) var(--s4);flex-wrap:wrap;margin:0;display:flex}.xt-pfacts dt{font-family:var(--font-mono);font-size:var(--step--2);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.xt-pfacts dd{font-size:var(--step--1);margin:2px 0 0}.xt-fname{overflow-wrap:anywhere}.xt-err{font-size:var(--step--1);color:var(--error);max-width:52ch;margin:0}.xt-filenote{font-size:var(--step--1);color:var(--ink-1);border-left:2px solid var(--warn-surface);padding-left:var(--s3);margin:0;line-height:1.5}.xt-bar{align-items:center;gap:var(--s3) var(--s4);flex-wrap:wrap;display:flex}.xt-check{align-items:center;gap:var(--s2);min-height:44px;font-size:var(--step--1);color:var(--ink-1);cursor:pointer;display:inline-flex}.xt-heavy{gap:var(--s3);padding:var(--s4);background:var(--surface-1);border:1px solid var(--warn-surface);border-radius:var(--r-lg);justify-items:start;display:grid}.xt-heavy p{font-size:var(--step--1);max-width:68ch;margin:0;line-height:1.55}.xt-empty,.xt-gone,.xt-fail{padding:var(--s5);background:var(--surface-1);border:1px solid var(--line-firm);border-radius:var(--r-lg)}.xt-empty p,.xt-gone p,.xt-fail p{margin:0 0 var(--s3);max-width:68ch;line-height:1.6}.xt-empty p:last-child,.xt-gone p:last-child,.xt-fail p:last-child{margin-bottom:0}.xt-small{font-size:var(--step--1);color:var(--ink-1)}.xt-gone{border-color:var(--warn-surface)}.xt-gone h2,.xt-h{margin:0 0 var(--s3);font-family:var(--font-display);font-size:var(--step-1);color:var(--ink-0)}.xt-fail{border-left:3px solid var(--error)}.xt-headline{color:var(--ink-0);font-weight:500}.xt-findings{padding-left:var(--s5);gap:var(--s2);margin:0;display:grid}.xt-findings li{font-size:var(--step--1);max-width:68ch;line-height:1.55}.xt-ticket{background:var(--surface-1);border:1px solid var(--line-firm);border-radius:var(--r-lg);padding:var(--s5);box-shadow:var(--shadow-2)}.xt-stub{justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.xt-no{color:var(--brass-lo);font-size:var(--step--1);letter-spacing:.04em}.xt-acts{gap:var(--s2);flex-wrap:wrap;display:flex}.xt-perf{height:1px;margin:var(--s4) calc(-1 * var(--s5));background-image:linear-gradient(90deg, var(--line-firm) 55%, transparent 0);background-size:9px 1px;position:relative}.xt-perf:before,.xt-perf:after{content:"";border-radius:var(--r-full);background:var(--surface-0);border:1px solid var(--line);width:14px;height:14px;position:absolute;top:-7px}.xt-perf:before{left:-7px}.xt-perf:after{right:-7px}.xt-method{margin:0 0 var(--s4);font-size:var(--step--1);color:var(--ink-0);max-width:68ch}.xt-facts{gap:var(--s3) var(--s5);margin:0 0 var(--s4);flex-wrap:wrap;display:flex}.xt-facts dt{font-family:var(--font-mono);font-size:var(--step--2);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.xt-facts dd{font-size:var(--step--1);color:var(--ink-0);margin:2px 0 0}.xt-flag{margin:0 0 var(--s4);padding-left:var(--s3);border-left:2px solid var(--brass);font-size:var(--step--1);color:var(--ink-1);max-width:68ch;line-height:1.55}.xt-engine{margin:0 0 var(--s4);padding:var(--s4);background:var(--surface-2);border-radius:var(--r-md)}.xt-engine strong{margin-bottom:var(--s2);color:var(--ink-0);display:block}.xt-engine p{margin:0 0 var(--s2);font-size:var(--step--1);color:var(--ink-1);max-width:68ch;line-height:1.55}.xt-engine p:last-child{margin-bottom:0}.xt-line{margin:0 0 var(--s3);padding:var(--s3);background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--step--1);white-space:pre;overflow-x:auto}.xt-clip{margin:0 0 var(--s2);font-size:var(--step--1);color:var(--ink-1)}.xt-out{padding:var(--s4);background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-md);min-height:8rem;max-height:34rem;font-size:var(--step--1);color:var(--ink-0);white-space:pre;tab-size:2;contain:paint;margin:0;line-height:1.55;overflow:auto}.xt-out.xt-wrap{white-space:pre-wrap;overflow-wrap:anywhere}@media (width<=760px){.xt-inputs{grid-template-columns:1fr}.xt textarea{min-height:170px}.xt-ticket,.xt-empty,.xt-gone,.xt-fail{padding:var(--s4)}.xt-perf{margin-inline:calc(-1 * var(--s4))}.xt-acts{width:100%}.xt-acts button{flex:auto}}.xt-ticket>.xt-acts{margin:var(--s3) 0 var(--s4)}.xt-engine code.xt-line{padding:1px var(--s1);white-space:normal;overflow-wrap:anywhere;margin:0;display:inline}.xt-engine details{margin-top:var(--s2);font-size:var(--step--1);color:var(--ink-1)}.xt-engine summary{cursor:pointer;align-items:center;min-height:44px;display:flex}
