#primary {
    padding: 10px 20px;
}

@media all and (min-width: 600px) {
#primary {
    padding: 30px 120px;
}
}



/* ===============================
   WP User Manager - Profile layout (scoped)
   対象: #wpum-profile 以下のみ
   =============================== */
   #profile-header-container {
    display: none;
}
   #wpum-profile {
  --gft-font: "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  --gft-ink: #111827;           /* 文字色 */
  --gft-sub: #6b7280;           /* サブ文字色 */
  --gft-bg: #f8fafc;            /* 背景 */
  --gft-card: #ffffff;          /* カード背景 */
  --gft-bd: #e5e7eb;            /* ボーダー */
  --gft-brand: #2c6aa6;         /* ブランド色 */
  --gft-brand-weak:#e6f0fa;     /* 薄いブランド色 */
  --gft-radius: 14px;
  --gft-shadow: 0 10px 24px rgba(17,24,39,.06);
  font-family: var(--gft-font);
  color: var(--gft-ink);
}

/* 見出しの整形 */
.entry-title {
  font-size: clamp(22px, 3vw, 28px);
  margin: 0 0 12px;
}
.entry-content { margin-top: 8px; }

/* ===== ヘッダー帯 ===== */
#wpum-profile #profile-header-container{
  background: linear-gradient(135deg, var(--gft-brand), #4aa3ff);
  color: #fff;
  border-radius: var(--gft-radius);
  padding: 28px 20px 18px;
  position: relative;
  box-shadow: var(--gft-shadow);
}

/* カバー画像領域（今は画像なし前提のダミー） */
#wpum-profile #header-cover-image{
  min-height: 60px;
}

/* アバター */
#wpum-profile #header-avatar-container{
  position: absolute;
  left: 20px;
  bottom: -34px;
  width: 96px; height: 96px;
  border-radius: 50%;
  background: #fff;
  display: grid; place-items: center;
  box-shadow: 0 12px 24px rgba(0,0,0,.15);
  border: 5px solid #fff;
}
#wpum-profile #header-avatar-container img{
  width: 86px; height: 86px; object-fit: cover;
  border-radius: 50%;
  display: block;
}

/* プロフィール基本情報（名前・ナビ） */
#wpum-profile #header-profile-details{
  background: var(--gft-card);
  margin-top: 40px;
  padding: 46px 20px 16px; /* 46=アバター高さ分の余白 */
  border-radius: 12px;
  box-shadow: var(--gft-shadow);
  border: 1px solid var(--gft-bd);
}

#wpum-profile #header-name-container h2{
  font-size: clamp(18px, 2.6vw, 22px);
  margin: 0 0 8px;
  display:flex; gap:10px; align-items: baseline; flex-wrap: wrap;
}
#wpum-profile #header-name-container h2 small{
  font-size: 12px; font-weight: 600; letter-spacing: .02em;
}
#wpum-profile #header-name-container h2 small a{
  color: #0b5cab; background: #e6f0fa;
  padding: 4px 8px; border-radius: 999px;
  text-decoration: none; border:1px solid #cfe0f6;
}
#wpum-profile #header-name-container h2 small a:hover{
  background:#d9e9ff; border-color:#b9d4f4;
}

/* タブナビ */
#wpum-profile nav.profile-navbar{
  display:flex; gap:8px; flex-wrap: wrap;
  margin-top: 6px;
}
#wpum-profile nav.profile-navbar a{
  display:inline-block; padding:8px 12px; border-radius:10px;
  text-decoration:none; font-weight:700; font-size:14px;
  color:#0b3058; background:#eef2f7; border:1px solid #e3e8ef;
}
#wpum-profile nav.profile-navbar a.active,
#wpum-profile nav.profile-navbar a:hover{
  color:#0b3a69; background: var(--gft-brand-weak);
  border-color:#d7e6f7;
}

/* ===== タブ内容エリア ===== */
#wpum-profile #profile-tab-content{
  margin-top: 14px;
}
#wpum-profile .profile-content-settings{
  background: var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius: var(--gft-radius);
  box-shadow: var(--gft-shadow);
  padding: 16px;
}

/* グループタイトル */
#wpum-profile .profile-fields-group{
  margin: 6px 0 0;
}
#wpum-profile .profile-fields-group .group-title{
  font-size: 16px; margin: 4px 0 12px;
  color:#0f2746; position: relative; padding-left: 12px;
}
#wpum-profile .profile-fields-group .group-title::before{
  content:""; position:absolute; left:0; top:6px;
  width:4px; height:14px; border-radius:2px; background: var(--gft-brand);
}

/* フィールドテーブル */
#wpum-profile .profile-fields-table{
  width: 100%; border-collapse: collapse;
  background:#fff; border-radius: 12px; overflow: hidden;
}
#wpum-profile .profile-fields-table tr{
  border-bottom: 1px solid var(--gft-bd);
}
#wpum-profile .profile-fields-table tr:last-child{ border-bottom: none; }
#wpum-profile .profile-fields-table td{
  padding: 12px 14px; vertical-align: top;
  font-size: 15px;
}
#wpum-profile .profile-fields-table td.label{
  width: 28%; min-width: 140px; color: var(--gft-sub); font-weight:700;
  background: #f7fafc;
}
#wpum-profile .profile-fields-table td.data a{
  color:#0b5cab; text-decoration: underline;
}
#wpum-profile .profile-fields-table td.data p{ margin:0; }

/* レスポンシブ：スマホでカード風に */
@media (max-width: 640px){
  #wpum-profile #header-avatar-container{
    left: 16px; bottom: -30px; width: 88px; height: 88px;
  }
  #wpum-profile #header-avatar-container img{ width: 78px; height: 78px; }
  #wpum-profile #header-profile-details{ padding-top: 40px; }

  /* テーブルを2行表示に崩して読みやすく */
  #wpum-profile .profile-fields-table,
  #wpum-profile .profile-fields-table tbody,
  #wpum-profile .profile-fields-table tr,
  #wpum-profile .profile-fields-table td{ display:block; width:100%; }
  #wpum-profile .profile-fields-table td.label{
    background: transparent; color: var(--gft-sub);
    padding: 14px 0 2px; border: none;
  }
  #wpum-profile .profile-fields-table td.data{
    padding: 2px 0 12px; border-bottom: 1px solid var(--gft-bd);
  }
}

/* 細部：リンクや通知 */
#wpum-profile a{ transition: .15s ease; }
#wpum-profile .wpum_clearfix{ display:none; }

/* =========================================
   WP User Manager - Account (Settings) page
   対象: .wpum-account-page 配下のみ
   ========================================= */
.fieldset-user_cover {
    display: none;
}
   .wpum-account-page{
  --gft-font: "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  --gft-ink: #111827;           /* 文字色 */
  --gft-sub: #6b7280;           /* サブ文字色 */
  --gft-bg: #f8fafc;            /* 背景 */
  --gft-card: #ffffff;          /* カード背景 */
  --gft-bd: #e5e7eb;            /* ボーダー */
  --gft-brand: #2c6aa6;         /* ブランド色 */
  --gft-brand-weak:#e6f0fa;     /* 薄いブランド色 */
  --gft-danger:#b42318;
  --gft-radius: 14px;
  --gft-shadow: 0 10px 24px rgba(17,24,39,.06);
  font-family: var(--gft-font);
  color: var(--gft-ink);
}

/* 見出し */
.entry-title{ font-size: clamp(22px,3vw,28px); margin:0 0 12px; }
.entry-content{ margin-top:8px; }

/* レイアウト（1/3 + 2/3 の2カラム） */
.wpum-account-page .wpum_one_third{ width:100%; }
.wpum-account-page .wpum_two_third{ width:100%; }

@media(min-width:960px){
  .wpum-account-page{ display:grid; grid-template-columns: 280px 1fr; gap:22px; }
  .wpum-account-page .wpum_one_third{ grid-column:1 / 2; }
  .wpum-account-page .wpum_two_third{ grid-column:2 / 3; }
}

/* ===== サイドナビ ===== */
.wpum-account-navigation{
  background: var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius: var(--gft-radius);
  box-shadow: var(--gft-shadow);
  overflow:hidden;
}

.wpum-account-navigation ul{
  list-style:none; margin:0; padding:8px;
  display: grid; gap:6px;
}
.wpum-account-navigation li{ margin:0; padding:0; }

.wpum-account-navigation a{
  display:block;
  padding:10px 12px;
  border-radius:10px;
  text-decoration:none;
  color:#0b3058;
  background:#eef2f7;
  border:1px solid #e3e8ef;
  font-weight:700; font-size:14px;
  transition: .15s ease;
}
.wpum-account-navigation a:hover{
  background: var(--gft-brand-weak);
  border-color:#d7e6f7;
}
.wpum-account-navigation .active a,
.wpum-account-navigation a.current-tab{
  color:#0b3a69;
  background: var(--gft-brand-weak);
  border-color:#cfe0f6;
}

/* ===== フォームカード ===== */
.wpum-account-form{
  background: var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius: var(--gft-radius);
  box-shadow: var(--gft-shadow);
  padding: 18px;
}

.wpum-account-form h2{
  margin:0 0 12px; font-size: clamp(18px,2.2vw,22px);
  color:#0f2746;
}

/* フィールド共通 */
.wpum-account-form fieldset{
  margin: 12px 0; border:0; padding:0;
}
.wpum-account-form label{
  display:block; font-weight:700; margin:0 0 6px; color:#1f2937;
}
.wpum-required{ color: var(--gft-danger); margin-left:4px; }

/* 2カラム（PC） */
@media(min-width:960px){
  .wpum-account-form form{
    display:grid; grid-template-columns: 1fr 1fr; gap:16px 18px;
  }
  .wpum-account-form fieldset{ margin:0; }
  /* 行全幅にしたい項目（説明・カバー画像など） */
  .fieldset-user_cover,
  .fieldset-user_description{ grid-column: 1 / -1; }
}

/* 入力UI */
.wpum-account-form input[type="text"],
.wpum-account-form input[type="email"],
.wpum-account-form input[type="url"],
.wpum-account-form input[type="password"],
.wpum-account-form select,
.wpum-account-form textarea{
  width:100%;
  border:1px solid #d1d5db;
  border-radius:10px;
  padding:12px 12px;
  background:#fff;
  font-size:16px; line-height:1.45;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.wpum-account-form textarea{ min-height:140px; resize: vertical; }

.wpum-account-form input:focus,
.wpum-account-form select:focus,
.wpum-account-form textarea:focus{
  outline: none;
  border-color:#93c5fd;
  box-shadow:0 0 0 3px rgba(147,197,253,.35);
}

/* ファイル入力（カバー画像） */
.fieldset-user_cover .field{
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:12px;
  padding:12px;
}
.fieldset-user_cover input[type="file"]{
  background:#fff; border:1px solid #d1d5db; border-radius:10px; padding:10px; width:100%;
}
.fieldset-user_cover .description{
  display:block; margin-top:6px; color: var(--gft-sub);
}

/* 送信ボタン */
.wpum-account-form .button,
.wpum-account-form input[type="submit"]{
  display:inline-block; border:none; border-radius:10px;
  padding:12px 18px; background: var(--gft-brand);
  color:#fff; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(44,106,166,.25);
  transition: transform .05s ease, box-shadow .15s ease, background .15s ease;
  margin-top: 6px;
}
.wpum-account-form .button:hover,
.wpum-account-form input[type="submit"]:hover{
  background:#255c8f;
  box-shadow:0 8px 22px rgba(44,106,166,.32);
}
.wpum-account-form .button:active,
.wpum-account-form input[type="submit"]:active{
  transform: translateY(1px);
}

/* 表示微調整 */
.wpum-account-page a{ transition:.15s ease; }
.wpum_clearfix{ display:none; }

/* モバイル調整 */
@media(max-width: 959.98px){
  .wpum-account-form form{ display:block; }
}

/* =========================================
   WP User Manager - Account > Password
   対象: .wpum-password-form 配下
   ========================================= */
.wpum-password-form{
  background: var(--gft-card,#fff);
  border:1px solid var(--gft-bd,#e5e7eb);
  border-radius: var(--gft-radius,14px);
  box-shadow: var(--gft-shadow,0 10px 24px rgba(17,24,39,.06));
  padding: 20px;
  font-family: "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  color: #111827;
}

.wpum-password-form h2{
  margin:0 0 16px;
  font-size: clamp(18px,2.4vw,22px);
  color:#0f2746;
}

/* フィールド */
.wpum-password-form fieldset{
  margin: 14px 0; border:0; padding:0;
}
.wpum-password-form label{
  display:block; font-weight:700; margin:0 0 6px;
  color:#1f2937;
}
.wpum-required{ color:#b42318; margin-left:4px; }

.wpum-password-form input[type="password"]{
  width:100%;
  border:1px solid #d1d5db;
  border-radius:10px;
  padding:12px 12px;
  font-size:16px; line-height:1.4;
  background:#fff;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.wpum-password-form input[type="password"]:focus{
  outline:none;
  border-color:#93c5fd;
  box-shadow:0 0 0 3px rgba(147,197,253,.35);
}

/* 送信ボタン */
.wpum-password-form .button,
.wpum-password-form input[type="submit"]{
  display:inline-block;
  border:none; border-radius:10px;
  padding:12px 18px;
  background:#2c6aa6;
  color:#fff; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(44,106,166,.25);
  transition: transform .05s ease, box-shadow .15s ease, background .15s ease;
  margin-top: 12px;
}
.wpum-password-form .button:hover,
.wpum-password-form input[type="submit"]:hover{
  background:#255c8f;
  box-shadow:0 8px 22px rgba(44,106,166,.32);
}
.wpum-password-form .button:active,
.wpum-password-form input[type="submit"]:active{
  transform: translateY(1px);
}

/* スマホ対応 */
@media(max-width:640px){
  .wpum-password-form{ padding:16px; }
}

/* =========================================
   WP User Manager - Register page
   対象: .wpum-registration-form / .wpum-action-links
   ========================================= */
.wpum-registration-form{
  --gft-font: "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  --gft-ink: #111827;           /* 文字色 */
  --gft-sub: #6b7280;           /* サブ文字色 */
  --gft-card:#ffffff;           /* カード背景 */
  --gft-bd:  #e5e7eb;           /* ボーダー */
  --gft-brand:#2c6aa6;          /* ブランド色 */
  --gft-brand-weak:#e6f0fa;
  --gft-danger:#b42318;
  --gft-radius: 14px;
  --gft-shadow: 0 10px 24px rgba(17,24,39,.06);
  font-family: var(--gft-font);
  color: var(--gft-ink);
  background: var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius: var(--gft-radius);
  box-shadow: var(--gft-shadow);
  padding: 20px;
}

/* 見出し（記事側のh1は既存スタイルを利用） */
.wpum-registration-form h2{ margin:0 0 14px; font-size: clamp(18px,2.4vw,22px); color:#0f2746; }

/* フィールドセット */
.wpum-registration-form fieldset{ margin: 14px 0; border:0; padding:0; }
.wpum-registration-form label{
  display:block; font-weight:700; margin:0 0 6px; color:#1f2937; line-height:1.4;
}
.wpum-required{ color: var(--gft-danger); margin-left:4px; }

/* 入力欄 */
.wpum-registration-form input[type="email"],
.wpum-registration-form input[type="text"],
.wpum-registration-form input[type="password"],
.wpum-registration-form input[type="url"],
.wpum-registration-form textarea,
.wpum-registration-form select{
  width:100%;
  border:1px solid #d1d5db;
  border-radius:10px;
  padding:12px 12px;
  background:#fff;
  font-size:16px; line-height:1.45;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.wpum-registration-form input:focus,
.wpum-registration-form textarea:focus,
.wpum-registration-form select:focus{
  outline:none; border-color:#93c5fd; box-shadow:0 0 0 3px rgba(147,197,253,.35);
}

/* プライバシー同意（チェックボックス） */
.wpum-registration-form .fieldset-privacy .field{ display:inline; }
.wpum-registration-form .fieldset-privacy label{
  display:flex; gap:8px; align-items:flex-start; font-weight:600;
}
.wpum-registration-form .fieldset-privacy .input-checkbox{
  width:18px; height:18px; margin-top:2px; accent-color: var(--gft-brand);
}
.wpum-registration-form .fieldset-privacy .description{
  display:block; font-weight:400; color: var(--gft-sub);
}
.wpum-registration-form .fieldset-privacy a{ color:#0b5cab; text-decoration: underline; }

/* 送信ボタン */
.wpum-registration-form .button,
.wpum-registration-form input[type="submit"]{
  display:inline-block; border:none; border-radius:10px;
  padding:12px 18px; background: var(--gft-brand);
  color:#fff; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(44,106,166,.25);
  transition: transform .05s ease, box-shadow .15s ease, background .15s ease;
  margin-top: 8px;
}
.wpum-registration-form .button:hover,
.wpum-registration-form input[type="submit"]:hover{
  background:#255c8f;
  box-shadow:0 8px 22px rgba(44,106,166,.32);
}
.wpum-registration-form .button:active,
.wpum-registration-form input[type="submit"]:active{
  transform: translateY(1px);
}

/* honeypot（人間には見せない） */
.wpum-registration-form .fieldset-robo{
  position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden;
}

/* 下部リンク（ログイン／パスワード再発行） */
.wpum-action-links{
  list-style:none; margin:12px 0 0; padding:0;
  display:grid; gap:6px;
}
.wpum-action-links li{
  background:#ffffff; border:1px solid var(--gft-bd);
  border-radius:10px; padding:10px 12px; color:#374151;
  box-shadow:0 4px 14px rgba(17,24,39,.04);
}
.wpum-action-links a{
  color:#0b5cab; text-decoration: underline; font-weight:700;
  transition:.15s ease;
}
.wpum-action-links a:hover{ color:#083d7a; }

/* モバイル余白調整 */
@media(max-width:640px){
  .wpum-registration-form{ padding:16px; }
}

/* =========================================
   WP User Manager - Log In page
   対象: .wpum-login-form / .wpum-action-links
   ========================================= */
.wpum-login-form{
  --gft-font:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  --gft-ink:#111827;           /* 文字色 */
  --gft-sub:#6b7280;           /* サブ文字色 */
  --gft-card:#ffffff;          /* カード背景 */
  --gft-bd:#e5e7eb;            /* ボーダー */
  --gft-brand:#2c6aa6;         /* ブランド色 */
  --gft-brand-weak:#e6f0fa;    /* 薄いブランド色 */
  --gft-danger:#b42318;
  --gft-radius:14px;
  --gft-shadow:0 10px 24px rgba(17,24,39,.06);
  font-family:var(--gft-font);
  color:var(--gft-ink);
  background:var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius:var(--gft-radius);
  box-shadow:var(--gft-shadow);
  padding:20px;
}

/* 見出し（記事側H1は既存活用） */
.wpum-login-form h2{ margin:0 0 14px; font-size:clamp(18px,2.4vw,22px); color:#0f2746; }

/* 各フィールド */
.wpum-login-form fieldset{ margin:14px 0; border:0; padding:0; }
.wpum-login-form label{ display:block; font-weight:700; margin:0 0 6px; color:#1f2937; }
.wpum-required{ color:var(--gft-danger); margin-left:4px; }

.wpum-login-form input[type="text"],
.wpum-login-form input[type="password"]{
  width:100%;
  border:1px solid #d1d5db;
  border-radius:10px;
  padding:12px 12px;
  background:#fff;
  font-size:16px; line-height:1.45;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.wpum-login-form input[type="text"]:focus,
.wpum-login-form input[type="password"]:focus{
  outline:none; border-color:#93c5fd; box-shadow:0 0 0 3px rgba(147,197,253,.35);
}

/* Remember me（チェックボックス行） */
.wpum-login-form .fieldset-remember label{
  display:flex; align-items:center; gap:10px; font-weight:600; color:#1f2937;
}
.wpum-login-form .fieldset-remember .input-checkbox{
  width:18px; height:18px; accent-color:var(--gft-brand);
}

/* 送信ボタン */
.wpum-login-form .button,
.wpum-login-form input[type="submit"]{
  display:inline-block; border:none; border-radius:10px;
  padding:12px 18px; background:var(--gft-brand);
  color:#fff; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(44,106,166,.25);
  transition:transform .05s ease, box-shadow .15s ease, background .15s ease;
  margin-top:8px;
}
.wpum-login-form .button:hover,
.wpum-login-form input[type="submit"]:hover{
  background:#255c8f;
  box-shadow:0 8px 22px rgba(44,106,166,.32);
}
.wpum-login-form .button:active,
.wpum-login-form input[type="submit"]:active{
  transform:translateY(1px);
}

/* メッセージ類（汎用） */
.wpum-login-form .wpum-message,
.wpum-login-form .wpum-alert{
  margin:10px 0; padding:10px 12px; border-radius:10px;
  background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46;
  font-size:14px;
}
.wpum-login-form .wpum-alert.wpum-error{
  background:#fef2f2; border-color:#fecaca; color:#991b1b;
}

/* 下部リンク（サインアップ／パスワード再発行） */
.wpum-action-links{
  list-style:none; margin:12px 0 0; padding:0;
  display:grid; gap:6px;
}
.wpum-action-links li{
  background:#ffffff; border:1px solid var(--gft-bd);
  border-radius:10px; padding:10px 12px; color:#374151;
  box-shadow:0 4px 14px rgba(17,24,39,.04);
}
.wpum-action-links a{
  color:#0b5cab; text-decoration:underline; font-weight:700; transition:.15s ease;
}
.wpum-action-links a:hover{ color:#083d7a; }

/* モバイル余白 */
@media(max-width:640px){
  .wpum-login-form{ padding:16px; }
}

/* =========================================
   WP User Manager - Password Recovery page
   対象: .wpum-password-recovery-form / .wpum-action-links
   （既存とテイスト統一：変数/角丸/影）
   ========================================= */
.wpum-password-recovery-form{
  --gft-font: "Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Roboto,system-ui,sans-serif;
  --gft-ink:#111827;         /* 文字色 */
  --gft-sub:#6b7280;         /* サブ文字色 */
  --gft-card:#ffffff;        /* カード背景 */
  --gft-bd:#e5e7eb;          /* ボーダー */
  --gft-brand:#2c6aa6;       /* ブランド色（既存と統一） */
  --gft-brand-weak:#e6f0fa;  /* 薄いブランド色 */
  --gft-danger:#b42318;
  --gft-radius:14px;
  --gft-shadow:0 10px 24px rgba(17,24,39,.06);
  font-family:var(--gft-font);
  color:var(--gft-ink);
  background:var(--gft-card);
  border:1px solid var(--gft-bd);
  border-radius:var(--gft-radius);
  box-shadow:var(--gft-shadow);
  padding:20px;
  max-width:640px;
  margin:0 auto;
}

/* 冒頭説明 */
.wpum-password-recovery-form > p{
  margin:0 0 14px;
  color:var(--gft-sub);
  line-height:1.6;
  font-size:15px;
}

/* フィールド */
.wpum-password-recovery-form fieldset{ margin:14px 0; border:0; padding:0; }
.wpum-password-recovery-form label{
  display:block; font-weight:700; margin:0 0 6px; color:#1f2937;
}
.wpum-required{ color:var(--gft-danger); margin-left:4px; }

/* 入力欄 */
.wpum-password-recovery-form input.input-text{
  width:100%;
  border:1px solid #d1d5db;
  border-radius:10px;
  padding:12px 12px;
  background:#fff;
  font-size:16px; line-height:1.45;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.wpum-password-recovery-form input.input-text:focus{
  outline:none;
  border-color:#93c5fd;
  box-shadow:0 0 0 3px rgba(147,197,253,.35);
  background:#fff;
}

/* 送信ボタン（統一トーン） */
.wpum-password-recovery-form .button,
.wpum-password-recovery-form input[type="submit"]{
  display:inline-block; width:100%;
  border:none; border-radius:10px;
  padding:12px 18px; background:var(--gft-brand);
  color:#fff; font-weight:700; cursor:pointer;
  box-shadow:0 6px 18px rgba(44,106,166,.25);
  transition: transform .05s ease, box-shadow .15s ease, background .15s ease;
  margin-top:8px;
}
.wpum-password-recovery-form .button:hover,
.wpum-password-recovery-form input[type="submit"]:hover{
  background:#255c8f;
  box-shadow:0 8px 22px rgba(44,106,166,.32);
}
.wpum-password-recovery-form .button:active,
.wpum-password-recovery-form input[type="submit"]:active{
  transform:translateY(1px);
}

/* 下部リンク（ログイン/新規登録） */
.wpum-action-links{
  list-style:none; margin:12px 0 0; padding:0;
  display:grid; gap:6px; max-width:640px; margin-left:auto; margin-right:auto;
}
.wpum-action-links li{
  background:#ffffff; border:1px solid var(--gft-bd);
  border-radius:10px; padding:10px 12px; color:#374151;
  box-shadow:0 4px 14px rgba(17,24,39,.04);
}
.wpum-action-links a{
  color:#0b5cab; text-decoration: underline; font-weight:700; transition:.15s ease;
}
.wpum-action-links a:hover{ color:#083d7a; }

/* モバイル調整 */
@media(max-width:640px){
  .wpum-password-recovery-form{ padding:16px; }
}

/* ============================
   教師マイページ・タブ（HTML/CSSのみ）
   ============================ */
.gft-tabs{
  --gft-brand:#2c6aa6;
  --gft-brand-weak:#e6f0fa;
  --gft-ink:#0b3058;
  --gft-bd:#e3e8ef;
  --gft-bg:#ffffff;
  --gft-radius:12px;

  display:flex; flex-wrap:wrap; gap:8px;
  padding:10px; margin:0 0 14px;
  background:var(--gft-bg);
  border:1px solid var(--gft-bd);
  border-radius:14px;
  box-shadow:0 10px 24px rgba(17,24,39,.06);
}
.gft-tab{
  display:inline-block;
  padding:10px 14px;
  border-radius:10px;
  border:1px solid var(--gft-bd);
  background:#eef2f7;
  color:var(--gft-ink);
  font-weight:700; font-size:14px;
  text-decoration:none;
  transition:.15s ease;
}
.gft-tab:hover{
  background:var(--gft-brand-weak);
  border-color:#d7e6f7;
  color:#0b3a69;
}

/* アクティブ見た目（data-current に応じてリンク先を強調） */
.gft-tabs[data-current="about"]   a[href*="/profile/"],
.gft-tabs[data-current="jobs"]    a[href*="/job-offer-list/"],
.gft-tabs[data-current="account"] a[href*="/account/"],
.gft-tabs[data-current="notice"]  a[href*="/notice/"],
.gft-tabs[data-current="message"] a[href*="/message/"]{
  background:var(--gft-brand-weak);
  border-color:#cfe0f6;
  color:#0b3a69;
}

/* スマホ詰まり防止 */
@media (max-width: 640px){
  .gft-tabs{ padding:8px; gap:6px; }
  .gft-tab{ padding:8px 10px; font-size:13px; }
}