.x-row{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between}
.x-tk,.x-run,.x-form,.x-doc,.x-portal,.x-tab{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;margin:0 0 10px;overflow-wrap:anywhere}
.x-tk.x-low{border-color:var(--o)}
.x-lv{position:relative;height:10px;border-radius:6px;background:var(--bg2);margin:8px 0}
.x-lv i{display:block;height:100%;border-radius:6px;transition:width .5s}
.x-lv u{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--head);opacity:.5}
.x-chip{display:inline-block;font-size:.72rem;padding:2px 8px;border-radius:20px;background:var(--bg2);color:var(--muted);white-space:nowrap}
.x-chip.ok{color:#2e8b4e}
.x-chip.bad,.x-red{color:#d8473a;font-weight:600}
.x-act{display:flex;gap:6px;flex-wrap:wrap}
.x-act .btn,.x-oc .btn,.x-cl .btn{padding:4px 10px;font-size:.78rem}
.x-map{width:100%;height:auto;display:block;margin-bottom:8px}
.x-map .x-mbg{fill:var(--bg2)}
.x-map .x-rd{stroke:var(--line);stroke-width:.6;fill:none;stroke-dasharray:2 1.5}
.x-map text{fill:var(--muted);font-size:3.6px;font-weight:600}
.x-map .x-dp{fill:var(--o)}
.x-map circle{stroke:var(--card);stroke-width:.8}
.x-map .x-pul{stroke:var(--o);stroke-width:1.4}
.x-pw{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.x-pw .dk-prog{flex-basis:100%}
.x-pw .dk-prog[hidden]{display:none}
.x-form h4,.x-tab h4{margin:0 0 6px;color:var(--head)}
.x-form input,.x-form select,.x-tab input,.x-tab select,.x-portal select{width:100%;max-width:100%;box-sizing:border-box;margin:2px 0 8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);font:inherit;font-size:.85rem}
.x-form input[type=checkbox],.x-tab input[type=checkbox]{width:auto;margin:0 6px 0 0}
.x-form label{display:block}
.x-r2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:end}
.x-r2 label{font-size:.78rem;color:var(--muted)}
.x-r2 .btn{margin-bottom:8px}
.x-ck{display:flex;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);font-size:.88rem}
.x-sms{background:var(--bg2);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.x-sms p{margin:0;padding:8px 10px;border-radius:12px;font-size:.82rem;max-width:88%;overflow-wrap:anywhere}
.x-sms .x-in{background:var(--card);align-self:flex-start}
.x-sms .x-out{background:var(--card);border:1px solid var(--o);align-self:flex-end;font-weight:600}
.x-comps{display:flex;gap:4px;margin:8px 0}
.x-cp{position:relative;height:64px;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--bg2);overflow:hidden;display:flex;align-items:flex-end}
.x-cp i{display:block;width:100%;opacity:.7;transition:height .5s}
.x-cp span{position:absolute;inset:4px;font-size:.62rem;line-height:1.25;color:var(--head);font-weight:600;overflow-wrap:anywhere}
.x-oc{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:6px 0;overflow-wrap:anywhere}
.x-oc.x-urg{border-color:var(--o)}
.x-oc p{margin:4px 0}
.x-run>.btn{margin-top:6px}
.x-seg{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.x-tab{border:6px solid var(--deep);border-radius:18px}
.x-tabh{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:.75rem;color:var(--muted);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.x-note{background:var(--bg2);padding:8px;border-radius:8px;font-size:.82rem;margin:6px 0}
.x-empty{text-align:center;padding:24px 8px;color:var(--muted)}
.x-scroll{overflow-x:auto;margin-bottom:6px}
.x-tb{width:100%;border-collapse:collapse;font-size:.8rem}
.x-tb td{padding:5px 3px;border-bottom:1px solid var(--line);vertical-align:middle}
.x-tb td:last-child{text-align:right}
.x-tb .x-sel{width:100%;max-width:150px;padding:4px;border:1px solid var(--line);border-radius:6px;background:var(--bg2);color:var(--text);font:inherit;font-size:.76rem}
.x-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}
.x-inv{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line);font-size:.82rem}
.x-ph{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;font-weight:600;color:var(--head);margin-bottom:6px}
.x-portal .x-ph select{width:auto;max-width:100%;margin:0}
.x-pt{padding:8px 0;border-bottom:1px solid var(--line)}
.x-pt .btn{padding:4px 10px;font-size:.76rem}
.x-sig{width:120px;height:36px;stroke:var(--head);fill:none;stroke-width:2}
.x-cl{list-style:none;padding:0;margin:0 0 8px}
.x-cl li{display:flex;flex-wrap:wrap;gap:4px 12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.82rem}
@media (max-width:560px){.x-inv{grid-template-columns:minmax(0,1fr) auto}.x-cp span{font-size:.55rem}.x-tab{border-width:4px;padding:10px}.x-tb .x-sel{max-width:118px}}
