/* ========== AAM 共通レイアウト ========== */
.aam-heading{ margin-bottom:4px; }
.aam-sub{ font-weight:normal; color:#666; }
.aam-breadcrumb{ margin:4px 0 10px; font-size:13px; color:#555; }
.aam-breadcrumb a{ color:#2271b1; text-decoration:none; }
.aam-perpage-tabs{ margin:8px 0 12px; }

.aam-grid{ display:grid; grid-template-columns: 1fr 1fr; gap:16px; align-items:start; }
@media (max-width: 960px){ .aam-grid{ grid-template-columns:1fr; } }

.aam-card{ background:#fff; border:1px solid #e5e5e5; border-radius:8px; padding:16px; }
.aam-card.-full{ grid-column:1 / -1; }

.aam-row{ display:flex; gap:12px; align-items:center; margin:8px 0; }
.aam-row > label{ min-width:120px; display:inline-block; color:#333; }
.aam-row.-inline > *{ margin-right:8px; }

.aam-flex{ display:flex; gap:16px; align-items:flex-start; }
.aam-avatar{ width:96px; height:96px; border-radius:50%; object-fit:cover; border:1px solid #ccd0d4; }

/* テーブルの見やすさ強化（WordPress widefat を補助） */
table.widefat.fixed td, table.widefat.fixed th { word-break: break-word; }
table.widefat.striped thead th { background:#f7f7f7; }
table.widefat.striped tbody td { vertical-align:middle; }

/* ページャ/ツールバー（必要に応じて） */
.aam-toolbar{ display:flex; gap:8px; margin:12px 0; }
.aam-perpage{ display:flex; align-items:center; gap:6px; margin-left:auto; }

.aam-btn{ display:inline-block; padding:6px 10px; border:1px solid #ccc; border-radius:6px; background:#fff; cursor:pointer; }
.aam-btn.primary{ border-color:#2271b1; color:#fff; background:#2271b1; }

/* 上段2カードをPCで2列（各50%）、高さ揃え */
.aam-grid.two { display:grid; grid-template-columns: 1fr 1fr; gap:16px; align-items:stretch; }
.aam-card { height:100%; }
@media (max-width: 960px){ .aam-grid.two { grid-template-columns:1fr; } }

/* form-tableの見栄え微調整 */
.aam-form-table{ width:100%; }
.aam-form-table th{ vertical-align:top; }
.aam-form-table .aam-table-heading{
  background:#f7f7f7; font-weight:600; padding:8px 12px; border-radius:6px; text-align:left;
}
.aam-td-left input[type="file"]{ max-width:100%; }

/* ==== AAM 2列テーブル（30% / 70%） ==== */
.aam-two-col { width:100%; table-layout:fixed; border-collapse:collapse; }
.aam-two-col col.left  { width:30%; }
.aam-two-col col.right { width:70%; }
.aam-two-col th, .aam-two-col td { padding:8px 12px; vertical-align:top; }
.aam-two-col .aam-table-heading{
  background:#f7f7f7; font-weight:600; padding:8px 12px; border-radius:6px; text-align:left;
}
@media (max-width: 960px){
  /* 画面が狭い時は比率を少し寄せる（任意） */
  .aam-two-col col.left  { width:38%; }
  .aam-two-col col.right { width:62%; }
}

/* 上段2カード（左右50%） */
.aam-grid.two { display:grid; grid-template-columns: 1fr 1fr; gap:16px; align-items:stretch; }
.aam-card { height:100%; }
@media (max-width: 960px){ .aam-grid.two { grid-template-columns:1fr; } }


/* ==== AAM: レイアウト安定化・重なり防止 ==== */

/* 上段2カードの下に十分な余白 */
.aam-grid.two { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:24px; align-items:stretch; }

/* カードは絶対配置/フロートを無効化して通常フローへ */
.aam-card { position: relative !important; float: none !important; background:#fff; border:1px solid #dcdcde; border-radius:8px; padding:12px; box-sizing:border-box; min-width:0; }

/* 全幅カードの見た目 */
.aam-card.-full { width:100%; }

/* 明示的な区切り（クリア用） */
.aam-sep { clear: both; height: 1px; margin: 0; }

/* 30/70 の2列テーブル */
.aam-two-col { width:100%; table-layout:fixed; border-collapse:collapse; }
.aam-two-col col.left  { width:30%; }
.aam-two-col col.right { width:70%; }
.aam-two-col th, .aam-two-col td { padding:8px 12px; vertical-align:top; }
.aam-two-col .aam-table-heading{
  background:#f7f7f7; font-weight:600; padding:8px 12px; border-radius:6px; text-align:left;
}

@media (max-width: 960px){
  .aam-grid.two { grid-template-columns:1fr; }
  .aam-two-col col.left  { width:38%; }
  .aam-two-col col.right { width:62%; }
}




/* ===== Plugin Hub Modal (Devnote tab) ===== */

.aam-hub-modal{ position:fixed; inset:0; display:none; z-index:100000; }
.aam-hub-modal[aria-hidden="false"]{ display:block; }
.aam-hub-modal__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.45); }
.aam-hub-modal__dialog{
  position:relative;
  width:min(920px, calc(100vw - 40px));
  margin:40px auto;
  background:#fff;
  border-radius:8px;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  display:flex;
  flex-direction:column;
  max-height:calc(100vh - 80px);
}
.aam-hub-modal__header{ display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-bottom:1px solid #eee; }
.aam-hub-modal__title{ font-weight:700; font-size:1.05rem; }
.aam-hub-modal__close{ background:transparent; border:0; font-size:22px; line-height:1; cursor:pointer; padding:0 4px; }
.aam-hub-modal__form{ display:flex; flex-direction:column; flex:1; min-height:0; }
.aam-hub-modal__body{ padding:14px 16px; overflow:auto; flex:1; min-height:0; }
.aam-hub-modal__footer{ padding:12px 16px; border-top:1px solid #eee; display:flex; justify-content:flex-end; gap:8px; }
body.aam-hub-modal-open{ overflow:hidden; }

/* Member Detail Tabs (clear float of nav-tab) */
.aam-member-tabs:after{ content:""; display:block; clear:both; }
.aam-tab-panel{ clear:both; }
