/* 커뮤니티 리스트 — 당근마켓 커뮤니티 UI (라이트) */
.cm-v2.cm-karrot{
  --text:#191F28;
  --sub:#6B7684;
  --muted:#8B95A1;
  --line:#F2F4F6;
  --line-strong:#E5E8EB;
  --canvas:#fff;
  --surface:#fff;
  --orange:#FF6F0F;
  --orange-hover:#FF8534;
  --shadow-head:0 4px 16px rgba(0,23,51,.06);
  --r-md:10px;
  --r-sm:8px;
  --max-w:640px;
  color:var(--text);
}
html:has(.cm-karrot),body:has(.cm-karrot){background:#fff!important}

.cm-v2.board-list.cm-karrot{
  max-width:var(--max-w);
  margin:0 auto;
  background:var(--canvas);
  padding:var(--cm-list-head-h,118px) 0 calc(80px + env(safe-area-inset-bottom,0px));
  min-height:calc(100vh - var(--st-header-h,58px) - var(--st-nav-h,72px));
}

.cm-karrot .cm-sticky-head{
  position:fixed;
  top:var(--st-header-h,58px);
  left:0;right:0;
  z-index:50;
  max-width:var(--max-w);
  margin:0 auto;
  background:rgba(238,241,248,.96);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  transition:box-shadow .2s ease;
  padding:0;
}
.cm-karrot .cm-sticky-head.is-scrolled{box-shadow:0 4px 16px rgba(0,0,0,.06)}

.cm-karrot .cm-hero{padding:10px 16px 2px;background:transparent;border:none;margin:0}
.cm-karrot .cm-hero__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cm-karrot .cm-hero__title{font-size:20px;font-weight:800;margin:0;letter-spacing:-.04em;color:var(--text)}
.cm-karrot .cm-hero__actions{display:flex;align-items:center;gap:2px}
.cm-karrot .cm-icon-btn{
  width:40px;height:40px;border:none;border-radius:0;
  background:transparent;color:var(--sub);font-size:18px;
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
}
.cm-karrot .cm-icon-btn:hover{color:var(--text);background:transparent}

.cm-karrot .cm-tabs{padding:0 16px;border-bottom:none;overflow:hidden}
.cm-karrot .cm-tabs__track{
  display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.cm-karrot .cm-tabs__track::-webkit-scrollbar{display:none}
.cm-karrot .cm-tab{
  flex-shrink:0;position:relative;padding:12px 0 11px;
  font-size:15px;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap;
}
.cm-karrot .cm-tab:hover{color:var(--sub)}
.cm-karrot .cm-tab.is-on{color:var(--text);font-weight:800}
.cm-karrot .cm-tab.is-on::after{
  content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--text);border-radius:2px 2px 0 0;
}

.cm-karrot .cm-filters{
  display:flex;gap:8px;overflow-x:auto;padding:12px 16px;scrollbar-width:none;
}
.cm-karrot .cm-filters::-webkit-scrollbar{display:none}
.cm-karrot .cm-filter{
  flex-shrink:0;display:inline-flex;align-items:center;gap:5px;
  height:32px;padding:0 4px;border-radius:0;
  font-size:13px;font-weight:600;color:var(--sub);background:transparent;text-decoration:none;
}
.cm-karrot .cm-filter i{font-size:11px;color:#FF6B6B}
.cm-karrot .cm-filter.is-on{background:transparent;color:var(--text);font-weight:800}
.cm-karrot .cm-cats-admin-hint{margin:0;padding:10px 16px;font-size:12px;color:var(--sub);background:#FFF4EB}

.cm-karrot .cm-feed{display:flex;flex-direction:column;gap:0;background:transparent}
.cm-karrot .cm-post{
  display:block;padding:0;background:transparent;
  border:none;text-decoration:none;color:inherit;
}
.cm-karrot .cm-post:active{background:transparent}
.cm-karrot .cm-post.is-pinned{background:transparent}
.cm-karrot .cm-post__trigger{
  display:block;width:100%;margin:0;padding:0;border:none;background:transparent;
  text-align:left;cursor:pointer;font:inherit;color:inherit;
}
.cm-karrot .cm-post__inner{padding:16px 14px}

.cm-karrot .cm-post__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cm-karrot .cm-post__cat{
  display:inline-flex;font-size:12px;font-weight:600;color:var(--sub);
  background:transparent;padding:0;border-radius:0;
}
.cm-karrot .cm-post__cat--notice{color:#2563EB}
.cm-karrot .cm-post__chev{color:var(--muted);font-size:12px;transition:transform .22s ease}
.cm-karrot .cm-post.is-open .cm-post__chev{transform:rotate(180deg)}
.cm-karrot .cm-post.is-open .cm-post__preview{display:none}
.cm-karrot .cm-post__more{display:none}

.cm-karrot .cm-post__body{display:flex;align-items:flex-start;gap:12px}
.cm-karrot .cm-post__text{flex:1;min-width:0}
.cm-karrot .cm-post__title{
  font-size:16px;font-weight:700;line-height:1.45;margin:0 0 4px;color:var(--text);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  letter-spacing:-.03em;
}
.cm-karrot .cm-post__lock{font-size:11px;color:var(--muted);margin-right:4px}
.cm-karrot .cm-post__preview{
  font-size:14px;color:var(--sub);line-height:1.5;margin:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.cm-karrot .cm-post__thumb{
  flex-shrink:0;width:72px;height:72px;border-radius:12px;overflow:hidden;background:var(--line);
}
.cm-karrot .cm-post__thumb img{width:100%;height:100%;object-fit:cover;display:block}

.cm-karrot .cm-post__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.cm-karrot .cm-post__info{display:flex;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted);min-width:0}
.cm-karrot .cm-post__nick{max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sub)}
.cm-karrot .cm-sep{margin:0 5px;color:#CED4DA}
.cm-karrot .cm-post__stats{display:flex;align-items:center;gap:10px;flex-shrink:0}
.cm-karrot .cm-stat{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}
.cm-karrot .cm-stat i{font-size:13px}
.cm-karrot .cm-stat.has-val{color:var(--sub)}

/* 아코디언 펼침 */
.cm-karrot .cm-post__expand{display:none;overflow:hidden}
.cm-karrot .cm-post.is-open .cm-post__expand{display:block}
.cm-karrot .cm-post__expand-inner{padding:0 14px 18px}
.cm-karrot .cm-post__manage{
  display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px;
}
.cm-karrot .cm-post__manage-btn{
  display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:10px;
  font-size:13px;font-weight:600;line-height:1;text-decoration:none;cursor:pointer;
  border:1px solid var(--line-strong);background:#fff;color:var(--sub);font-family:inherit;
}
.cm-karrot .cm-post__manage-btn i{font-size:12px}
.cm-karrot .cm-post__manage-btn--edit:hover{
  border-color:var(--st-blue,#2563EB);color:var(--st-blue,#2563EB);background:rgba(37,99,235,.06);
}
.cm-karrot .cm-post__manage-btn--del:hover{
  border-color:#E53935;color:#E53935;background:rgba(229,57,53,.06);
}
.cm-karrot .cm-post__embed-body{font-size:15px;line-height:1.65;color:var(--text);word-break:break-word}
.cm-karrot .cm-post__embed-body img{max-width:100%;height:auto;border-radius:12px}
.cm-karrot .cm-post__embed-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:12px;color:var(--muted)}
.cm-karrot .cm-post__embed-link{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:var(--st-blue,#2563EB);text-decoration:none}
.cm-cmt-iframe{position:absolute;width:0;height:0;border:0;opacity:0;pointer-events:none}

/* 댓글 (리스트 펼침) */
.cm-karrot .cm-post__cmt{margin-top:20px;padding-top:16px;border-top:1px solid var(--line-strong)}
.cm-karrot .cm-post__cmt-title{font-size:15px;font-weight:700;margin:0 0 12px;color:var(--text)}
.cm-karrot .cm-post__cmt-count{color:var(--st-blue,#2563EB)}
.cm-karrot .cm-post__cmt-list{list-style:none;margin:0 0 16px;padding:0}
.cm-karrot .cm-post__cmt-item{padding:12px 0;border-bottom:1px solid var(--line)}
.cm-karrot .cm-post__cmt-item:last-child{border-bottom:none}
.cm-karrot .cm-post__cmt-empty{padding:12px 0;font-size:14px;color:var(--muted)}
.cm-karrot .cm-post__cmt-item-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.cm-karrot .cm-post__cmt-name{font-size:13px;font-weight:600;color:var(--text)}
.cm-karrot .cm-post__cmt-time{font-size:12px;color:var(--muted)}
.cm-karrot .cm-post__cmt-body{font-size:14px;line-height:1.55;color:var(--sub);word-break:break-word}
.cm-karrot .cm-post__cmt-body img{max-width:100%;height:auto;border-radius:8px}
.cm-karrot .cm-post__cmt-write{display:flex;gap:8px;align-items:flex-end}
.cm-karrot .cm-post__cmt-input{
  flex:1;min-height:72px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;
  font-size:14px;line-height:1.5;resize:vertical;background:#fff;color:var(--text);font-family:inherit;
}
.cm-karrot .cm-post__cmt-input:focus{outline:none;border-color:var(--st-blue,#2563EB)}
.cm-karrot .cm-post__cmt-submit{
  flex-shrink:0;height:44px;padding:0 16px;border:none;border-radius:12px;
  background:var(--st-blue,#2563EB);color:#fff;font-size:14px;font-weight:600;cursor:pointer;
}
.cm-karrot .cm-post__cmt-guest{margin:0;font-size:13px;color:var(--sub)}
.cm-karrot .cm-post__cmt-guest a{color:var(--st-blue,#2563EB);font-weight:600;text-decoration:none}
.cm-karrot .cm-post__loading,
.cm-karrot .cm-post__error{padding:12px 0;font-size:14px;color:var(--sub)}

.cm-karrot .cm-empty{text-align:center;padding:80px 24px;color:var(--sub);font-size:15px;line-height:1.65}
.cm-karrot .cm-empty i{display:block;font-size:44px;color:#DEE2E6;margin-bottom:16px}

.cm-karrot .cm-fab{
  position:fixed;right:max(16px,calc(50% - 320px + 16px));
  bottom:calc(72px + 12px + env(safe-area-inset-bottom,0px));
  width:52px;height:52px;border-radius:50%;
  background:var(--st-blue,#2563EB);color:#fff!important;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:18px;
  box-shadow:0 6px 18px rgba(37,99,235,.4);text-decoration:none;z-index:100;
  transition:transform .15s,background .15s;
}
.cm-karrot .cm-fab i{color:#fff;font-size:18px}
.cm-karrot .cm-fab:active{transform:scale(.96);background:#1D4ED8}
.cm-karrot .cm-fab:hover{color:#fff!important;background:#1D4ED8}

.cm-karrot .cm-btn-write{display:none!important}
.cm-karrot .cm-feed-loader{padding:24px 16px 12px;color:var(--sub);font-size:13px;font-weight:600}
.cm-karrot .cm-feed-loader__dot{background:var(--orange)}
.cm-karrot .cm-feed-end{padding:24px 16px 16px;color:var(--muted);font-size:13px}

@media (min-width:641px){
  .cm-v2.board-list.cm-karrot{border:none}
}
