@charset "utf-8";
/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap'); */
/* NotoSans 쓸 경우 주석 풀고, body 적용 */

/*
 * Pretendard: OTF 원본(웨이트당 ~1.55MB) 대신 공식 static subset woff2.
 * 2026-08-27 Fast 4G 기준(개발서버 메인, Disable cache): 90요청 / 11.0MB / Load 12.41s
 * Light(300)·SemiBold(600)는 별도 파일 없이 Regular/Bold 파일에 매핑해 다운로드 수를 줄인다.
 */
@font-face {
  font-family: "Pretendard";
  src: url("fonts/woff2/Pretendard-Regular.subset.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Pretendard";
  src: url("fonts/woff2/Pretendard-Regular.subset.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Pretendard";
  src: url("fonts/woff2/Pretendard-Medium.subset.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Pretendard";
  src: url("fonts/woff2/Pretendard-Bold.subset.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Pretendard";
  src: url("fonts/woff2/Pretendard-Bold.subset.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "GmarketSans";
  src: url("fonts/GmarketSansLight.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "GmarketSans";
  src: url("fonts/GmarketSansMedium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "GmarketSans";
  src: url("fonts/GmarketSansBold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

* {
  word-break: keep-all;
  box-sizing: border-box;
}

body {
  font-family:
    "Pretendard", "Noto Emoji", "Segoe UI Emoji", sans-serif !important;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

html {
  font-family:
    "Pretendard", "Noto Emoji", "Segoe UI Emoji", sans-serif !important;
}

/* 초기화 */
html {
  overflow-y: auto !important;
}

html,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
img {
  margin: 0;
  padding: 0;
  border: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
  font-family: inherit !important;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul,
dl,
dt,
dd {
  margin: 0;
  padding: 0;
  list-style: none;
}

legend {
  position: absolute;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  text-indent: -9999em;
  overflow: hidden;
}

label,
input,
button,
select,
img {
  vertical-align: middle;
  font-size: 1em;
}

input,
button {
  margin: 0;
  padding: 0;
  font-family: inherit !important;
}

input[type="submit"] {
  cursor: pointer;
}

button {
  cursor: pointer;
}

textarea,
select {
  font-family: inherit !important;
}

select {
  margin: 0;
}

p {
  margin: 0;
  padding: 0;
  word-break: break-all;
}

pre {
  overflow-x: scroll;
  font-size: 1.1em;
}

a {
  color: inherit;
  text-decoration: none;
}

/*head.sub.php + lib/itgo.theme.colors.php 에서 --point 등 브랜드 변수 주입 */
:root {
  --primary: #191919;
  --seconday: #9f9f9f;
  --header-h: 54px;
  --lnb-h: 48px;
  --footer-h: 286px;
}

/* 입력·선택 필드 포커스 — point 컬러 통일 */
input:not([type="button"]):not([type="submit"]):not([type="reset"]):not(
    [type="checkbox"]
  ):not([type="radio"]):not([type="hidden"]):not([type="file"]):not(
    [type="image"]
  ):not([type="range"]):not(.itgo-sidebar-search__input):not(
    .itgo-mobile-search__input
  ):not(.itgo-board-combined__input):focus,
select:focus {
  outline: none;
  border-color: var(--point, #C7852E) !important;
  box-shadow: 0 0 0 1px var(--point, #C7852E);
}

/* textarea — 자체 outline/ring 비활성, 직계 부모 테두리로 포커스 표시 */
textarea {
  -webkit-tap-highlight-color: transparent;
}

textarea:focus,
textarea:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

div:has(> textarea:focus),
.itgo-textarea-field:focus-within {
  border-color: var(--point, #C7852E) !important;
}

div:has(> textarea) > textarea,
.itgo-textarea-field > textarea {
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

textarea.itgo-textarea-box {
  border: 1px solid #d7d7d7;
  transition: border-color 0.2s ease;
}

textarea.itgo-textarea-box:focus,
textarea.itgo-textarea-box:focus-visible {
  border-color: var(--point, #C7852E) !important;
}

.overlay {
  position: relative;
}

.overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 0;
}

#header.active {
  background-color: #fff !important;
  color: #191919 !important;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.06);
}

.itgo-toggle {
  position: relative;
  width: 40px;
  height: 20px;
  border-radius: 9999px;
  background: #d9d9d9;
  transition: background 0.2s ease;
}

.itgo-toggle::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: 9999px;
  background: #fff;
  transition: transform 0.2s ease;
}

.itgo-toggle-input:checked + .itgo-toggle {
  background: var(--point);
}

.itgo-toggle-input:checked + .itgo-toggle::after {
  transform: translateX(20px);
}

.itgo-field-label {
  width: 123px;
  flex-shrink: 0;
  font-size: 0.875rem;
  color: rgba(0, 0, 0, 0.8);
}

.itgo-field-required {
  color: var(--point);
}

.itgo-input {
  width: 100%;
  height: 45px;
  border: 1px solid #d9d9d9;
  border-radius: 8px;
  padding: 0 20px;
  font-size: 0.9375rem;
  color: #191919;
  background: #fff;
}

.itgo-input:focus {
  outline: none;
  border-color: var(--point, #C7852E) !important;
  box-shadow: 0 0 0 1px var(--point, #C7852E);
}

/* readonly input: .itgo-input:focus !important 덮어쓰기 (div 잠금 필드는 Tailwind 유틸 사용) */
.itgo-input.itgo-input--locked:focus,
.itgo-input.itgo-input--locked:focus-visible {
  outline: none;
  border-color: #e5e5e5 !important;
  box-shadow: none !important;
}

.itgo-password-field {
  position: relative;
  display: block;
  width: 100%;
  max-width: 100%;
}

.itgo-password-field.itgo-field-flex {
  flex: 1 1 0%;
  min-width: 0;
}

.itgo-password-field .itgo-password-input--pad,
.itgo-password-field input[type="password"],
.itgo-password-field input[type="text"].itgo-password-input--pad {
  padding-right: 2.75rem !important;
  width: 100%;
}

.itgo-password-toggle {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #9f9f9f;
  cursor: pointer;
}

.itgo-password-toggle:hover,
.itgo-password-toggle:focus {
  color: #191919;
  outline: none;
}

.itgo-password-toggle i {
  font-size: 1.25rem;
  line-height: 1;
}

.itgo-form-box {
  background: #fff;
  border-radius: 12px;
  padding: 40px 60px;
}

.itgo-form-panel {
  border: 1px solid #ececec;
  border-radius: 12px;
  padding: 40px;
}

.itgo-field-flex {
  flex: 1 1 0%;
  min-width: 0;
  width: 100%;
}

.itgo-biz-confirm-loading {
  width: 280px;
  height: 280px;
  max-width: 100%;
  margin: 0 auto;
  object-fit: contain;
}

.itgo-biz-confirm-body {
  padding: 1.25rem 0;
}

.itgo-biz-confirm-visual {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 1200px) {
  .sub_tit {
    margin-bottom: 2rem;
  }
}

/* 신고 모달 */
.itgo-report-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.itgo-report-modal.is-open {
  display: flex;
}

.itgo-report-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.itgo-report-modal__panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 480px;
  max-height: calc(100vh - 32px);
  /* [ITGO-UI1] 스크롤은 form 에서만 — 패널 전체가 스크롤되면 스크롤바가 둥근 모서리를 가림 (콜라주 시트와 같은 3단 구조) */
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  padding: 24px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.itgo-report-modal__panel .itgo-report-form {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  margin: 0 -12px; /* 스크롤바를 카드 구역보다 12px 바깥에 두고, 포커스 테두리도 안 잘리게 */
  padding: 0 12px;
}

.itgo-report-modal__head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.itgo-report-modal__title {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #191919;
}

.itgo-report-modal__close {
  /* [ITGO-UI1] 글쓰기 선택 창의 닫기 버튼과 같은 규격·호버 */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #666;
  cursor: pointer;
}

.itgo-report-modal__close:hover {
  background: #fafafa;
  color: #191919;
}

/* [ITGO] 신고 창 하단 버튼 호버 — 사이트의 정해진 버튼 호버 규칙에 맞춘다.
 *   취소(흰 배경·회색 테두리): 사이트 보조 버튼 관례인 hover 배경 #fafafa (다른 취소류 버튼과 동일).
 *   신고하기(bg-point): 마크업에 이미 있는 hover:bg-[#e8682d](사이트 포인트 버튼 다수 관례)가
 *     .bg-point 의 !important 에 막혀 동작하지 않던 것을, 같은 값으로 !important 지정해 살린다. */
.itgo-report-modal button.h-10[data-itgo-report-close]:hover {
  background: #fafafa;
}
.itgo-report-modal button[type="submit"]:hover {
  background-color: #e8682d !important;
}

.itgo-report-reason-item:has(input:checked) {
  border-color: var(--point);
  background: var(--point-muted-bg);
}

body.itgo-report-open {
  overflow: hidden;
}

.itgo-biz-confirm-visual.is-loading {
  width: 280px;
  height: 280px;
  margin-bottom: 1rem;
}

.itgo-biz-confirm-visual.is-success {
  width: auto;
  height: auto;
  margin-bottom: 0.75rem;
  padding: 0.25rem 0;
}

.itgo-biz-confirm-success-icon {
  line-height: 1;
}

.itgo-biz-confirm-success-icon i {
  font-size: 5rem;
  color: var(--point);
}

.itgo-biz-confirm-detail {
  margin-bottom: 1.5rem;
}

@media (min-width: 1024px) {
  .itgo-biz-confirm-body {
    padding: 1.5rem 0;
  }

  .itgo-biz-confirm-loading {
    width: 400px;
    height: 400px;
  }

  .itgo-biz-confirm-visual.is-loading {
    width: 400px;
    height: 400px;
    margin-bottom: 1.25rem;
  }

  .itgo-biz-confirm-visual.is-success {
    margin-bottom: 1rem;
    padding: 0.5rem 0;
  }

  .itgo-biz-confirm-success-icon i {
    font-size: 6rem;
  }

  .itgo-biz-confirm-detail {
    margin-bottom: 2rem;
  }
}

.itgo-page-inner #register_form {
  background: transparent;
  margin-bottom: 0;
}

@media (max-width: 1023px) {
  html,
  body {
    background-color: #ffffff !important;
  }

  .itgo-page-inner,
  .itgo-mypage,
  #bo_list,
  #bo_v,
  #bo_w,
  #bo_memo,
  .site-wrap,
  .itgo-layout,
  .itgo-content {
    background-color: #ffffff !important;
  }

  .itgo-page-inner .itgo-form-box {
    padding: 16px;
    border-radius: 8px;
  }

  .itgo-page-inner .itgo-form-panel {
    padding: 16px;
    border-radius: 8px;
  }

  .itgo-page-inner .itgo-form-box > .itgo-form-panel {
    padding: 0;
    border: none;
    border-radius: 0;
  }

  .itgo-page-inner #register_form {
    max-width: none;
  }

  .itgo-page-inner .itgo-form-box .itgo-field-label,
  .itgo-page-inner #register_form .itgo-field-label {
    width: 100%;
  }

  .itgo-page-inner .itgo-form-box .itgo-field-flex,
  .itgo-page-inner #register_form .itgo-field-flex {
    width: 100%;
    flex: none;
  }

  .itgo-page-inner .itgo-form-box .itgo-input,
  .itgo-page-inner #register_form .itgo-input {
    width: 100%;
    height: 45px;
    min-height: 45px;
    box-sizing: border-box;
    flex: none;
  }

  .itgo-page-inner .itgo-form-box .itgo-btn-primary,
  .itgo-page-inner #register_form .itgo-btn-primary {
    min-width: 0;
    width: 100%;
    max-width: 100%;
  }
}

.itgo-page-inner #register_form .itgo-field-flex .itgo-input {
  width: 100%;
}

/* 연락처 + 본인인증 버튼 (가로 정렬, 모바일 오버플로우 방지) */
.itgo-nice-hp-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.itgo-page-inner #register_form .itgo-nice-hp-row .itgo-input,
.itgo-nice-hp-row .itgo-input {
  width: 0 !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 0% !important;
  box-sizing: border-box !important;
}

.itgo-page-inner #register_form .itgo-nice-hp-row .itgo-nice-auth-btn,
.itgo-nice-hp-row .itgo-nice-auth-btn {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  height: 45px !important;
  min-height: 45px !important;
  margin: 0;
  padding: 0 12px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(25, 25, 25, 0.4);
  border-radius: 8px;
  background: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  color: #191919;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.itgo-page-inner #register_form .itgo-nice-hp-row .itgo-nice-auth-btn:not(.hidden),
.itgo-nice-hp-row .itgo-nice-auth-btn:not(.hidden) {
  display: inline-flex;
}

.itgo-page-inner #register_form .itgo-nice-hp-row .itgo-nice-auth-btn.hidden,
.itgo-nice-hp-row .itgo-nice-auth-btn.hidden {
  display: none !important;
}

.itgo-page-inner #register_form .itgo-nice-hp-row .itgo-nice-auth-btn:hover,
.itgo-nice-hp-row .itgo-nice-auth-btn:hover {
  border-color: var(--point, #ff7534);
  color: var(--point, #ff7534);
}

.itgo-nice-hp-row .itgo-nice-auth-done {
  flex: 0 0 auto;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--point, #ff7534);
  white-space: nowrap;
}

.itgo-nice-hp-row .itgo-nice-auth-done:not(.hidden) {
  display: inline-flex;
}

.itgo-nice-hp-row .itgo-nice-auth-done.hidden {
  display: none !important;
}

/* 매장주소 — 우편번호 + 주소검색 (가로 정렬, 높이 일치, 버튼은 텍스트 폭만) */
.itgo-store-zip-row {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0.5rem;
  width: 100%;
}

.itgo-page-inner #register_form .itgo-store-zip-input,
.itgo-store-zip-input {
  width: 7.5rem !important;
  max-width: none;
  min-width: 7.5rem;
  flex: 0 0 7.5rem;
  height: 45px !important;
  min-height: 45px !important;
  box-sizing: border-box;
}

.itgo-page-inner #register_form .itgo-store-zip-btn,
.itgo-store-zip-btn {
  flex: 0 0 auto;
  width: auto !important;
  max-width: none;
  height: 45px !important;
  min-height: 45px !important;
  max-height: 45px !important;
  margin: 0;
  padding: 0 12px;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d9d9d9;
  border-radius: 8px;
  background: #fff;
  color: #191919;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.itgo-store-zip-btn:hover {
  border-color: var(--point, #ff7534);
  color: var(--point, #ff7534);
}

.itgo-text-point {
  color: var(--point);
}

/*
 * text-point / bg-point / border-point 폴백
 * Tailwind 빌드가 rgb(var(--point-rgb-tw)/…) 형태일 때 아이콘 색이 누락되는 경우 대비
 * (가입유형·글보기 등급 아이콘 등)
 */
.text-point,
.\!text-point {
  color: var(--point, #C7852E) !important;
}
.hover\:text-point:hover,
.hover\:\!text-point:hover {
  color: var(--point, #C7852E) !important;
}
.group:hover .group-hover\:text-point {
  color: var(--point, #C7852E) !important;
}
.bg-point {
  background-color: var(--point, #C7852E) !important;
}
.border-point,
.\!border-point {
  border-color: var(--point, #C7852E) !important;
}
.hover\:border-point:hover,
.hover\:\!border-point:hover,
.focus\:border-point:focus {
  border-color: var(--point, #C7852E) !important;
}
.peer:checked ~ .peer-checked\:border-point {
  border-color: var(--point, #C7852E) !important;
}
.hover\:border-point\/40:hover {
  border-color: rgba(var(--point-rgb, 199, 133, 46), 0.4) !important;
}


.itgo-page-inner #register_form .is_captcha_use {
  margin-top: 0.5rem;
}

.itgo-page-inner #register_form #captcha {
  margin: 0;
  padding: 1rem;
  border: 1px solid #e5e5e5;
  border-radius: 0.5rem;
  background: #fafafa;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.itgo-page-inner #register_form #captcha legend {
  display: none;
}

.itgo-page-inner #register_form #captcha #captcha_img {
  display: block;
  flex: 0 0 auto;
  width: 100%;
  max-width: 10rem;
  height: auto;
  margin: 0;
  border: 1px solid #d9d9d9;
  border-radius: 0.375rem;
}

.itgo-page-inner #register_form #captcha #captcha_key,
.itgo-page-inner #register_form #captcha .captcha_box {
  flex: 1 1 8rem;
  min-width: 0;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0.625rem 0.75rem;
  border: 1px solid #d9d9d9;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  height: 2.5rem;
}

.itgo-page-inner #register_form #captcha #captcha_reload,
.itgo-page-inner #register_form #captcha #captcha_mp3 {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin: 0;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-radius: 0.375rem;
  background: #fff !important;
  background-image: none !important;
  font-size: 1.25rem;
  color: #434343;
  line-height: 1;
  overflow: visible;
  text-indent: 0;
  cursor: pointer;
  vertical-align: middle;
}

.itgo-page-inner #register_form #captcha #captcha_reload i,
.itgo-page-inner #register_form #captcha #captcha_mp3 i {
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1;
  color: #434343;
}

.itgo-page-inner #register_form #captcha #captcha_reload .sr-only,
.itgo-page-inner #register_form #captcha #captcha_mp3 .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.itgo-page-inner #register_form #captcha #captcha_info {
  flex: 0 0 100%;
  display: block;
  margin: 0;
  font-size: 0.8125rem;
  color: #9f9f9f;
}

.itgo-page-inner #register_form #captcha #captcha_audio {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.itgo-page-inner #register_form #captcha.m_captcha #captcha_img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 60px;
  margin: 0;
}

@media (max-width: 1023px) {
  .itgo-page-inner #register_form #captcha #captcha_key,
  .itgo-page-inner #register_form #captcha .captcha_box {
    flex: 1 1 0;
    min-width: 0;
    max-width: 100%;
    height: 2.5rem;
    min-height: 2.5rem;
  }
}

.itgo-biz-cert-dropzone {
  width: 100%;
  transition: border-color 0.2s ease;
}

.itgo-biz-cert-dropzone:focus-within {
  border-color: var(--point);
}

.itgo-login-card {
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-radius: 20px;
}

.itgo-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--point);
  color: #fff;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.itgo-btn-primary:hover,
.itgo-btn-primary:focus {
  background-color: var(--point-hover);
  color: #fff;
}

.itgo-btn-primary:disabled {
  background-color: #bfbfbf;
  cursor: not-allowed;
}

@keyframes itgo-spin {
  to {
    transform: rotate(360deg);
  }
}

.animate-spin {
  animation: itgo-spin 1s linear infinite;
}

/* 아이콘 있는 경우 header.active * {color: #000 !important;} 해주시면 됩니다. */

/* 애니메이션 관련 */

/* 버튼 */
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
}

.btn-primary {
  background-color: var(--primary);
  color: #fff;
  transition:
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
}

.btn-primary:hover,
.btn-primary:focus {
  background: #fff;
  color: var(--primary);
  outline: 1px solid var(--primary);
  box-shadow: 0 2px 8px rgba(96, 165, 250, 0.15);
}

.btn-primary:active {
  background: var(--primary);
  color: #fff;
  box-shadow: 0 1px 4px rgba(96, 165, 250, 0.1);
}

.btn-secondary {
  background-color: var(--seconday);
  color: #fff;
  transition:
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
}

.btn-secondary:hover,
.btn-secondary:focus {
  background: #fff;
  color: var(--seconday);
  outline: 1px solid var(--seconday);
  box-shadow: 0 2px 8px rgba(156, 163, 175, 0.15);
}

.btn-secondary:active {
  background: var(--seconday);
  color: #fff;
  box-shadow: 0 1px 4px rgba(156, 163, 175, 0.1);
}

.btn-primary-outline {
  background-color: transparent;
  color: var(--primary);
  outline: 1px solid var(--primary);
  transition:
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
}

.btn-primary-outline:hover,
.btn-primary-outline:focus {
  background: var(--primary);
  color: #fff;
  box-shadow: 0 2px 8px rgba(96, 165, 250, 0.15);
  outline: none;
}

.btn-primary-outline:active {
  background: #fff;
  color: var(--primary);
  box-shadow: 0 1px 4px rgba(96, 165, 250, 0.1);
}

.btn-secondary-outline {
  background-color: transparent;
  color: var(--seconday);
  outline: 1px solid var(--seconday);
  transition:
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
}

.btn-secondary-outline:hover,
.btn-secondary-outline:focus {
  background: var(--seconday);
  color: #fff;
  box-shadow: 0 2px 8px rgba(156, 163, 175, 0.15);
  outline: none;
}

.btn-secondary-outline:active {
  background: #fff;
  color: var(--seconday);
  box-shadow: 0 1px 4px rgba(156, 163, 175, 0.1);
}

.btn-animation {
  position: relative;
  overflow: hidden;
  color: var(--primary);
  outline: 1px solid var(--primary);
}

.btn-animation::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: var(--primary);
  z-index: -1;
  transition: all 0.3s ease;
}

.btn-animation:hover {
  color: #fff;
  outline: 0;
}

.btn-animation:hover::before {
  width: 100%;
}

.button:disabled,
.btn-primary:disabled,
.btn-secondary:disabled,
.btn-primary-outline:disabled,
.btn-secondary-outline:disabled,
.btn-animation:disabled {
  background: #e5e7eb !important;
  /* Tailwind gray-200 */
  color: #b0b0b0 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
  opacity: 0.6;
  pointer-events: none;
  filter: grayscale(0.2);
}

.sit_icon {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
}

.editor-content img {
  display: initial;
}

#sev_himg * {
  font-family:
    "Pretendard", "Noto Emoji", "Segoe UI Emoji", sans-serif !important;
}

.sev_admin {
  display: none;
}

/* Lnb 관련  */
/* lnb  */
.lnb_wrap {
  position: relative;
}

.lnb {
  background: #fff;
}

.lnb .lnb_map {
  height: var(--lnb-h);
  display: flex;
  align-items: center;
  border-left: 1px solid #f1f1f1;
  border-right: 1px solid #f1f1f1;
  max-width: 1600px;
  margin: 0 auto;
}

.lnb .lnb_map .home {
  width: var(--lnb-h);
  height: 100%;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.lnb .lnb_map .home a {
  color: #333;
}

.lnb .lnb_map > li {
  height: 100%;
  border-right: 1px solid #ddd;

  position: relative;
}

.lnb .lnb_map li.dep a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lnb .lnb_map li.dep a span {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;

  color: #333;
}

.lnb .lnb_map li.dep ul {
  display: none;
  position: absolute;
  left: 0;
  top: var(--lnb-h);
  width: 100%;
  z-index: 9999;
}

.lnb .lnb_map li.dep ul li {
  width: 100%;
  background: #f9f9f9;
  border-bottom: 1px solid #fff;
}

.lnb .lnb_map li.dep ul li a:hover {
  background: var(--primary);
  color: #fff;
  transition: 0.3s all;
}

.lnb .lnb_map li.dep ul li a.on {
  background: var(--primary);
  color: #fff;
}

/* 구글 번역 부분 커스텀 css - 번역기능 있을 경우만 사용 */

body {
  position: static !important;
  top: 0px !important;
}

.goog-logo-link {
  display: none !important;
}

.goog-te-gadget {
  color: transparent !important;
  display: none !important;
}

body > .skiptranslate,
.goog-logo-link,
.gskiptranslate,
.goog-te-gadget span,
.goog-te-banner-frame,
#goog-gt-tt,
.goog-te-balloon-frame,
div#goog-gt- {
  display: none !important;
}

.goog-te-gadget {
  color: transparent !important;
  font-size: 0px;
  width: 100px;
}

.goog-text-highlight {
  background: none !important;
  box-shadow: none !important;
}

#google_translate_element select {
  background: transparent;
  color: #000;
  border: none;
  font-weight: bold;
  border-radius: 0px;
  padding: 8px 12px;
}

/* 게시판 목록 — 전체선택 체크박스 (gallery 배너 게시판 등) */
.itgo-board-select-all__label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: #666;
  cursor: pointer;
  user-select: none;
}

.itgo-board-select-all__text {
  display: inline-block;
  line-height: 1.25rem;
}

.itgo-board-select-all input[type="checkbox"],
#gall_allchk.itgo-board-select-all input[type="checkbox"] {
  position: static !important;
  top: auto !important;
  left: auto !important;
  width: 1rem !important;
  height: 1rem !important;
  min-width: 1rem;
  min-height: 1rem;
  margin: 0 !important;
  opacity: 1 !important;
  z-index: auto !important;
  overflow: visible !important;
  flex-shrink: 0;
}

/* 게시판 목록 — 툴바 관리 아이콘 (basic legacy style.css override) */
#bo_list.itgo-board-combined .itgo-board-list-actions {
  float: none;
}

@media (max-width: 1023px) {
  .site-wrap:has(#bo_list.itgo-board-combined),
  .itgo-layout:has(#bo_list.itgo-board-combined),
  .itgo-layout .itgo-content:has(#bo_list.itgo-board-combined) {
    overflow: visible !important;
    overflow-x: clip;
  }

  #bo_list.itgo-board-combined {
    padding-top: 0;
    overflow: visible;
  }

  #bo_list.itgo-board-combined .itgo-board-combined__title-wrap--sticky-mobile {
    position: -webkit-sticky;
    position: sticky;
    top: var(--itgo-header-h, 54px);
    z-index: 40;
    margin-left: -1rem;
    margin-right: -1rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.25rem;
    padding-bottom: 0.375rem;
    background-color: #fff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
  }

  #bo_list.itgo-board-combined .itgo-board-combined__title-wrap {
    margin-top: 10px;
    margin-bottom: 0;
  }

  #bo_list.itgo-board-combined .itgo-board-group-label {
    margin-bottom: 0.125rem;
    line-height: 1.25;
  }

  #bo_list.itgo-board-combined .itgo-board-combined__toolbar-mobile {
    padding-top: 0.125rem;
    padding-bottom: 0;
  }
}

#bo_list.itgo-board-combined .itgo-board-list-actions .more_opt.is_list_btn {
  display: none !important;
  float: none;
  width: auto;
  top: auto;
  right: auto;
  padding: 0;
  border-radius: 0.5rem;
}

#bo_list.itgo-board-combined
  .itgo-board-list-actions
  .more_opt.is_list_btn::before,
#bo_list.itgo-board-combined
  .itgo-board-list-actions
  .more_opt.is_list_btn::after {
  content: none;
}

#bo_list.itgo-board-combined
  .itgo-board-list-actions
  .more_opt.is_list_btn.is-open {
  display: block !important;
}

#bo_list.itgo-board-combined .itgo-board-list-actions .more_opt.is_list_btn li {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
  border-bottom: 0;
  text-align: left;
}

/* 회원가입 단계 표시 — iOS Safari 에서 Tailwind point 유틸 미적용 대비 CSS 변수 직접 사용 */
.itgo-register-step__bar {
  background: #bfbfbf;
}

.itgo-register-step__num {
  border-color: #bfbfbf;
  color: #bfbfbf;
}

.itgo-register-step__label {
  color: #bfbfbf;
}

.itgo-register-step.is-active .itgo-register-step__bar {
  background: var(--point, #c7852e);
}

.itgo-register-step.is-active .itgo-register-step__num {
  border-color: var(--point, #c7852e);
  color: var(--point, #c7852e);
  box-shadow: 0 0 3.5px 0 var(--point, #c7852e);
}

.itgo-register-step.is-active .itgo-register-step__label {
  color: var(--point, #c7852e);
}

/* 가입 유형 선택 — 활성 테두리 = 단계 바 포인트 컬러와 동일 */
.itgo-register-role-card input:checked + span {
  border-color: var(--point, #c7852e) !important;
  box-shadow: 0 0 0 1px var(--point, #c7852e);
}

/* 페이지네이션 — 전체글(itgo-post-pagination)과 동일: 흰 배경 + 포인트 보더 */
.pg_wrap {
  clear: both;
  float: none;
  display: flex;
  width: 100%;
  justify-content: center;
  margin: 0;
}

.pg_wrap .pg {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-align: center;
}

.pg_wrap .pg_page,
.pg_wrap .pg_current {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 2.5rem;
  height: 2.5rem;
  margin: 0;
  padding: 0 0.5rem;
  border: 1px solid #ececec;
  border-radius: 0.25rem;
  background: #fff !important;
  background-image: none !important;
  color: #9f9f9f;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
  text-indent: 0;
  overflow: visible;
  vertical-align: middle;
}

.pg_wrap .pg_page:hover,
.pg_wrap .pg_page:focus {
  color: var(--point, #ff7534);
  border-color: var(--point, #ff7534);
  background: #fff !important;
  text-decoration: none;
}

.pg_wrap .pg_current {
  color: var(--point, #ff7534) !important;
  border-color: var(--point, #ff7534) !important;
  background: #fff !important;
  font-weight: 500;
}

/* 이전/다음 — 전체글과 동일 Remix 단일 화살표 */
.pg_wrap .pg_prev,
.pg_wrap .pg_next {
  font-size: 0;
  color: transparent;
  background-image: none !important;
  text-indent: 0;
  overflow: hidden;
}

.pg_wrap .pg_prev i,
.pg_wrap .pg_next i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  line-height: 1;
  color: #9f9f9f;
}

.pg_wrap .pg_prev:hover i,
.pg_wrap .pg_next:hover i {
  color: var(--point, #ff7534);
}

.itgo-board-combined__pagination,
.itgo-memo-board__pagination,
.itgo-search-results__pagination,
.itgo-member-profile__pagination,
.itgo-mypage-pagination {
  width: 100%;
}

.itgo-board-combined__pagination .pg_wrap,
.itgo-memo-board__pagination .pg_wrap,
.itgo-search-results__pagination .pg_wrap,
.itgo-member-profile__pagination .pg_wrap {
  margin: 0;
}

/* 게시판 공통 — 검색 필터·즐겨찾기·검색창 (combined / memo 등) */
.itgo-board-combined__search-row {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: stretch;
}

@media (min-width: 1024px) {
  .itgo-board-combined__search-row {
    flex-direction: row;
    gap: 12px;
    justify-content: flex-end;
  }
}

@media (max-width: 1023px) {
  .itgo-board-combined__search-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 8px;
  }

  .itgo-board-combined__search-field {
    grid-column: 1 / -1;
  }

  .itgo-board-filter__trigger {
    height: 42px;
    padding: 0 12px;
    font-size: 13px;
  }

  .itgo-board-filter--period .itgo-board-filter__menu {
    width: 100%;
    min-width: 0;
  }

  .itgo-board-combined__search-field {
    height: 46px;
  }
}

@media (min-width: 1024px) {
  .itgo-board-combined__search-field {
    flex: 1 1 auto;
    min-width: 0;
  }
}

.itgo-board-filter {
  position: relative;
}

.itgo-board-filter__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 46px;
  padding: 0 14px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  background: #fff;
  font-size: 14px;
  line-height: 1.2;
  color: #191919;
  text-align: left;
  cursor: pointer;
}

.itgo-board-filter.is-open .itgo-board-filter__trigger,
.itgo-board-filter__trigger:focus-visible {
  border-color: var(--point);
  outline: none;
}

.itgo-board-filter__label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.itgo-board-filter__icon {
  flex-shrink: 0;
  font-size: 18px;
  color: #9f9f9f;
  transition: transform 0.2s ease;
}

.itgo-board-filter.is-open .itgo-board-filter__icon {
  transform: rotate(180deg);
}

.itgo-board-filter__menu {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 30;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.itgo-board-filter--period .itgo-board-filter__menu {
  min-width: 100%;
  width: 275px;
}

.itgo-board-filter__options {
  margin: 0;
  padding: 6px 0;
  list-style: none;
}

.itgo-board-filter__custom {
  padding: 12px 14px 14px;
  border-top: 1px solid #ececec;
}

.itgo-board-filter__custom-title {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.2;
  color: #191919;
}

.itgo-board-filter__custom-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
}

.itgo-board-filter__date {
  width: 100%;
  min-width: 0;
  height: 36px;
  padding: 0 8px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  font-size: 12px;
  color: #191919;
  background: #fff;
}

.itgo-board-filter__date-sep {
  flex-shrink: 0;
  font-size: 12px;
  color: #9f9f9f;
  line-height: 1;
}

.itgo-board-filter__date-apply {
  flex-shrink: 0;
  height: 36px;
  padding: 0 10px;
  border: 0;
  border-radius: 6px;
  background: var(--point);
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  cursor: pointer;
  white-space: nowrap;
}

.itgo-board-filter__date-apply:hover {
  background: var(--point-hover);
}

.itgo-board-filter.is-custom .itgo-board-filter__custom {
  background: var(--point-muted-bg);
}

.itgo-board-filter__option {
  display: block;
  width: 100%;
  padding: 10px 14px;
  border: 0;
  background: transparent;
  font-size: 14px;
  line-height: 1.2;
  color: #191919;
  text-align: left;
  cursor: pointer;
}

.itgo-board-filter__option:hover,
.itgo-board-filter__option.is-active {
  color: var(--point);
  background: var(--point-muted-bg);
}

.itgo-board-favorite-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-weight: 500;
}

.itgo-favorite-btn i {
  font-weight: 500;
}

.itgo-board-combined__search-field {
  display: flex;
  align-items: stretch;
  height: 46px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}

.itgo-board-combined__search-field:focus-within {
  border-color: var(--point);
}

.itgo-board-combined__input {
  height: 100%;
  border: 0;
  border-radius: 0;
  padding: 0 14px;
  font-size: 14px;
  color: #191919;
  background: transparent;
  outline: none;
}

.itgo-board-combined__input::placeholder {
  color: rgba(25, 25, 25, 0.4);
}

.itgo-board-combined__search-btn {
  width: 58px;
  height: auto;
  min-height: 100%;
  border: 0;
  border-radius: 0;
  background: var(--point);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.itgo-board-combined__search-btn:hover {
  background: var(--point-hover);
}

/* 게시판 글쓰기 — 임시저장 팝업, 에디터, 하단 버튼 */
#bo_w #autosave_wrapper {
  position: relative;
}

#bo_w #autosave_pop {
  display: none;
  z-index: 50;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 340px;
  max-width: calc(100vw - 32px);
  max-height: 380px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

@media (min-width: 1024px) {
  #bo_w #autosave_pop {
    width: 480px;
    max-height: 520px;
  }
}

html.no-overflowscrolling #bo_w #autosave_pop {
  max-height: 10000px;
}

#bo_w #autosave_pop strong {
  display: block;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  color: #191919;
  border-bottom: 1px solid #e9e9e9;
  text-align: left;
}

#bo_w #autosave_pop ul {
  margin: 0;
  padding: 8px 16px;
  list-style: none;
  overflow-y: auto;
  max-height: 200px; /* Mobile: 5 items (~40px each) */
  border-bottom: 1px solid #f3f4f6;
}

@media (min-width: 1024px) {
  #bo_w #autosave_pop ul {
    max-height: 400px; /* PC: 10 items (~40px each) */
  }
}

#bo_w #autosave_pop li {
  padding: 8px 0;
  border-bottom: 1px solid #f3f4f6;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  text-align: left;
}

#bo_w #autosave_pop li:last-child {
  border-bottom: 0;
}

#bo_w #autosave_pop a {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #1f2937;
  text-decoration: none;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  flex: 1;
  min-width: 0;
}

#bo_w #autosave_pop span {
  font-size: 11px;
  font-style: normal;
  color: #9ca3af;
  white-space: nowrap;
}

#bo_w #autosave_pop .autosave_del {
  margin: 0;
  padding: 2px 6px;
  border: 1px solid #fee2e2;
  background-color: #fef2f2;
  color: #ef4444;
  font-size: 11px;
  font-weight: 600;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}

#bo_w #autosave_pop .autosave_del:hover {
  background-color: #ef4444;
  color: #ffffff;
  border-color: #ef4444;
}

#bo_w #autosave_pop div {
  text-align: center;
  margin: 0;
  background: #f9fafb;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

#bo_w #autosave_pop .autosave_close {
  cursor: pointer;
  width: 100%;
  height: 36px;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #6b7280;
  font-size: 13px;
  font-weight: 500;
}

#bo_w #autosave_pop .autosave_close:hover {
  background: #f3f4f6;
  color: #1f2937;
}

#bo_w #btn_autosave {
  position: static;
  line-height: 1.2;
  white-space: nowrap;
}

.itgo-btn-autosave-manual {
  border: 1px solid #d1d5db;
  background: #fff;
  color: #191919;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.itgo-btn-autosave-manual:hover {
  border-color: #191919;
  background: #f9f9f9;
  color: #191919;
}

@media (max-width: 1023px) {
  /* [UI2] #bo_w padding-bottom 80px 제거 — 바가 카드 밖으로 나가 카드 아래 빈 공간이 필요 없음 */

  #btn_autosave_manual {
    position: absolute;
    top: 8px; /* [UI2] 원위치: 바 박스 안 윗줄(카드와 겹치지 않게), 붙으면 아래 --stuck 규칙으로 바 위 */
    bottom: auto;
    right: 0; /* [UI2] 바의 오른쪽 변 = 플로팅 열의 오른쪽 변(화면 오른쪽 16px) → 열에서 내려와도 같은 세로선 */
    z-index: 40;
    height: 38px;
    padding: 0 16px;
    border-radius: 20px;
    background-color: #fff;
    color: #191919;
    border: 1px solid #d1d5db;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
  }
  
  #btn_autosave_manual:hover {
    border-color: #191919;
    background-color: #f9f9f9;
    color: #191919;
  }
}

.itgo-autosave-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 99999;
  transform: translateX(-50%) translateY(12px);
  opacity: 0;
  pointer-events: none;
  padding: 12px 18px;
  border-radius: 8px;
  background: rgba(25, 25, 25, 0.92);
  color: #fff;
  font-size: 14px;
  line-height: 1.4;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

@media (max-width: 1023px) {
  .itgo-autosave-toast {
    bottom: auto;
    top: 80px;
    transform: translateX(-50%) translateY(-12px);
  }
}

.itgo-autosave-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

#bo_w .bo_w_tit #wr_subject {
  padding-right: 12px;
}

/* 글쓰기 폼 입력 높이 통일 (46px) */
#bo_w .itgo-write-control {
  display: block;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  padding: 0 12px;
  font-size: 14px;
  color: #191919;
  background-color: #fff;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  transition: border-color 0.2s ease;
}

#bo_w input.itgo-write-control,
#bo_w select.itgo-write-control {
  height: 46px;
  line-height: 1.4;
}

#bo_w input.itgo-write-control:focus,
#bo_w select.itgo-write-control:focus {
  border-color: var(--point);
  outline: none;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

#bo_w select.itgo-write-control {
  padding-right: 32px;
}

#bo_w .bo_w_tit #wr_subject.itgo-write-control {
  padding-right: 12px;
}

#bo_w .itgo-board-tags.itgo-write-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  height: auto;
  min-height: 46px;
  padding: 8px 12px;
  line-height: normal;
}

#bo_w .itgo-board-tags.itgo-write-control:focus-within {
  border-color: var(--point);
}

#bo_w .itgo-board-tags__input {
  flex: 1 1 140px;
  min-width: 140px;
  min-height: 28px;
  height: 28px;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  font-size: 14px;
  line-height: 28px;
  color: #191919;
  outline: none;
  box-shadow: none;
}

#bo_w .itgo-board-tags__input::placeholder {
  color: rgba(25, 25, 25, 0.4);
}

#bo_w .itgo-board-tags__input:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

#bo_w input[type="file"].itgo-write-control {
  height: 46px;
  padding: 6px 12px;
  line-height: normal;
  color: #6b7280;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#bo_w input[type="file"].itgo-write-control::file-selector-button {
  margin-right: 12px;
  height: 32px;
  padding: 0 16px;
  border: 0;
  border-radius: 6px;
  background: #f3f4f6;
  color: #374151;
  font-size: 14px;
  font-weight: 600;
  line-height: 32px;
  cursor: pointer;
  vertical-align: middle;
}

#bo_w input[type="file"].itgo-write-control::file-selector-button:hover {
  background: #e5e7eb;
}

#bo_w .bo_w_file .file_wr {
  display: block;
  width: 100%;
}

#bo_w .itgo-write-file-del {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fafafa;
}

#bo_w .itgo-write-file-del .custom-checkbox {
  margin-top: 2px;
}

#bo_w .itgo-write-file-del__label {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 6px;
  min-width: 0;
  flex: 1;
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #4b5563;
  word-break: break-word;
  overflow-wrap: anywhere;
}

#bo_w .itgo-write-file-del__name {
  font-weight: 500;
  color: #191919;
}

#bo_w .itgo-write-file-del__meta {
  color: #9ca3af;
}

#bo_w .itgo-write-file-del__action {
  color: #9f9f9f;
  white-space: nowrap;
}

#bo_w .itgo-write-file-help {
  margin-top: -8px;
}

/* 글 등록/저장 중 로딩 오버레이 */
.itgo-write-submit-loading {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  box-sizing: border-box;
  background: rgba(25, 25, 25, 0.55);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

.itgo-write-submit-loading[hidden] {
  display: none !important;
}

/* PC(lg+)에서는 로딩 오버레이 강제 비표시 */
@media (min-width: 1024px) {
  .itgo-write-submit-loading {
    display: none !important;
  }
}

.itgo-write-submit-loading__panel {
  width: 100%;
  max-width: 320px;
  padding: 28px 24px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
  text-align: center;
}

.itgo-write-submit-loading__spinner {
  width: 40px;
  height: 40px;
  margin: 0 auto 16px;
  border: 3px solid #ebebeb;
  border-top-color: var(--itgo-point, #c7852e);
  border-radius: 50%;
  animation: itgo-write-submit-spin 0.8s linear infinite;
}

.itgo-write-submit-loading__title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 600;
  color: #191919;
  line-height: 1.4;
}

.itgo-write-submit-loading__msg {
  margin: 0;
  font-size: 13px;
  font-weight: 400;
  color: #6b7280;
  line-height: 1.55;
  white-space: pre-line;
}

html.itgo-write-submit-loading-open,
body.itgo-write-submit-loading-open {
  overflow: hidden;
}

@keyframes itgo-write-submit-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 1023px) {
  #bo_w input[type="file"].itgo-write-control {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: auto;
    min-height: 46px;
    padding: 10px 12px;
    gap: 8px;
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
  }

  #bo_w input[type="file"].itgo-write-control::file-selector-button {
    margin-right: 0;
  }

  #bo_w .itgo-write-file-del__label {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }

  #bo_w .itgo-write-file-help {
    padding-bottom: 52px;
  }

  .itgo-write-submit-loading {
    padding: 16px;
  }

  .itgo-write-submit-loading__panel {
    max-width: 280px;
    padding: 24px 20px;
  }
}

#bo_w .wr_content {
  border-radius: 0;
  overflow: visible;
}

#bo_w .wr_content iframe,
#bo_w .wr_content .se2_inputarea,
#bo_w .wr_content .cke_chrome,
#bo_w .wr_content .cke_top,
#bo_w .wr_content .cke_bottom,
#bo_w .wr_content .se2_tool,
#bo_w .wr_content .se2_input_wrap,
.naver_smart_editor2,
.naver_smart_editor2 *,
.cke_chrome,
.cke_chrome * {
  border-radius: 0 !important;
}

/* [ITGO-E0] TinyMCE — 글쓰기 폼의 다른 입력과 같은 각·테두리 */
#bo_w .wr_content .tox-tinymce {
  border: 1px solid #e5e5e5 !important;
  border-radius: 0 !important;
  /* 크기 조절 드래그 중 TinyMCE 가 틀에 최대 z-index 를 인라인으로 넣어 사이트 헤더(z-index 50)를 덮는다 → 항상 헤더 아래 */
  z-index: 1 !important;
}
/* 툴바 연회색 배경 규칙 제거 — TinyMCE 기본(흰색)으로 (사용자 결정) */
#bo_w .wr_content .tox .tox-statusbar {
  border-top: 1px solid #eee;
}
/* [E0] 터치 기기(호버 없음)에서는 편집기 툴팁을 띄우지 않는다 — 「…」로 툴바를 펼치면 첫 항목에 포커스가 가며 힌트가 뜨는 문제 */
@media (hover: none), (pointer: coarse), (max-width: 1023px) {
  .tox .tox-tooltip,
  .tox .tox-tooltip-worker-container {
    display: none !important;
  }
}
@media (max-width: 1023px) {
  #bo_w .wr_content .tox-tinymce {
    max-width: 100%;
  }
}

#smart_editor2 {
  border: 0 !important;
}

#smart_editor2_content {
  border: 1px solid #e5e5e5 !important;
  border-radius: 0 !important;
}





@media (max-width: 1023px) {
  #bo_w .wr_content .se2_tool,
  #bo_w .wr_content .se2_tool_bar {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  #bo_w .wr_content .se2_inputarea,
  #bo_w .wr_content iframe.se2_inputarea {
    width: 100% !important;
    max-width: 100%;
    min-height: 220px !important;
  }

  #bo_w .cheditor-container {
    max-width: 100%;
    overflow: hidden;
  }

  #bo_w .cheditor-container #toolbar {
    height: auto !important;
    min-height: 47px;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    box-sizing: border-box;
  }

  #bo_w .cheditor-editarea-wrapper,
  #bo_w .cheditor-editarea,
  #bo_w .cheditor-container iframe.cheditor-editarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  #bo_w .cheditor-viewmode,
  #bo_w .cheditor-resizebar {
    max-width: 100%;
  }

  .cheditor-popup-window {
    max-width: calc(100vw - 16px) !important;
    box-sizing: border-box;
  }

  .cheditor-popup-cframe,
  .cheditor-popup-cframe iframe {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}

.itgo-board-view__content video,
.editor_content video,
#bo_v_con video {
  /* 에디터 width/float 정렬 유지, 화면 넘침만 방지 */
  max-width: 100%;
  height: auto;
}

/* [ITGO-F1] 본문 이미지는 스킨과 무관하게 화면 폭을 넘지 않는다.
 *   에디터가 원본 픽셀 width/height 를 속성이나 인라인 style 로 넣어도 비율을 유지한 채 줄어든다.
 *   height 에 !important 를 두는 이유: 에디터에서 크기를 조절하면 style="width:1000px;height:750px" 처럼
 *   저장되는데, 좁은 화면에서 width 만 줄고 height 가 남아 사진이 눌려 보였다(원인 후보 2).
 *   (스킨별 style.css 에 같은 규칙이 있지만 memo·combined 등 누락 스킨을 위해 공통에 둔다) */
.itgo-board-view__content img,
.editor_content img,
#bo_v_con img {
  max-width: 100% !important;
  height: auto !important;
}

/* 게시글 본문 — SmartEditor(.se2_inputarea)와 동일하게 맞춤 */
.itgo-board-view__content,
.editor_content,
#bo_v_con {
  word-break: break-word;
  overflow-wrap: anywhere;
}

/* 에디터: .se2_inputarea p,br { margin:0;padding:0 } — min-height 없음 */
.itgo-board-view__content p,
.editor_content p,
#bo_v_con p,
.itgo-board-view__content br,
.editor_content br,
#bo_v_con br {
  margin: 0;
  padding: 0;
}

/* 원본보기 링크가 inline이면 margin:auto 가운데 정렬이 깨지므로 block 처리 */
/* [#4] 사진 옆 빈 공간 클릭 방지 — 링크 상자는 원본처럼 한 줄 전체(문단 정렬 그대로)로 두고,
   클릭은 사진에서만 받는다. 상자를 사진 폭(fit-content)으로 줄이면 블록이라 문단 가운데 정렬을 안 따라
   가운데 사진이 왼쪽으로 붙었다(17 이후 S3 사진도 이 링크로 감싸져 대부분의 글에 해당). */
.itgo-board-view__content a.view_image,
.editor_content a.view_image,
#bo_v_con a.view_image {
  display: block;
  max-width: 100%;
  pointer-events: none;
}
.itgo-board-view__content a.view_image img,
.editor_content a.view_image img,
#bo_v_con a.view_image img {
  pointer-events: auto;
}

.itgo-write-actions .btn-outline:hover,
.itgo-write-actions .btn-outline:focus {
  border-color: #d1d5db !important;
  outline: none !important;
  box-shadow: none !important;
}

.itgo-write-actions .btn-primary:hover,
.itgo-write-actions .btn-primary:focus {
  border-color: transparent !important;
  outline: none !important;
}

@media (max-width: 1023px) {
  .itgo-write-actions {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 10;
    margin-top: 0; /* [UI2] 카드 바로 아래 */
    margin-left: 0;
    margin-right: 0;
    /* [UI2] 원위치: 윗줄에 임시저장(8 + 38 + 12) → 58px, 붙으면 12px */
    padding: 58px 0 calc(12px + env(safe-area-inset-bottom, 0px));
    /* [UI2] 원위치에서는 배경·테두리 없이 투명, 카드와 같은 폭 */
    background-color: transparent;
    border-top: 1px solid transparent;
    box-shadow: none;
    flex-wrap: nowrap;
    gap: 8px;
    width: 100%;
    box-sizing: border-box;
    /* [UI2] 붙고 떨어질 때 배경·선·그림자·폭이 자연스럽게 */
    transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease,
      width 0.2s ease, margin 0.2s ease, padding 0.2s ease;
  }

  .itgo-write-actions .btn-primary,
  .itgo-write-actions .itgo-btn-schedule-outline,
  .itgo-write-actions > a {
    flex: 1 1 0;
    min-width: 0;
    margin-top: 0 !important;
    width: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .itgo-write-actions .btn-primary {
    order: 3;
  }

  .itgo-write-actions .itgo-btn-schedule-outline {
    order: 2;
  }

  .itgo-write-actions > a {
    order: 1;
    background-color: #f5f5f5 !important;
    color: #666 !important;
    border: 1px solid #e5e5e5;
  }

  .itgo-write-actions > a:hover {
    background-color: #ececec !important;
    color: #191919 !important;
  }

  /* [UI2] 화면 아래에 붙었을 때만: 흰 배경 + 윗선 + 그림자 + 화면 가로 전체. 편집기 팝업(.tox-tinymce-aux 1300)보다 위 */
  .itgo-write-actions.itgo-write-actions--stuck {
    background-color: #fff;
    border-top-color: #ececec;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.06);
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 12px;
    z-index: 1310;
  }
  .itgo-write-actions.itgo-write-actions--stuck #btn_autosave_manual {
    top: auto;
    bottom: calc(100% + 12px); /* 붙으면 바 위 12px (TOP/DOWN 아래) */
    right: 16px; /* 바가 화면 전체 폭일 때도 플로팅 열과 같은 세로선 */
  }
  /* [UI2] 편집기 대화상자(소스코드 등)가 열리면 바·플로팅 열을 뒤로 */
  body.tox-dialog__disable-scroll .itgo-write-actions,
  body.tox-dialog__disable-scroll .itgo-mobile-actions {
    z-index: 1;
  }
}

.itgo-write-hub__card .itgo-write-control {
  width: 100%;
}

.itgo-write-hub__submit:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.itgo-write-hub__form-area {
  width: 100%;
}

.itgo-write-hub__form-area .itgo-write-actions {
  margin-top: 1.5rem;
}

.itgo-mobile-fab {
  text-decoration: none;
}

/* 메인·게시판 갤러리 카드 (Figma CARD) */
.itgo-post-card {
  text-decoration: none;
  color: inherit;
}

.itgo-post-card__new,
.itgo-board-new-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 9px;
  height: 10px;
  border-radius: 2px;
  background: linear-gradient(180deg, var(--point-badge-grad-start) 0%, var(--point) 100%);
  color: #fff;
  font-size: 7px;
  font-weight: 700;
  line-height: 1;
}

.itgo-board-new-badge__label {
  display: block;
}

/* 해시로 이동한 댓글 하이라이트 — 한 번만, 스크롤 중 재시작하지 않음 */
.itgo-hash-target-flash {
  animation: itgo-hash-flash 1.2s ease-out 1;
}

@keyframes itgo-hash-flash {
  0% {
    background-color: rgba(255, 117, 52, 0.18);
  }
  100% {
    background-color: transparent;
  }
}

#bo_vc,
.itgo-board-comment,
.itgo-memo-comment,
.itgo-memo-item {
  scroll-margin-top: calc(var(--itgo-header-h, 54px) + 12px);
}

/* 메인 탭 해시(#itgo-section-*) 스크롤 — 모바일에서 헤더+하단 탭에 첫 글이 안 가리게
   (기간 필터 제거 후 섹션 상단이 짧아져 sticky 탭에 게시물이 겹치던 문제) */
@media (max-width: 1023.98px) {
  :root {
    /* .itgo-mobile-post-tabs: py-2 + pill(~py-2.5+11px) + border ≈ 56px */
    --itgo-mobile-post-tabs-h: 56px;
  }

  #itgo-section-all,
  #itgo-section-popular,
  #itgo-section-subscribed,
  #itgo-section-notice {
    scroll-margin-top: calc(
      var(--itgo-header-h, 54px) + var(--itgo-mobile-post-tabs-h, 56px) + 8px
    );
  }
}

/* 댓글/본문 URL — iOS·웹앱(WebKit)에서 keep-all 때문에 안 꺾이는 문제 대응 */
.itgo-board-comment__content,
.itgo-board-comment__content a,
.itgo-memo-comment__content,
.itgo-memo-comment__content a,
.itgo-board-view__body,
.itgo-board-view__body a,
#bo_v_con,
#bo_v_con a {
  max-width: 100%;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  word-wrap: break-word !important;
  white-space: normal !important;
}

.itgo-board-comment__content a,
.itgo-memo-comment__content a,
.itgo-board-view__body a,
#bo_v_con a {
  display: inline;
  overflow-wrap: anywhere !important;
  word-break: break-all !important;
}

/* 모바일 갤러리 2열 — 제목 2줄 고정으로 메타 행 수평 정렬 */
.itgo-gallery-mobile-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.375;
  height: 2.75rem;
  max-height: 2.75rem;
  word-break: break-word;
  overflow-wrap: anywhere;
  text-overflow: ellipsis;
}

.itgo-gallery-mobile-card__author {
  min-height: 1.125rem;
}

.itgo-main-posts-table__subject {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  color: inherit;
  text-decoration: none;
}

.notranslate {
  translate: no !important;
}

.itgo-news-panel {
  max-height: 425px;
}

.itgo-news-list-host .itgo-news-list {
  scrollbar-width: thin;
}

.itgo-mypage-panel-btn {
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
}

/* 모바일: 마이페이지 상단 탭을 정보수정(text-base)과 동일 크기 */
@media (max-width: 1023px) {
  .itgo-mypage-panel-btn {
    font-size: 1rem !important; /* text-base */
    line-height: 1.5 !important;
  }
}

.itgo-mypage-profile__layout {
  width: 100%;
}

.itgo-mypage-profile__meta {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.itgo-mypage-profile__shop-url {
  min-width: 0;
  max-width: 100%;
}

.itgo-mypage-profile__shop-url-link {
  display: inline;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-all;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.itgo-mypage-profile__stats {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.itgo-mypage-activity-tabs {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.itgo-mypage-activity-tabs::-webkit-scrollbar {
  display: none;
}

.itgo-mypage-mobile-row__link {
  color: inherit;
  text-decoration: none;
}

.itgo-mypage-mobile-row--comment .itgo-mypage-mobile-row__link {
  display: block;
}

.itgo-mypage .line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 업로드 예약 모달 */
body.itgo-schedule-open {
  overflow: hidden;
}

.itgo-schedule-calendar .itgo-schedule-cal-day {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 9999px;
  border: 0;
  background: transparent;
  color: #191919;
  font-size: 0.75rem;
  cursor: pointer;
}

.itgo-schedule-calendar .itgo-schedule-cal-day.is-selected {
  background: var(--point);
  color: #fff;
}

.itgo-schedule-calendar .itgo-schedule-cal-day.is-disabled {
  opacity: 0.2;
  cursor: not-allowed;
}

.itgo-schedule-calendar .itgo-schedule-cal-empty {
  width: 2.75rem;
  height: 2.75rem;
}

.itgo-write-actions .btn-primary-outline {
  border-color: var(--point);
  color: var(--point);
  background: #fff;
}

.itgo-write-actions .btn-primary-outline:hover,
.itgo-write-actions .btn-primary-outline:focus {
  border-color: var(--point);
  color: var(--point);
  background: #fff7f2;
}

.itgo-write-actions .itgo-btn-schedule-outline {
  min-height: 2.5rem;
  padding: 0.625rem 1.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  border-radius: 0.375rem;
  min-width: 96px;
}

/* 예약 업로드 — Figma 138:14127 */
.itgo-btn-schedule-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  padding: 10px 24px;
  border: 1px solid var(--point);
  border-radius: 6px;
  background: #fff;
  color: var(--point);
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  cursor: pointer;
  outline: none;
  box-shadow: none;
  transition: background-color 0.2s ease;
}

.itgo-btn-schedule-outline:hover,
.itgo-btn-schedule-outline:focus {
  background: #fff7f2;
  color: var(--point);
  border-color: var(--point);
  outline: none;
}

.itgo-btn-schedule-outline:active {
  background: #fff3eb;
}

/* 메인 광고 배너 (Figma 50:4036) */
.itgo-ad-banner-card {
  position: relative;
  overflow: hidden;
  background: #fafafa;
}

.itgo-ad-banner-card--hero {
  width: 100%;
  height: 220px;
}

.itgo-ad-banner-card--grid {
  width: 100%;
  height: 160px;
}

.itgo-ad-banner-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.itgo-ad-banner-card__go {
  position: absolute;
  right: 20px;
  bottom: 21px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 82px;
  padding: 10px;
  border: 1px solid #fff;
  border-radius: 9999px;
  background: #000;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  pointer-events: none;
}

@media (min-width: 1024px) {
  .itgo-ad-banner-card--hero {
    height: 357px;
  }

  .itgo-ad-banner-card--grid {
    height: 194px;
  }
}

.itgo-banner-admin-list__thumb {
  width: 120px;
  height: 68px;
  object-fit: cover;
  border-radius: 6px;
  background: #f2f2f2;
}

.itgo-board-list-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  color: #9f9f9f;
}

.itgo-board-list-icon--comment {
  color: var(--point);
  font-size: 14px;
  font-weight: 500;
}

.itgo-board-table__meta-icons {
  margin-left: 4px;
}

@media (min-width: 1024px) {
  .itgo-banner-admin-list__thumb {
    width: 160px;
    height: 90px;
  }
}

.itgo-main-posts .itgo-post-grid {
  row-gap: 28px;
}

@media (min-width: 1024px) {
  .itgo-main-posts .itgo-post-grid {
    row-gap: 28px;
  }
}

/* 구독 버튼 공통 — Figma Subscribe (234:13760) */
.itgo-subscribe-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 0;
  font-weight: 600;
  line-height: normal;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.itgo-subscribe-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* 작성자 구독 (id) — 74×21 */
.itgo-subscribe-btn--member {
  width: 74px;
  height: 21px;
  padding: 2px 8px;
  border-radius: 4px;
  background-color: var(--point-soft-bg);
  color: var(--point);
  font-size: 12px;
}

.itgo-subscribe-btn--member .itgo-subscribe-btn__icon {
  font-size: 12px;
  line-height: 1;
  color: var(--point);
}

.itgo-subscribe-btn--member.is-active {
  padding: 2px 8px 2px 7px;
  background: linear-gradient(90deg, var(--point-subscribe-grad-start) 0%, var(--point) 100%);
  color: #fff;
}

.itgo-subscribe-btn--member.is-active .itgo-subscribe-btn__icon {
  color: #fff;
}

/* 게시판 구독 (Post) — 86×26 */
.itgo-subscribe-btn--board {
  width: 86px;
  min-height: 26px;
  padding: 4px 8px;
  border-radius: 6px;
  background-color: var(--point-soft-bg);
  color: var(--point);
  font-size: 15px;
}

.itgo-subscribe-btn--board .itgo-subscribe-btn__icon {
  font-size: 14px;
  line-height: 1;
  color: var(--point);
}

.itgo-subscribe-btn--board.is-active {
  padding: 4px 8px 4px 7px;
  background: linear-gradient(90deg, var(--point-subscribe-grad-start) 0%, var(--point) 100%);
  color: #fff;
}

.itgo-subscribe-btn--board.is-active .itgo-subscribe-btn__icon {
  color: #fff;
}

/* 글쓰기 게시판 선택 모달 */
.itgo-write-picker-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.itgo-write-picker-modal.is-open {
  display: flex;
}

.itgo-write-picker-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.itgo-write-picker-modal__panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  max-height: calc(100vh - 32px);
  /* [ITGO-UI1] 스크롤은 단계(step) 영역에서만 — 제목 줄 고정, 둥근 모서리 유지 */
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  padding: 24px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.itgo-write-picker-modal__step {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  margin: 0 -12px; /* 스크롤바를 카드 구역보다 12px 바깥에 두고, 포커스 테두리도 안 잘리게 */
  padding: 0 12px;
}

.itgo-write-picker-modal__head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.itgo-write-picker-modal__title {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: #191919;
}

.itgo-write-picker-modal__back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
}

.itgo-write-picker-modal__back:hover {
  background: #fafafa;
}

.itgo-write-picker-modal__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #666;
  cursor: pointer;
}

.itgo-write-picker-modal__close:hover {
  background: #fafafa;
  color: #191919;
}

.itgo-write-picker-modal__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.itgo-write-picker-modal__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #ececec;
  border-radius: 8px;
  background: #fff;
  color: #191919;
  font-size: 15px;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition:
    border-color 0.2s ease,
    color 0.2s ease,
    background-color 0.2s ease;
}

.itgo-write-picker-modal__item:hover {
  border-color: var(--point);
  color: var(--point);
  background: #fffaf6;
}

body.itgo-write-picker-open {
  overflow: hidden;
}

/* 커뮤니티 사이드바 — 잇고 메인 시안 0706 */
.itgo-sidebar {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.itgo-sidebar-card {
  background: #fff;
  border: 1px solid #eae7e0;
  border-radius: 14px;
  overflow: hidden;
}

.itgo-sidebar-card__profile {
  padding: 20px;
}

/* 등급 배지: flex-col stretch 로 가로 전체 늘어나지 않게 */
.itgo-sidebar-level-badge {
  align-self: flex-start !important;
  width: auto !important;
  max-width: 100%;
  flex: 0 0 auto;
}

/* 가입정보확인요청: 긴 텍스트만 살짝 왼쪽 보정 */
.itgo-sidebar-level-badge--info-confirm {
  margin-left: -6px;
}

.itgo-sidebar-card__profile-divider {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #f0ede6;
}

.itgo-sidebar-card__actions {
  display: flex;
  gap: 8px;
  margin-top: 16px;
}

.itgo-sidebar-card__action-btn {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 8px;
  border-radius: 8px;
  background: #f4f2ec;
  color: #5c5950;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.itgo-sidebar-card__action-btn:hover {
  background: #ebe8e0;
  color: #2c2a28;
}

.itgo-sidebar-card__stats {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.itgo-sidebar--drawer .itgo-sidebar-card__stats-bar {
  justify-content: center;
}

.itgo-sidebar-card__stat-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 13px;
}

.itgo-sidebar-card__stat-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #9a948a;
}

.itgo-sidebar-card__stat-value {
  color: #2c2a28;
  font-weight: 600;
}

.itgo-sidebar-card__write {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  margin-top: 16px;
  min-height: 44px;
  padding: 12px;
  border: 0;
  border-radius: 9px;
  background: var(--point);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.itgo-sidebar-card__write:hover {
  background: var(--point-hover);
}

.itgo-sidebar-card__section-title {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 2px 6px 12px;
  font-size: 13px;
  font-weight: 700;
  color: #2c2a28;
}

.itgo-sidebar-card__quick-links {
  display: flex;
  gap: 8px;
  padding: 8px 4px 2px;
  border-top: 1px solid #f0ede6;
}

.itgo-sidebar-card__quick-link {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 38px;
  padding: 9px 8px;
  border-radius: 8px;
  background: #f4f2ec;
  color: #5c5950;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.itgo-sidebar-card__quick-link:hover {
  background: #ebe8e0;
  color: #2c2a28;
}

.itgo-sidebar-card--favorites {
  padding: 16px 14px;
}

.itgo-sidebar-card--boards {
  padding: 10px 8px;
}

.itgo-sidebar-group {
  border-top: 1px solid #f0f0f0;
}

.itgo-sidebar-group:first-child {
  border-top: 0;
}

.itgo-sidebar-group > summary {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 13px 8px 13px 10px;
  font-size: 14px;
  font-weight: 700;
  color: #222;
  cursor: pointer;
  list-style: none;
}

.itgo-sidebar-group > summary::-webkit-details-marker {
  display: none;
}

.itgo-sidebar-group > summary::before {
  content: "";
  width: 4px;
  height: 15px;
  border-radius: 2px;
  background: var(--point);
  flex-shrink: 0;
}

.itgo-sidebar-group > summary .itgo-sidebar-group__chevron {
  margin-left: auto;
  color: #b0aaa0;
  transition: transform 0.18s ease;
}

.itgo-sidebar-group[open] > summary .itgo-sidebar-group__chevron {
  transform: rotate(180deg);
}

.itgo-sidebar-group__panel {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 2px 6px;
}

.itgo-sidebar-link {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 9px 8px 9px 14px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  color: #444;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.itgo-sidebar-link:hover {
  background: #f5f5f5;
  color: #111;
}

.itgo-sidebar-link .ri-star-fill {
  color: var(--point);
}

.itgo-sidebar-board-row {
  display: flex;
  align-items: center;
  gap: 2px;
  padding-right: 6px;
}

.itgo-sidebar-board-row__link {
  flex: 1 1 auto;
  min-width: 0;
  padding-right: 4px;
}

.itgo-sidebar-board-row__fav {
  flex: 0 0 auto;
  margin-left: auto;
  width: 28px;
  height: 28px;
  color: #ccc;
  transition: color 0.2s ease;
}

.itgo-sidebar-board-row__fav.is-active {
  color: var(--point);
}

@media (hover: hover) {
  .itgo-sidebar-board-row__fav:not(.is-active):hover {
    color: var(--point);
  }
}

.itgo-sidebar-board-row__fav:focus,
.itgo-sidebar-board-row__fav:focus-visible {
  outline: none;
  box-shadow: none;
}

.itgo-sidebar-fav-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 2px 6px;
}

.itgo-sidebar-fav-list .empty-msg {
  padding: 0 6px 8px;
  font-size: 13px;
  line-height: 1.5;
  color: #a39d8f;
  text-align: left;
}

.itgo-sidebar-search {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid #e0ddd5;
  border-radius: 11px;
  background: #fff;
  transition: border-color 0.2s ease;
}

.itgo-sidebar-search:focus-within {
  border-color: var(--point);
}

/* 모바일 사이드바 드로어 */
body.itgo-mobile-drawer-open {
  overflow: hidden;
}

#mobileSidebarDrawer .itgo-sidebar--drawer {
  width: 100%;
  gap: 12px;
  padding: 12px;
}

#mobileSidebarDrawer .itgo-sidebar--drawer .itgo-sidebar-card__actions,
#mobileSidebarDrawer .itgo-sidebar--drawer .itgo-sidebar-card__action-btn {
  max-width: none;
}

/* 모바일 게시글 목록 행 */
.itgo-post-row:first-child {
  border-top: 1px solid #ececec;
}

@media (max-width: 1023px) {
  .itgo-main-posts .itgo-post-list-mobile .itgo-post-row:first-child {
    border-top: none;
  }
}

/* 게시판 목록형 모바일 행 (네이버 카페 스타일) */
.itgo-board-list-mobile .itgo-board-mobile-row:first-child,
.itgo-board-list-mobile .itgo-post-notice-row:first-child {
  border-top: 1px solid #ececec;
}

.itgo-board-mobile-row__comment {
  flex-shrink: 0;
}

/* 긴 제목(공백 없는 문자열 포함)이 댓글/썸네일 영역 뒤로 넘어가지 않도록 */
.itgo-board-mobile-row__subject {
  overflow: hidden;
}

.itgo-board-mobile-row__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}

#mobileSidebarDrawer {
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
}

@media (max-width: 1023px) {
  .itgo-site-footer .space-y-3 p {
    line-height: 1.6;
    word-break: keep-all;
    overflow-wrap: break-word;
  }
}

.itgo-post-card__new,
.itgo-post-row .itgo-post-card__new,
.itgo-board-mobile-row .itgo-post-card__new {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 9999px;
  background: var(--point);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.itgo-sidebar-search__input {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  height: 20px;
  padding: 0;
  border: 0 !important;
  border-radius: 0;
  font-size: 14px;
  line-height: 20px;
  color: #191919;
  background: transparent;
  outline: none;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
}

.itgo-sidebar-search__input::placeholder {
  color: rgba(25, 25, 25, 0.4);
}

.itgo-sidebar-search .itgo-sidebar-search__input:focus,
.itgo-sidebar-search .itgo-sidebar-search__input:focus-visible,
.itgo-sidebar-search__input:focus,
.itgo-sidebar-search__input:focus-visible {
  outline: none !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

.itgo-sidebar-search__input[readonly] {
  cursor: default;
}

.itgo-sidebar-search__submit {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  line-height: 1;
  cursor: pointer;
  outline: none;
  box-shadow: none;
}

.itgo-sidebar-search__submit:focus,
.itgo-sidebar-search__submit:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.itgo-sidebar-search--board-filter {
  position: relative;
}

.itgo-sidebar-search--board-filter .itgo-sidebar-search__input {
  -webkit-appearance: none;
  appearance: none;
}

.itgo-sidebar-search--board-filter .itgo-sidebar-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

.itgo-sidebar-search__clear {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  line-height: 1;
  cursor: pointer;
}

.itgo-sidebar-search__clear.hidden {
  display: none;
}

.itgo-sidebar-board-filter-empty {
  margin: 0;
  padding: 16px 8px 8px;
  font-size: 14px;
  line-height: 1.5;
  color: #9f9f9f;
  text-align: center;
}

.itgo-sidebar-board-filter-mark {
  color: var(--point, #ff7534);
  background: transparent;
  font-weight: 600;
  padding: 0;
}

.itgo-sidebar-card--favorites.is-filter-empty > details {
  display: none;
}

.itgo-sidebar-card--favorites.is-filter-collapsed {
  display: none;
}

/* 모바일 FAB / TOP 버튼 */
.itgo-mobile-actions {
  position: fixed;
  right: 16px;
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  z-index: 45;
  transition: bottom 0.2s ease; /* [UI2] 글쓰기 바 위로 올라가고 내려올 때 */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.itgo-mobile-top-btn,
.itgo-mobile-fab {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 9999px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  cursor: pointer;
}

.itgo-mobile-top-btn {
  background: #fff;
  color: #191919;
  border: 1px solid #ececec;
}

.itgo-mobile-top-btn[hidden] {
  display: none !important;
}

.itgo-mobile-top-btn span {
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #191919;
}

.itgo-mobile-fab {
  width: 56px;
  height: 56px;
  margin-top: 4px;
  background: var(--point);
  color: #fff;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.itgo-mobile-fab:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(255, 117, 52, 0.35);
}

.itgo-mobile-fab:active {
  transform: translateY(0);
}

@media (min-width: 1024px) {
  .itgo-mobile-actions {
    display: none;
  }
}

/* 모바일 검색 오버레이 */
.itgo-mobile-search {
  position: fixed;
  inset: 0;
  z-index: 10020;
}

.itgo-mobile-search__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.itgo-mobile-search__panel {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  border-bottom: 1px solid #ececec;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  transform: translateY(-8px);
  opacity: 0;
  transition:
    transform 0.2s ease,
    opacity 0.2s ease;
}

.itgo-mobile-search.is-open .itgo-mobile-search__panel {
  transform: translateY(0);
  opacity: 1;
}

.itgo-mobile-search__head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 12px 0;
}

.itgo-mobile-search__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 0;
  background: transparent;
  color: #191919;
  cursor: pointer;
}

.itgo-mobile-search__title {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: #191919;
}

.itgo-mobile-search__form {
  padding: 12px 16px 16px;
}

.itgo-mobile-search__field-row {
  margin-bottom: 10px;
}

.itgo-mobile-search__label {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #777;
}

.itgo-mobile-search__select {
  width: 100%;
  height: 40px;
  padding: 0 12px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  font-size: 14px;
  color: #191919;
  background: #fff;
}

.itgo-mobile-search__input-row {
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.itgo-mobile-search__field {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  min-height: 46px;
  height: 46px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}

.itgo-mobile-search__field:focus-within {
  border-color: var(--point);
}

.itgo-mobile-search__input {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  height: 100%;
  padding: 0 36px 0 14px;
  border: 0 !important;
  border-radius: 0;
  font-size: 14px;
  line-height: 20px;
  color: #191919;
  background: transparent;
  outline: none;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
}

.itgo-mobile-search__field .itgo-mobile-search__input:focus,
.itgo-mobile-search__field .itgo-mobile-search__input:focus-visible,
.itgo-mobile-search__input:focus,
.itgo-mobile-search__input:focus-visible {
  outline: none !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

.itgo-mobile-search__input::placeholder {
  color: rgba(25, 25, 25, 0.4);
}

.itgo-mobile-search__clear {
  position: absolute;
  top: 50%;
  right: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #bfbfbf;
  transform: translateY(-50%);
  cursor: pointer;
}

.itgo-mobile-search__clear:hover,
.itgo-mobile-search__clear:focus-visible {
  color: #9f9f9f;
  outline: none;
}

.itgo-mobile-search__clear i {
  font-size: 20px;
  line-height: 1;
}

.itgo-mobile-search__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  min-width: 58px;
  height: 46px;
  border: 0;
  border-radius: 6px;
  background: var(--point);
  color: #fff;
  cursor: pointer;
}

.itgo-mobile-search__submit:hover {
  background: var(--point-hover);
}

body.itgo-mobile-search-open {
  overflow: hidden;
}

/* 전체검색 결과 */
.itgo-layout .itgo-content:has(#itgo-search-results) {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}

#itgo-search-results.itgo-search-results--page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: calc(
    100dvh - var(--itgo-header-h, 54px) - var(--itgo-footer-h, 286px) -
      var(--itgo-main-banner-h, 0px)
  );
}

.itgo-search-results__search-row .itgo-search-results__keyword-field {
  order: 1;
}

.itgo-search-results__search-row .itgo-search-results__filter-group {
  order: 2;
}

.itgo-search-results__search-row .itgo-search-results__filter-field {
  order: 3;
}

@media (max-width: 1023px) {
  .itgo-search-results__search-row .itgo-search-results__keyword-field {
    grid-column: 1 / -1;
  }
}

@media (min-width: 1024px) {
  .itgo-search-results__search-row .itgo-search-results__filter-group {
    order: 1;
  }

  .itgo-search-results__search-row .itgo-search-results__filter-field {
    order: 2;
  }

  .itgo-search-results__search-row .itgo-search-results__keyword-field {
    order: 3;
  }
}

.itgo-search-results .itgo-board-combined__search-field {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 46px;
  height: 46px;
}

.itgo-search-results .itgo-board-combined__input {
  flex: 1 1 auto;
  min-width: 0;
  height: auto;
  line-height: 20px;
  padding: 13px 14px;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.itgo-search-results__advanced-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  font-weight: 500;
  color: #9f9f9f;
  cursor: pointer;
  list-style: none;
}

.itgo-search-results__advanced-toggle::-webkit-details-marker {
  display: none;
}

.itgo-search-results__advanced[open] .itgo-search-results__advanced-toggle {
  color: #191919;
}

.itgo-search-results__advanced-body {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #ececec;
  border-radius: 8px;
  background: #fafafa;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.itgo-search-results__advanced-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.itgo-search-results__advanced-label {
  font-size: 12px;
  font-weight: 500;
  color: #9f9f9f;
}

.itgo-search-results__select,
.itgo-search-results__advanced-body .select {
  width: 100%;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  font-size: 14px;
  color: #191919;
  background: #fff;
}

@media (min-width: 1024px) {
  .itgo-search-results__select {
    height: 46px;
  }

  .itgo-search-results__form .itgo-board-combined__search-row {
    align-items: stretch;
  }

  .itgo-search-results__row {
    padding: 16px 0;
  }

  .itgo-search-results__row-title {
    font-size: 16px;
  }

  .itgo-search-results__row-excerpt {
    font-size: 14px;
  }
}

.itgo-search-results__sop {
  margin: 0;
  padding: 0;
  border: 0;
}

.itgo-search-results__sop-group {
  display: inline-flex;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}

.itgo-search-results__sop-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 56px;
  height: 36px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 500;
  color: #9f9f9f;
  cursor: pointer;
}

.itgo-search-results__sop-btn input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.itgo-search-results__sop-btn.is-active {
  background: var(--point);
  color: #fff;
}

.itgo-search-results__chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 14px;
  border-radius: 9999px;
  border: 1px solid #e0e0e0;
  background: #fff;
  color: #191919;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease,
    color 0.2s ease;
}

.itgo-search-results__chip:hover {
  border-color: var(--point);
  color: var(--point);
}

.itgo-search-results__chip.is-active {
  border-color: var(--point);
  background: var(--point);
  color: #fff;
}

.itgo-search-results__chip.is-active:hover {
  color: #fff;
}

.itgo-search-results__chip-count {
  font-size: 12px;
  font-weight: 600;
  opacity: 0.9;
}

.itgo-search-results__more {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 13px;
  font-weight: 500;
  color: #9f9f9f;
  text-decoration: none;
}

.itgo-search-results__more:hover {
  color: var(--point);
}

.itgo-search-results__row {
  display: flex;
  align-items: stretch;
  gap: 10px;
  padding: 14px 0;
  border-bottom: 1px solid #ececec;
  text-decoration: none;
  color: inherit;
}

.itgo-search-results__row-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.itgo-search-results__row-title {
  margin: 0;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.45;
  color: #191919;
}

.itgo-search-results__comment-badge {
  display: inline-flex;
  align-items: center;
  margin-right: 4px;
  padding: 1px 6px;
  border-radius: 4px;
  background: #f5f5f5;
  color: #9f9f9f;
  font-size: 11px;
  font-weight: 600;
  vertical-align: middle;
}

.itgo-search-results__row-excerpt {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: #757575;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.itgo-search-results__row-meta {
  margin: 0;
  font-size: 12px;
  line-height: 1.4;
  color: #9f9f9f;
}

.itgo-search-results__meta-sep {
  margin: 0 4px;
}

.itgo-search-results__row-comment {
  flex-shrink: 0;
  width: 44px;
  min-height: 52px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: center;
  border-radius: 6px;
  background: #f5f5f5;
}

.itgo-search-results__row-comment-num {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #191919;
}

.itgo-search-results__row-comment-label {
  margin-top: 4px;
  font-size: 10px;
  line-height: 1;
  color: #9f9f9f;
}

.itgo-search-results__section-more {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-top: 12px;
  font-size: 14px;
  font-weight: 500;
  color: var(--point);
  text-decoration: none;
}

.itgo-search-results__section-more:hover {
  color: var(--point-hover);
}

.itgo-search-results__pagination .pg_page,
.itgo-search-results__pagination .pg_current {
  min-width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
}

.itgo-search-results__pagination .pg_current {
  background: #fff;
  color: var(--point, #ff7534);
  border-color: var(--point, #ff7534);
}

/* 새소식 알림 버튼·배지 */
.itgo-news-wrap .itgo-news-btn {
  position: relative;
}

.itgo-news-wrap--mobile .itgo-news-badge {
  position: absolute;
  top: 2px;
  right: 2px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  font-size: 9px;
  line-height: 16px;
}

.itgo-news-wrap--desktop .itgo-news-badge {
  position: static;
}

/* 검색어 강조 — 그누보드 기본 핫핑크(#ff005a) 대신 포인트 컬러 */
b.sch_word,
.sch_word {
  color: var(--point);
  background: rgba(var(--point-rgb), 0.14);
  padding: 0 3px;
  margin: 0 1px;
  border-radius: 2px;
  font-weight: 600;
  line-height: inherit;
}
/* 회원 사이드뷰 — 게시글 보기 / 신고하기 (get_sideview) */
.sv_wrap {
  position: relative;
  display: inline-block;
  font-weight: inherit;
  vertical-align: baseline;
}

.sv_wrap .sv_member,
.sv_wrap .sv_guest {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

.sv_wrap .sv,
.sv_wrap .sv.sv_on {
  display: none;
  position: absolute;
  top: calc(100% + 4px) !important;
  left: 0 !important;
  z-index: 1000;
  min-width: 120px;
  width: max-content;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  font-size: 13px;
  overflow: hidden;
}

.sv_wrap .sv::before,
.sv_wrap .sv::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
}

.sv_wrap .sv.sv_on {
  display: block !important;
}

.sv_wrap .sv a {
  display: block !important;
  box-sizing: border-box;
  width: 100% !important;
  margin: 0 !important;
  padding: 8px 16px !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: #191919 !important;
  text-decoration: none !important;
  text-align: left;
  white-space: nowrap;
  background: #fff;
  border: 0;
  border-radius: 0;
}

.sv_wrap .sv a:hover,
.sv_wrap .sv a:focus {
  background: #f5f5f5 !important;
  color: var(--point) !important;
}

.sv_wrap noscript.sv_nojs {
  display: none;
}

@media (max-width: 1023px) {
  .sv_wrap .sv,
  .sv_wrap .sv.sv_on {
    display: none !important;
  }

  .sv_wrap .sv_member.itgo-sv-member-direct,
  .sv_wrap .sv_member {
    cursor: pointer;
  }
}

/* 회원 게시글 보기 페이지 */
.itgo-member-profile__mobile-head {
  padding-top: 0.75rem;
  padding-bottom: 1rem;
  margin-bottom: 0;
  border-bottom: 1px solid #ececec;
}

.itgo-member-profile__mobile-stats strong {
  font-weight: 700;
}

@media (max-width: 1023px) {
  .itgo-member-profile .itgo-board-list-mobile .itgo-board-mobile-row {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .itgo-member-profile .itgo-board-list-mobile .itgo-board-mobile-row:first-child {
    border-top: none;
  }

  .itgo-member-profile__tab.is-active {
    color: #191919;
    border-bottom: 2px solid #191919;
    margin-bottom: -1px;
  }
}

.itgo-member-profile__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}

@media (min-width: 1024px) {
  .itgo-member-profile__layout {
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas:
      "avatar meta actions"
      "stats stats stats";
    gap: 20px 16px;
  }

  .itgo-member-profile__avatar {
    grid-area: avatar;
  }

  .itgo-member-profile__meta {
    grid-area: meta;
  }

  .itgo-member-profile__actions {
    grid-area: actions;
    align-self: start;
  }

  .itgo-member-profile__stats {
    grid-area: stats;
  }

  .itgo-member-profile__tab.is-active {
    color: var(--point);
    border-bottom: 2px solid var(--point);
    margin-bottom: -1px;
  }
}

.itgo-member-profile__pagination .pg_page,
.itgo-member-profile__pagination .pg_current {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  margin: 0 2px;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  text-decoration: none;
}

.itgo-member-profile__pagination .pg_page {
  border: 1px solid #ececec;
  color: #9f9f9f;
  background: #fff;
}

.itgo-member-profile__pagination .pg_current {
  background: #fff;
  color: var(--point, #ff7534);
  border: 1px solid var(--point, #ff7534);
}

/* 웹푸시 알림 수신 동의 배너
 * 관리자 팝업레이어(#hd_pop z-index:1000)보다 위에 표시 */
.itgo-push-optin {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10060;
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  background: rgba(255, 255, 255, 0.98);
  border-top: 1px solid #e5e7eb;
  box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.08);
}

.itgo-push-optin.hidden {
  display: none;
}

.itgo-push-optin__inner {
  max-width: 640px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media (min-width: 640px) {
  .itgo-push-optin__inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
}

.itgo-push-optin__title {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  color: #191919;
}

.itgo-push-optin__desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #6b7280;
  white-space: pre-line;
}

.itgo-push-optin__actions {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
}

.itgo-push-optin__btn {
  min-height: 40px;
  padding: 0 16px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.itgo-push-optin__btn--primary {
  border: none;
  background: var(--point);
  color: #fff;
}

.itgo-push-optin__btn--primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.itgo-push-optin__btn--ghost {
  border: 1px solid #d1d5db;
  background: #fff;
  color: #374151;
}

@media (max-width: 1023px) {
  body.itgo-has-push-optin .itgo-mobile-actions {
    bottom: calc(88px + env(safe-area-inset-bottom, 0px));
  }
  /* [UI2] 글쓰기: 등록 바가 화면 아래에 붙은 동안 TOP/DOWN(+임시저장) 열을 바 위로 */
  body.itgo-write-bar-stuck .itgo-mobile-actions {
    /* 바 위 12px 에 있는 「임시저장」(38px) 위로 8px 간격 → TOP, DOWN, 임시저장, 바 순 */
    bottom: calc(var(--itgo-write-bar-h, 68px) + 12px + 38px + 8px + env(safe-area-inset-bottom, 0px));
    z-index: 1320; /* TOP/DOWN 이 맨 위 */
  }
}

/* 회원가입 약관동의 아코디언 */
.itgo-register-agree {
  border: 1px solid #ececec;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.itgo-register-agree__all {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px;
  border-bottom: 1px solid #ececec;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: #191919;
  margin: 0;
}

.itgo-mb-open-option {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  cursor: pointer;
}

.itgo-mb-open-option .custom-checkbox {
  flex-shrink: 0;
  margin-top: 0;
}

.itgo-mb-open-option__text {
  font-size: 14px;
  line-height: 1.5;
  color: #434343;
}

.itgo-register-agree__item {
  border-bottom: 1px solid #ececec;
}

.itgo-register-agree__item:last-child {
  border-bottom: none;
}

.itgo-register-agree__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px;
  cursor: pointer;
  list-style: none;
}

.itgo-register-agree__summary::-webkit-details-marker {
  display: none;
}

.itgo-register-agree__summary-main {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

.itgo-register-agree__link {
  font-size: 14px;
  color: #191919;
  text-decoration: none;
}

.itgo-register-agree__link:hover {
  color: var(--point);
}

.itgo-register-agree__required {
  color: #9f9f9f;
  font-weight: 400;
}

.itgo-register-agree__chevron {
  font-size: 20px;
  color: #9f9f9f;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.itgo-register-agree__item[open] .itgo-register-agree__chevron {
  transform: rotate(180deg);
}

.itgo-register-agree__panel {
  padding: 0 16px 16px 40px;
}

.itgo-register-agree__content {
  max-height: 240px;
  overflow-y: auto;
  padding: 12px;
  border: 1px solid #ececec;
  border-radius: 6px;
  font-size: 13px;
  line-height: 1.6;
  color: #434343;
  background: #fafafa;
}

.itgo-register-agree__content.itgo-content-body {
  word-break: keep-all;
}

.itgo-register-agree__content.itgo-content-body table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.itgo-register-agree__content.itgo-content-body table th,
.itgo-register-agree__content.itgo-content-body table td {
  border: 1px solid #ececec;
  padding: 10px 12px;
  text-align: left;
  vertical-align: top;
}

.itgo-register-agree__content.itgo-content-body table th {
  background: #f5f5f5;
  font-weight: 500;
  color: #191919;
}

/* 에디터 이미지 회전 — 상세·본문 출력 (SmartEditor2 / TinyMCE / SunEditor) */
/* SmartEditor 리사이저 UI가 본문에 저장된 경우 상세에서 숨김 */
.itgo-board-view__content .img-resizer-wrapper,
.itgo-board-view__content .img-resizer-toolbar,
.itgo-board-view__content .img-resizer-handle,
.itgo-board-view__content .img-resizer-btn,
.editor_content .img-resizer-wrapper,
.editor_content .img-resizer-toolbar,
.editor_content .img-resizer-handle,
.editor_content .img-resizer-btn,
#bo_v_con .img-resizer-wrapper,
#bo_v_con .img-resizer-toolbar,
#bo_v_con .img-resizer-handle,
#bo_v_con .img-resizer-btn {
  display: none !important;
}

.itgo-board-view__content img.rotated-90,
.itgo-board-view__content img[title="rotated-90"],
.itgo-board-view__content img[data-rotation="90"],
.itgo-board-view__content img[data-rotate="90"],
.itgo-board-view__content img[style*="border-spacing: 90px"],
.itgo-board-view__content img[style*="border-spacing:90px"],
.editor_content img.rotated-90,
.editor_content img[title="rotated-90"],
.editor_content img[data-rotation="90"],
.editor_content img[data-rotate="90"],
.editor_content img[style*="border-spacing: 90px"],
.editor_content img[style*="border-spacing:90px"],
#bo_v_con img.rotated-90,
#bo_v_con img[title="rotated-90"],
#bo_v_con img[data-rotation="90"],
#bo_v_con img[data-rotate="90"] {
  transform: rotate(90deg);
  display: inline-block;
  transform-origin: center center;
}

.itgo-board-view__content img.rotated-180,
.itgo-board-view__content img[title="rotated-180"],
.itgo-board-view__content img[data-rotation="180"],
.itgo-board-view__content img[data-rotate="180"],
.itgo-board-view__content img[style*="border-spacing: 180px"],
.itgo-board-view__content img[style*="border-spacing:180px"],
.editor_content img.rotated-180,
.editor_content img[title="rotated-180"],
.editor_content img[data-rotation="180"],
.editor_content img[data-rotate="180"],
.editor_content img[style*="border-spacing: 180px"],
.editor_content img[style*="border-spacing:180px"],
#bo_v_con img.rotated-180,
#bo_v_con img[title="rotated-180"],
#bo_v_con img[data-rotation="180"],
#bo_v_con img[data-rotate="180"] {
  transform: rotate(180deg);
  display: inline-block;
  transform-origin: center center;
}

.itgo-board-view__content img.rotated-270,
.itgo-board-view__content img[title="rotated-270"],
.itgo-board-view__content img[data-rotation="270"],
.itgo-board-view__content img[data-rotate="270"],
.itgo-board-view__content img[style*="border-spacing: 270px"],
.itgo-board-view__content img[style*="border-spacing:270px"],
.editor_content img.rotated-270,
.editor_content img[title="rotated-270"],
.editor_content img[data-rotation="270"],
.editor_content img[data-rotate="270"],
.editor_content img[style*="border-spacing: 270px"],
.editor_content img[style*="border-spacing:270px"],
#bo_v_con img.rotated-270,
#bo_v_con img[title="rotated-270"],
#bo_v_con img[data-rotation="270"],
#bo_v_con img[data-rotate="270"] {
  transform: rotate(270deg);
  display: inline-block;
  transform-origin: center center;
}

/* ---------- SunEditor 상세 본문 (정렬·표·컴포넌트) ---------- */
.itgo-board-view__content::after,
.editor_content::after,
#bo_v_con::after {
  content: '';
  display: table;
  clear: both;
}

.itgo-board-view__content .se-component,
.editor_content .se-component,
#bo_v_con .se-component {
  display: flex;
  padding: 1px;
  margin: 0 0 12px;
  max-width: 100%;
}

.itgo-board-view__content .se-image-container,
.itgo-board-view__content .se-video-container,
.editor_content .se-image-container,
.editor_content .se-video-container,
#bo_v_con .se-image-container,
#bo_v_con .se-video-container {
  width: auto;
  height: auto;
  max-width: 100%;
}

.itgo-board-view__content .se-component figure,
.editor_content .se-component figure,
#bo_v_con .se-component figure {
  display: block;
  margin: 0;
  padding: 0;
  max-width: 100%;
  outline: none;
}

.itgo-board-view__content .__se__float-left,
.editor_content .__se__float-left,
#bo_v_con .__se__float-left {
  float: left;
  margin-right: 12px;
  margin-left: 0;
}

.itgo-board-view__content .__se__float-right,
.editor_content .__se__float-right,
#bo_v_con .__se__float-right {
  float: right;
  margin-left: 12px;
  margin-right: 0;
}

.itgo-board-view__content .__se__float-center,
.editor_content .__se__float-center,
#bo_v_con .__se__float-center {
  float: none;
  width: 100%;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}

.itgo-board-view__content .__se__float-none,
.editor_content .__se__float-none,
#bo_v_con .__se__float-none {
  float: none;
}

.itgo-board-view__content .__se__float-left figure,
.itgo-board-view__content .__se__float-right figure,
.itgo-board-view__content .__se__float-center figure,
.editor_content .__se__float-left figure,
.editor_content .__se__float-right figure,
.editor_content .__se__float-center figure,
#bo_v_con .__se__float-left figure,
#bo_v_con .__se__float-right figure,
#bo_v_con .__se__float-center figure {
  margin: auto !important;
}

.itgo-board-view__content .se-component img,
.itgo-board-view__content .se-component video,
.editor_content .se-component img,
.editor_content .se-component video,
#bo_v_con .se-component img,
#bo_v_con .se-component video {
  display: block;
  max-width: 100%;
  height: auto;
}

/* 넓은 표 — 페이지 가로스크롤 대신 표 영역만 스크롤 */
.itgo-content-table-scroll {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 0 12px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

/* default.css 의 width:100%/table-layout:fixed !important 를 스크롤 래퍼 안에서 무력화 */
.itgo-board-view__content .itgo-content-table-scroll > table,
.editor_content .itgo-content-table-scroll > table,
#bo_v_con .itgo-content-table-scroll > table {
  display: table;
  width: max-content !important;
  max-width: none !important;
  min-width: 100%;
  margin: 0;
  border: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  background-color: transparent;
  table-layout: auto !important;
  word-break: normal !important;
}

.itgo-board-view__content table,
.editor_content table,
#bo_v_con table {
  display: table;
  /* 에디터에서 넣은 고정 너비(예: 1200px)를 유지해 래퍼에서만 가로 스크롤 */
  width: auto;
  max-width: none;
  min-width: 100%;
  margin: 0;
  border: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  background-color: transparent;
  table-layout: auto;
}

.itgo-board-view__content table.se-table-layout-auto,
.editor_content table.se-table-layout-auto,
#bo_v_con table.se-table-layout-auto {
  table-layout: auto !important;
}

.itgo-board-view__content table.se-table-size-auto,
.editor_content table.se-table-size-auto,
#bo_v_con table.se-table-size-auto {
  width: auto !important;
  min-width: 0;
}

.itgo-board-view__content table tr,
.editor_content table tr,
#bo_v_con table tr {
  border: 1px solid #efefef;
}

.itgo-board-view__content table th,
.editor_content table th,
#bo_v_con table th {
  background-color: #f3f3f3;
}

.itgo-board-view__content table th,
.itgo-board-view__content table td,
.editor_content table th,
.editor_content table td,
#bo_v_con table th,
#bo_v_con table td {
  border: 1px solid #e1e1e1;
  padding: 0.4em;
  background-clip: padding-box;
  vertical-align: top;
}

.itgo-board-view__content table td > div,
.editor_content table td > div,
#bo_v_con table td > div {
  word-break: break-word;
}

/* 게시글 본문 — 에디터 ko_KR smart_editor2_in.css 와 동일 (16px / 1.6) */
.itgo-board-view__content,
.editor_content,
#bo_v_con {
  font-size: 16px;
  line-height: 1.6 !important; /* skin style.css 1.7em·leading-relaxed 보다 우선 */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* 모바일 무한스크롤 뒤로가기 복원 중 — 화면만 숨김 (overflow 금지) */
html.itgo-infscroll-restoring {
  visibility: hidden !important;
}

/* 모바일 원본 이미지 라이트박스 */
.itgo-view-image-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  background: rgba(18, 18, 20, 0.96);
}

.itgo-view-image-overlay[hidden] {
  display: none !important;
}

.itgo-view-image-overlay__backdrop {
  position: absolute;
  inset: 0;
}

.itgo-view-image-overlay__panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.itgo-view-image-overlay__body {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 16px 80px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.itgo-view-image-overlay__img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.itgo-view-image-overlay__footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  padding: 12px 16px;
  padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  background: rgba(18, 18, 20, 0.95);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.itgo-view-image-overlay__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
}

.itgo-view-image-overlay__btn--download {
  background: #ff7534;
  color: #fff;
  border: 0;
}

.itgo-view-image-overlay__btn--close {
  background: transparent;
  color: #a3a3a3;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

html.itgo-view-image-open,
body.itgo-view-image-open {
  overflow: hidden !important;
}

body.itgo-view-image-open {
  position: fixed !important;
  left: 0;
  right: 0;
  width: 100%;
  top: var(--itgo-view-image-lock-top, 0px) !important;
}

/* [ITGO-F3] 라이트박스 「원본 저장하기」 → "이 사진만 / 사진 모두" 선택 시트 */
.itgo-view-image-overlay__choice {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 16px calc(16px + env(safe-area-inset-bottom, 0px));
  background: #1c1c1f;
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.5);
}

.itgo-view-image-overlay__choice[hidden] {
  display: none !important;
}

.itgo-view-image-overlay__choice-title {
  margin: 0 0 4px;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
}

.itgo-view-image-overlay__choice-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 50px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 0;
  background: #ff7534;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.itgo-view-image-overlay__choice-btn--all {
  background: #2f3037;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.itgo-view-image-overlay__choice-btn:disabled {
  opacity: 0.55;
  cursor: default;
}

.itgo-view-image-overlay__choice-cancel {
  min-height: 42px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: transparent;
  color: #a3a3a3;
  font-size: 14px;
  cursor: pointer;
}

.itgo-view-image-overlay__choice-note {
  margin: 0;
  color: #d0d0d0;
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
  word-break: keep-all;
}

.itgo-view-image-overlay__choice-note:empty {
  display: none;
}

/* 모바일 첨부 다운로드 안내 */
.itgo-file-download-toast {
  position: fixed;
  left: 50%;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
  transform: translateX(-50%);
  z-index: 10050;
  max-width: calc(100vw - 32px);
  padding: 12px 16px;
  border-radius: 10px;
  background: rgba(25, 25, 25, 0.92);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  pointer-events: none;
}

.itgo-file-download-toast[hidden] {
  display: none !important;
}
