/* =======================================
   list 전용: 버튼 아래(빨간네모)만 스크롤
   핵심: 부모 체인에 min-height:0 / height 제약 확실히
======================================= */

/* stage는 grid이지만, outer가 고정 height라 상관은 적음.
   그래도 iOS/크롬에서 내부 스크롤 안정성 위해 min-height:0 추가 */
.stage{
  min-height: 0;
}

/* outer가 이미 height를 갖고 있지만 안전하게 */
.outer{
  min-height: 0;
}

/* ✅ box-bottom이 flex:1이라도 내부 스크롤 위해 min-height:0 필수 */
.box-bottom{
  min-height: 0;
  display: flex;
  flex-direction: column;
}

/* 아래 박스 내부 래퍼 */
.gb-wrap{
  flex: 1;
  min-height: 0;          /* ⭐ 핵심 */
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.gb-heading{
  font-size: var(--fs-15);
  margin: 0;
  padding-left: 6px;
  font-weight: 400;
}

/* 메시지 남기기 버튼 */
.write-btn{
  display: block;
  border: 2px solid var(--border);
  border-radius: 10px;
  padding: 18px 14px;
  text-align: center;
  font-size: var(--fs-15);
  background: #fff;
}
.write-btn:hover{ background: #f7f7f7; }

/* 기준선 */
.gb-divider{
  border-bottom: 1px solid #666;
  padding-bottom: 8px;
  margin: 0 6px;
}

/* ✅ 빨간 네모 영역(공지+수정+메시지 포함) 스크롤 */
.gb-scroll-area{
  flex: 1;
  min-height: 0;                 /* ⭐ 핵심 */
  overflow-y: auto;              /* 스크롤 */
  -webkit-overflow-scrolling: touch; /* iOS 부드러운 스크롤 */
  overscroll-behavior: contain;  /* 바운스/외부 스크롤 전파 방지 */
  padding: 0 6px 6px;
}

.gb-notice{
  margin: 0 0 8px;
  font-size: var(--fs-10);
  line-height: 1.4;
  color: #d40000;
}

.gb-tools{
  margin: 0 0 10px;
  font-size: var(--fs-12);
  color: var(--blue);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.gb-tools:hover{ text-decoration: underline; }

/* 메시지 리스트 */
.msg-list{
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* 메시지 카드 */
.msg-card{
  border: 2px solid #666;
  border-radius: 12px;
  padding: 10px 12px;
  background: #fff;
}

.msg-name{
  font-size: var(--fs-12);
  margin: 0 0 6px;
  font-weight: 400;
}

.msg-body{
  font-size: var(--fs-12);
  line-height: 1.45;
  margin: 0;
}

/* 공개 전 블러 */
.msg-body.is-blurred{
  filter: blur(4px);
  user-select: none;
}

/* 스크롤바(선택) */
.gb-scroll-area::-webkit-scrollbar{ width: 8px; }
.gb-scroll-area::-webkit-scrollbar-track{ background: transparent; }
.gb-scroll-area::-webkit-scrollbar-thumb{
  background: #cfcfcf;
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
