.cats-panel{position:fixed;left:16px;top:16px;width:280px;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.08);z-index:1000}
.cp-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;
  font-weight:600; background:#f3f4f6; border-bottom:1px solid #e5e7eb; border-top-left-radius:12px; border-top-right-radius:12px;
  cursor:move; user-select:none}
.cp-title{display:flex;align-items:center;gap:8px}
.cp-drag-hint{font-size:16px;line-height:1;opacity:.6}
.cp-actions button{background:transparent;border:0;font-size:16px;cursor:pointer}
.cp-actions .cp-min{width:24px;height:24px;border-radius:6px}
.cp-actions .cp-min:hover{background:#e5e7eb}
.cp-body{padding:8px 12px;max-height:60vh;overflow:auto}
.cats-grid{display:flex;flex-direction:column;gap:8px}
.cat-btn{width:100%;text-align:left;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb;cursor:pointer}
.cat-btn:hover{background:#f3f4f6}

/* затемнение фона при модалке */
.cats-overlay{position:fixed;inset:0;background:rgba(0,0,0,.15);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:.15s;z-index:995}
.cats-overlay.open{opacity:1;pointer-events:auto}
.cats-modal-open{overflow:hidden}

/* модалка оборудования */
.cats-equip-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:720px;max-width:calc(100vw - 48px);background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.15);z-index:1001;display:none}
.cats-equip-modal.open{display:block}
.cem-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #eee;cursor:move;user-select:none}
.cem-title{font-weight:600}
.cem-close{border:0;background:transparent;font-size:20px;cursor:pointer}
.cem-search{width:calc(100% - 24px);margin:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px}
.cem-list{max-height:60vh;overflow:auto;padding:0 12px 12px}
.cem-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-top:8px;border:1px solid #e5e7eb;border-radius:10px;background:#fafafa}
.cem-name{font-weight:500}
.cem-meta{display:flex;gap:12px;color:#6b7280;font-size:13px}
.cem-right{display:flex;align-items:center;gap:8px}
