/*
 Theme Name: Medio System Child
 Template: twentytwentyone
 Description: Medio 業務システム用の子テーマ
 Author: Medio
 Version: 1.0.1
*/

/* ここにカスタムCSSを書いていく */

/* Wサイン業務ログイン */
.wsign-login__wrapper {
  max-width: 480px;
  margin: 40px auto;
  padding: 24px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.wsign-login__title {
  font-size: 1.4rem;
  margin-bottom: 16px;
  text-align: center;
}
.wsign-login__error {
  margin-bottom: 16px;
  padding: 8px 12px;
  border-radius: 4px;
  background: #ffecec;
  color: #c00;
  font-size: 0.9rem;
}
.wsign-login__field {
  margin-bottom: 12px;
}
.wsign-login__field label {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 4px;
}
.wsign-login__field input[type="text"],
.wsign-login__field input[type="password"] {
  width: 100%;
  padding: 8px;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.wsign-login__actions {
  text-align: center;
  margin-top: 16px;
}
.wsign-login__button {
  padding: 8px 24px;
  border-radius: 4px;
  border: none;
  background: #0073aa;
  color: #fff;
  cursor: pointer;
}
.wsign-login__button:hover {
  background: #005f8d;
}
.wsign-login__note {
  margin-top: 16px;
  font-size: 0.8rem;
  color: #666;
  text-align: center;
}

/* Wサイン業務ダッシュボード */
.wsign-dashboard__wrapper {
  max-width: 960px;
  margin: 40px auto;
  padding: 16px;
}
.wsign-dashboard__title {
  font-size: 1.6rem;
  margin-bottom: 8px;
}
.wsign-dashboard__welcome {
  margin-bottom: 24px;
}
.wsign-dashboard__section-title {
  font-size: 1.2rem;
  margin-bottom: 8px;
}

/* Wサイン業務ダッシュボード */
.wsign-dashboard__wrapper {
  max-width: 1100px;
  margin: 40px auto;
  padding: 16px;
}
.wsign-dashboard__title {
  font-size: 1.6rem;
  margin-bottom: 4px;
}
.wsign-dashboard__welcome {
  margin-bottom: 16px;
  color: #555;
}
.wsign-dashboard__topbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}
.wsign-dashboard__search input[type="text"] {
  padding: 6px 8px;
  border-radius: 4px;
  border: 1px solid #ccc;
  min-width: 220px;
}
.wsign-dashboard__search button {
  padding: 6px 12px;
  border-radius: 4px;
  border: none;
  background: #0073aa;
  color: #fff;
  cursor: pointer;
}
.wsign-dashboard__search button:hover {
  background: #005f8d;
}
.wsign-dashboard__actions {
  margin-left: auto;
}
.wsign-dashboard__button {
  display: inline-block;
  padding: 8px 16px;
  border-radius: 4px;
  text-decoration: none;
  font-size: 0.9rem;
}
.wsign-dashboard__button--primary {
  background: #008a20;
  color: #fff;
}
.wsign-dashboard__button--primary:hover {
  background: #006b19;
}
.wsign-dashboard__summary {
  margin-bottom: 12px;
  font-size: 0.9rem;
  color: #666;
}

.wsign-dashboard__cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
  gap: 16px;
  margin-top: 8px;
}
.wsign-card {
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.06);
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.wsign-card__header {
  border-bottom: 1px solid #eee;
  padding-bottom: 4px;
}
.wsign-card__code {
  font-size: 0.85rem;
  font-weight: bold;
  color: #0073aa;
}
.wsign-card__title {
  font-size: 1.0rem;
  margin: 2px 0 0;
}
.wsign-card__meta {
  display: grid;
  gap: 4px;
  margin: 0;
}
.wsign-card__meta div {
  display: grid;
  grid-template-columns: 80px 1fr;
  font-size: 0.85rem;
}
.wsign-card__meta dt {
  font-weight: bold;
  color: #555;
}
.wsign-card__meta dd {
  margin: 0;
}
.wsign-card__footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}
.wsign-card__btn {
  display: inline-block;
  padding: 4px 10px;
  font-size: 0.85rem;
  border-radius: 4px;
  text-decoration: none;
  background: #f3f4f6;
  color: #333;
}
.wsign-card__btn:hover {
  background: #e2e3e7;
}
.wsign-card__note {
  font-size: 0.8rem;
  color: #999;
}

/* スマホ向け調整 */
@media (max-width: 640px) {
  .wsign-dashboard__topbar {
    flex-direction: column;
    align-items: stretch;
  }
  .wsign-dashboard__actions {
    margin-left: 0;
  }
}

/* Wサイン 店舗編集 */
.wsign-edit__wrapper {
  max-width: 800px;
  margin: 40px auto;
  padding: 16px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}
.wsign-edit__title {
  font-size: 1.4rem;
  margin-bottom: 8px;
}
.wsign-edit__note {
  font-size: 0.9rem;
  margin-bottom: 16px;
  color: #555;
}
.wsign-edit__form {
  margin-top: 8px;
}
.wsign-edit__back {
  margin-top: 16px;
  font-size: 0.9rem;
}

/* Wサイン 店舗編集：自動生成ボタン周り */
.wsign-edit__tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.wsign-edit__btn {
  padding: 6px 12px;
  border-radius: 4px;
  border: none;
  background: #f3f4f6;
  cursor: pointer;
  font-size: 0.9rem;
}

.wsign-edit__btn:hover {
  background: #e2e3e7;
}

.wsign-edit__btn:disabled {
  opacity: 0.6;
  cursor: default;
}

.wsign-edit__pdf-status {
  margin-left: 8px;
  font-size: 0.85rem;
  color: #555;
}

.wsign-card__pdf-status {
  margin-left: auto;
  margin-top: 4px;
  font-size: 0.8rem;
  color: #555;
  display: block;
}

/* 一覧ページ共通レイアウト */
.wsign-wrapper {
  max-width: 960px;
  margin: 40px auto;
  padding: 0 16px;
}

.wsign-title {
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.wsign-intro {
  font-size: 0.9rem;
  color: #555;
  margin-bottom: 16px;
}

.wsign-actions {
  margin-bottom: 16px;
  text-align: right;
}

/* ボタン共通 */
.wsign-button {
  display: inline-block;
  padding: 6px 16px;
  border-radius: 4px;
  background: #0073aa;
  color: #fff;
  text-decoration: none;
  font-size: 0.9rem;
}
.wsign-button:hover {
  background: #005f8d;
}
.wsign-button--small {
  padding: 4px 10px;
  font-size: 0.85rem;
}

/* テーブル */
.wsign-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

.wsign-table th,
.wsign-table td {
  border: 1px solid #ddd;
  padding: 6px 8px;
}

.wsign-table th {
  background: #f5f5f5;
  text-align: left;
  white-space: nowrap;
}

/* ページネーション */
.wsign-pagination {
  margin-top: 16px;
}
.wsign-pagination ul {
  list-style: none;
  padding: 0;
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.wsign-pagination li a,
.wsign-pagination li span {
  display: block;
  padding: 4px 8px;
  border-radius: 4px;
  border: 1px solid #ddd;
  text-decoration: none;
  font-size: 0.85rem;
}
.wsign-pagination li span.current {
  background: #0073aa;
  color: #fff;
  border-color: #0073aa;
}

.wsign-edit__back {
  margin-top: 24px;
  text-align: right;
  font-size: 0.85rem;
}
.wsign-edit__back a {
  text-decoration: none;
}
.wsign-edit__back a:hover {
  text-decoration: underline;
}

/* Wサイン ダッシュボード ナビ */
.wsign-dashboard__nav {
  margin: 24px 0 32px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.wsign-dashboard__btn {
  display: inline-block;
  padding: 8px 20px;
  border-radius: 4px;
  border: 1px solid #0073aa;
  background: #ffffff;
  color: #0073aa;
  font-size: 0.95rem;
  text-decoration: none;
}

.wsign-dashboard__btn:hover {
  background: #f0f8ff;
}

.wsign-dashboard__btn--primary {
  background: #0073aa;
  color: #ffffff;
}

.wsign-dashboard__btn--primary:hover {
  background: #005f8d;
}

/* Wサイン参加店 一覧ヘッダー */
.wsign-list__wrapper {
  max-width: 1000px;
  margin: 40px auto;
  padding: 0 16px;
}

.wsign-list__topbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

.wsign-list__titles {
  flex: 1 1 auto;
}

.wsign-list__title {
  font-size: 1.4rem;
  margin: 0 0 4px;
}

.wsign-list__desc {
  margin: 0;
  font-size: 0.9rem;
  color: #666;
}

.wsign-list__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

/* スマホで縦並びにする */
@media (max-width: 768px) {
  .wsign-list__topbar {
    flex-direction: column;
    align-items: stretch;
  }

  .wsign-list__nav {
    justify-content: flex-start;
  }
}

/* ==========================
   /master-hub-menu/ 専用（page-id:150）
   “ページが細い”原因（entry-content配下のmax-width制限）を解除して
   テーブルを読みやすくする差し替え版
   ========================== */

/* 1) タイトル類（必要に応じて） */
body.page-id-150 .entry-header {
  display: none;
}

/* ヘッダーの Medio業務システム を消す場合 */
body.page-id-150 .site-title,
body.page-id-150 .site-description {
  display: none;
}
body.page-id-150 .site-header {
  padding-top: 12px;
  padding-bottom: 12px;
}

/* 2) まず“親の幅制限”を外す（テーマ側のmax-widthが残っていると効かない） */
body.page-id-150 .site-content,
body.page-id-150 #content,
body.page-id-150 #primary,
body.page-id-150 #main,
body.page-id-150 .content-area,
body.page-id-150 .content,
body.page-id-150 .content-inner,
body.page-id-150 .entry-content {
  max-width: none !important;
  width: 100% !important;
}

/* 3) 次に“本文配下の各要素”にかかっている max-width を解除（ここが本丸） */
body.page-id-150 .entry-content > * {
  max-width: none !important;
}

/* 4) 読みやすい行幅の「上限」をこちらで再定義（広げすぎると逆に読みにくいので上限を設ける） */
body.page-id-150 .wsign-master-page {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  text-align: left; /* 本文は左寄せの方が運用文書は読みやすい */
}

/* 見出しは必要なら中央寄せ */
body.page-id-150 .wsign-master-page h1 {
  text-align: center;
  font-size: 1.9rem;
  line-height: 1.25;
  margin: 0 0 16px;
}
body.page-id-150 .wsign-master-page h2 {
  font-size: 1.35rem;
  margin: 30px 0 10px;
}
body.page-id-150 .wsign-master-page h3 {
  font-size: 1.1rem;
  margin: 18px 0 8px;
}
body.page-id-150 .wsign-master-page hr {
  margin: 22px 0;
}

/* 5) テーブル（視認性を上げる） */
body.page-id-150 table.wsign-field-map {
  width: 100% !important;
  max-width: none !important;
  border-collapse: collapse;
  table-layout: fixed; /* 列幅設計を効かせる */
  font-size: 14px;
  line-height: 1.45;
}

/* 罫線・余白・改行ルール */
body.page-id-150 table.wsign-field-map th,
body.page-id-150 table.wsign-field-map td {
  border: 1px solid #e2e2e2;
  padding: 10px 10px;
  vertical-align: top;

  /* “1文字ずつ縦に割れる”のを抑止 */
  word-break: normal;
  overflow-wrap: break-word;
}

/* ヘッダー */
body.page-id-150 table.wsign-field-map th {
  background: #f5f5f5;
  font-weight: 600;
  white-space: nowrap; /* ヘッダは基本1行 */
}

/* 交互色で追いやすく */
body.page-id-150 table.wsign-field-map tbody tr:nth-child(even) {
  background: #fafafa;
}

/* 列幅（7列想定） */
body.page-id-150 table.wsign-field-map th:nth-child(1),
body.page-id-150 table.wsign-field-map td:nth-child(1) { width: 18%; }
body.page-id-150 table.wsign-field-map th:nth-child(2),
body.page-id-150 table.wsign-field-map td:nth-child(2) { width: 10%; }
body.page-id-150 table.wsign-field-map th:nth-child(3),
body.page-id-150 table.wsign-field-map td:nth-child(3) { width: 8%; }
body.page-id-150 table.wsign-field-map th:nth-child(4),
body.page-id-150 table.wsign-field-map td:nth-child(4) { width: 9%; }
body.page-id-150 table.wsign-field-map th:nth-child(5),
body.page-id-150 table.wsign-field-map td:nth-child(5) { width: 8%; }
body.page-id-150 table.wsign-field-map th:nth-child(6),
body.page-id-150 table.wsign-field-map td:nth-child(6) { width: 12%; }
body.page-id-150 table.wsign-field-map th:nth-child(7),
body.page-id-150 table.wsign-field-map td:nth-child(7) { width: 35%; }

/* ○や方向など、短い列は中央寄せして視線誘導 */
body.page-id-150 table.wsign-field-map td:nth-child(3),
body.page-id-150 table.wsign-field-map td:nth-child(4),
body.page-id-150 table.wsign-field-map td:nth-child(5),
body.page-id-150 table.wsign-field-map td:nth-child(6) {
  text-align: center;
  white-space: nowrap;
}

/* フィールド名は “コードっぽく” 見せて読み取りやすく */
body.page-id-150 table.wsign-field-map td:nth-child(1) {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
}

/* 6) 画面が狭い時は横スクロールへ（PCの見た目を壊さない方式） */
@media (max-width: 1100px) {
  body.page-id-150 .wsign-master-page {
    padding-left: 12px;
    padding-right: 12px;
  }

  body.page-id-150 table.wsign-field-map {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;

    /* “潰れて縦割れ”を防ぐ最低幅 */
    min-width: 980px;
  }
}

/* ==========================
   /wsign-export-csv/ 専用
   Template: page-wsign-export-csv2.php
   body: page-id-75 / page-template-page-wsign-export-csv2
   ========================== */

/* このページだけ横スクロール事故を抑止 */
body.page-id-75,
body.page-template-page-wsign-export-csv2 {
  overflow-x: hidden;
}

/* TwentyTwentyOne の site-content 横パディングが強い場合があるので、このページだけ解除 */
body.page-id-75 .site-content,
body.page-template-page-wsign-export-csv2 .site-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* メイン領域を viewport 幅まで広げて、中央の細いカラム化を回避 */
body.page-id-75 .wsign-main,
body.page-template-page-wsign-export-csv2 .wsign-main {
  box-sizing: border-box;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 24px 16px 48px;
}

/* 読みやすい最大幅に整形（業務ページ向け） */
body.page-id-75 .wsign-main .wsign-wrapper,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper {
  max-width: 1120px;
  margin: 0 auto;
  text-align: left;
}

/* 見出しが大きすぎるのを抑制（スクショの “巨大H1” 対策） */
body.page-id-75 .wsign-main .wsign-wrapper h1,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper h1 {
  font-size: clamp(28px, 3.2vw, 42px) !important;
  line-height: 1.2;
  margin: 0 0 12px;
}

body.page-id-75 .wsign-main .wsign-wrapper h2,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper h2 {
  font-size: 1.35rem !important;
  line-height: 1.3;
  margin: 28px 0 10px;
}

/* 本文の可読性 */
body.page-id-75 .wsign-main .wsign-wrapper p,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper p,
body.page-id-75 .wsign-main .wsign-wrapper li,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper li {
  line-height: 1.75;
}

/* 説明文が横に伸び過ぎないように（読みやすさ） */
body.page-id-75 .wsign-main .wsign-wrapper p,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper p {
  max-width: 78ch;
}

/* CSV列の <pre> が横スクロールで見づらい問題を改善（折り返し） */
body.page-id-75 .wsign-main .wsign-wrapper pre,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper pre {
  margin: 8px 0 16px;
  padding: 12px 14px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #f7f7f7;
  white-space: pre-wrap;     /* 折り返し */
  overflow-wrap: anywhere;   /* 長い英数字も折り返し */
}

/* code のサイズ安定 */
body.page-id-75 .wsign-main .wsign-wrapper code,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper code {
  font-size: 0.95em;
}

/* 箇条書きの詰まりを緩和 */
body.page-id-75 .wsign-main .wsign-wrapper ul,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper ul {
  margin: 0 0 18px 1.2em;
}
body.page-id-75 .wsign-main .wsign-wrapper li,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper li {
  margin: 0.35em 0;
}

/* ボタンの見た目を安定化（テーマ依存を弱める） */
body.page-id-75 .wsign-main .wsign-wrapper .button,
body.page-template-page-wsign-export-csv2 .wsign-main .wsign-wrapper .button {
  display: inline-block;
  padding: 12px 18px;
  border-radius: 8px;
}

/* ==========================
   /import-from-master-csv/ 専用
   Template: page-wsign-import-from-master-csv.php
   body: page-id-77 / page-template-page-wsign-import-from-master-csv
   ========================== */

/* 横スクロール事故の抑止 */
body.page-id-77,
body.page-template-page-wsign-import-from-master-csv {
  overflow-x: hidden;
}

/* テーマ側の自動ページタイトル（entry-title）を消す
   ※テンプレ内に <h1> があるため二重になりやすい */
body.page-id-77 .entry-header,
body.page-template-page-wsign-import-from-master-csv .entry-header {
  display: none;
}

/* TwentyTwentyOne の site-content パディングが強い場合の解除（このページだけ） */
body.page-id-77 .site-content,
body.page-template-page-wsign-import-from-master-csv .site-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* メイン領域を viewport 幅まで広げ、中央の細いカラム化を回避 */
body.page-id-77 .wsign-main,
body.page-template-page-wsign-import-from-master-csv .wsign-main {
  box-sizing: border-box;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 24px 16px 56px;
}

/* 画面上で読みやすい最大幅に整形 */
body.page-id-77 .wsign-main .wsign-wrapper,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper {
  max-width: 1120px;
  margin: 0 auto;
  text-align: left;
}

/* 見出しの巨大化を抑制 */
body.page-id-77 .wsign-main .wsign-wrapper h1,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper h1 {
  font-size: clamp(26px, 3.0vw, 40px) !important;
  line-height: 1.2;
  margin: 0 0 12px;
}

body.page-id-77 .wsign-main .wsign-wrapper h2,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper h2 {
  font-size: 1.35rem !important;
  line-height: 1.3;
  margin: 26px 0 10px;
}

body.page-id-77 .wsign-main .wsign-wrapper h3,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper h3 {
  font-size: 1.1rem !important;
  margin: 18px 0 8px;
}

/* 本文の可読性（業務ページ向け） */
body.page-id-77 .wsign-main .wsign-wrapper p,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper p,
body.page-id-77 .wsign-main .wsign-wrapper li,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper li {
  line-height: 1.75;
}

body.page-id-77 .wsign-main .wsign-wrapper p,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper p {
  max-width: 78ch;
}

/* エラー／完了メッセージ（テンプレ内の inline style を前提に、見た目を整える） */
body.page-id-77 .wsign-main .wsign-wrapper > div[style*="border:1px solid"],
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper > div[style*="border:1px solid"] {
  border-radius: 10px;
}

/* CSV形式の <pre> を読みやすく（折り返し＋枠） */
body.page-id-77 .wsign-main .wsign-wrapper pre,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper pre {
  margin: 10px 0 16px;
  padding: 12px 14px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #f7f7f7;
  white-space: pre-wrap;     /* 折り返し */
  overflow-wrap: anywhere;   /* 長い英数字も折り返し */
}

body.page-id-77 .wsign-main .wsign-wrapper code,
body.page-template-page-wsign-import-from-master-csv .wsign-main .wsign-wrapper code {
  font-size: 0.95em;
}

/* フォームの操作性（ファイル選択・チェックボックス・ボタン） */
body.page-id-77 .wsign-main form,
body.page-template-page-wsign-import-from-master-csv .wsign-main form {
  margin-top: 12px;
}

body.page-id-77 .wsign-main input[type="file"],
body.page-template-page-wsign-import-from-master-csv .wsign-main input[type="file"] {
  max-width: 100%;
}

body.page-id-77 .wsign-main label,
body.page-template-page-wsign-import-from-master-csv .wsign-main label {
  cursor: pointer;
}

/* ボタン見た目の安定化（テーマ依存を弱める） */
body.page-id-77 .wsign-main .button,
body.page-template-page-wsign-import-from-master-csv .wsign-main .button {
  display: inline-block;
  padding: 12px 18px;
  border-radius: 8px;
}

/* =========================================
   /manage-system/（page-id-172） レイアウト修正
   ========================================= */
body.page-id-172 .entry-header {
  /* テーマ側の自動タイトルを非表示（本文のh1と二重になるため） */
  display: none;
}

body.page-id-172 .entry-content {
  /* ページ全体の可読幅を広げる */
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* TwentyTwentyOne の「entry-content直下のブロックに max-width が当たる」仕様を解除して、
   上の entry-content 幅に合わせて素直に伸びるようにする */
body.page-id-172 .entry-content > * {
  max-width: 100% !important;
}

/* カラム間の余白 */
body.page-id-172 .wp-block-columns {
  gap: 24px;
}

/* “左右の空カラム（幅取りのためだけのカラム）” を消して、中身を広げる */
body.page-id-172 .wp-block-columns > .wp-block-column:empty {
  display: none;
}

/* 青いボックス（pale-cyan-blue）の見た目を安定させる（任意） */
body.page-id-172 .has-pale-cyan-blue-background-color {
  padding: 18px 20px;
  border-radius: 10px;
}

/* URLや長文のはみ出し対策 */
body.page-id-172 .entry-content a,
body.page-id-172 .entry-content p,
body.page-id-172 .entry-content li {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* =========================================
   /wsign-import-latlng/（page-id-148）
   店舗位置情報CSVインポート（本家→業務） レイアウト修正
   ========================================= */

/* 万一テーマ側タイトルが出る場合の保険（テンプレh1と二重になるのを防止） */
body.page-id-148 .entry-header {
  display: none;
}

/* ページの横幅・余白を「業務画面」向けに整える */
body.page-id-148 .wsign-main {
  padding: 32px 0;
}

body.page-id-148 .wsign-wrapper {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
}

/* 見出しがデカすぎて不自然に折り返すのを抑制 */
body.page-id-148 .wsign-wrapper h1 {
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.15;
  margin: 0 0 16px;
}

/* 段落の行間と余白（読みやすさ） */
body.page-id-148 .wsign-wrapper p {
  line-height: 1.8;
  margin: 0 0 14px;
}

/* code の可読性 */
body.page-id-148 .wsign-wrapper code {
  font-size: 0.95em;
}

/* フォーム周り（横並び崩れ・窮屈さを緩和） */
body.page-id-148 .wsign-wrapper form {
  margin-top: 10px;
}

body.page-id-148 .wsign-wrapper input[type="file"] {
  max-width: 100%;
}

/* 長い文字列（管理番号やURL等）がはみ出すのを防止 */
body.page-id-148 .wsign-wrapper * {
  overflow-wrap: anywhere;
  word-break: break-word;
}
