@charset "utf-8";
/* =========================================================
   LIFELOG board skin  ·  thetribalaciiid.com (011)
   TTA 톤: 얇은 헤어라인 · 넓은 자간 소문자캡스 · 회색 · 여백
   ========================================================= */

:root{
  --ll-ink:#191919;
  --ll-body:#3f3f3f;
  --ll-muted:#9a9a9a;
  --ll-faint:#b9b9b9;
  --ll-line:#e7e7e7;
  --ll-line2:#d8d8d8;
  --ll-paper:#ffffff;
  --ll-soft:#f6f6f6;
  --ll-col:680px;   /* 일기 컬럼 폭 */
}

/* 공통 컨테이너 폭 */
#bo_list.llb,
#bo_v.llv,
#bo_w.llw{
  max-width:var(--ll-col);
  margin:0 auto;
  padding:8px 16px 40px;
  color:var(--ll-body);
  box-sizing:border-box;
  width:100%;
}
.llb *,.llv *,.llw *,.llc *{ box-sizing:border-box; }

.ll-eyebrow,
.llb-eyebrow,.llv-eyebrow,.llw-eyebrow{
  margin:0; font-size:10px; letter-spacing:.34em;
  color:var(--ll-faint); font-weight:600; text-transform:uppercase;
}

/* =======================  목록  ======================= */
.llb-head{
  position:relative;
  padding:26px 0 18px; margin-bottom:6px;
  border-bottom:1px solid var(--ll-line);
  text-align:center;
}
.llb-title{
  margin:8px 0 6px; font-size:20px; font-weight:600;
  letter-spacing:.02em; color:var(--ll-ink);
}
.llb-count{ margin:0; font-size:11px; letter-spacing:.06em; color:var(--ll-muted); }
.llb-write{
  display:inline-block; margin-top:14px;
  padding:9px 18px; font-size:12px; letter-spacing:.08em;
  color:var(--ll-ink); text-decoration:none;
  border:1px solid var(--ll-line2); border-radius:2px; background:var(--ll-paper);
}
.llb-write:hover{ background:var(--ll-ink); color:#fff; border-color:var(--ll-ink); }

.llb-cate{ display:flex; flex-wrap:wrap; gap:6px; justify-content:center; padding:16px 0 4px; }
.llb-cate a{
  font-size:11px; letter-spacing:.06em; color:var(--ll-muted);
  padding:5px 11px; border:1px solid var(--ll-line); border-radius:2px; text-decoration:none;
}
.llb-cate a:hover,.llb-cate #bo_cate_on{ color:var(--ll-ink); border-color:var(--ll-line2); }

/* 피드 */
.llb-feed{ display:flex; flex-direction:column; }
.llb-card{
  display:block; text-decoration:none; color:inherit;
  padding:22px 0; border-bottom:1px solid var(--ll-line);
}
.llb-card.is-notice{ background:linear-gradient(0deg,transparent,transparent); }
.llb-card-img{ display:block; margin-bottom:12px; }
.llb-card-img img{
  display:block; width:100%; height:auto;
  border:1px solid var(--ll-line); background:var(--ll-soft);
}
.llb-card.no-img{ padding:16px 0; }
.llb-card-line{ display:flex; align-items:center; gap:6px; min-height:0; }
.llb-tag{
  font-size:10px; letter-spacing:.1em; color:#fff; background:var(--ll-ink);
  padding:2px 7px; border-radius:2px;
}
.llb-card-cate{ font-size:10px; letter-spacing:.1em; color:var(--ll-muted); text-transform:uppercase; }
.llb-card-title{
  display:block; margin:6px 0 8px; font-size:15px; line-height:1.5;
  color:var(--ll-ink); font-weight:500;
}
.llb-card-meta{ display:flex; align-items:center; gap:12px; font-size:11px; letter-spacing:.04em; color:var(--ll-muted); }
.llb-card-cmt{ color:var(--ll-faint); }
.llb-card:hover .llb-card-title{ color:#000; text-decoration:underline; text-underline-offset:3px; }

.llb-empty{ text-align:center; padding:60px 0; color:var(--ll-muted); font-size:13px; letter-spacing:.02em; }

.llb-pg{ text-align:center; padding:26px 0 6px; }
.llb-pg .pg_page,.llb-pg .pg_current,.llb-pg strong{
  display:inline-block; min-width:30px; padding:6px 8px; margin:0 1px;
  font-size:12px; text-decoration:none; color:var(--ll-muted); border:1px solid transparent;
}
.llb-pg .pg_current,.llb-pg strong.pg_current{ color:var(--ll-ink); border-color:var(--ll-line2); }

.llb-foot-write{ text-align:center; padding:8px 0 4px; }

.llb-sch{ margin-top:26px; border-top:1px solid var(--ll-line); padding-top:14px; }
.llb-sch summary{ cursor:pointer; font-size:11px; letter-spacing:.14em; color:var(--ll-muted); text-transform:uppercase; list-style:none; }
.llb-sch summary::-webkit-details-marker{ display:none; }
.llb-sch form{ display:flex; gap:6px; margin-top:12px; flex-wrap:wrap; }
.llb-sch select,.llb-sch input[type=text]{
  border:1px solid var(--ll-line2); background:#fff; padding:8px 10px; font-size:13px; border-radius:2px;
}
.llb-sch input[type=text]{ flex:1; min-width:120px; }
.llb-sch button{
  border:1px solid var(--ll-ink); background:var(--ll-ink); color:#fff;
  padding:8px 16px; font-size:12px; letter-spacing:.06em; border-radius:2px; cursor:pointer;
}

/* =======================  읽기  ======================= */
.llv-head{ text-align:center; padding:30px 0 22px; border-bottom:1px solid var(--ll-line); margin-bottom:22px; }
.llv-eyebrow{ margin:0 0 12px; }
.llv-title{ margin:0 0 14px; font-size:22px; line-height:1.4; font-weight:600; color:var(--ll-ink); letter-spacing:.01em; }
.llv-info{ margin:0; display:flex; gap:14px; justify-content:center; flex-wrap:wrap; font-size:11px; letter-spacing:.04em; color:var(--ll-muted); }

.llv-atc{ min-height:120px; }
.llv-img{ margin:0 0 18px; }
.llv-img img{ display:block; width:100%; height:auto; margin:0 0 12px; border:1px solid var(--ll-line); }
.llv-con{ font-size:15px; line-height:1.85; color:var(--ll-body); word-break:break-all; }
.llv-con img{ max-width:100%; height:auto; }
.llv-con a{ color:var(--ll-ink); text-decoration:underline; text-underline-offset:2px; }
.llv-sign{ margin-top:24px; padding-top:14px; border-top:1px dashed var(--ll-line); color:var(--ll-muted); font-size:13px; }

.llv-act{ margin:28px 0 6px; text-align:center; }
.llv-act .bo_v_act_gng{ position:relative; display:inline-block; }
.llv-cnt{ display:inline-block; margin:0 8px; font-size:12px; color:var(--ll-muted); }
.llv-cnt strong,.llv-act strong{ color:var(--ll-ink); }
#bo_v_act_good,#bo_v_act_nogood{ display:none; position:absolute; top:38px; left:50%; transform:translateX(-50%); white-space:nowrap; padding:8px 12px; background:var(--ll-ink); color:#fff; font-size:12px; border-radius:2px; }

.llv-sublabel{ font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ll-muted); margin:26px 0 8px; }
.llv-file ul{ margin:0; padding:0; list-style:none; border-top:1px solid var(--ll-line); }
.llv-file li{ border-bottom:1px solid var(--ll-line); }
.llv-file a{ display:block; padding:11px 2px; color:var(--ll-ink); text-decoration:none; }
.llv-file a:hover{ background:var(--ll-soft); }
.llv-file strong{ font-weight:500; font-size:13px; }
.llv-file-sub{ display:block; margin-top:3px; font-size:11px; color:var(--ll-muted); }

/* 버튼줄 */
.llv-nav{ display:flex; flex-wrap:wrap; gap:6px; justify-content:center; }
.llv-btn{
  display:inline-block; padding:8px 15px; font-size:12px; letter-spacing:.05em;
  color:var(--ll-body); text-decoration:none; border:1px solid var(--ll-line2);
  border-radius:2px; background:#fff; cursor:pointer;
}
.llv-btn:hover{ border-color:var(--ll-ink); color:var(--ll-ink); }
.llv-btn-list{ background:var(--ll-soft); }
.llv-btn-write{ background:var(--ll-ink); color:#fff; border-color:var(--ll-ink); }
.llv-btn-write:hover{ color:#fff; }
#bo_v_top{ margin:22px 0; padding-bottom:22px; border-bottom:1px solid var(--ll-line); }
.llv-bot{ margin-top:26px; }

/* =======================  쓰기  ======================= */
.llw-head{ text-align:center; padding:26px 0 20px; border-bottom:1px solid var(--ll-line); margin-bottom:22px; }
.llw-title{ margin:8px 0 0; font-size:19px; font-weight:600; color:var(--ll-ink); }

.llw-form{ display:flex; flex-direction:column; gap:18px; }
.llw-row{ display:flex; flex-direction:column; gap:7px; }
.llw-row > label{ font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--ll-muted); }
.llw-row .frm_input,
.llw-row select,
.llw-row textarea{
  width:100%; border:1px solid var(--ll-line2); background:#fff;
  padding:11px 12px; font-size:14px; border-radius:2px; color:var(--ll-ink);
}
.llw-row textarea{ min-height:220px; line-height:1.7; resize:vertical; }
.llw-row .frm_input:focus,
.llw-row textarea:focus,
.llw-row select:focus{ outline:none; border-color:var(--ll-ink); }

.llw-admin{ flex-direction:row; gap:10px; padding:12px; background:var(--ll-soft); border:1px solid var(--ll-line); border-radius:3px; }
.llw-admin .llw-field{ flex:1; display:flex; flex-direction:column; gap:6px; }
.llw-admin label{ font-size:10px; letter-spacing:.1em; color:var(--ll-faint); text-transform:uppercase; }

.llw-opt .llw-optbox{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; font-size:13px; }
.llw-optbox label{ color:var(--ll-body); }

.llw-file-row .frm_file{ font-size:13px; }
.llw-file-desc{ margin-top:8px; }
.llw-file-del{ margin-top:8px; font-size:12px; color:var(--ll-muted); }

#char_count_desc{ font-size:12px; color:var(--ll-muted); margin:0 0 8px; }
#char_count_wrap{ text-align:right; font-size:12px; color:var(--ll-muted); margin-top:6px; }
.llw-mini{
  margin-top:8px; padding:6px 10px; font-size:11px; color:var(--ll-muted);
  border:1px solid var(--ll-line); background:#fff; border-radius:2px; cursor:pointer;
}
#autosave_wrapper{ position:relative; }
#autosave_pop{ display:none; z-index:10; position:absolute; top:44px; right:0; padding:10px; width:320px; max-width:90vw; max-height:200px; border:1px solid var(--ll-ink); background:#fff; overflow-y:auto; }
#autosave_pop .autosave_close{ border:0; background:transparent; cursor:pointer; font-size:13px; color:var(--ll-muted); float:right; }
#autosave_pop ul{ clear:both; margin:8px 0 0; padding:0; list-style:none; border-top:1px solid var(--ll-line); }
#autosave_pop li{ padding:8px 2px; border-bottom:1px solid var(--ll-line); font-size:12px; }

.llw-btns{ display:flex; gap:8px; justify-content:flex-end; margin-top:24px; }
.llw-cancel,.llw-submit{
  padding:12px 22px; font-size:13px; letter-spacing:.06em; border-radius:2px; cursor:pointer; border:1px solid var(--ll-line2);
}
.llw-cancel{ background:#fff; color:var(--ll-muted); text-decoration:none; display:inline-flex; align-items:center; }
.llw-submit{ background:var(--ll-ink); color:#fff; border-color:var(--ll-ink); font-weight:600; }
.llw-submit:hover{ opacity:.9; }

/* =======================  댓글  ======================= */
#bo_vc.llc{ max-width:var(--ll-col); margin:34px auto 0; padding:20px 16px; background:var(--ll-soft); border:1px solid var(--ll-line); border-radius:3px; }
.llc-label{ font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ll-muted); margin:0 0 14px; }
.llc-label span{ color:var(--ll-ink); }
.llc-item{ padding:14px 0; border-top:1px solid var(--ll-line); }
.llc-item:first-of-type{ border-top:0; }
.llc-item.is-reply{ border-top:1px dashed var(--ll-line); }
.llc-item-head{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:6px; }
.llc-re{ color:var(--ll-faint); }
.llc-name{ font-size:13px; font-weight:600; color:var(--ll-ink); }
.llc-time{ font-size:11px; color:var(--ll-muted); }
.llc-ip{ font-size:10px; color:var(--ll-faint); }
.llc-body{ font-size:14px; line-height:1.7; color:var(--ll-body); word-break:break-all; }
.llc-body a{ color:var(--ll-ink); }
.llc-secret{ display:inline-block; font-size:10px; color:#fff; background:var(--ll-faint); padding:1px 6px; border-radius:2px; margin-right:4px; }
.llc-act{ margin-top:8px; display:flex; gap:10px; }
.llc-act a{ font-size:11px; letter-spacing:.04em; color:var(--ll-muted); text-decoration:none; }
.llc-act a:hover{ color:var(--ll-ink); }
.llc-empty{ text-align:center; padding:20px 0; color:var(--ll-muted); font-size:13px; }

#bo_vc_w.llc-w{ max-width:var(--ll-col); margin:12px auto 0; padding:0 16px; }
.llc-w-guest{ display:flex; gap:8px; margin-bottom:8px; }
.llc-w-guest .frm_input{ flex:1; border:1px solid var(--ll-line2); padding:10px; font-size:13px; border-radius:2px; }
.llc-w-txt{ width:100%; min-height:90px; border:1px solid var(--ll-line2); padding:11px 12px; font-size:14px; line-height:1.6; border-radius:2px; resize:vertical; }
.llc-w-txt:focus{ outline:none; border-color:var(--ll-ink); }
#char_cnt{ display:block; font-size:11px; color:var(--ll-muted); margin-bottom:6px; }
.llc-w-captcha{ margin-top:10px; }
.llc-w-btn{ margin-top:10px; text-align:right; }

/* =======================  반응형  ======================= */
@media (max-width:520px){
  #bo_list.llb,#bo_v.llv,#bo_w.llw{ padding-left:14px; padding-right:14px; }
  .llv-title{ font-size:19px; }
  .llb-title{ font-size:18px; }
  .llw-admin{ flex-direction:column; }
  .llw-btns{ }
  .llw-cancel,.llw-submit{ flex:1; text-align:center; justify-content:center; }
}

/* =======================  관련 상품 (글 하단)  ======================= */
.llv-rel{ margin-top:30px; padding-top:6px; }
.llv-rel-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; align-items:start; }
.llv-rel-card{ display:flex; flex-direction:column; text-decoration:none; color:var(--ll-ink); }
.llv-rel-thumb{ display:block; border:1px solid var(--ll-line); background:var(--ll-soft); overflow:hidden; line-height:0; }
.llv-rel-thumb img{ width:100%!important; height:auto!important; display:block; }
.llv-rel-name{ margin-top:8px; font-size:12px; line-height:1.4; color:var(--ll-body); overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.llv-rel-price{ margin-top:4px; font-size:12px; font-weight:600; color:var(--ll-ink); }
.llv-rel-sold{ color:var(--ll-muted); font-weight:600; }
.llv-rel-card:hover .llv-rel-name{ text-decoration:underline; text-underline-offset:2px; }

/* 쓰기 도움말 */
.llw-help{ margin:6px 0 0; font-size:11px; line-height:1.5; color:var(--ll-muted); }

@media (max-width:520px){
  .llv-rel-grid{ grid-template-columns:repeat(2,1fr); }
}

/* =======================  배경 흰색 (테마 배경 묻힘 방지)  ======================= */
#container{ background:#fff; }
#bo_list.llb, #bo_v.llv, #bo_w.llw{ background:#fff; }

/* =======================  관련상품 상품명 검색 위젯  ======================= */
.llrel{ position:relative; }
.llrel-box{ position:absolute; left:0; right:0; top:calc(100% + 4px); z-index:40; background:#fff; border:1px solid var(--ll-line2); border-radius:2px; max-height:280px; overflow:auto; box-shadow:0 8px 24px rgba(0,0,0,.08); }
.llrel-opt{ display:flex; align-items:center; gap:10px; padding:9px 11px; cursor:pointer; border-bottom:1px solid var(--ll-line); }
.llrel-opt:last-child{ border-bottom:0; }
.llrel-opt:hover{ background:var(--ll-soft); }
.llrel-opt img, .llrel-noimg{ width:40px; height:40px; object-fit:cover; border:1px solid var(--ll-line); background:var(--ll-soft); flex:0 0 auto; display:block; }
.llrel-opt-t{ min-width:0; display:flex; flex-direction:column; gap:2px; }
.llrel-opt-t b{ font-size:13px; font-weight:500; color:var(--ll-ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.llrel-opt-t em{ font-style:normal; font-size:11px; color:var(--ll-muted); }
.llrel-empty{ padding:14px; text-align:center; color:var(--ll-muted); font-size:12px; }
.llrel-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.llrel-chip{ display:inline-flex; align-items:center; gap:6px; padding:4px 8px 4px 4px; border:1px solid var(--ll-line2); border-radius:20px; font-size:12px; background:#fff; }
.llrel-chip img{ width:22px; height:22px; border-radius:50%; object-fit:cover; }
.llrel-chip b{ font-weight:500; color:var(--ll-ink); max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.llrel-chip i{ cursor:pointer; color:var(--ll-muted); font-style:normal; padding:0 2px; }
.llrel-chip i:hover{ color:#c0392b; }