/* Quest/view-quest.css */
/* ぼわん表示 */
.reveal-section {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.reveal-section.revealed {
    opacity: 1;
    transform: translateY(0);
}
/* ===========================================CONFIRM=========================================== */

#agenda-list ul li{
    font-size: 1.2rem;
}

.daytag{
    font-size: 5rem;
}

.update-text {
    position: absolute;
    top: 0;
    right: 0;
}

/* Top Button */
.top-button-container {
    position: fixed;
    bottom: 1.5rem;  /* 画面下からの距離 */
    right: 1.5rem;   /* 画面右からの距離 */
    z-index: 9999; /* 他の要素より上に表示 */
}

.top-button {
    background-color: white;
    border: 1px solid navy;
    padding: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    border-radius: 50%; /* ✅ 完全な円にする */
    width: 70px;  /* ✅ 幅と高さを揃える */
    height: 70px; /* ✅ 幅と高さを揃える */
    display: flex;
    align-items: center;
    justify-content: center;
}

.fs-8{
    font-size: 0.6rem;
}

.fa-solid:hover{
    transform: scale(1.1, 1.1); 
}

#quest-body-container {
    display: block;
    opacity: 1;
}

/* Agenda */
#agenda-list .agenda-wrapper {
    max-height: 450px;
    overflow-y: auto;
}

.icon-mmd{
    font-size: 2.8125rem;;
}

/* BORDER */

.border-quest-red{
    border: 3px solid #D24848 !important;
}
.border-quest-navy {
    border: 3px solid #3B3B6B !important;
}
.border-quest-green {
    border: 3px solid #66BFBF !important;
}
.border-quest-Blue {
    border: 3px solid #4496E3 !important;
    }

    /* -----------------------Scroll Bar----------------------- */
.spot-description-container {
    max-height: 100%; /* 初期状態では高さ制限なし */
    overflow-y: hidden; /* スクロールを非表示にする（JSで適用） */
    padding-right: 10px; /* スクロールバーが表示された際のレイアウト調整 */
}

.spot-description {
    overflow-y: auto;
    padding: 0;
    flex-grow: 1;
    max-height: 100%;
    min-height: 20rem;
}

.spot-image-container{
    display: flex;
    flex-direction: column;
}

#day-template .row.px-0 {
    display: flex;
    align-items: stretch; /* すべての子要素の高さを揃える */
}


.spot-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* スクロールバーのスタイル */
.spot-description-container {
    max-height: 100%; /* 初期状態では高さ制限なし */
    overflow-y: hidden; /* スクロールを非表示にする（JSで適用） */
    padding-right: 15px; /* スクロールバーが表示された際のレイアウト調整 */
}

.spot-description {
    overflow-y: auto;
    overflow-x: hidden; /* ← 横スクロールは出さない */
    padding: 0;
    flex-grow: 1;
    max-height: 100%;
    min-height: 20rem;

    word-wrap: break-word;     /* 長い単語も折り返す */
    white-space: pre-wrap;     /* 改行と自動折り返しを両立 */
}

.spot-image-container{
    display: flex;
    flex-direction: column;
}

#day-template .row.px-0 {
    display: flex;
    align-items: stretch; /* すべての子要素の高さを揃える */
}


.spot-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* スクロールバーのスタイル */
.spot-description::-webkit-scrollbar {
    width: 0.625rem;
}

.spot-description::-webkit-scrollbar-track {
    background: #e1e2e3;
    border-radius: 2rem;
}

.spot-description::-webkit-scrollbar-thumb {
    background: #b2b2b3;
    border-radius: 2rem;
}

.spot-description::-webkit-scrollbar-thumb:hover {
    background: #aeaeae;
}

/* MAP */
#map {
    height: 500px;  /* ← これ絶対必要 */
    width: 100%;
}

.official-badge{
    position: absolute;
    top: -3rem; 
    left: -3rem; 
    z-index: 10;
}

.official-badge-xl{
    position: absolute;
    top: -2rem; 
    left: -2rem; 
    z-index: 10;
}

.modal {
  z-index: 1055 !important; /* Bootstrapの標準より上 */
}

.modal-backdrop {
  z-index: 1050 !important;
}

body.modal-open {
  overflow: hidden; /* 背景スクロール防止 */
}

.fa-heart{
    font-size: 2rem;
}

.bg-quest-blue{
    background-color: #B4D5F4;
}

.bg-quest-green{
    background-color: #C2E5E5;
}

.like-button-wrapper {
    position: relative;
    display: inline-block;
}

.login-tooltip {
    display: none;
    position: absolute;
    text-align: left !important;
    top: 50%;
    left: 100%;
    transform: translateY(-50%);
    background-color: #f8f9fa;
    color: #333;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 0.75rem;
    line-height: 1.4;
    white-space: normal;
    max-width: 250px;
    min-width: 180px;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
    z-index: 999;
}

.like-button-wrapper:hover .login-tooltip {
    display: block !important;
}

.like-disabled {
    pointer-events: none;   /* クリック不可 */
    cursor: default;
}

