:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#171717;background:#f7f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{max-width:1300px;margin:auto;padding:48px 28px 80px}header{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:32px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;margin:0 0 8px}h1{font-size:44px;line-height:1;margin:0}h2{font-size:15px;margin:0}.lede{font-size:18px;line-height:1.55;color:#565656;margin:0}.toolbar{display:flex;gap:18px;align-items:end;padding:18px;background:#fff;border:1px solid #ddd;border-radius:12px;margin-bottom:18px}.toolbar label{display:grid;gap:7px;flex:1;font-size:12px;font-weight:700}.toolbar input{font:inherit;padding:10px;border:1px solid #bbb;border-radius:7px}button{border:0;border-radius:7px;background:#171717;color:#fff;padding:11px 18px;font-weight:700;cursor:pointer}button:disabled{opacity:.55}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid article,.issues{background:#fff;border:1px solid #ddd;border-radius:12px;overflow:hidden}.grid h2{padding:14px 16px;border-bottom:1px solid #e5e5e5}.grid textarea,.grid pre{width:100%;height:450px;margin:0;border:0;padding:18px;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;background:#111;color:#eaeaea;overflow:auto}.grid textarea{resize:vertical;outline:none}.issues{margin-top:18px;padding:0 16px 16px}.section-title{height:48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}.section-title span{font-size:12px;color:#777}.issue{margin-top:12px;padding:13px;border:1px solid #ddd;border-radius:8px}.issue>div{display:flex;gap:10px;align-items:center}.issue b{font-size:12px}.issue span{font:12px ui-monospace,monospace;color:#666}.issue p{margin:7px 0 0;color:#555;font-size:14px}.issue.warning{border-left:4px solid #b78b00}.issue.error{border-left:4px solid #a83232}.empty{padding:20px 0;color:#777}@media(max-width:800px){header,.grid{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar label,button{width:100%}}
