.x-job{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin-bottom:12px;color:var(--head)}
.x-job span{color:var(--muted);font-size:13px}
.x-plan{position:relative;width:100%;aspect-ratio:16/11;background:var(--bg2);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:8px}
.x-area{position:absolute;border:1.5px solid var(--line);border-radius:6px;background:var(--card)}
.x-area span{position:absolute;left:5px;top:3px;font-size:10px;color:var(--muted);white-space:nowrap}
.x-pt{position:absolute;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;border:2px dashed var(--muted);background:var(--card);padding:0;cursor:pointer;z-index:2}
.x-pt.on{background:var(--c);border:2px solid var(--c)}
.x-pt.pass{box-shadow:0 0 0 3px #2e9e5b}
.x-pt.fail{box-shadow:0 0 0 3px #d64545}
.x-pt.marg{box-shadow:0 0 0 3px #d99a00}
.x-pt.sel{outline:3px solid var(--o);outline-offset:3px}
.x-pt:hover{transform:translate(-50%,-50%) scale(1.15)}
.x-al{position:absolute;transform:translate(-50%,-50%);font-size:8px;line-height:1;padding:2px 3px;border-radius:4px;border:1.5px solid var(--c);background:var(--card);color:var(--head);white-space:nowrap;z-index:2}
.x-legend{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--muted);margin:4px 0 10px}
.x-legend span{display:inline-flex;align-items:center;gap:5px}
.x-legend i{width:10px;height:10px;border-radius:50%;background:var(--c);display:inline-block}
.x-legend i.x-dash{background:none;border:1.5px dashed var(--muted)}
.x-areas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
.x-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:12px;color:var(--text);overflow-wrap:anywhere}
.x-card b{color:var(--head)}
.x-f label{display:block;font-size:12px;color:var(--muted);margin:8px 0 3px}
.x-f input,.x-f select{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);font:inherit;min-width:0}
.x-f .btn{margin-top:10px}
.x-r2{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0 10px}
.x-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.x-row input{flex:1 1 140px;width:auto}
.x-big{font-size:20px;font-weight:700;color:var(--o);margin:8px 0 2px;letter-spacing:.5px}
.x-tag{display:inline-block;font-size:11px;padding:2px 8px;border-radius:99px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}
.x-tag.pass{color:#2e9e5b;border-color:#2e9e5b}
.x-tag.fail{color:#d64545;border-color:#d64545;font-weight:700}
.x-tag.marg{color:#d99a00;border-color:#d99a00}
.x-tag.pend{color:var(--o);border-color:var(--o)}
.x-tw{overflow-x:auto;margin-bottom:12px}
.x-t{width:100%;border-collapse:collapse;font-size:13px}
.x-t th,.x-t td{padding:6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.x-t th{color:var(--muted);font-weight:500;font-size:12px}
.x-t td:last-child{text-align:right}
.x-t .x-tot td{font-weight:700;color:var(--head);border-bottom:0}
.x-rw{border-left:4px solid #d64545}
.x-ba p{margin:4px 0;font-size:13px}
.x-sig{height:64px;border:1.5px dashed var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;margin:8px 0;background:var(--bg2)}
.x-sv{width:150px;height:38px;color:var(--head);display:block;margin:6px 0 0}
.x-wk{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:8px}
.x-wk label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted);border-radius:8px;padding:3px;border:1px solid transparent}
.x-wk select{width:100%;min-width:0;font:inherit;font-size:11px;padding:5px 2px;border:1px solid var(--line);border-radius:6px;background:var(--bg2);color:var(--text)}
.x-wk label.x-bad{border-color:#d64545}
.x-wk label.x-bad span{color:#d64545;font-weight:600}
.x-ph{max-width:280px;border:2px solid var(--line);border-radius:20px;padding:12px;background:var(--bg2);margin-bottom:12px}
.x-ph small{color:var(--muted);font-size:11px}
.x-ph p{background:var(--card);color:var(--text);border-radius:12px;padding:9px 11px;font-size:12.5px;margin:6px 0 0;overflow-wrap:anywhere}
.x-chk,.x-docs{list-style:none;margin:0 0 12px;padding:0}
.x-chk li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.x-chk li span{flex:1;min-width:0;display:flex;flex-direction:column}
.x-chk li small{color:var(--muted);font-size:12px}
.x-chk li.ok b{color:var(--muted)}
.x-docs li{display:flex;gap:8px;align-items:center;padding:5px 0;font-size:13px}
.x-docs li span{flex:1;min-width:0}
.x-docs li em{font-style:normal;color:var(--muted);font-size:12px}
.x-btns{justify-content:flex-start;margin-bottom:8px}
.x-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:8px 0 0;font-size:13px}
.x-dl dt{color:var(--muted)}
.x-dl dd{margin:0;color:var(--text)}
@media (max-width:560px){.x-areas{grid-template-columns:minmax(0,1fr)}.x-pt{width:16px;height:16px}.x-al{font-size:7px;padding:1px 2px}.x-wk{gap:3px}.x-wk select{font-size:10px;padding:4px 1px}.x-big{font-size:18px}.x-t{font-size:12px}}