.so-tool{gap:var(--s5);grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);align-items:start;display:grid}.so-counter,.so-ticket,.so-result{min-width:0;padding:var(--s5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-1)}.so-ticket{box-shadow:var(--shadow-1);overflow:hidden}.so-ticket:focus{outline:3px solid var(--focus);outline-offset:3px}.so-local{border-left:4px solid var(--brass);background:var(--surface-2);flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:11px 13px;display:flex}.so-local span,.so-file-source p,.so-paste-source p,.so-working p,.so-pickup>p,.so-empty p,.so-code p{color:var(--ink-1);font-size:14px}.so-source-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.so-file-source,.so-paste-source{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-0);min-width:0;padding:14px}.so-file-source h2,.so-inspection h2,.so-ticket h2,.so-result h2{margin:0;font-size:18px}.so-file-source p{overflow-wrap:anywhere}.so-file{border:1px dashed var(--brass-lo);border-radius:var(--r-sm);background:var(--brass-wash);cursor:pointer;text-align:center;justify-content:center;align-items:center;min-height:52px;margin-top:12px;padding:8px 12px;font-weight:750;display:flex}.so-file input{opacity:0;block-size:1px;inline-size:1px;position:absolute}.so-file:focus-within{outline:3px solid var(--focus);outline-offset:2px}.so-paste-source label{display:block}.so-paste-source textarea,.so-code textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-0);width:100%;min-width:0;color:var(--ink-0);font:13px/1.45 var(--font-mono);margin-top:10px;padding:10px}.so-paste-source textarea{min-height:154px}.so-paste-source textarea:focus-visible,.so-code textarea:focus-visible,.so-primary:focus-visible,.so-secondary:focus-visible,.so-download:focus-visible,.so-working button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.so-advice{border-left:4px solid var(--warn);background:var(--surface-2);margin:12px 0 0;padding:10px 12px;font-size:14px}.so-inspect-action,.so-optimize-action{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.so-inspect-action>div:first-child,.so-optimize-action>div:first-child{min-width:0;display:grid}.so-inspect-action strong,.so-inspect-action span,.so-optimize-action strong,.so-optimize-action span{overflow-wrap:anywhere}.so-inspect-action span,.so-optimize-action span{color:var(--ink-1);font-size:13px}.so-button-row{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.so-primary,.so-secondary,.so-working button,.so-download{box-sizing:border-box;border-radius:var(--r-sm);text-align:center;justify-content:center;align-items:center;min-height:48px;padding:0 16px;font-weight:800;text-decoration:none;display:inline-flex}.so-primary,.so-download{background:var(--brass);color:var(--surface-0);border:0}.so-secondary,.so-working button{border:1px solid var(--line);background:var(--surface-0);color:var(--ink-0)}.so-primary:disabled,.so-secondary:disabled{cursor:not-allowed;opacity:.45}.so-inspection{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);grid-template-columns:minmax(160px,.65fr) minmax(0,1.35fr);gap:16px;margin-top:16px;padding:14px;display:grid}.so-source-preview{min-height:220px}.so-inspection-copy>div:first-child{gap:3px;display:grid}.so-inspection-copy>div:first-child span{color:var(--ink-1);overflow-wrap:anywhere;font-size:13px}.so-facts,.so-result-facts{grid-template-columns:1fr 1fr;gap:9px;margin:14px 0;display:grid}.so-facts div,.so-result-facts div{border-bottom:1px solid var(--line);min-width:0;padding-bottom:6px}.so-facts dt,.so-result-facts dt{color:var(--ink-2);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.so-facts dd,.so-result-facts dd{overflow-wrap:anywhere;font:13px var(--font-mono);margin:2px 0 0}.so-boundary{border-left:4px solid var(--warn);background:var(--surface-0);margin:0;padding:10px;font-size:13px}.so-stub{color:var(--ink-1);font:12px var(--font-mono);justify-content:space-between;gap:12px;display:flex}.so-perf{height:1px;margin:14px calc(-1 * var(--s5)) 20px;background-image:linear-gradient(90deg, var(--line) 55%, transparent 0);background-size:9px 1px}.so-empty,.so-working{text-align:center;align-content:center;justify-items:center;gap:10px;min-height:400px;display:grid}.so-empty>span{color:var(--ink-2);font:28px var(--font-mono)}.so-keytag{border:2px solid var(--brass);border-radius:var(--r-sm);background:var(--brass-wash);block-size:42px;inline-size:64px;color:var(--ink-0);font:14px var(--font-mono);transform-origin:50% -18px;place-items:center;animation:1.4s ease-in-out infinite so-swing;display:grid}@keyframes so-swing{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.so-working button{width:100%;margin-top:8px}.so-proof{border-left:4px solid var(--warn);background:var(--surface-2);gap:3px;padding:11px;font-size:13px;display:grid}.so-proof.is-verified{border-left-color:var(--ok)}.so-proof.is-mismatch,.so-proof.is-failed{border-left-color:var(--error)}.so-proof span{color:var(--ink-1);overflow-wrap:anywhere}.so-download{width:100%;margin-top:14px}.so-error{min-height:1.5em;color:var(--error);overflow-wrap:anywhere;margin:12px 0 0}.so-result{grid-column:1/-1}.so-preview-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.so-preview-grid figure{min-width:0;margin:0}.so-preview-grid figcaption{color:var(--ink-1);font:13px var(--font-mono);margin-top:6px}.so-checker{border:1px solid var(--line);border-radius:var(--r-md);background-color:var(--surface-0);background-image:linear-gradient(45deg, var(--surface-2) 25%, transparent 25%), linear-gradient(-45deg, var(--surface-2) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--surface-2) 75%), linear-gradient(-45deg, transparent 75%, var(--surface-2) 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;place-items:center;min-width:0;padding:12px;display:grid;overflow:hidden}.so-checker img{object-fit:contain;max-width:100%;max-height:360px;display:block}.so-receipt-grid{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:20px;margin-top:20px;display:grid}.so-receipt-grid h3{margin:16px 0 7px;font-size:14px}.so-receipt-grid ul{margin:0;padding-left:22px}.so-receipt-grid li{color:var(--ink-1);overflow-wrap:anywhere;margin-top:5px;font-size:13px}.so-code{min-width:0}.so-code textarea{resize:vertical;min-height:310px}@media (width<=880px){.so-tool{grid-template-columns:1fr}.so-result{grid-column:auto}}@media (width<=620px){.so-source-grid,.so-inspection,.so-preview-grid,.so-receipt-grid{grid-template-columns:1fr}.so-source-preview{min-height:180px}}@media (width<=480px){.so-counter,.so-ticket,.so-result{padding:16px}.so-perf{margin-inline:-16px}.so-inspect-action,.so-optimize-action{flex-direction:column;align-items:stretch}.so-button-row{width:100%;display:grid}.so-primary,.so-secondary{width:100%}.so-facts,.so-result-facts{grid-template-columns:1fr}.so-optimize-action{z-index:1;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--shadow-1);padding:12px;position:sticky;bottom:8px}.so-paste-source textarea,.so-code textarea{font-size:16px}}@media (prefers-reduced-motion:reduce){.so-keytag{animation:none}}
