/* Traveler's Guide - Index Page Styles */
.brand-traveler {
    color: #f57c00;
}

.brand-loco {
    color: #388e3c;
}
.alert {
    color: #f00;
}

/* facebook, instagram, google meet アイコンスタイル */
.sns-icon {
    width: 24px;
    height: 24px;
    margin: 8px 8px 0 0;
    vertical-align: middle;
}
/* 評価・詳細ボタンスタイル */
.open-eval-result-btn {
    background-color: #9c27b0;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 6px 12px;
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.2s;
    margin-right: 4px;
}
.open-eval-result-btn:hover {
    background-color: #7b1fa2;
}
.open-detail-result-btn {
    background-color: #2196f3;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 6px 12px;
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.2s;
    margin-right: 4px;
}
.open-detail-result-btn:hover {
    background-color: #1976d2;
}
.deleteImage-btn {
    position:absolute; 
    top:-8px; right:-8px; 
    background:#f44336; 
    color:white; 
    border:none;
    border-radius:20px;
    padding:6px 14px;
    font-size:0.9rem; 
    cursor:pointer;
    box-shadow:0 2px 4px rgba(0,0,0,0.2);
    transition:all 0.3s;
    font-weight:bold;
}
.deleteImage-btn:hover {
    transform: scale(1.05);
}

/* マイページへ戻るボタン（青色グラデーション） */
.back-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0rem auto;
    padding: 0.6rem 1.5rem;
    background: linear-gradient(135deg, #4a90e2 0%, #357abd 100%);
    color: white;
    text-decoration: none;
    border-radius: 25px;
    font-size: 0.9rem;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(74, 144, 226, 0.3);
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    margin-top: 0px;
    text-align: center;
}

.back-link:hover {
    background: linear-gradient(135deg, #357abd 0%, #2b6cb0 100%);
    box-shadow: 0 4px 12px rgba(74, 144, 226, 0.4);
    transform: translateY(-2px);
    color: white;
}

.back-link::before {
    content: '←';
    font-size: 1.1rem;
}

/* マイページ用 */
/* 全体の帯 */
.mypage-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 32px;
  
  max-width:700px;
  margin:0 auto;
}

.mypage-header-guide {
  background: #e8f5e9;
}

.mypage-header-traveler {
  background: #f7dfd3;
}
/* 左側のH2 */
.mypage-title {
  margin: 0;

}

/* 右側のリンク群（PCでは横並び） */
.mypage-actions {
  display: flex;
  gap: 10px;
}

/* リンク共通 */
.mypage-link {
  text-decoration: none;
  padding: 6px 10px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  color: #333;
  font-size: 14px;
}

.mypage-link:hover {
  background: #e6f0ff;
}

/* ログアウトだけ色を変える */
.logout {
  background: #ffecec;
  border-color: #ff9999;
  color: #c00;
}

.logout:hover {
  background: #ffd6d6;
}

/* 📱 スマホ時（幅600px以下） */
@media (max-width: 600px) {
  .mypage-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  /* トップへ戻る & ログアウトを縦並びに */
  .mypage-actions {
    /*flex-direction: column; 横並びの場合 */
    width: 100%;
  }

  .mypage-link {
    width: 100%;
    text-align: center;
  }
}

/* プロフィール用 */
/* PCサイズ：横並び */
.profile-container {
  display: flex;
  gap: 20px; /* 要素間のスキマ */
}

.profile-container .box {
  width: 50%; /* 2つで画面幅を均等に分ける */
  padding: 0px;
  box-sizing: border-box;
}
.profile-image-box {
  display: flex;
  justify-content: right;
  align-items: right;
}
/* スマホサイズ：縦並び（画面幅767px以下） */
@media screen and (max-width: 767px) {
  .profile-container {
    /*flex-direction: column; /* 縦方向に並べる */
  }

  .profile-container .box {
    width: 100%; /* スマホでは横幅いっぱいに広げる */
  }
}
/* ボタンを包むコンテナ */
  .button-container {
    display: flex;
    flex-direction: column; /* 初期は縦並び */
    gap: 10px; /* ボタン間の余白 */
    margin-top: 10px;
  }

  /* ボタンの基本スタイル */
  .button-container .btn {
    flex: 1; /* 横並び時に均等幅 */
    padding: 12px;
    font-size: 15px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    color: #fff;
    background-color: #9e9e9e;
    transition: background-color 0.3s ease;
    text-decoration: none;
    text-align: left;
  }

  .button-container .btn:hover {
    background-color: #757575;
  }

  /* 依頼ステータスボタン */
  .flow-container{
    display: flex;
    flex-direction: column; /* 初期は縦並び */
    gap: 10px; /* ボタン間の余白 */
  }
  .flow-container .flow-btn {
    flex: 1; /* 横並び時に均等幅 */
    padding: 12px 10px;
    font-size: 0.8rem;
    text-align: center;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    color: #fff;
    background-color: #4caf50;
    transition: background-color 0.3s ease;
    text-decoration: none;
  }
  
  .flow-container .flow-btn:hover {
    background-color: #388e3c;
  }
  /* 画面幅600px以上で横並びに変更 */
  @media (min-width: 600px) {
    .button-container {
      flex-direction: row; /* 横並び */
    }
    .flow-container {
      flex-direction: row; /* 横並び */
    }
    .flow-container .flow-btn {
      max-width: 160px;
    }
  }
