.x-box{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px;margin:0 0 14px;min-width:0}
.x-box h4{margin:4px 0 8px;color:var(--head);font-size:15px}
.x-box input,.x-box select,.x-box textarea{width:100%;box-sizing:border-box;font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);margin:0 0 8px;min-width:0}
.x-box textarea{min-height:90px;resize:vertical}
.x-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.x-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.x-grow{flex:1;min-width:0;overflow-wrap:anywhere}
.x-map{width:100%;height:auto;display:block;background:var(--bg2);border:1px solid var(--line);border-radius:12px;margin:0 0 12px}
.x-map polyline{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;opacity:.85}
.x-map circle{fill:var(--card);stroke:var(--muted);stroke-width:1.5}
.x-map text{fill:var(--text);font-size:8px}
.x-map .x-em circle{fill:#d93838;stroke:#d93838}
.x-map .x-cl{fill:var(--o)}
.x-runs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.x-vet{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--c);border-radius:12px;padding:12px;min-width:0}
.x-vh b{display:block;color:var(--head)}
.x-vh span{font-size:12px;color:var(--muted)}
.x-vet ol{list-style:none;margin:10px 0 0;padding:0}
.x-vet li{display:flex;gap:8px;align-items:flex-start;padding:8px 4px;border-top:1px solid var(--line);font-size:13px;overflow-wrap:anywhere}
.x-vet li>div{flex:1;min-width:0}
.x-vet li em{font-style:normal;font-weight:600;color:var(--o);min-width:52px;font-size:12px}
.x-vet li small{display:block;color:var(--muted);font-size:11.5px}
.x-vet li .btn{padding:4px 10px;font-size:12px}
.x-done{opacity:.55}
.x-emr{background:rgba(217,56,56,.1);border-radius:8px}
.x-flag{color:#d93838!important;font-weight:600}
.x-tick{color:var(--o);font-weight:700}
.x-sms{background:var(--bg2);border:1px solid var(--line);border-radius:14px 14px 14px 4px;padding:10px 12px;font-size:13px;margin:10px 0;overflow-wrap:anywhere;color:var(--text)}
.x-sms small{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}
.x-hl{display:grid;gap:6px}
.x-hl button{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;font:inherit;font-size:13px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);cursor:pointer;min-width:0}
.x-hl button span{min-width:0;overflow-wrap:anywhere}
.x-hl button.x-on{border-color:var(--o);box-shadow:0 0 0 1px var(--o)}
.x-hl small{color:var(--muted)}
.x-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.x-chip{font-size:12px;padding:4px 10px;border-radius:99px;background:var(--bg2);border:1px solid var(--line);color:var(--text)}
.x-chip b{color:var(--head)}
.x-vx{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 10px}
.x-vx div{background:var(--bg2);border-radius:8px;padding:6px 8px;font-size:12px}
.x-vx b{display:block;color:var(--head)}
.x-late{color:#d93838;font-weight:600}
.x-due{color:var(--o);font-weight:600}
.x-ok{color:var(--muted)}
.x-hist{margin:0 0 10px;padding-left:18px;font-size:12.5px;color:var(--text)}
.x-hist li{margin:0 0 4px;overflow-wrap:anywhere}
.x-yard{border-top:1px solid var(--line);padding:10px 0;font-size:13px;overflow-wrap:anywhere}
.x-yard b{color:var(--head)}
.x-yard .btn{margin-top:6px;padding:4px 10px;font-size:12px}
.x-sig{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;font-size:12px;padding:6px 10px;border-radius:8px;background:var(--bg2);margin:0 0 10px}
.x-sig .btn{padding:3px 10px;font-size:12px}
.x-ph{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:0 0 10px}
.x-ph i{width:46px;height:36px;border-radius:6px;background:linear-gradient(135deg,var(--o),var(--bg2));display:block}
.x-ph .btn{padding:4px 10px;font-size:12px}
.x-items{display:grid;gap:6px;margin:0 0 10px}
.x-items>div{display:flex;align-items:center;gap:8px;font-size:13px}
.x-items>div>span:first-child{flex:1;min-width:0;overflow-wrap:anywhere}
.x-items small{color:var(--muted)}
.x-qty{display:flex;align-items:center;gap:6px;flex:none}
.x-qty b{min-width:16px;text-align:center}
.x-qty button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:var(--bg2);color:var(--text);font:inherit;cursor:pointer;padding:0}
.x-qty button:disabled{opacity:.4;cursor:default}
.x-scroll{overflow-x:auto;max-width:100%}
.x-lines{width:100%;font-size:13px;border-collapse:collapse;margin:6px 0 10px}
.x-lines td{padding:5px 0;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.x-lines td+td{text-align:right;white-space:nowrap;padding-left:8px}
.x-st{font-size:11px;padding:2px 8px;border-radius:99px;background:var(--bg2);white-space:nowrap;color:var(--text)}
.x-acc{list-style:none;margin:0 0 12px;padding:0}
.x-acc li{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:13px}
.x-acc .x-lnk{flex:1;min-width:140px;text-align:left;background:none;border:0;color:var(--head);font:inherit;font-weight:600;cursor:pointer;padding:0;overflow-wrap:anywhere}
.x-acc .btn{padding:4px 10px;font-size:12px}
@media (max-width:560px){.x-runs,.x-vx,.x-g2{grid-template-columns:minmax(0,1fr)}.x-map text{font-size:9px}}