/**
 * Custom Columns - 親ブロック（カラムコンテナ）専用
 */

/* ===========================
   エディタ内の視覚的なガイド
   =========================== */
   .editor-styles-wrapper .refoma-row {
    width: 100%;
    outline: 1px dashed #ccc;
    padding: 8px;
    min-height: 50px;
  }
  
  /* プレーンモード時は枠線を薄く */
  .editor-styles-wrapper .refoma-row[data-layout="plain"] {
    outline-color: #e0e0e0;
  }
  
  /* ===========================
     基本スタイル（フロントエンド）
     =========================== */
  .refoma-row {
    display: flex;
    width: 100%;
    gap: var(--gap-pc, 0);
  }
  
  /* ===========================
     レイアウトモード
     =========================== */
  .refoma-row[data-layout="equal"] .refoma-col {
    flex: 1;
    min-width: 0;
  }
  
  .refoma-row[data-cols="2"] .refoma-col {
    flex-basis: calc((100% - var(--gap-pc, 0)) / 2);
  }
  
  .refoma-row[data-cols="3"] .refoma-col {
    flex-basis: calc((100% - var(--gap-pc, 0) * 2) / 3);
  }
  
  .refoma-row[data-cols="4"] .refoma-col {
    flex-basis: calc((100% - var(--gap-pc, 0) * 3) / 4);
  }
  
  .refoma-row[data-cols="5"] .refoma-col {
    flex-basis: calc((100% - var(--gap-pc, 0) * 4) / 5);
  }
  
  .refoma-row[data-cols="6"] .refoma-col {
    flex-basis: calc((100% - var(--gap-pc, 0) * 5) / 6);
  }
  
  /* ===========================
     方向制御
     =========================== */
  .refoma-row[data-dir-pc="row"] {
    flex-direction: row;
  }
  
  .refoma-row[data-dir-pc="column"] {
    flex-direction: column;
  }
  
  /* ===========================
     整列制御
     =========================== */
  .refoma-row[data-justify="start"] {
    justify-content: flex-start;
  }
  
  .refoma-row[data-justify="center"] {
    justify-content: center;
  }
  
  .refoma-row[data-justify="end"] {
    justify-content: flex-end;
  }
  
  .refoma-row[data-justify="between"] {
    justify-content: space-between;
  }
  
  .refoma-row[data-justify="around"] {
    justify-content: space-around;
  }
  
  .refoma-row[data-justify="evenly"] {
    justify-content: space-evenly;
  }
  
  .refoma-row[data-align="stretch"] {
    align-items: stretch;
  }
  
  .refoma-row[data-align="start"] {
    align-items: flex-start;
  }
  
  .refoma-row[data-align="center"] {
    align-items: center;
  }
  
  .refoma-row[data-align="end"] {
    align-items: flex-end;
  }
  
  .refoma-row[data-align="baseline"] {
    align-items: baseline;
  }
  
  /* ===========================
     レスポンシブ（SP）
     =========================== */
  @media (max-width: 767px) {
    .refoma-row {
      gap: var(--gap-sp, var(--gap-pc, 0));
    }
  
    .refoma-row[data-dir-sp="row"] {
      flex-direction: row;
    }
  
    .refoma-row[data-dir-sp="column"] {
      flex-direction: column;
    }
  
    .refoma-row[data-cols="2"] .refoma-col {
      flex-basis: calc((100% - var(--gap-sp, var(--gap-pc, 0))) / 2);
    }
  
    .refoma-row[data-cols="3"] .refoma-col {
      flex-basis: calc((100% - var(--gap-sp, var(--gap-pc, 0)) * 2) / 3);
    }
  
    .refoma-row[data-cols="4"] .refoma-col {
      flex-basis: calc((100% - var(--gap-sp, var(--gap-pc, 0)) * 3) / 4);
    }
  
    .refoma-row[data-cols="5"] .refoma-col {
      flex-basis: calc((100% - var(--gap-sp, var(--gap-pc, 0)) * 4) / 5);
    }
  
    .refoma-row[data-cols="6"] .refoma-col {
      flex-basis: calc((100% - var(--gap-sp, var(--gap-pc, 0)) * 5) / 6);
    }
  }