.x-units{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.x-u{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:9px 10px;border:2px solid var(--line);border-left:6px solid var(--c);border-radius:12px;background:var(--card);color:var(--text);font:inherit;cursor:pointer;min-width:0}
.x-u b{color:var(--head);font-size:.88rem;overflow-wrap:anywhere}
.x-u small{color:var(--muted);font-size:.74rem}
.x-u.x-on{border-color:var(--o);border-left-color:var(--c)}
.x-u:disabled{opacity:.45;cursor:not-allowed}
.x-form{display:grid;gap:10px;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:14px;min-width:0}
.x-form label,.x-sig{display:grid;gap:4px;font-size:.8rem;color:var(--muted);min-width:0}
.x-form input,.x-form select,.x-sig input,.x-inl select,.x-po{font:inherit;font-size:.88rem;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--text);min-width:0;width:100%;box-sizing:border-box}
.x-r2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.x-h4{margin:4px 0 0;font-size:.9rem;color:var(--head)}
.x-chips{display:flex;flex-wrap:wrap;gap:6px}
.x-form .x-chips label{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:99px;background:var(--card);color:var(--text);font-size:.78rem;cursor:pointer}
.x-form .x-chips input{width:auto;margin:0}
.x-q{border:1px dashed var(--line);border-radius:12px;padding:12px;background:var(--card);margin-bottom:12px;min-width:0}
.x-q p{display:flex;justify-content:space-between;gap:10px;margin:3px 0;font-size:.84rem;color:var(--text);overflow-wrap:anywhere}
.x-q .x-tot{font-weight:700;color:var(--head);border-top:1px solid var(--line);padding-top:6px}
.x-q .x-tot:first-child{border-top:0;padding-top:0}
.x-warn{font-size:.8rem;padding:6px 10px;border-radius:9px;background:var(--bg2);border-left:4px solid var(--o);margin:4px 0;color:var(--text);overflow-wrap:anywhere}
.x-warn.x-ok{border-left-color:var(--muted)}
.x-cal{overflow-x:auto;margin-bottom:8px}
.x-cal table{width:100%;border-collapse:collapse;font-size:.76rem}
.x-cal th,.x-cal td{padding:5px;border-bottom:1px solid var(--line);text-align:left;color:var(--text);vertical-align:middle}
.x-cal th{color:var(--head);font-weight:600}
.x-cal td.x-bk{color:var(--head);font-weight:600;border-left:4px solid var(--c)}
.x-cal td.x-rp{color:var(--muted);font-style:italic}
.x-cal button{font:inherit;font-size:.74rem;border:1px dashed var(--line);background:none;color:var(--muted);border-radius:6px;padding:2px 8px;cursor:pointer}
.x-cal button:hover{border-color:var(--o);color:var(--o)}
.x-phone{max-width:320px;margin:0 auto 12px;border:7px solid var(--deep);border-radius:26px;background:var(--card);padding:12px;box-sizing:border-box;overflow-wrap:anywhere}
.x-phtop{font-size:.72rem;color:var(--muted);text-align:center;margin-bottom:8px}
.x-phone .btn{width:100%;margin-top:6px}
.x-phone .x-pics .btn{width:auto;flex:1 1 140px}
.x-sms{background:var(--bg2);border-radius:14px 14px 14px 4px;padding:10px 12px;font-size:.8rem;color:var(--text);overflow-wrap:anywhere;margin:6px 0;border:1px solid var(--line)}
.x-wl{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;padding:6px 8px;border-left:4px solid var(--c);background:var(--bg2);border-radius:6px;margin:4px 0;color:var(--text)}
.x-job{display:grid;gap:4px;border-left:5px solid var(--c);padding:8px 10px;background:var(--bg2);border-radius:10px;margin-bottom:8px;font-size:.8rem;color:var(--text)}
.x-job b{color:var(--head)}
.x-chk label{display:flex;gap:8px;align-items:flex-start;font-size:.78rem;padding:4px 0;color:var(--text);cursor:pointer}
.x-chk input{margin-top:3px;flex:none}
.x-pics{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0}
.x-pics svg{border-radius:6px;flex:none}
.x-sig{margin-top:6px}
.x-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.x-top .dk-prog{flex:1 1 100%}
.x-inl{display:flex;gap:8px;align-items:center;font-size:.85rem;color:var(--muted)}
.x-inl select{width:auto}
.x-drv{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card);margin-bottom:12px;min-width:0}
.x-drv h4{margin:0 0 6px;color:var(--head);font-size:.95rem;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.x-drv p{color:var(--text);overflow-wrap:anywhere}
.x-stop{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 4px;border-top:1px solid var(--line);font-size:.8rem;color:var(--text);border-radius:6px}
.x-stop b{color:var(--head)}
.x-stop .x-t{font-weight:700;color:var(--o)}
.x-stop.x-cur{background:var(--bg2)}
.x-late{color:var(--o);font-weight:600}
.x-list{list-style:none;padding:0;margin:6px 0;font-size:.8rem;color:var(--text)}
.x-list li{padding:6px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.x-list .btn{font-size:.75rem;padding:4px 10px;margin-left:6px}
.x-badge{display:inline-block;font-size:.7rem;font-weight:500;padding:2px 8px;border-radius:99px;background:var(--bg2);color:var(--muted);border:1px solid var(--line);white-space:nowrap}
.x-badge.x-hot{color:var(--o);border-color:var(--o)}
.x-ugrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:14px}
.x-uc{border:1px solid var(--line);border-left:6px solid var(--c);border-radius:14px;padding:12px;background:var(--card);min-width:0;color:var(--text)}
.x-uc p{margin:6px 0}
.x-uh{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.x-uh b{color:var(--head)}
.x-btns{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.x-btns .btn{font-size:.8rem;padding:6px 12px}
.x-btns .x-po{width:auto;flex:1 1 120px}
.x-log{font-size:.74rem;color:var(--muted);margin:8px 0 0;padding-left:16px;overflow-wrap:anywhere}
.x-docs{display:flex;flex-wrap:wrap;gap:6px}
.x-docs span{font-size:.75rem;padding:4px 10px;border-radius:8px;background:var(--bg2);color:var(--text);border:1px solid var(--line)}
@media (max-width:560px){
.x-r2{grid-template-columns:minmax(0,1fr)}
.x-units{grid-template-columns:repeat(2,minmax(0,1fr))}
.x-stop{grid-template-columns:52px minmax(0,1fr)}
.x-stop .btn{grid-column:1/-1}
.x-ugrid{grid-template-columns:minmax(0,1fr)}
.x-phone{border-width:5px}
}