.content-editor {
  .content-editor-layout {
    display: flex;
    gap: @padding * @scalePx;
    height: calc(100vh - 220px);
    min-height: 500px;
  }

  .content-sidebar {
    width: 250px;
    min-width: 200px;
    border: 1px solid @colorBorderSecondary;
    border-radius: @borderRadius * @scalePx;
    display: flex;
    flex-direction: column;
    overflow: hidden;

    .sidebar-header {
      padding: @paddingSM * @scalePx;
      border-bottom: 1px solid @colorBorderSecondary;

      h4 {
        margin: 0;
      }
    }

    .sidebar-list {
      overflow-y: auto;
      flex: 1;

      .sidebar-item {
        padding: @paddingXS * @scalePx @paddingSM * @scalePx;
        cursor: pointer;
        border-bottom: 1px solid @colorBorderSecondary;
        font-size: @fontSizeSM * @scalePx;
        word-break: break-all;
        transition: background-color @motionDurationFast;

        &:hover {
          background-color: @colorBgElevated;
        }

        &.active {
          background-color: @colorPrimary;
          color: @colorTextLightSolid;
        }
      }
    }
  }

  .content-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;

    .content-empty-state {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      height: 100%;

      h4 {
        margin-top: @margin * @scalePx;
      }

      p {
        color: @colorTextSecondary;
      }
    }
  }

  .editor-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: @marginXS * @scalePx;
    flex-wrap: wrap;
    gap: @sizeXS * @scalePx;

    .file-tabs {
      display: flex;
      gap: @sizeXXS * @scalePx;
      flex-wrap: wrap;
    }

    .editor-actions {
      display: flex;
      align-items: center;
      gap: @sizeXS * @scalePx;
    }
  }

  .editor-container {
    flex: 1;
    border: 1px solid @colorBorderSecondary;
    border-radius: @borderRadius * @scalePx;
    overflow: hidden;
  }
}
