@charset "utf-8";


p{
  margin-bottom:0;
}
#bo_cate {margin-bottom:28px}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px}
#bo_cate a {display:block;line-height:28px;padding:5px 15px;border-radius:30px;border:unset;color:#333;}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {
  text-decoration:none;
  background: #fce9e3;
  color: #f04b1d;
  transform: translateY(-1px);
}
#bo_cate #bo_cate_on {
  background: #fce9e3;
  color: #f04b1d;
  border-color: transparent;
  font-weight: 500;
}
#faq_wrap {margin:10px 0 30px}
#faq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.faq_admin {text-align:right}
#faq_wrap ol {margin:0;padding:0;list-style:none}
#faq_wrap li {border-bottom:1px solid #ececec;background:#fff;position:relative}
#faq_wrap li:first-child {border-top:1px solid #ececec}
#faq_wrap li h3 {min-height:50px;line-height:30px;padding:15px;padding-left:60px;margin-bottom: 0;position:relative}
#faq_wrap li h3 .tit_btn {color:#f04b1d;font-size:1.2em}
/* #faq_wrap li h3 .tit_btn {position:absolute;right:15px;top:15px;border:0;width:30px;height:30px;color:#f04b1d;font-size:1.2em} */
#faq_wrap li h3 .tit_bg {display:inline-block;position:absolute;top:15px;left:15px;text-align:center;color:#000;font-size:1.6em}
#faq_wrap li h3.faq_li_open a {color:#f04b1d}

#faq_con .con_inner {display:none;padding:5px 5px 5px 50px}
#faq_con .con_inner .tit_bg {display:inline-block;position:absolute;top:10px;left:10px;text-align:center;background:#777;color:#fff;border-radius:50%;width:30px;line-height:30px;height:30px}
#faq_con .con_inner .closer_btn {position:absolute;right:15px;top:15px;border:0;width:30px;height:30px;background:#fff;color:#f04b1d;font-size:1.2em}


/* =============  FAQ  ============= */
:root{
  --oy-blue1:#3b82f6;
  --oy-blue2:#1d4ed8;
  --oy-surface:#ffffff;
  --oy-line:#e5e7eb;
  --oy-text:#0f172a;
  --oy-muted:#64748b;
  --oy-shadow:0 10px 20px rgba(2,6,23,.06), 0 2px 6px rgba(2,6,23,.06);
}

.oyfaq{margin:0 10rem;}
.faq_img img{max-width:100%;height:auto;display:block}

/* 검색 */
.oyfaq-search{
  max-width: 720px;
  margin: 24px auto 8px;
  padding: 0 16px;
  border: 0;
  margin-bottom:5rem;
}

.oyfaq-search__form{
  position: relative;
}

.oyfaq-search__input{
  width: 100%;
  height: 44px;
  font-size: 16px;
  line-height: 1.4;
  border: none;
  border-bottom: 2px solid #939393;
  background: transparent;
  padding: 10px 44px 10px 10px;
  outline: none;
  transition: border-color .2s ease;
}

.oyfaq-search__input:focus{
  border-bottom-color: #6b7280;
}

.oyfaq-search__input::placeholder{
  color: #c5c5c5;
}

.oyfaq-search__btn{
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

.oyfaq-search__btn .fa{
  font-size: 18px;
  color: #6a6a6a;
  transition: color .2s;
}

.oyfaq-search__form:focus-within .oyfaq-search__btn .fa{
  color: #6b7280;
}


input.oyfaq-search__input:-webkit-autofill{
  -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
  -webkit-text-fill-color: inherit;
}

/* 카테고리 탭 */
.oyfaq-tabs{margin:10px 0 22px}
.oyfaq-tabs__list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.oyfaq-tabs__item{}
.oyfaq-tabs__link{
  display:inline-block; padding:8px 14px; border-radius:999px; border:1px solid #d6e9ff; color:#2563eb; background:#fff; text-decoration:none;
}

/* 리스트/아이템 */
.oyfaq-ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.oyfaq-item{
  background:var(--oy-surface); border:1px solid var(--oy-line); border-radius:16px; overflow:hidden; box-shadow:var(--oy-shadow);
}
.oyfaq-qhead{position:relative; padding:16px 52px 16px 56px; min-height:52px; display:flex; align-items:center; gap:8px}
.oyfaq-qhead.is-open{background:#f1f1f1}
.oyfaq-qbadge{
  position:absolute; left:16px; top:50%; transform:translateY(-50%);
  width:28px;height:28px;line-height:28px;text-align:center;border-radius:50%;
  font-weight:800; color:#f04b1d; background:#fce9e3;
}
.oyfaq-iconbtn.tit_btn{
  position:absolute; right:12px; top:50%; transform:translateY(-50%);
  width:32px;height:32px;border:0;background:transparent;color:#64748b;font-size:18px;cursor:pointer;
}

.oyfaq-toggle{color:var(--oy-text); text-decoration:none; font-weight:700; display:inline-block; flex:1; line-height:1.45}
.oyfaq-toggle:hover,.oyfaq-toggle:focus{color:#333; outline:none}
.oyfaq-toggle p {width:90%}
.oyfaq-answer{position:relative; padding:14px 52px 18px 56px; border-top:1px solid var(--oy-line); display:none}
.oyfaq-answer[hidden]{display:none !important;}
.oyfaq-abadge {
    position: absolute;
    left: 18px;
    top: 8px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    border-radius: 50%;
    font-weight: 800;
    color: #fff;
    background: #f04b1d;
}
.oyfaq-answer__body{color:#0f172a}
.oyfaq-answer__body p{margin:0.5rem 1.2rem;}
.oyfaq-close.closer_btn{
  position:absolute; right:12px; top:12px; width:32px; height:32px; border:0; background:transparent; color:#1d4ed8; cursor:pointer;
}

/* 빈 상태/관리자 */
.oyfaq-empty {
    padding: 28px;
    text-align: center;
    color: #404040;
    /* border: 1px dashed var(--oy-line); */
    border-radius: 14px;
    background: #fafafa;
}
.oyfaq-admin{text-align:right; margin-top:12px}

.btn_admin {
  background-color: #f55253;
  border-radius: 5px;
  padding: 1rem 2rem;
}

.btn_admin:hover, .btn_admin:active, .btn_admin:focus {
  background-color: #f55253 !important;
  color:#fff !important;
}

/* 기본 요소 보강(기존 ID도 함께 유지) */
#faq_wrap{margin:10px 0 30px}
#faq_wrap h2{position:absolute; font-size:0; line-height:0; overflow:hidden}

/* 페이징(그누 기본 pg_* 대응) */
.pg_wrap, .pg{display:flex; justify-content:center; margin-top:16px}
.pg a, .pg strong{
  display:inline-block; min-width:36px; height:36px; line-height:36px; margin:0 3px; text-align:center; border-radius:10px; border:1px solid var(--oy-line); background:#fff; text-decoration:none;
}
.pg strong{color:#fff; border-color:transparent; background:linear-gradient(135deg,var(--oy-blue1),var(--oy-blue2));}

/* 반응형 */
@media (max-width: 768px){

  .oyfaq-qhead{padding:14px 48px 14px 52px}
  .oyfaq-answer{padding:12px 48px 16px 52px}

  .oyfaq {
    margin: 0 1.2rem;
  }

  .oyfaq-search {
    max-width: unset;
    margin: 2rem 1rem;
    padding: 0;
    border: 0;
  }
  #bo_cate {
    margin:2rem 0;
  }
  #bo_cate a {
      padding: 3px 10px;
      font-size: 14px;
  }
  .oyfaq-tabs__list{
    gap:0;
  }

  .btn_admin{
    font-weight: 500;
  }
  .oyfaq-empty,
  .oyfaq-search__input,
  #faq_thtml {
    font-size: 14px;
  }

}
