.combo-list { list-style: none; padding: 0; margin: 0; }
.combo-list li {
  background: #f8f9fb; border: 1px solid #e3e7ec;
  border-radius: 6px; padding: 8px 10px;
  margin-bottom: 8px; line-height: 1.6; font-size: 13px;
}
.combo-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 8px;
}
.combo-head-actions {
  display: flex; align-items: center; gap: 6px;
  flex-shrink: 0;
}
.combo-list .combo-idx { color: #999; font-size: 11px; }
.combo-video-btn {
  background: #eef5fb; color: #2980b9; border: 1px solid #cfe0ee;
  border-radius: 4px; padding: 3px 8px; font-size: 11px;
  cursor: pointer; white-space: nowrap;
}
.combo-video-btn:hover { background: #dcecf8; }
.combo-video-btn.has-video {
  background: #e8f6ee; color: #1e8449; border-color: #bfe3cc;
}
.combo-video-btn.has-video:hover { background: #d7efdf; }
.combo-desc-btn {
  background: #f4f6f8; color: #555; border: 1px solid #dfe4e9;
  border-radius: 4px; padding: 3px 8px; font-size: 11px;
  cursor: pointer; white-space: nowrap;
}
.combo-desc-btn:hover { background: #e9edf1; }
.combo-desc-btn.has-desc {
  background: #fdf3e7; color: #b9770e; border-color: #f0d8b5;
}
.combo-desc-btn.has-desc:hover { background: #faead2; }
.combo-desc {
  margin-top: 6px; padding: 6px 8px; background: #fbfbfc;
  border-left: 3px solid #dfe4e9; border-radius: 4px;
  font-size: 12px; color: #555; white-space: pre-wrap; word-break: break-word;
}

.combo-prep {
  display: inline-block; padding: 0 6px; border: 1px dashed #52b788;
  border-radius: 10px; background: #f4fbf7; color: #1e6b47; font-size: 11px;
}
.combo-prep .mention { font-size: 11px; }
.combo-list .mov.focus {
  background: #fff3e0; border-radius: 3px; padding: 0 3px;
  box-shadow: inset 0 -2px 0 #e67e22;
}
.combo-focus-bar {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  justify-content: space-between;
  padding: 8px 10px; margin-bottom: 8px;
  background: #fff8f0; border: 1px solid #f0c9a0; border-radius: 6px;
  font-size: 13px;
}
.combo-focus-name { font-weight: 600; }
.combo-focus-actions { display: flex; gap: 6px; }
.combo-focus-actions button {
  background: #fff; color: #555; border: 1px solid #dfe4e9;
  border-radius: 4px; padding: 3px 8px; font-size: 12px; cursor: pointer;
}
.combo-focus-actions button:hover { background: #f4f6f8; }
.combo-list .mov { color: #2c3e50; font-weight: 500; }
.combo-list .beat { color: #27ae60; font-size: 12px; }
.combo-list .arrow { color: #b0b8c1; margin: 0 4px; }
.combo-list .square-mark { color: #27ae60; font-size: 11px; margin-left: 4px; }

.empty-hint { color: #999; font-style: italic; padding: 8px 0; }
/* Папки комбинаций: вложенные блоки с отступом слева, шапка со
   сворачиванием, счётчиком и действиями. */
.combo-toolbar { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.combo-add-folder,
.combo-folder-btn {
  background: #f4f6f8; color: #555; border: 1px solid #dfe4e9;
  border-radius: 4px; padding: 3px 8px; font-size: 11px;
  cursor: pointer; white-space: nowrap;
}
.combo-add-folder { font-size: 12px; padding: 5px 10px; }
.combo-add-folder:hover,
.combo-folder-btn:hover { background: #e9edf1; }
.combo-folder-btn.has-folder { background: #eef3fb; color: #2c5aa0; border-color: #cdd9ef; }
.combo-folder {
  border: 1px solid #e3e7ec; border-radius: 6px;
  background: #fff; margin-bottom: 8px;
}
.combo-folder .combo-folder { margin: 6px 0 6px 0; }
.combo-folder-head {
  display: flex; align-items: center; gap: 6px;
  padding: 6px 8px; background: #f7f9fb; border-radius: 6px 6px 0 0;
}
.combo-folder-toggle {
  background: none; border: none; cursor: pointer;
  color: #7f8c8d; font-size: 12px; width: 18px; padding: 0;
}
.combo-folder-name {
  flex: 1; min-width: 0; font-weight: 600; font-size: 13px;
  color: #2c3e50; cursor: pointer; overflow-wrap: anywhere;
}
.combo-folder-name-input {
  flex: 1; min-width: 0; padding: 4px 6px; font-size: 13px;
  border: 1px solid #3498db; border-radius: 4px;
}
.combo-folder-count {
  font-size: 11px; color: #7f8c8d; background: #eef1f4;
  padding: 1px 6px; border-radius: 8px;
}
.combo-folder-actions { display: flex; gap: 0; }
.combo-folder-actions .icon-btn { min-width: 26px; padding: 3px 5px; font-size: 13px; }
.combo-folder-body { padding: 4px 8px 6px 18px; }
.combo-folder-body > .combo-list { margin: 0; }
.combo-folder-empty { font-size: 12px; color: #95a5a6; padding: 4px 0; }
.combo-folder-loose { border-style: dashed; }
.combo-folder-loose .combo-folder-name { font-weight: 500; color: #7f8c8d; }

.combo-folders-modal { width: 420px; max-height: 85vh; }
.combo-folders-list {
  flex: 1 1 auto; min-height: 60px; overflow-y: auto;
  border: 1px solid #eef1f4; border-radius: 6px; padding: 4px 0;
}
.combo-folders-row {
  display: flex; align-items: center; gap: 8px;
  padding: 6px 8px; font-size: 13px; cursor: pointer;
}
.combo-folders-row:hover { background: #f0f5fb; }
.combo-folders-new { display: flex; gap: 6px; margin-top: 8px; }
.combo-folders-new input {
  flex: 1; min-width: 0; padding: 7px; border: 1px solid #ccc;
  border-radius: 4px; font-size: 14px;
}
