:root{--cq-ink:#242729;--cq-muted:#72787e;--cq-line:#e5e7e9;--cq-paper:#f8f9fa;--cq-surface:#fff;--cq-accent:#8b6b2b;--cq-soft:#faf2df;--cq-blue:#2a6fa8}
.cq-app{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--cq-ink);font-size:14px;line-height:1.6}
body.cq-app{margin:0;background:var(--cq-paper)}.cq-shell{max-width:1100px;margin:0 auto;padding:32px 24px 60px}.cq-brand{color:var(--cq-accent);font-size:13px;letter-spacing:2px}.cq-app h1{font-size:28px;margin:8px 0}.cq-app h2{font-size:18px;margin:0}.cq-app h3{font-size:15px;margin:0}.cq-muted{color:var(--cq-muted)}.cq-panel{background:var(--cq-surface);border:1px solid var(--cq-line);border-radius:8px;padding:22px;margin:20px 0}.cq-head,.cq-toolbar,.cq-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.cq-toolbar{justify-content:flex-start}.cq-app input,.cq-app select,.cq-app textarea{box-sizing:border-box;max-width:100%;border:1px solid #d5d9de;border-radius:5px;padding:9px 11px;color:var(--cq-ink);background:white;font:inherit}.cq-app input:focus,.cq-app textarea:focus{outline:2px solid #ead5a3;outline-offset:1px}.cq-app button,.cq-button{border:1px solid #d5d9de;border-radius:5px;padding:8px 14px;font:inherit;background:white;color:var(--cq-ink);cursor:pointer;text-decoration:none}.cq-app button:hover,.cq-button:hover{border-color:var(--cq-accent)}.cq-app button.primary{background:var(--cq-soft);border-color:#c7aa6b;color:#493a1b}.cq-app button:disabled{cursor:wait;opacity:.5}.cq-app label{display:grid;gap:5px;color:var(--cq-muted);font-size:13px}.cq-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:18px}.cq-form .grow{flex:1;min-width:190px}.cq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.cq-stat{padding:14px 18px;background:var(--cq-surface);border:1px solid var(--cq-line);border-radius:6px}.cq-stat strong{display:block;color:var(--cq-accent);font-size:25px}.cq-stat span{font-size:12px;color:var(--cq-muted)}.cq-alert{white-space:pre-wrap;border-left:3px solid var(--cq-blue);background:#e9f2fb;padding:10px 14px;margin:14px 0}.cq-alert.error{border-color:#c04646;background:#fff2f2}.cq-app [hidden]{display:none!important}.cq-app progress{width:100%;height:10px;accent-color:var(--cq-accent)}.cq-result{border:1px solid var(--cq-line);padding:18px;border-radius:6px;margin-top:12px}.cq-result-head b{color:var(--cq-blue)}.cq-facts{display:grid;grid-template-columns:100px minmax(0,1fr) 100px minmax(0,1fr);gap:6px 14px;font-size:13px}.cq-facts dt{color:var(--cq-muted)}.cq-facts dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.cq-facts .cq-facts{grid-template-columns:100px minmax(0,1fr)}.cq-march{background:var(--cq-paper);padding:8px;margin:6px 0}.cq-app pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 Consolas,monospace;max-height:380px;overflow:auto;background:var(--cq-paper);padding:16px}.cq-table-wrap{overflow:auto}.cq-app table{width:100%;border-collapse:collapse;font-size:13px}.cq-app th{text-align:left;color:var(--cq-muted);background:var(--cq-paper);font-weight:500}.cq-app th,.cq-app td{padding:12px;border-bottom:1px solid var(--cq-line);vertical-align:top}.cq-app td small{display:block}.cq-code{font-family:Consolas,monospace;word-break:break-all;min-width:210px}.cq-pager{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin-top:14px}.cq-tabs{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}.cq-tabs [aria-selected=true]{color:var(--cq-accent);background:var(--cq-soft);border-color:#c7aa6b}.cq-scanner{width:100%;min-height:1000px;border:0;border-radius:6px;background:white}.cq-app details{margin-top:12px}.cq-app summary{cursor:pointer;color:var(--cq-accent)}.cq-app dialog{width:min(900px,calc(100% - 48px));max-height:85vh;overflow:auto;border:1px solid var(--cq-line);border-radius:8px;padding:22px}.cq-app dialog::backdrop{background:#0006}.cq-app a{color:var(--cq-blue)}
@media(max-width:700px){.cq-shell{padding:20px 14px}.cq-panel{padding:16px}.cq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cq-facts{grid-template-columns:92px minmax(0,1fr)}.cq-form input{width:100%}.cq-form button{min-height:42px}.cq-result-head{align-items:flex-start;flex-direction:column}.cq-app h1{font-size:24px}}
