.y2j{gap:var(--s5);grid-template-columns:1fr 1fr;align-items:start;display:grid}.y2j-in{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s5);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);min-width:0}.y2j-in.y2j-over{border-color:var(--brass);background:var(--brass-wash)}.y2j-head{justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.y2j-lbl{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.y2j-head-acts{align-items:center;gap:var(--s4);flex-wrap:wrap;display:flex}.y2j-file span,.y2j-example,.y2j-clear{font-size:var(--step--1);color:var(--ink-1);border-bottom:1px solid var(--brass);cursor:pointer;min-height:24px;padding-bottom:1px;display:inline-block}.y2j-file span:hover,.y2j-example:hover,.y2j-clear:hover{color:var(--ink-0)}.y2j-in textarea{width:100%;margin-top:var(--s3);padding:var(--s4);background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-md);resize:vertical;line-height:1.6;font-family:var(--font-mono);font-size:var(--step--1);tab-size:2;transition:border-color var(--dur) var(--ease)}.y2j-in textarea:focus{border-color:var(--brass);outline:none}.y2j-in textarea::placeholder{color:var(--ink-2);opacity:.55}.y2j-fileerr{margin-top:var(--s3);font-size:var(--step--1);color:var(--error)}.y2j-filenote{margin-top:var(--s3);font-size:var(--step--1);color:var(--ink-1)}.y2j-status{margin-top:var(--s4);padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--surface-2);border-left:3px solid var(--line-firm);align-items:center;gap:var(--s3) var(--s5);flex-wrap:wrap;min-height:56px;display:flex}.y2j-status[data-state=read]{border-left-color:var(--ok)}.y2j-status[data-state=bad]{border-left-color:var(--error)}.y2j-status[data-state=working]{border-left-color:var(--brass)}.y2j-badge{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.02em;color:var(--ink-1)}.y2j-status[data-state=read] .y2j-badge{color:var(--ok)}.y2j-status[data-state=bad] .y2j-badge{color:var(--error)}.y2j-facts{gap:var(--s2) var(--s4);flex-wrap:wrap;margin:0;display:flex}.y2j-facts dt{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.y2j-facts dd{font-size:var(--step--1);margin:1px 0 0}.y2j-facts dd[data-warn=true]{color:var(--warn);font-weight:600}.y2j-verdict{margin-top:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--surface-2);border-left:3px solid var(--ok);font-size:var(--step--1);color:var(--ink-1);max-width:62ch;line-height:1.55}.y2j-verdict[data-kind=split]{border-left-color:var(--brass)}.y2j-verdict strong{color:var(--ink-0)}.y2j-set{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--line);gap:var(--s3);display:grid}.y2j-row{justify-content:space-between;align-items:center;gap:var(--s4);flex-wrap:wrap;display:flex}.y2j-row>span:first-child,.y2j-row>label:first-child{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.y2j-seg{background:var(--surface-2);border-radius:var(--r-md);flex-wrap:wrap;gap:2px;padding:3px;display:flex}.y2j-seg button{min-height:36px;padding:0 var(--s3);font-size:var(--step--1);color:var(--ink-1);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:7px}.y2j-seg button[aria-pressed=true]{background:var(--surface-0);color:var(--ink-0);box-shadow:var(--shadow-1)}.y2j-hint{font-size:var(--step--1);color:var(--ink-1);max-width:62ch;margin:0;line-height:1.55}.y2j-hint em{color:var(--ink-2);font-style:normal}.y2j-hint code{font-family:var(--font-mono);background:var(--surface-2);border-radius:var(--r-sm);padding:.1em .3em}.y2j-out{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s5);min-height:360px;box-shadow:var(--shadow-1);transition:box-shadow .26s var(--ease), border-color .26s var(--ease);min-width:0}.y2j-out.has{box-shadow:var(--shadow-2);border-color:var(--line-firm)}.y2j-stub{justify-content:space-between;align-items:baseline;gap:var(--s3);display:flex}.y2j-no{color:var(--brass-lo);font-size:var(--step--1);letter-spacing:.04em}.y2j-sum{color:var(--ink-2);font-size:var(--step--1);text-align:right}.y2j-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}.y2j-perf:before,.y2j-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}.y2j-perf:before{left:-7px}.y2j-perf:after{right:-7px}.y2j-empty{color:var(--ink-2);font-size:var(--step--1);max-width:46ch}.y2j-empty code,.y2j-empty em{font-family:var(--font-mono);background:var(--surface-2);border-radius:var(--r-sm);padding:.1em .3em;font-style:normal}.y2j-source{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s4);font-size:var(--step--1);white-space:pre;tab-size:2;max-width:100%;max-height:460px;line-height:1.6;overflow-x:auto}.y2j-more{margin-top:var(--s2);font-size:var(--step--2);color:var(--ink-2)}.y2j-splits{margin-bottom:var(--s4)}.y2j-splits h3{font-size:var(--step--1);color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em}.y2j-scroll{margin-top:var(--s3);max-width:100%;overflow-x:auto}.y2j-splits table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.y2j-splits th,.y2j-splits td{text-align:left;padding:var(--s2) var(--s3);border-bottom:1px solid var(--line);white-space:nowrap}.y2j-splits td.y2j-path{white-space:normal;word-break:break-word;min-width:14ch}.y2j-splits th{font-family:var(--font-mono);font-size:var(--step--2);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);font-weight:400}.y2j-splits th[data-on=true],.y2j-splits td[data-on=true]{background:var(--brass-wash);color:var(--ink-0)}.y2j-path{color:var(--ink-1)}.y2j-error{padding:var(--s4);border-radius:var(--r-md);background:var(--surface-2);border-left:3px solid var(--error)}.y2j-pos{font-size:var(--step--1);color:var(--error)}.y2j-msg{margin-top:var(--s2);font-size:var(--step--1);max-width:62ch}.y2j-excerpt{margin-top:var(--s3);font-size:var(--step--2);white-space:pre;max-width:100%;line-height:1.55;overflow-x:auto}.y2j-line{display:block}.y2j-line.bad{background:color-mix(in oklch, var(--error) 12%, transparent)}.y2j-gutter{text-align:right;width:4ch;padding-right:var(--s2);color:var(--ink-2);user-select:none;display:inline-block}.y2j-code{display:inline-block}.y2j-caret{color:var(--error)}.y2j-error .y2j-hint{margin-top:var(--s3)}.y2j-warn{margin-bottom:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--surface-2);border-left:3px solid var(--warn);font-size:var(--step--1);color:var(--ink-1);animation:y2j-land .24s var(--ease) both}.y2j-warn.y2j-danger{border-left-color:var(--error)}.y2j-warn strong{color:var(--ink-0);display:block}.y2j-warn p{margin-top:var(--s1);max-width:62ch}.y2j-warn code{font-family:var(--font-mono);background:var(--surface-0);border-radius:var(--r-sm);padding:.1em .3em}.y2j-notelist{margin-top:var(--s2);gap:var(--s1);padding:0;list-style:none;display:grid}.y2j-notelist li{gap:var(--s3);flex-wrap:wrap;align-items:baseline;display:flex}.y2j-became{font-size:var(--step--2);color:var(--ink-2)}.y2j-acts{margin-top:var(--s4);gap:var(--s3);flex-wrap:wrap;display:flex}.y2j-primary,.y2j-ghost{min-height:44px;padding:0 var(--s4);border-radius:var(--r-md);font-size:var(--step--1);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease)}.y2j-primary{background:var(--brass);color:var(--on-brass)}.y2j-primary:hover{background:var(--brass-hi)}.y2j-ghost{border:1px solid var(--line-firm);color:var(--ink-1)}.y2j-ghost:hover{color:var(--ink-0);border-color:var(--brass)}@keyframes y2j-land{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.y2j-warn{animation:none}.y2j-in,.y2j-out,.y2j-seg button{transition:none}}@media (width<=860px){.y2j{grid-template-columns:1fr}.y2j-out{min-height:0}.y2j-acts{bottom:var(--s3);position:sticky}}
