@charset "utf-8";
/* =========================================================
   지산톡 (jisantalk) — 커뮤니티 테마 · 디자인 시스템
   법무법인 세담(지산소송.com) 팔레트: 크림 + 네이비 + 골드
   각진 디자인(radius 0) · 다크모드 · 반응형
   ========================================================= */

/* ===== 올 리뉴얼 팔레트: 밝은 공공포털톤 (블루 전환, 골드 폐기) — Phase A-1 ===== */
/* ── 로고 전용 서체: 학교안심 여행 R (KERIS) ──
   로고 글자('지산톡.com')만 서브셋해 948바이트로 인라인. 추가 네트워크 요청 0건.
   Regular 한 굵기뿐이라 가짜 굵게(faux bold)를 피하려고 font-weight:400 으로 고정한다. */
@font-face{font-family:'jt-logo';font-style:normal;font-weight:400;font-display:swap;
  src:url(data:font/woff2;base64,d09GMk9UVE8AAAO0AAkAAAAABPgAAANvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYVvBmAAZAE2AiQDHAQGBQYHIBtUBECeA27z8U1khGdS7i4KMTdzu/aIiFLw/P/++n3uufPmA4pEFhLYxVJU/w/JVSHO6t9s7AP5PJe72zYW3W5w4IEn3PMs4LVs6tgcJ9AG+ff6DcplZ06F5Ing2r64Ekk/dzamJXZVLGwdAAnZqkpAOYlq7NgCuTlAVhNque/jwE25+zQLBK+dZ8VRIHEfMPAPGkgYhR84sA2YBqrbnaGFpJbW1galHB7eIliDiGSXhp1j0pJKsmIy81IyQhKykmMSMpN8MSJShWQxviIWyjMwvjIOKuJPFESXgT8wKErJc6td7z9Wwg57vF/hgAOukCASk5xlk1fTtUjdWp13ayna2roOmTbUg+0BR9FO27aWNLGL7HVs6o5HTR1N7SFZ0lCXfj2juhzKTYcJt05fFz/N6ZjzPH1XyGDl/XlOptUuXv6O0r6i/xYGkQ2VJMYgKKkMcMi/6JbmyOo4i5G9GU2fZkgTmJFYwTH4OW0ufHH1xt0qfMXkdd+DDlB+9Avcs6OBzmEy+1QuVeJDVQsqoQyiBuOZAGlE8iZ875bmtqQM4IRGOC+kjTbKuESgAbO025P9xS2x63o7JSVKgDp5FAWqA6MDLf2S6+XViV34SXrUgLG7C2o79uSGh0keVPNTlcBtuCwqSIqFuFCIsJngBoOfoI5ian4jvvSjpjIqZhYMFIB7Aq8UQPE0BtWRuU2fuprNqdccaJz9ArXY9KD44O5v0q9gQOqGO+Xfp8o1OAlaiSRHk6WDwss28kRFG+UqStC6SSV92XQcCbWgQIUnosfme/oWSuiqj5Irpck3jySEd5vEMw9q4UIJBs/otDUYkLrIFQn9x91moTDnECHNF+9vsvcuGMXMrp5lBXA+Y6HozRtaeEYXXqNHT6yZNE8FRNBHGguoCIR/gmfkn2rzVQnbpFaoXjiFWSIbskEfSIT+2mTvP0+IseqRMYmLGIMBogdqXpIhWUI0xlEj0oRApGFTfZ22NKaF6qtFuVMYg5ZIXQEBsOJTUpUEaJyBIkWw9EsppKDfqGaCJVY8J6c7t4tC8D4bvRFTMSOmQ7Vmx+pEBDQkzM9sD9zLbPN/iuo3GH01Zu/U0kOM+TFhUx6SgGL0ElrCdzDYWzkuLtNt7+noqqRe6NSbXEqtjqRTsZTqE8oUUg79EAOAg/q2aJ1cEAAA) format('woff2')}

:root{
  --bg:#f9fafb; --card:#ffffff; --card-2:#f4f6fa; --bg-2:#f7f9fc; --wash:#eef3f9; /* --bg: OKKY식 연회색 페이지 배경(카드 흰색과 대비로 깊이감) */
  --ink:#111111; --ink-2:#444444; --muted:#6b7280; --muted-2:#9aa3af;
  --line:#e6ebf1; --line-2:#d4dbe4;
  --brand:#0090f9; --brand-2:#0077d6; --brand-ink:#0272c9; --brand-wash:#e8f4fe; /* OKKY 블루(#0090f9). 구값 #0a6aa1/#08587f/#075a86/#eaf3fa */
  --brand-solid:#0090f9; --brand-solid-2:#0077d6; /* 버튼 배경(흰글자): 선명 azure, 굵은글씨 기준 대비 확보. 구값 #0a6aa1/#08587f */
  --navy:#1f2a44; --navy-2:#2b3a5e; --navy-deep:#161f34;
  --hot:#d92d20; --hot-wash:#fdeceb; --warn:#b25e09; --warn-wash:#fdf3e6; --ok:#177245; --ok-wash:#e7f4ec;
  --tmp-hot:#c0392b; --tmp-warn:#b07d1a; --tmp-watch:#5d910b; /* 피해 온도 점(dot) */
  --tmp-hot-bg:#fdeceb; --tmp-hot-ink:#b3261a; --tmp-warn-bg:#fbf1dc; --tmp-warn-ink:#86610f; --tmp-watch-bg:#eef6df; --tmp-watch-ink:#436b0a; /* 온도 배지: 연배경+진한글자(AA) */
  --top:#0c3a58; --top-ink:#c3ccdb;
  --radius-sm:2px; --radius:4px; --radius-card:var(--radius); /* radius 2단: 미세2/기본4, --radius-card는 하위호환 별칭 */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px; --sp-6:32px; /* 스페이싱 스케일(4/8 리듬) */
  --gold:#a98f56; --gold-deep:#8f7a4e; /* 잔존 참조 안전용(사용 최소, 로펌 라벨 한정) */
  --wrap:1200px;
  --shadow:none; /* 리뉴얼: 포털톤=그림자 없이 라인으로 구분 */
  --sans:"Pretendard Variable","Pretendard","Apple SD Gothic Neo","Malgun Gothic","맑은 고딕",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --serif:var(--sans); /* 리뉴얼: Noto Serif 폐기 → sans 통일 */
}
/* [롤백용 구 팔레트] --bg:#edeae6; --card-2:#f5f2ec; --ink:#2c3345; --line:#e2ddd4;
   --brand:#b09a6a; --brand-2:#967f52; --brand-ink:#7a683f; --brand-wash:#f3eee2;
   --navy:#2c3345; --navy-deep:#1c2430; --radius-card:8px; --serif:"Noto Serif KR",serif; */
[data-theme="dark"]{
  --bg:#0f1319; --card:#151a22; --card-2:#1b2230; --bg-2:#161c26; --wash:#141b26;
  --ink:#eef2f7; --ink-2:#c3cad6; --muted:#8b93a1; --muted-2:#6b7280;
  --line:#232b38; --line-2:#333d4d;
  --brand:#45a9f5; --brand-2:#63b8f7; --brand-ink:#7cc5f9; --brand-wash:#102a40; /* OKKY 블루 다크 변형. 구값 #3d9fd6/#5cb2e2/#7cc2ea/#15283b */
  --brand-solid:#1683d8; --brand-solid-2:#1069b0; /* 다크 버튼 배경(흰글자 대비). 구값 #1c6ea3/#14547d */
  --navy:#141a24; --navy-2:#1f2a44; --navy-deep:#0b0f16;
  --hot:#e2685a; --hot-wash:#3a231f; --warn:#d3a13f; --warn-wash:#3a3017; --ok:#5cbf7e; --ok-wash:#183024;
  --tmp-hot:#e05a48; --tmp-warn:#cf9a34; --tmp-watch:#84b93f;
  --tmp-hot-bg:#3a231f; --tmp-hot-ink:#f0a99e; --tmp-warn-bg:#3a3017; --tmp-warn-ink:#e8c078; --tmp-watch-bg:#22301a; --tmp-watch-ink:#a7d16a;
  --top:#0b0f16; --top-ink:#c3ccdb;
  --gold:#c9ad74;
  --shadow:none;
}

/* ---------- reset / base ---------- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh}
img{max-width:100%;height:auto;vertical-align:middle;border:0;border-radius:0}
a{color:inherit;text-decoration:none}
a:hover{color:var(--brand-2)}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,fieldset{margin:0;padding:0}
ul,ol{list-style:none}
legend{position:absolute;left:-9999px}
hr{display:none}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.sound_only,#hd_login_msg,#skip_to_container{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hd-inner{max-width:var(--wrap);margin:0 auto;padding:0 18px}

/* ---------- header : top bar ---------- */
#hd{position:relative;z-index:1000}
#hd_top{background:var(--bg-2);color:var(--muted);font-size:13.5px;border-bottom:1px solid var(--line)}
#hd_top .hd-inner{display:flex;align-items:center;justify-content:space-between;height:38px}
#hd_top a{color:var(--muted)}
#hd_top a:hover{color:var(--brand-2)}
.hd-top-brand{font-weight:600;letter-spacing:-.2px;opacity:.92}
.hd-util{display:flex;align-items:center;gap:2px}
.hd-util>li{display:flex;align-items:center}
.hd-util>li>a,.hd-util .dark-toggle{padding:0 10px;height:38px;display:inline-flex;align-items:center;line-height:1}
.hd-util>li+li{border-left:1px solid var(--line)}
.hd-util>li.util-connect,.hd-util>li.util-online{padding:0 10px;height:38px;line-height:1;cursor:default}
.hd-util strong{color:var(--brand-ink);margin-left:3px}
.hd-util .util-admin a{color:var(--brand)}
.dark-toggle{background:none;border:0;color:var(--muted);font-size:14px}
.dark-toggle:hover{color:var(--brand-2)}

/* ---------- header : main (logo + search) ---------- */
#hd_main{background:var(--card);border-bottom:1px solid var(--line)}
#hd_main .hd-inner{display:flex;align-items:center;gap:22px;height:82px}
#logo{flex:0 0 auto}
#logo a{font-size:28px;font-weight:600;letter-spacing:-1px;color:var(--ink)}
#logo span{color:var(--brand);font-weight:600;font-size:16px}
#hd_search{flex:1 1 auto;max-width:560px;display:flex;align-items:stretch;background:var(--card);border:2px solid var(--brand)}
#hd_search #sch_stx{flex:1 1 auto;min-width:0;border:0;background:transparent;color:var(--ink);padding:0 16px;font-size:15px;height:46px}
#hd_search #sch_stx::placeholder{color:var(--muted-2)}
#hd_search #sch_submit{flex:0 0 auto;border:0;background:var(--brand-solid);color:#fff;width:54px;font-size:16px}
#hd_search #sch_submit:hover{background:var(--brand-solid-2)}
.hd-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 18px;background:var(--brand-wash);color:var(--brand-ink);font-weight:600;border:1px solid var(--brand)}
.hd-cta:hover{background:var(--brand-solid);color:#fff;border-color:var(--brand)}

/* ---------- header : gnb ---------- */
#gnb{background:var(--card);border-bottom:1px solid var(--line-2)}
#gnb .hd-inner{display:flex;align-items:stretch;gap:0}
.gnb-all-btn{display:inline-flex;align-items:center;gap:7px;background:var(--brand-solid);color:#fff;border:0;padding:0 18px;font-weight:600;font-size:14px}
.gnb-all-btn:hover{background:var(--brand-solid-2);color:#fff}
.gnb-list{display:flex;align-items:stretch;flex-wrap:wrap;flex:1 1 auto}
.gnb-item{position:relative}
.gnb-item>a{display:inline-flex;align-items:center;height:54px;padding:0 22px;color:var(--ink-2);font-weight:600;font-size:16px;letter-spacing:-.01em;border-bottom:3px solid transparent}
.gnb-item:hover>a{background:var(--bg-2);color:var(--brand);border-bottom-color:var(--brand)}
.gnb-item.on>a{color:var(--brand);border-bottom-color:var(--brand);background:transparent;font-weight:600}
.gnb-item.has-sub>a::after{content:"";display:inline-block;margin-left:6px;border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px);opacity:.6}
.gnb-sub{position:absolute;top:100%;left:0;min-width:160px;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--brand);box-shadow:var(--shadow);padding:6px;display:none;z-index:50}
.gnb-item:hover .gnb-sub{display:block}
.gnb-sub li a{display:block;padding:9px 12px;color:var(--ink-2);font-size:14px}
.gnb-sub li a:hover{background:var(--brand-wash);color:var(--brand-ink)}
.gnb-sub.gnb-region{min-width:392px;padding:10px}
.gnb-item:hover .gnb-sub.gnb-region{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}
.gnb-region li a{text-align:center;padding:9px 4px;font-size:14px;border-radius:var(--radius-card,0)}

/* ---------- D5: serif 제목 레이어 + 브레드크럼 + radius 부분도입 ---------- */
.jt-site-name,.sec-h h2,.idx-hero h1{font-family:var(--serif);letter-spacing:-.02em}
.jt-site-name,.sec-h h2{font-weight:500}
.idx-hero h1{font-weight:600}
.jt-bc{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);margin-bottom:15px}
.jt-bc a{color:var(--muted)}
.jt-bc a:hover{color:var(--brand-2)}
.jt-bc span{opacity:.5}
.jt-bc strong{color:var(--ink-2);font-weight:600}
/* radius 부분도입: 카드·버튼·뱃지만 8px (테이블·헤더·입력창·밴드는 0 유지) */
.btn,.hd-cta,.jt-btn-write,.jt-sch-toggle,.jt-memo-submit,.jt-react-btn,.jt-poll-opt button,.jt-rl-search button,
.jt-info-card,.lt-card,.jt-rl-item,.region-grid li a,.idx-note,.idx-hero,
#aside .wg,#aside #login,#aside .ol_after,#aside .poll,#aside .outlogin_area,
.jt-react,.jt-poll,.jt-memo-form,.jt-badge-hot,.wg-tag{border-radius:var(--radius-card)}
.gnb-empty{display:inline-flex;align-items:center;height:48px;padding:0 16px;color:var(--muted);font-size:14px}
.gnb-empty a{color:var(--brand);text-decoration:underline}

/* ---------- layout ---------- */
#wrapper{max-width:var(--wrap);width:100%;box-sizing:border-box;margin:0 auto;padding:22px 18px 60px}
#container_wr{display:flex;gap:22px;align-items:flex-start}
/* ---------- 서브비주얼 밴드 (대건 이식·사진없이) ---------- */
.jt-subvisual{position:relative;background:var(--navy-deep) center/cover no-repeat;background-image:linear-gradient(90deg,rgba(16,21,32,.9),rgba(16,21,32,.6) 52%,rgba(16,21,32,.42)),url(../img/subvisual.jpg);border-bottom:3px solid var(--brand);color:#fff;min-height:420px;display:flex;align-items:center}
.jt-subvisual .sv-inner{width:100%;max-width:var(--wrap);margin:0 auto;padding:40px 20px}
.sv-bc{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;color:rgba(255,255,255,.6);margin-bottom:15px}
.sv-bc a{color:rgba(255,255,255,.6)}
.sv-bc a:hover{color:#fff}
.sv-bc span{opacity:.45}
.sv-bc strong{color:rgba(255,255,255,.92);font-weight:600}
.sv-title{font-family:var(--serif);font-size:37px;font-weight:500;letter-spacing:-.02em;line-height:1.25;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.sv-title:after{content:"";display:block;width:46px;height:3px;background:var(--brand-solid);margin-top:16px}
.sv-desc{margin-top:16px;font-size:15px;color:rgba(255,255,255,.85);line-height:1.6;max-width:760px;text-shadow:0 1px 8px rgba(0,0,0,.4)}
@media (max-width:768px){
  .jt-subvisual{min-height:260px}
  .jt-subvisual .sv-inner{padding:24px 16px}
  .sv-title{font-size:27px}
  .sv-title:after{margin-top:12px;width:38px}
  .sv-desc{font-size:14.5px}
}
#container{flex:1 1 auto;min-width:0;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);padding:24px}
#container.is-index{background:transparent;border:0;box-shadow:none;padding:0}
#container_title{font-size:19px;font-weight:600;letter-spacing:-.3px;margin-bottom:16px;padding:1px 0 1px 11px;border-left:5px solid var(--brand);line-height:1.3}
#aside{flex:0 0 300px;display:flex;flex-direction:column;gap:16px}
#aside .wg,#aside #login,#aside .ol_after,#aside .poll,#aside .outlogin_area{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);padding:16px}
#aside img{border-radius:0}

/* ── 좌측 아코디언 사이드메뉴 #lnb (portal_top_v4 mbM_sleft 구조 이식 → 지산톡 토큰/반응형) ── */
#lnb{flex:0 0 210px;order:-1}
.lnb-box{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden}
.lnb-h{font-family:var(--serif);font-size:17px;font-weight:600;color:#fff;background:var(--brand-solid);padding:13px 16px;margin:0}
.lnb-menu{list-style:none;margin:0;padding:4px 0}
.lnb-1{border-top:1px solid var(--line)}
.lnb-1:first-child{border-top:0}
.lnb-1>a,.lnb-1>button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;
  padding:11px 15px;font-family:inherit;font-size:14.5px;font-weight:600;line-height:1.3;color:var(--ink-2);
  background:none;border:0;text-align:left;cursor:pointer;transition:color .15s,background .15s}
.lnb-1>a:hover,.lnb-1>button:hover{color:var(--brand-ink);background:var(--bg-2)}
.lnb-1.on{background:var(--brand-wash)}
.lnb-1.on>a{color:var(--brand);font-weight:600;box-shadow:inset 3px 0 0 var(--brand)}
.lnb-go{color:var(--muted-2);font-size:13px;flex:0 0 auto}
.lnb-ico{color:var(--muted-2);font-size:13px;flex:0 0 auto;transition:transform .2s}
.lnb-1.open .lnb-ico{transform:rotate(180deg);color:var(--brand)}
.lnb-1.lnb-sep{border-top:6px solid var(--wash)}
.lnb-2{list-style:none;margin:0;padding:0;display:none}
.lnb-1.open>.lnb-2{display:block}
.lnb-region>.lnb-2{padding:4px 10px 10px}
.lnb-1.open.lnb-region>.lnb-2{display:flex;flex-wrap:wrap}
.lnb-region .lnb-2>li{width:33.333%}
.lnb-region .lnb-2>li>a{display:block;padding:7px 4px;text-align:center;font-size:14px;color:var(--muted);border-radius:var(--radius-sm)}
.lnb-region .lnb-2>li>a:hover{color:var(--brand-ink);background:var(--bg-2)}
.lnb-region .lnb-2>li.on>a{color:#fff;background:var(--brand-solid);font-weight:600}

/* 콘텐츠 섹션헤더 (portal con_title + con_title_icon 컬러바 이식) */
.jt-conhead{display:flex;align-items:center;gap:10px;margin:26px 0 15px;font-family:var(--serif);font-size:19px;font-weight:600;color:var(--ink);letter-spacing:-.3px}
.jt-conhead::before{content:"";display:inline-block;width:5px;height:18px;background:var(--brand-solid);border-radius:var(--radius-sm);flex:0 0 auto}
.jt-conhead:first-child{margin-top:4px}

/* 그누보드 팝업레이어 접근성 제목 숨김 — 화면엔 안 보이고 스크린리더만 읽음(팝업 등록 시 팝업은 정상 표시) */
#hd_pop h2{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;font-size:0;line-height:0}
.wg-h{font-size:16px;font-weight:600;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.wg-h .fa-fire{color:var(--hot)}
.wg-tag{font-size:13px;font-weight:600;color:var(--muted);background:var(--card-2);border:1px solid var(--line);padding:2px 8px;margin-left:auto}
.wg-empty{color:var(--muted);font-size:14px;line-height:1.5}

/* ---------- homepage placeholder ---------- */
.idx-hero{position:relative;background:var(--navy-deep) center/cover no-repeat;background-image:linear-gradient(115deg,rgba(12,24,46,.9),rgba(8,62,104,.5)),url(../img/subvisual.jpg);color:#fff;padding:46px 32px;border-bottom:3px solid var(--brand)}
.idx-hero h1{font-size:26px;font-weight:600;letter-spacing:-.6px;margin-bottom:10px}
.idx-hero p{color:#dcd9d2;max-width:60ch;font-size:15.5px}
.idx-hero p b{color:#fff}
.idx-hero-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.idx-note{margin-top:16px;background:var(--warn-wash);border:1px solid var(--line-2);border-left:4px solid var(--warn);padding:14px 16px;color:var(--ink-2);font-size:14px}
.idx-note strong{color:var(--warn);margin-right:6px}

/* ---------- homepage portal (A2) ---------- */
.idx-sec{margin-top:26px}
.sec-h{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:11px;border-bottom:1px solid var(--line-2)}
.sec-h h2{font-size:19px;font-weight:600;letter-spacing:-.4px;border-left:5px solid var(--brand);padding-left:11px;line-height:1.15}
.sec-h h1{margin:0;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:-.4px;border-left:5px solid var(--brand);padding-left:11px;line-height:1.15;color:var(--ink)}
.jt-region-bridge{margin:0 0 16px;font-size:14px;color:var(--muted)}
.jt-region-bridge a{color:var(--brand-ink);font-weight:600}
.jt-region-bridge a:hover{color:var(--brand-2);text-decoration:underline}
.sec-h .sec-sub{font-size:14px;color:var(--muted)}
.sec-h .sec-more{margin-left:auto;font-size:14px;color:var(--brand-ink);font-weight:600}
.sec-h .sec-more:hover{color:var(--brand-2)}
.region-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px}
.region-grid li a{display:flex;align-items:center;justify-content:center;height:54px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-weight:600;color:var(--ink);transition:.12s}
.region-grid li a:hover{border-color:var(--brand);background:var(--brand-wash);color:var(--brand-ink)}
.latest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.latest-grid>.idx-note{grid-column:1/-1;margin-top:0}
.lt-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);padding:16px;min-width:0}
.lt-card .latest{margin:0}
.lt-card h2,.lt-card .latest_top_wr h2,.lt-card .lt_title{font-size:15px;font-weight:600;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line);color:var(--ink)}
.lt-card ul li{padding:6px 0;border-bottom:1px dashed var(--line);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lt-card ul li:last-child{border-bottom:0}
.lt-card ul li a{color:var(--ink-2)}
.lt-card ul li a:hover{color:var(--brand-2)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 20px;font-weight:600;font-size:15px;border:1px solid transparent;transition:.15s}
.btn-primary{background:var(--brand-solid);color:#fff}
.btn-primary:hover{background:var(--brand-solid-2);color:#fff}
.idx-hero .btn-primary:hover,.jt-subvisual .btn-primary:hover{background:#fff;color:#0272c9} /* 어두운 히어로 위에서만 흰색 반전(텍스트 고정 진한azure: 다크서도 흰바탕 대비 유지) */
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.45)}
.btn-ghost:hover{background:rgba(255,255,255,.22);color:#fff}

/* ---------- footer ---------- */
/* 푸터 — OKKY식 밝은(흰) 배경 + 상단 경계선 + 로고 왼쪽·메뉴 오른쪽. 다크모드는 토큰 자동 대응 */
#ft{background:var(--card);color:var(--muted);padding:26px 0 34px;margin-top:auto;border-top:1px solid var(--line)}
.ft-top{display:flex;justify-content:space-between;align-items:center;gap:14px 32px;flex-wrap:wrap;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.ft-brand{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap;margin:0}
.ft-brand a{font-size:22px;font-weight:600;color:var(--ink);letter-spacing:-.5px}
.ft-brand a span{color:var(--brand);font-size:14px}
.ft-brand em{font-style:normal;font-size:13px;color:var(--muted)}
#ft .ft-links{display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;margin:0;border:0}
#ft .ft-links a{color:var(--ink-2);font-weight:600;font-size:14px}
#ft .ft-links a.strong{color:var(--ink)}
#ft .ft-links a:hover{color:var(--brand)}
.ft-org{font-size:13.5px;color:var(--muted);margin-bottom:7px}
.ft-org b{color:var(--ink-2);font-weight:600}
.ft-info{display:flex;flex-wrap:wrap;gap:6px 22px;margin-bottom:15px;font-size:13px;color:var(--muted)}
.ft-info li{position:relative;white-space:nowrap}
.ft-info li+li::before{content:"";position:absolute;left:-11px;top:50%;transform:translateY(-50%);width:1px;height:.8em;background:var(--line-2)}
.ft-info a{color:inherit}
.ft-info a:hover{color:var(--brand)}
.ft-disc{color:var(--muted);font-size:13px;line-height:1.7;max-width:90ch;margin-bottom:14px}
.ft-copy{display:block;font-style:normal;margin:0;font-size:13px;color:var(--muted-2)}
.ft-copy a{color:inherit;text-decoration:underline}
.ft-copy a:hover{color:var(--brand)}

/* ---------- top button ---------- */
#top_btn{position:fixed;right:20px;bottom:24px;width:46px;height:46px;background:var(--brand-solid);color:#fff;border:1px solid var(--brand-2);font-size:16px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s;z-index:900}
#top_btn.show{opacity:1;pointer-events:auto;transform:none}
#top_btn:hover{background:var(--brand-solid-2);color:#fff}

/* ==========================================================
   게시판 글보기 / 글쓰기 / 댓글 — 지산톡 톤 리스타일 (B2)
   기본(basic) 스킨 마크업을 색·테두리·각진 형태로만 덮어씀
   (#wrapper 접두로 specificity 확보 → 기본 style.css 위에 적용)
   ========================================================== */
#wrapper #container table{border-collapse:collapse;width:100%}
#wrapper #container .tbl_head01 thead th{background:var(--card-2);color:var(--muted);border-top:2px solid var(--ink)}

/* 공통 폼 컨트롤 */
#wrapper #container input[type=text],#wrapper #container input[type=password],
#wrapper #container input[type=email],#wrapper #container input[type=tel],
#wrapper #container input[type=number],#wrapper #container select,#wrapper #container textarea{
  border:1px solid var(--line-2);background:var(--card);color:var(--ink);border-radius:0;
  padding:9px 11px;font-family:inherit;font-size:14px;box-shadow:none;-webkit-appearance:none;appearance:none}
#wrapper #container select{-webkit-appearance:auto;appearance:auto}
#wrapper #container input:focus,#wrapper #container textarea:focus,#wrapper #container select:focus{border-color:var(--brand);outline:none}

/* 공통 버튼 */
#wrapper #container .btn_submit,#wrapper #container input.btn_submit,#wrapper #container button.btn_submit{
  background:var(--brand-solid);color:#fff;border:1px solid var(--brand);border-radius:0;padding:10px 20px;font-weight:600;font-size:14px}
#wrapper #container .btn_submit:hover{background:var(--brand-solid-2);color:#fff;border-color:var(--brand-2)}
#wrapper #container .btn_b01,#wrapper #container .btn_b02,#wrapper #container .btn_admin,
#wrapper #container .btn_cancel,#wrapper #container a.btn,#wrapper #container .btn,
#wrapper #container .btn_frmline{border-radius:0!important}
#wrapper #container .btn_b01,#wrapper #container a.btn_b01{background:var(--card);border:1px solid var(--line-2);color:var(--ink-2)}
#wrapper #container .btn_b01:hover{border-color:var(--brand);color:var(--brand-ink)}
#wrapper #container .btn_b02,#wrapper #container a.btn_b02{background:var(--brand-wash);border:1px solid var(--brand);color:var(--brand-ink)}

/* 글보기 */
#wrapper #bo_v{max-width:none;padding:0}
#wrapper #bo_v_title,#wrapper #bo_v_title h1,#wrapper #bo_v_top h2{font-size:22px;font-weight:600;letter-spacing:-.4px;color:var(--ink);line-height:1.35}
#wrapper #bo_v_info{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:12px 2px;color:var(--muted);font-size:14px}
#wrapper #bo_v_info strong,#wrapper #bo_v_info .sv_member,#wrapper #bo_v_info .sv_guest{color:var(--ink-2);font-weight:600}
#wrapper #bo_v_info .profile_img img,#wrapper #bo_v_info img{border-radius:0}
#wrapper #bo_v_file{background:var(--card-2);border:1px solid var(--line);padding:12px 14px;margin:16px 0}
#wrapper #bo_v_file h2{font-size:14px;color:var(--muted);margin-bottom:6px}
#wrapper #bo_v_con{padding:26px 2px;min-height:160px;line-height:1.85;color:var(--ink);font-size:15.5px;word-break:break-word}
#wrapper #bo_v_con img{border-radius:0}
#wrapper #bo_v_link{padding:10px 2px;border-top:1px solid var(--line);font-size:14px}
#wrapper #bo_v_act{margin:18px 0;text-align:center}
#wrapper #bo_v_act .bo_v_act_gng .btn_bo_v_act,#wrapper #bo_v_act button{border-radius:0;border:1px solid var(--line-2);background:var(--card);color:var(--ink-2)}
#wrapper .bo_v_nb{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0}
#wrapper .bo_v_nb li{border-bottom:1px dashed var(--line)}
#wrapper #bo_v_bot{margin-top:16px}
#wrapper #bo_v_bot .btn_bo_user{display:flex;gap:8px;flex-wrap:wrap}

/* 분류 뱃지 (글보기 제목) */
#wrapper #bo_v_title{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
#wrapper #bo_v_title .bo_v_cate{font-size:14px;font-weight:600;color:var(--brand-ink);background:var(--brand-wash);border:1px solid var(--line-2);padding:3px 10px;line-height:1.4}
#wrapper #bo_v_title .bo_v_tit{font-size:22px;font-weight:600;letter-spacing:-.4px;color:var(--ink);flex:1 1 100%;line-height:1.35}
/* 숨김 라벨 */
#wrapper #bo_v_atc_title,#wrapper #bo_vc>h2,#wrapper #bo_vc header h2,#wrapper #bo_vc_w>h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* 스크랩/공유 */
#wrapper #bo_v_share{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}
#wrapper #bo_v_share .btn_b03,#wrapper #bo_v_share a.btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;background:var(--card);border:1px solid var(--line-2);color:var(--ink-2);padding:7px 14px;border-radius:0;font-weight:600;font-size:14px}
#wrapper #bo_v_share .btn_b03:hover{border-color:var(--brand);color:var(--brand-ink)}

/* 댓글 헤더 (댓글 N 토글) */
#wrapper .cmt_btn{display:flex;align-items:center;width:100%;background:transparent;border:0;border-bottom:2px solid var(--ink);padding:0 2px 10px;margin:30px 0 0;font-size:16px;color:var(--ink);cursor:pointer;text-align:left}
#wrapper .cmt_btn .total,#wrapper .cmt_btn .total b{font-weight:600;color:var(--ink)}
#wrapper .cmt_btn .cmt_more{margin-left:auto;color:var(--muted-2)}
/* 댓글 목록 */
#wrapper #bo_vc{margin-top:0}
#wrapper #bo_vc article{display:flex;gap:12px;border-bottom:1px solid var(--line);padding:14px 2px;margin:0}
#wrapper #bo_vc article .pf_img img{border-radius:0;width:38px;height:38px}
#wrapper #bo_vc .cm_wrap{flex:1 1 auto;min-width:0}
#wrapper #bo_vc header{color:var(--ink-2);font-weight:600;font-size:14px;margin-bottom:6px}
#wrapper #bo_vc .bo_vc_hdinfo{color:var(--muted);font-weight:400;margin-left:6px}
#wrapper #bo_vc .cmt_contents{border:0;padding:0;color:var(--ink);font-size:14.5px;line-height:1.75;word-break:break-word;overflow-wrap:anywhere}
#wrapper #bo_vc .cmt_contents a{word-break:break-all}
#wrapper #bo_vc_empty{padding:44px 2px;text-align:center;color:var(--muted)}

/* 댓글 쓰기 */
#wrapper #bo_vc_w{background:var(--card-2);border:1px solid var(--line);padding:16px;margin-top:16px}
#wrapper #bo_vc_w textarea#wr_content{width:100%;min-height:96px;box-sizing:border-box}
#wrapper #bo_vc_w .bo_vc_w_wr{margin-top:10px}
#wrapper #bo_vc_w .bo_vc_w_info{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
#wrapper #bo_vc_w .bo_vc_w_info .frm_input{flex:1 1 160px}
#wrapper #bo_vc_w .btn_confirm{display:flex;align-items:center;gap:12px;justify-content:flex-end;margin:0;padding:0;border:0}
#wrapper #bo_vc_w .secret_cm{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:14px}
#wrapper #bo_vc_w .btn_submit{padding:10px 22px}

/* 잔여 기본색(파랑) 정리 */
#wrapper .cmt_btn .total,#wrapper .cmt_btn .total *{color:var(--ink)!important}
#wrapper .cmt_btn .total{border:0!important}
#wrapper .cmt_btn .total::after{display:none!important} /* basic 스킨의 파란 밑줄바 제거 */

/* ── 새글(new.php) — 테마 톤 ── */
#new_sch{display:none} /* 회원ID 전용 검색 — 비회원 커뮤니티에선 미사용 */
#wrapper #fnewlist .tbl_head01{border-top:2px solid var(--ink)}
#wrapper #fnewlist table{width:100%;border-collapse:collapse;font-size:14px}
#wrapper #fnewlist thead th{background:var(--card-2);color:var(--muted);font-weight:600;padding:11px 8px;border-bottom:1px solid var(--line-2);text-align:center;white-space:nowrap}
#wrapper #fnewlist tbody td{padding:12px 8px;border-bottom:1px solid var(--line);text-align:center;color:var(--muted);vertical-align:middle}
#wrapper #fnewlist tbody td:not([class]){text-align:left}
#wrapper #fnewlist tbody tr:hover{background:var(--bg-2)}
#wrapper #fnewlist td.td_group,#wrapper #fnewlist td.td_board{white-space:nowrap}
#wrapper #fnewlist td a{color:var(--ink-2)}
#wrapper #fnewlist td .new_tit{color:var(--ink);font-weight:500}
#wrapper #fnewlist td .new_tit:hover{color:var(--brand);text-decoration:underline}
#wrapper #fnewlist td.td_board a:hover{color:var(--brand-ink)}
#wrapper #fnewlist .empty_table{padding:44px 8px;text-align:center;color:var(--muted)}
/* 공용 빈 상태(empty state) — 리스트형 통일: 아이콘+안내+액션 세로 스택(44px) */
.jt-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:44px 16px;text-align:center;color:var(--muted)}
.jt-empty-state i{font-size:26px;color:var(--muted-2)}
.jt-empty-state p{margin:0;font-size:14.5px;line-height:1.55}
.jt-empty-state b{color:var(--ink-2);font-weight:600}
@media(max-width:680px){
  #wrapper #fnewlist td.td_group,#wrapper #fnewlist td.td_name{display:none}
}
#wrapper #bo_v_top .btn i,#wrapper #bo_v_top button i,#wrapper .btn_more_opt i{color:var(--ink-2)}
#wrapper #bo_v_info a{color:var(--ink-2)}
#wrapper #bo_v_info a:hover{color:var(--brand-2)}

/* ---------- 현장정보 위젯 · 온도계 · 랜딩/검색 (jt_realty) ---------- */
.jt-site-head{padding:0 0 16px;border-bottom:2px solid var(--ink);margin-bottom:18px}
.jt-temp{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-weight:500;font-size:14px}
.jt-temp b{font-weight:600}
.tmp-hot{background:var(--tmp-hot)}
.tmp-warn{background:var(--tmp-warn)}
.tmp-watch{background:var(--tmp-watch)}
/* 피해 온도 라벨: 배지 폐기 → 왼쪽 컬러바 + 레벨 단어만 온도색(절제·색각안전·다크 토큰 대응) */
.jt-temp.tmp-hot{background:none}
.jt-temp.tmp-hot b{color:var(--tmp-hot-ink)}
.jt-temp.tmp-warn{background:none}
.jt-temp.tmp-warn b{color:var(--tmp-warn-ink)}
.jt-temp.tmp-watch{background:none}
.jt-temp.tmp-watch b{color:var(--tmp-watch-ink)}
.jt-site-name{font-size:26px;font-weight:600;letter-spacing:-.5px;margin:12px 0 4px;color:var(--ink);line-height:1.25}
.jt-site-loc{color:var(--muted);font-size:14px}
.jt-site-sum{margin:14px 0 0;color:var(--ink-2);font-size:14.5px;line-height:1.85;max-width:820px}
.jt-react{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:24px 0 0}
.jt-react-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;background:var(--card);color:var(--brand-ink);border:1px solid var(--line-2);border-radius:var(--radius);font-weight:600;font-size:14px;cursor:pointer;flex:0 0 auto;transition:border-color .12s,background .12s}
.jt-react-btn i{color:var(--muted-2);font-size:13px}
.jt-react-btn:hover{border-color:var(--brand);background:var(--brand-wash)}
.jt-react-btn.on{background:var(--brand-wash);border-color:var(--brand);color:var(--brand-ink)}
.jt-react-btn.on i{color:var(--brand)}
.jt-react-btn:disabled{opacity:.6;cursor:default}
.jt-react-msg{font-size:14px;color:var(--muted)}
.jt-react-msg b{color:var(--ink);font-weight:600}
.jt-poll{margin:24px 0 0;padding:16px;background:var(--card-2);border:1px solid var(--line)}
.jt-poll-h{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--brand-ink);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--line);line-height:1.3}
.jt-poll-anon{font-size:13px;font-weight:600;color:var(--muted);border:1px solid var(--line);padding:1px 7px;margin-left:6px}
.jt-poll-opts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.jt-poll-opt button{width:100%;display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--card);border:1px solid var(--line);cursor:pointer;text-align:left}
.jt-poll-opt button:hover{border-color:var(--brand)}
.jt-poll-opt.mine button{border-color:var(--brand);background:var(--brand-wash)}
.jt-poll-lbl{flex:0 0 132px;font-size:14.5px;font-weight:600;color:var(--ink)}
.jt-poll-bar{flex:1 1 auto;height:8px;background:var(--line);position:relative;overflow:hidden;border-radius:var(--radius-sm)}
.jt-poll-bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--brand-solid);transition:width .3s}
.jt-poll-opt.mine .jt-poll-bar i{background:var(--brand-solid-2)}
.jt-poll-n{flex:0 0 auto;min-width:20px;text-align:right;font-size:14px;font-weight:600;color:var(--brand-ink)}
.jt-poll-total{margin-top:11px;font-size:14px;color:var(--muted)}
.jt-poll-total b{color:var(--brand-ink);font-weight:600}
.jt-memo{margin:24px 0 0;padding-top:20px;border-top:2px solid var(--ink)}
.jt-memo-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--brand-ink);padding-bottom:8px;border-bottom:1px solid var(--line);line-height:1.3}
.jt-memo-cnt{display:inline-block;margin-left:6px;font-size:14px;font-weight:600;color:#fff;background:var(--brand-solid);padding:1px 9px}
.jt-memo-guide{margin:8px 0 14px;font-size:13.5px;color:var(--muted);line-height:1.65}
.jt-memo-form{background:var(--card-2);border:1px solid var(--line);padding:12px}
.jt-memo-idrow{display:flex;gap:8px;margin-bottom:8px}
.jt-memo-nick,.jt-memo-pw{flex:1 1 0;width:auto;min-width:0;height:40px;border:1px solid var(--line-2);background:var(--card);padding:0 11px;font-size:14px;color:var(--ink)}
.jt-memo-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.jt-memo-body{width:100%;border:1px solid var(--line-2);background:var(--card);padding:9px 11px;font-size:14px;color:var(--ink);line-height:1.6;resize:vertical}
.jt-memo-act{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.jt-memo-msg{font-size:13px;color:var(--muted)}
.jt-memo-submit{flex:0 0 auto;height:38px;padding:0 18px;background:var(--brand-solid);color:#fff;border:0;font-weight:600;font-size:14px;cursor:pointer}
.jt-memo-submit:hover{background:var(--brand-solid-2)}
.jt-memo-submit:disabled{opacity:.6;cursor:default}
/* 리뷰 사진(Part 3) */
.jt-memo-photo{margin:8px 0 0}
.jt-memo-photo-add{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);cursor:pointer}
.jt-memo-photo-add:hover{color:var(--brand-ink)}
.jt-memo-photo-add .fa{color:var(--muted-2)}
.jt-memo-file{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.jt-memo-preview{position:relative;display:inline-block;margin-top:8px}
.jt-memo-preview[hidden]{display:none}   /* 첨부 전에는 미리보기 숨김(display 규칙이 hidden 속성을 이기지 않도록) */
.jt-memo-preview-img{max-width:120px;max-height:120px;border-radius:8px;border:1px solid var(--line);display:block;object-fit:cover}
.jt-memo-preview-x{position:absolute;top:-9px;right:-9px;width:22px;height:22px;border-radius:50%;border:0;background:#111;color:#fff;font-size:15px;line-height:20px;cursor:pointer}
.jt-memo-thumb{max-width:180px;max-height:180px;border-radius:8px;border:1px solid var(--line);margin:5px 0 3px;cursor:zoom-in;display:block;object-fit:cover}
.jt-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:20px}
.jt-lightbox img{max-width:96vw;max-height:96vh;border-radius:6px}
.jt-memo-list{list-style:none;margin:14px 0 0;padding:0}
.jt-memo-empty{padding:20px 4px;text-align:center;color:var(--muted);font-size:14.5px}
.jt-memo-item{padding:12px 2px;border-bottom:1px dashed var(--line)}
.jt-memo-txt{margin:0 0 5px;font-size:14.5px;color:var(--ink);line-height:1.7}
.jt-memo-meta{margin:0;font-size:13px;color:var(--muted)}
.jt-memo-report{margin-left:8px;padding:0;background:none;border:0;color:var(--muted-2);font-size:13px;cursor:pointer;text-decoration:underline}
.jt-memo-report:hover{color:var(--hot)}
.jt-memo-report:disabled{color:var(--muted-2);text-decoration:none;cursor:default}
.jt-memo-del{margin-left:8px;padding:0;background:none;border:0;color:var(--muted-2);font-size:13px;cursor:pointer;text-decoration:underline}
.jt-memo-del:hover{color:var(--brand-ink)}
.jt-memo-del:disabled{color:var(--muted-2);text-decoration:none;cursor:default}
.jt-memo-ip{color:var(--muted);font-size:13px}
.jt-site-help{margin:12px 0 0;font-size:14px;color:var(--muted);line-height:1.7}
.jt-site-help a{color:var(--brand-ink);text-decoration:underline;font-weight:600}
.jt-ad-tag{display:inline-block;margin-left:4px;color:var(--muted-2);font-size:13px}
.jt-site-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:16px;margin-top:24px}
.jt-info-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);padding:16px}
.jt-info-card h3{font-size:16px;font-weight:600;color:var(--brand-ink);padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px}
.jt-dl{display:flex;flex-direction:column}
.jt-dl>div{display:flex;padding:8px 0;border-bottom:1px dashed var(--line)}
.jt-dl>div:last-child{border-bottom:0}
.jt-dl dt{flex:0 0 96px;color:var(--muted);font-size:14px}
.jt-dl dd{flex:1 1 auto;color:var(--ink);font-weight:600;font-size:14px}
.jt-empty2{color:var(--muted);font-size:14px;padding:6px 0}
.jt-price{line-height:1.7;font-size:14.5px;color:var(--ink-2);word-break:keep-all}
.jt-won{color:var(--hot);font-weight:600}
.jt-asof{margin-top:8px;font-size:13px;color:var(--muted-2);letter-spacing:-.2px}
.jt-asof i{margin-right:3px;opacity:.7}
.jt-auction{border-color:var(--hot);background:var(--hot-wash)}
.jt-auction h3{color:var(--hot);border-bottom-color:rgba(192,57,43,.25)}
.jt-auction p{font-size:14.5px;color:var(--ink-2);line-height:1.6}
.jt-badge-hot{background:var(--hot);color:#fff;font-size:13px;padding:1px 8px;font-weight:600;margin-left:auto}

/* ── 공매 진행 카드 (안 B) — 사이트 흰카드 톤에 정합 ── */
.jt-auction-card{margin:24px 0 0;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card);padding:16px}
.jt-auc-title{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 0 13px;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;color:var(--brand-ink);line-height:1.3}
.jt-auc-sub{font-size:13px;font-weight:600;color:var(--muted)}
.jt-auc-main{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.jt-auc-p{display:flex;flex-direction:column;gap:2px}
.jt-auc-k{font-size:13px;color:var(--muted)}
.jt-auc-apsl{font-size:16px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}
.jt-auc-low{font-size:21px;font-weight:600;color:var(--hot);line-height:1.05;font-variant-numeric:tabular-nums}
.jt-auc-arrow{color:var(--muted-2);font-size:16px;align-self:flex-end;padding-bottom:2px}
.jt-auc-drop{margin-left:auto;align-self:center;background:var(--hot-wash);color:var(--hot);font-weight:600;font-size:14px;padding:3px 11px;border-radius:var(--radius-card)}
.jt-auc-gauge-lbl{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin:15px 0 4px}
.jt-auc-gauge{height:8px;border-radius:var(--radius-sm);background:var(--wash);overflow:hidden}
.jt-auc-gauge i{display:block;height:100%;background:var(--brand-solid)}
.jt-auc-meta{display:flex;flex-wrap:wrap;gap:5px 16px;margin-top:12px;font-size:14.5px;color:var(--ink-2)}
.jt-auc-meta b{color:var(--ink)}
.jt-auc-list{list-style:none;margin:13px 0 0;padding:4px 0 0;border-top:1px solid var(--line)}
.jt-auc-list li{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:14.5px;border-bottom:1px solid var(--line)}
.jt-auc-list li:last-child{border-bottom:0}
.jt-auc-ho{color:var(--ink-2);min-width:92px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jt-auc-nums{color:var(--muted);font-variant-numeric:tabular-nums}
.jt-auc-nums b{color:var(--hot);font-weight:600}
.jt-auc-ar{color:var(--muted-2)}
.jt-auc-d{margin-left:auto;color:var(--hot);font-weight:600;font-size:13px}
.jt-auc-more{color:var(--brand-ink);font-size:13px;font-weight:600;border-bottom:0!important}
.jt-auc-list li.jt-auc-hidden{display:none} /* .jt-auc-list li(0,1,1)의 display:flex를 이기도록 우선순위 상향 */
.jt-auc-toggle{background:none;border:0;padding:0;color:var(--brand-ink);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}
.jt-auc-toggle:hover{color:var(--brand-2);text-decoration:underline}
.jt-auc-asof{margin:12px 0 0;font-size:13px;color:var(--muted-2);letter-spacing:-.2px}
.jt-auc-disc{margin:9px 0 0;padding-top:11px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);line-height:1.6}

/* 공매 현황 페이지(안 A) */
.jt-auc-banner{margin:2px 0 16px;font-size:13px;color:var(--muted);line-height:1.6}
.jt-auc-banner b{font-weight:600;color:var(--ink-2)}
.jt-auc-tw{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-card)}
.jt-auc-tbl{border-collapse:collapse;width:100%;min-width:560px;font-size:14px}
.jt-auc-tbl thead th{background:var(--bg-2);color:var(--muted);font-weight:600;text-align:left;padding:9px 7px;border-bottom:1px solid var(--line-2);white-space:nowrap}
.jt-auc-tbl tbody td{padding:10px 7px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}
.jt-auc-tbl tbody tr:last-child td{border-bottom:0}
.jt-auc-tbl tbody tr:hover{background:var(--bg-2)}
.jt-auc-tbl .nm{white-space:normal;min-width:104px}
.jt-auc-tbl .nm a{color:var(--ink);font-weight:600}
.jt-auc-tbl .nm a:hover{color:var(--brand);text-decoration:underline}
.jt-auc-tbl .rg{color:var(--muted)}
.jt-auc-tbl .num{font-variant-numeric:tabular-nums;color:var(--ink-2)}
.jt-auc-tbl .low{color:var(--hot);font-weight:600}
.jt-auc-tbl .dp{color:var(--hot);font-weight:600}
.jt-auc-tbl .cnt{display:inline-block;background:var(--card-2);color:var(--ink-2);font-size:13px;padding:1px 8px;border-radius:var(--radius-card)}
.jt-trade-tbl{min-width:460px}
.jt-trade-tbl .jt-tcnt{color:var(--muted);font-size:12px;font-weight:400}
.jt-auc-foot{margin:10px 2px 0;font-size:13px;color:var(--muted)}
.gnb-item-auc>a{color:var(--brand)!important;font-weight:600}
.jt-site-cta{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 0}
.jt-site-cta .btn{height:46px;padding:0 20px;font-weight:600;font-size:14.5px;display:inline-flex;align-items:center;gap:7px;border:1px solid transparent}
.btn-navy{background:var(--brand-solid);color:#fff}
.btn-navy:hover{background:var(--brand-solid-2);color:#fff}
.btn-gold{background:var(--brand-wash);color:var(--brand-ink);border-color:var(--brand)}
.btn-gold:hover{background:var(--brand-solid);color:#fff;border-color:var(--brand)}
.jt-site-disc{margin-top:14px;color:var(--muted);font-size:13.5px;line-height:1.6}
/* 현장 검색/인덱스 */
.jt-rl-search{display:flex;gap:8px;margin-bottom:18px}
.jt-rl-search input{flex:1 1 auto;min-width:0;height:46px;border:2px solid var(--brand);background:var(--card);padding:0 14px;font-size:15px;color:var(--ink)}
.jt-rl-search button{flex:0 0 auto;height:46px;padding:0 20px;background:var(--brand-solid);color:#fff;border:0;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.jt-rl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(224px,1fr));gap:10px}
.jt-rl-item{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);padding:12px 14px;box-shadow:var(--shadow)}
.jt-rl-item:hover{border-color:var(--brand);background:var(--brand-wash)}
.jt-rl-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.jt-rl-nm{font-weight:600;color:var(--ink);font-size:14px;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jt-rl-rg{color:var(--muted);font-size:13px;flex:0 0 auto}

/* 글쓰기 폼 — 정밀 레이아웃 */
#wrapper #bo_w{max-width:none}
#wrapper #fwrite{width:100%!important}
#wrapper #fwrite .write_div{padding:0 0 14px;border:0;position:relative}
#wrapper #fwrite .write_div .write_div{padding:0}
#wrapper #fwrite label{color:var(--ink-2);font-weight:600}
#wrapper #fwrite .frm_input{width:100%;box-sizing:border-box}
#wrapper #fwrite .full_input{width:100%}
/* 이름/비번/이메일/홈페이지 — 2열 그리드로 가지런히 정렬 */
#wrapper #fwrite .bo_w_info{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:start}
#wrapper #fwrite .bo_w_info .frm_input{width:100%;margin:0}
@media(max-width:560px){#wrapper #fwrite .bo_w_info{grid-template-columns:1fr}}
/* 옵션(공지/html) */
#wrapper #fwrite .bo_v_option{display:flex;gap:18px;flex-wrap:wrap;margin:0;padding:0;list-style:none}
#wrapper #fwrite .bo_v_option .chk_box{display:flex;align-items:center;gap:6px}
#wrapper #fwrite .bo_v_option label{font-weight:600;margin:0}
/* 제목 + 임시저장 버튼 */
#wrapper #fwrite #autosave_wrapper{display:flex;align-items:stretch;gap:8px;border:0;padding:0}
#wrapper #fwrite #autosave_wrapper .full_input{flex:1 1 auto}
#wrapper #fwrite #wr_subject{font-size:16px;font-weight:600}
#wrapper #fwrite .btn_frmline{flex:0 0 auto;display:inline-flex;align-items:center;background:var(--card);border:1px solid var(--line-2);color:var(--ink-2);padding:0 14px;border-radius:0;font-weight:600;font-size:14px;white-space:nowrap}
#wrapper #fwrite .btn_frmline:hover{border-color:var(--brand);color:var(--brand-ink)}
#wrapper #fwrite #autosave_pop{position:absolute;right:0;top:100%;z-index:20;background:var(--card);border:1px solid var(--line-2);box-shadow:var(--shadow);padding:10px;min-width:220px}
/* 내용 */
#wrapper #fwrite .wr_content{width:100%}
#wrapper #fwrite textarea#wr_content,#wrapper #fwrite .wr_content textarea{width:100%;min-height:340px;box-sizing:border-box}
#wrapper #char_count_wrap{color:var(--muted);font-size:13px;text-align:right;margin-top:4px}
/* 링크 (아이콘 인풋 내부 배치) */
#wrapper #fwrite .bo_w_link{position:relative}
#wrapper #fwrite .bo_w_link>label{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted-2);z-index:1;font-weight:400;margin:0}
#wrapper #fwrite .bo_w_link .frm_input{padding:9px 11px 9px 34px}
/* 파일첨부 — 입력창과 동일한 박스로 정렬 */
#wrapper #fwrite .bo_w_flie{display:flex;flex-direction:column;gap:8px}
#wrapper #fwrite .file_wr{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line-2);background:var(--card)}
#wrapper #fwrite .file_wr .lb_icon{color:var(--muted-2);font-size:16px;margin:0;flex:0 0 auto;line-height:1}
#wrapper #fwrite .frm_file{flex:1 1 auto;min-width:0;border:0;background:transparent;padding:0;font-size:14px}
#wrapper #fwrite .file_del{font-size:14px;color:var(--muted)}
/* 하단 버튼 */
#wrapper #fwrite .btn_confirm{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center;margin-top:22px;padding:0;border:0}
#wrapper #fwrite .btn_cancel{display:inline-flex;align-items:center;background:var(--card);border:1px solid var(--line-2);color:var(--ink-2);padding:10px 22px;font-weight:600}
#wrapper #fwrite .btn_cancel:hover{border-color:var(--brand);color:var(--brand-ink)}

/* ---------- responsive ---------- */
@media (max-width:980px){
  #container_wr{flex-direction:column}
  #lnb{display:none}
  #aside{flex-basis:auto;width:100%;flex-direction:row;flex-wrap:wrap}
  #aside .wg,#aside #login,#aside .poll{flex:1 1 260px}
}
@media (max-width:760px){
  #hd_top .hd-top-brand{display:none}
  #hd_top .hd-inner{justify-content:flex-end}
  #hd_main .hd-inner{height:auto;padding-top:12px;padding-bottom:12px;flex-wrap:wrap;gap:12px}
  #logo{flex:1 1 auto}
  #logo a{font-size:24px}
  .hd-cta{display:none}
  #hd_search{order:3;flex-basis:100%;max-width:none}
  .gnb-all-btn{display:none} /* 모바일에선 죽은 버튼 — 메뉴는 가로 스크롤로 노출 */
  #gnb .hd-inner{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  #gnb .hd-inner::-webkit-scrollbar{display:none}
  .gnb-list{flex-wrap:nowrap;flex:0 0 auto}
  .gnb-item{flex:0 0 auto}
  .gnb-item>a{height:47px;padding:0 14px;font-size:14px;white-space:nowrap;border-bottom-width:2px}
  .gnb-item.has-sub>a::after{display:none}
  .gnb-sub{display:none}
  #wrapper{padding:14px 12px 48px}
  #container{padding:16px}
  .idx-hero{padding:26px 20px}
  .idx-hero h2{font-size:21px}
  #aside{flex-direction:column}
}
@media (max-width:480px){
  .hd-util>li>a,.hd-util .dark-toggle{padding:0 8px}
  .util-connect{display:none}
}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- 홈 주목현장 안내 + 사이드 핫현장 ---------- */
.idx-fineprint{margin-top:11px;font-size:13px;color:var(--muted);line-height:1.6}
.wg-hotlist{margin:4px 0 0;list-style:none;padding:0}
.wg-hotlist li{border-top:1px solid var(--line)}
.wg-hotlist li:first-child{border-top:0}
.wg-hotlist a{display:flex;align-items:center;gap:7px;padding:8px 1px;color:var(--ink)}
.wg-hotlist a:hover .wg-nm{color:var(--brand-ink)}
.wg-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.wg-nm{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600}
.wg-rg{flex:0 0 auto;font-size:13px;color:var(--muted)}
.wg-more{display:inline-block;margin-top:10px;font-size:14px;font-weight:600;color:var(--brand-ink)}
/* 인기 검색어 위젯(Part B1) — 핫 현장 위젯과 폰트·간격 통일(항목명 15px/600) */
.wg-searchlist{margin:4px 0 0;list-style:none;padding:0}
.wg-searchlist li{border-top:1px solid var(--line)}
.wg-searchlist li:first-child{border-top:0}
.wg-searchlist a{display:flex;align-items:center;gap:9px;padding:8px 1px;color:var(--ink)}
.wg-searchlist a:hover .wg-term{color:var(--brand-ink)}
.wg-rank{flex:0 0 auto;width:18px;text-align:center;font-size:14px;font-weight:600;color:var(--muted-2)}
.wg-rank.hot{color:var(--brand)}
.wg-term{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600}
.wg-up{flex:0 0 auto;font-size:13px;color:var(--hot)}
/* 현장 위치줄 조회수(Part B2) — 위치 텍스트와 같은 톤(muted) */
.jt-viewcnt{color:var(--muted);font-weight:400}

/* ---------- Part B3 — 활동 티커 (인덱스) ---------- */
.jt-ticker{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:9px 14px;margin:16px 0 22px;overflow:hidden}
.jt-ticker-lead{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:var(--brand-ink);white-space:nowrap}
.jt-ticker-lead .fa{color:var(--brand)}
.jt-ticker-track{position:relative;flex:1 1 auto;height:22px;list-style:none;margin:0;padding:0;min-width:0}
.jt-ticker-track>li{position:absolute;inset:0;opacity:0;transform:translateY(6px);transition:opacity .5s ease,transform .5s ease;pointer-events:none;display:flex;align-items:center}
.jt-ticker-track>li.on{opacity:1;transform:none;pointer-events:auto}
.jt-ticker-track>li a{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-width:0;color:var(--ink-2);font-size:15px;text-decoration:none;overflow:hidden}
.jt-ticker-track>li a .fa{color:var(--muted-2);flex:0 0 auto}
.jt-ticker-track>li a:hover .jt-tk-tx{text-decoration:underline;color:var(--brand-ink)}
.jt-tk-tx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.jt-tk-ago{flex:0 0 auto;color:var(--muted-2);font-size:13px}
@media (max-width:560px){.jt-tk-ago{display:none}}

/* ---------- Part B4 — 개인화(최근 본 현장 · 내 최근 검색어) ---------- */
.wg-minelist{list-style:none;margin:0;padding:0}
.wg-minelist li{border-top:1px solid var(--line)}
.wg-minelist li:first-child{border-top:0}
.wg-minelist li a{display:block;padding:8px 2px;color:var(--ink-2);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wg-minelist li a:hover .wg-nm{color:var(--brand-ink);text-decoration:underline}
.wg-chips{display:flex;flex-wrap:wrap;gap:6px}
.wg-chip{display:inline-block;max-width:100%;padding:5px 11px;border:1px solid var(--line-2);border-radius:999px;background:var(--card-2);color:var(--ink-2);font-size:14px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wg-chip:hover{border-color:var(--brand);color:var(--brand-ink);background:var(--brand-wash)}
.wg-mine-clear{display:inline-block;margin-top:10px;padding:0;border:0;background:none;color:var(--muted-2);font-size:13px;cursor:pointer}
.wg-mine-clear:hover{color:var(--brand-ink);text-decoration:underline}

/* ---------- Part C1 — 지금 보는 중 N명(심플·무배경) ---------- */
.jt-now{display:inline-flex;align-items:center;gap:5px;margin-left:10px;font-size:14px;font-weight:500;color:var(--muted);vertical-align:middle}
.jt-now[hidden]{display:none}   /* HTML hidden 속성 존중(1명 이하 숨김 게이트가 display 규칙에 지지 않도록) */
.jt-now b{font-weight:600;color:var(--ink-2)}
.jt-now-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;flex:0 0 auto}

/* ---------- 약관·정책 등 문서 페이지 (content.php) ---------- */
.jt-doc{max-width:840px;margin:0 auto;padding:6px 2px 28px;color:var(--ink);line-height:1.8;font-size:15px}
.jt-doc h3{margin:28px 0 13px;font-size:19px;font-weight:600;color:var(--ink);border-left:5px solid var(--brand);padding:1px 0 1px 11px;line-height:1.35}
.jt-doc h3:first-child{margin-top:4px}
.jt-doc h4{margin:18px 0 8px;font-size:15px;font-weight:600;color:var(--ink-2);line-height:1.4}
.jt-doc p{margin:0 0 12px}
.jt-doc ul{margin:0 0 14px;padding-left:19px}
.jt-doc li{margin:5px 0}
.jt-doc strong{color:var(--ink)}
.jt-doc-meta{color:var(--ink-2,#7a756e);font-size:14px;margin-bottom:18px}
.jt-doc-note{background:var(--brand-wash,#f3efe6);border-left:3px solid var(--brand);padding:12px 14px;margin:16px 0;font-size:14px}
table.jt-doc-tb{width:100%;border-collapse:collapse;margin:8px 0 16px;font-size:14px}
table.jt-doc-tb th,table.jt-doc-tb td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}
table.jt-doc-tb th{background:var(--brand-wash,#f3efe6);white-space:nowrap;color:var(--brand-ink);font-weight:600}

/* ── 다크모드 접근성: 흰글자 상태배지 배경 대비(AA) 회복 — 연배경+진한글자 ── */
[data-theme="dark"] .c-subj .bdg-hot,[data-theme="dark"] .jt-badge-hot{background:var(--tmp-hot-bg);color:var(--tmp-hot-ink)}
[data-theme="dark"] .c-subj .bdg-done{background:var(--tmp-watch-bg);color:var(--tmp-watch-ink)}
[data-theme="dark"] .c-subj .bdg-wait{background:var(--card-2);color:var(--ink-2)}

/* ── 로고 서체 적용 (헤더 #logo · 푸터 .ft-brand) ── */
#logo a,.ft-brand a{font-family:'jt-logo',var(--sans);font-weight:400;letter-spacing:0}
#logo span,.ft-brand a span{font-weight:400}

/* ── 거래·공매 동향: 탭 / 필터 / 추이 / 페이저 (jt_auction.php) ── */
.jt-tabs{display:flex;gap:2px;border-bottom:1px solid var(--line-2);margin:20px 0 0}
.jt-tab{padding:10px 16px;font-size:15px;font-weight:500;color:var(--muted);border:1px solid transparent;border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;margin-bottom:-1px}
.jt-tab b{font-weight:600;color:var(--ink-2);margin-left:3px}
.jt-tab:hover{color:var(--ink-2);background:var(--bg-2)}
.jt-tab.on{color:var(--brand-ink);background:var(--card);border-color:var(--line-2);border-bottom:1px solid var(--card)}
.jt-tab.on b{color:var(--brand-ink)}
.jt-tab-panel{display:none;padding-top:20px}
.jt-tab-panel.on{display:block}

.jt-filter{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.jt-chip{padding:7px 13px;font-size:14px;color:var(--muted);background:var(--card);border:1px solid var(--line-2);border-radius:var(--radius)}
.jt-chip b{font-weight:600;color:var(--ink-2);margin-left:2px}
.jt-chip:hover{border-color:var(--brand-solid);color:var(--brand-ink)}
.jt-chip.on{background:var(--brand-solid);border-color:var(--brand-solid);color:#fff}
.jt-chip.on b{color:#fff}
.jt-filter-note{margin-left:auto;font-size:14px;color:var(--muted)}
.jt-filter-note b{font-weight:600;color:var(--ink-2)}

.jt-trend{border:1px solid var(--line-2);border-radius:var(--radius);padding:16px;margin:0 0 16px;background:var(--card)}
.jt-trend-h{font-size:15px;color:var(--ink-2);font-weight:600;margin-bottom:14px}
.jt-trend-h b{color:var(--brand-ink)}
.jt-trend-h span{font-weight:400;color:var(--muted);font-size:13px;margin-left:4px}
.jt-trend-bars{display:flex;align-items:flex-end;gap:8px;height:120px}
.jt-trend-b{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}
.jt-trend-b em{font-style:normal;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:4px}
.jt-trend-b span{display:block;width:100%;max-width:48px;background:var(--brand-solid);border-radius:2px 2px 0 0;min-height:4px}
.jt-trend-b i{font-style:normal;font-size:13px;color:var(--muted);margin-top:6px;text-align:center;line-height:1.4}
.jt-trend-b i small{display:block;font-size:12px;opacity:.75}

.jt-trade-sub td{background:var(--bg-2);font-size:14px;color:var(--muted);border-top:1px dotted var(--line-2)}
.jt-sub-c{white-space:nowrap}
.jt-sub-c .jt-ho{font-weight:600;color:var(--ink-2)}
.jt-sub-c .jt-use{margin-left:6px;padding:2px 6px;font-size:13px;background:var(--card);border:1px solid var(--line-2);border-radius:2px}
.jt-na{color:var(--muted);cursor:help;border-bottom:1px dotted var(--line-2)}
.jt-td-x{text-align:right;white-space:nowrap}

.jt-pager{display:flex;justify-content:center;align-items:center;gap:4px;margin:20px 0 0;flex-wrap:wrap}
.jt-pager a{min-width:34px;padding:7px 10px;text-align:center;font-size:14px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--radius);background:var(--card)}
.jt-pager a:hover{border-color:var(--brand-solid);color:var(--brand-ink)}
.jt-pager a.on{background:var(--brand-solid);border-color:var(--brand-solid);color:#fff;font-weight:600}
.jt-pg-gap{color:var(--muted);padding:0 2px}

@media (max-width:640px){
  .jt-tab{padding:9px 10px;font-size:14px}
  .jt-filter-note{margin-left:0;width:100%}
  .jt-trend-bars{height:96px}
}

/* ── 현장 상세: 거래·낙찰 이력 (jt_realty_view.php) ── */
.jt-hist{margin:24px 0 0}
.jt-hist .sec-h .sec-sub b{font-weight:600;color:var(--brand-ink)}
.jt-hist-h3{margin:20px 0 10px;font-size:15px;font-weight:600;color:var(--ink-2)}
.jt-hist-tbl td:first-child{white-space:nowrap;color:var(--muted)}
.jt-hist-hidden{display:none}
.jt-hist-more{display:block;width:100%;margin:10px 0 0;padding:10px 0;text-align:center;
  background:var(--card);border:1px solid var(--line-2);border-radius:var(--radius);
  color:var(--brand-ink);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}
.jt-hist-more:hover{border-color:var(--brand-solid)}
.jt-hist-note{margin:8px 0 0;font-size:13px;color:var(--muted)}
.jt-hist-src{margin:12px 0 0;font-size:13px;color:var(--muted);line-height:1.6}
.jt-hist-src a{color:var(--brand-ink);text-decoration:underline}
.jt-hist .jt-use{padding:2px 6px;font-size:13px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:2px;color:var(--muted)}

/* ── 사이드바: 최근 댓글 (메인 전용) ── */
.wg-cmt{margin-top:16px}
.wg-cmtlist{margin:0;padding:0;list-style:none}
.wg-cmtlist li{border-top:1px solid var(--line)}
.wg-cmtlist li:first-child{border-top:0}
.wg-cmtlist a{display:block;padding:11px 2px}
.wg-cmtlist a:hover .wg-cmt-subj{color:var(--brand-ink)}
.wg-cmt-subj{display:block;font-size:15px;font-weight:600;color:var(--ink-2);line-height:1.4}
.wg-cmt-body{display:block;margin-top:4px;font-size:14px;color:var(--muted);line-height:1.5}
.wg-cmt-meta{display:block;margin-top:5px;font-size:13px;color:var(--muted);opacity:.8}

/* 현장 데이터 카드 히어로 (jt_realty_view.php) */
.jt-card-hero{margin:0 0 20px}
.jt-card-hero img{display:block;width:100%;max-width:640px;height:auto;border:1px solid var(--line-2,#d4dbe4);border-radius:12px}

/* 현장 사진 슬라이드 (jt_realty_view.php) */
.jt-photo{margin:0 0 20px}
.jt-photo-track{position:relative;width:100%;aspect-ratio:16/9;border:1px solid var(--line-2,#d4dbe4);border-radius:12px;overflow:hidden;background:var(--bg-2,#eef1f5)}
.jt-photo-track img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
.jt-photo-track img.on{opacity:1}
.jt-photo-dots{display:flex;justify-content:center;gap:7px;margin:10px 0 0}
.jt-photo-dots span{width:8px;height:8px;border-radius:50%;background:var(--line-2,#d4dbe4);cursor:pointer;transition:background .2s}
.jt-photo-dots span.on{background:var(--brand-solid,#0a6aa1)}
.jt-photo-cap{margin:8px 0 0;font-size:13px;color:var(--muted,#8a94a0);line-height:1.5;text-align:center}

/* 최신 글 위젯 댓글 수 배지 — 기본 스킨 11px 를 13px 로 상향(cnt_cmt 폰트 상향) */
.cnt_cmt{font-size:13px!important;height:18px!important;line-height:18px!important;padding:0 6px!important}

/* 최신 글 위젯(basic latest 스킨) 다크모드 대응 — .lat 하드코딩 흰배경 제거(lat 다크 배경) */
[data-theme="dark"] .lt-card .lat{background:transparent}
/* 카드 제목(게시판 이름) — basic 스킨 .lat_title a 가 color:#000 하드코딩 → 다크모드 가독성 보정 */
[data-theme="dark"] .lt-card .lat_title a{color:#eef2f7}
[data-theme="dark"] .lt-card .lat_title a:hover{color:#7cc2ea}
/* 최신 위젯 댓글 수 — OKKY 스타일: 파란 (N), 알약배경 제거. 괄호는 스킨에서 한 덩어리 텍스트로 출력 */
.lat .lt_cmt{background:none!important;color:#0090f9!important;font-size:13px!important;height:auto!important;line-height:1!important;padding:0!important;border-radius:0!important;margin-left:4px;font-weight:400;letter-spacing:-1px;vertical-align:baseline}
/* 최신 글 위젯 '새글 N' 배지 — OKKY 스타일(원형 빨강 + 흰 N). 스킨 초록 사각을 덮음 */
.lt-card .lat li .new_icon{width:17px!important;height:17px!important;line-height:17px!important;font-size:11px!important;color:#fff!important;background:#f2415a!important;border-radius:50%!important;margin-left:4px;font-weight:700;padding:0;vertical-align:middle}

/* 좌측 사이드메뉴 lnb — 다크모드 가독성 보정(변수 해석 이슈 우회, 색 직접 지정) · lnb 다크 가독성 */
[data-theme="dark"] .lnb-1>a,[data-theme="dark"] .lnb-1>button{color:#c3cad6}
[data-theme="dark"] .lnb-1.on>a{color:#7cc2ea}
[data-theme="dark"] .lnb-1>a:hover,[data-theme="dark"] .lnb-1>button:hover{color:#7cc2ea}
[data-theme="dark"] .lnb-region .lnb-2>li>a{color:#9aa3b2}

/* ══════════════════════════════════════════════════════════════
   모션·미세 인터랙션 (에이전트 3관점 합성 · 절제 우선)
   · transform/opacity 만 사용(컴포지터). width/height/top/left 미사용.
   · 등장은 @keyframes 안에서만 + fill-mode:backwards → line 612 reduced-motion
     규칙 시 자연 노출로 복귀(정적 opacity:0 없음), 종료 후 hover 정상 동작.
   · 무한 루프 없음. 이징 ease-out(비바운스).
   · 배지 펄스·CTA 강조 모션은 피해자 대상 신뢰도 위해 의도적으로 제외.
   ══════════════════════════════════════════════════════════════ */

/* 1) 첫 페인트 등장 — 은은한 페이드업(홈 콘텐츠 + 사이드 위젯 한정, 6px) */
@keyframes jt-fade-up{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.is-index .jt-rl-grid>li,
.is-index .latest-grid>.lt-card,
#aside .wg-hotlist>li,
#aside .wg-searchlist>li,
#aside .wg-minelist>li,
#aside .wg-chips>.wg-chip,
#aside .wg-cmtlist>li{animation:jt-fade-up .30s ease-out backwards}
.is-index .jt-rl-grid>li:nth-child(2),#aside .wg-hotlist>li:nth-child(2),#aside .wg-searchlist>li:nth-child(2),#aside .wg-minelist>li:nth-child(2),#aside .wg-chips>.wg-chip:nth-child(2),#aside .wg-cmtlist>li:nth-child(2){animation-delay:.04s}
.is-index .jt-rl-grid>li:nth-child(3),.is-index .latest-grid>.lt-card:nth-child(2),#aside .wg-hotlist>li:nth-child(3),#aside .wg-searchlist>li:nth-child(3),#aside .wg-minelist>li:nth-child(3),#aside .wg-chips>.wg-chip:nth-child(3),#aside .wg-cmtlist>li:nth-child(3){animation-delay:.08s}
.is-index .jt-rl-grid>li:nth-child(4),.is-index .latest-grid>.lt-card:nth-child(3),#aside .wg-hotlist>li:nth-child(4),#aside .wg-searchlist>li:nth-child(4),#aside .wg-minelist>li:nth-child(4),#aside .wg-chips>.wg-chip:nth-child(4),#aside .wg-cmtlist>li:nth-child(4){animation-delay:.12s}
.is-index .jt-rl-grid>li:nth-child(5),.is-index .latest-grid>.lt-card:nth-child(4),#aside .wg-hotlist>li:nth-child(5),#aside .wg-searchlist>li:nth-child(5),#aside .wg-minelist>li:nth-child(5),#aside .wg-chips>.wg-chip:nth-child(5),#aside .wg-cmtlist>li:nth-child(5){animation-delay:.16s}
.is-index .jt-rl-grid>li:nth-child(n+6),#aside .wg-hotlist>li:nth-child(n+6),#aside .wg-searchlist>li:nth-child(n+6),#aside .wg-minelist>li:nth-child(n+6),#aside .wg-chips>.wg-chip:nth-child(n+6){animation-delay:.20s}

/* 2) 카드·타일 hover 미세 리프트(2px) — 그림자 없는 플랫톤에서 '클릭 가능' 신호 */
.jt-rl-item,.lt-card,.region-grid li a,#aside .wg-hotlist a{
  transition:transform .15s ease-out,border-color .12s ease,background .12s ease,color .12s ease}
.jt-rl-item:hover,.lt-card:hover,.region-grid li a:hover,#aside .wg-hotlist a:hover{transform:translateY(-2px)}

/* 3) 탭 패널 전환 — 하드컷 대신 페이드인(거래·공매 동향 등) */
@keyframes jt-tab-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.jt-tab-panel.on{animation:jt-tab-in .22s ease-out both}

/* 4) 버튼·인터랙션 눌림 피드백(1px) — 촉각적 반응(비바운스) */
.btn,.hd-cta,.jt-react-btn,.jt-chip,.jt-tab,.jt-memo-submit,.jt-rl-search button,.jt-btn-write,.jt-sch-toggle{
  transition:transform .1s ease,background .15s ease,border-color .15s ease,color .15s ease}
.btn:active,.hd-cta:active,.jt-react-btn:active,.jt-chip:active,.jt-tab:active,.jt-memo-submit:active,.jt-rl-search button:active,.jt-btn-write:active,.jt-sch-toggle:active{transform:translateY(1px)}

/* 5) 최상단 버튼 이징만 명시(동작 동일, 이징 통일) */
#top_btn{transition:opacity .2s ease-out,transform .2s ease-out,background .15s ease}

/* ══════════════════════════════════════════════════════════════
   다크모드 흰박스 보정 — 스킨의 background:#fff / color:#000 하드코딩 교정
   · #ctt      : 이용안내 콘텐츠 페이지(bbs/content.php — 스킨 style.css #ctt{background:#fff})
   · #bo_v 계열 : 게시판 글보기(basic 스킨 차용 — 제보글 포함 모든 글보기)
   라이트모드엔 영향 없음(스킨 기본 흰배경 유지), 다크에서만 카드배경+밝은글자로 반전
   ══════════════════════════════════════════════════════════════ */
[data-theme="dark"] #ctt{background:var(--card);color:var(--ink)}
[data-theme="dark"] #ctt_con{color:var(--ink)}
[data-theme="dark"] #bo_v{background:var(--card)}
[data-theme="dark"] #bo_v_top ul{background:transparent}
[data-theme="dark"] #bo_v_con{color:var(--ink)}
[data-theme="dark"] #bo_v_con a{color:var(--brand-ink)}
[data-theme="dark"] #bo_v_info{color:var(--muted);border-bottom-color:var(--line)}
[data-theme="dark"] #bo_v_info .sv_member{color:var(--ink)}
[data-theme="dark"] #bo_v_info .if_date{color:var(--muted-2)}
[data-theme="dark"] #bo_v_file li,[data-theme="dark"] #bo_v_link li{border-color:var(--line)}
[data-theme="dark"] #bo_v_file a,[data-theme="dark"] #bo_v_link a{color:var(--ink)}

/* 현장 위치 지도(카카오맵) — 좌표 있는 현장만 렌더 */
.jt-map-sec{margin:22px 0}
.jt-map{width:100%;height:340px;border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;background:var(--bg-2)}
.jt-map-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 14px;margin-top:8px}
.jt-map-cap{font-size:13px;color:var(--muted);line-height:1.5;flex:1 1 auto;min-width:0}
.jt-map-more{font-size:14px;font-weight:600;color:var(--brand-ink);white-space:nowrap;flex:0 0 auto}
.jt-map-more:hover{color:var(--brand);text-decoration:underline}
@media (max-width:600px){.jt-map{height:260px}}

/* 현장 자주 묻는 질문(FAQ) — 데이터 기반, 펼친 목록 */
.jt-faq{margin:22px 0}
.jt-faq-list{margin:0;padding:0}
.jt-faq-item{padding:14px 0;border-bottom:1px solid var(--line)}
.jt-faq-item:last-child{border-bottom:0}
.jt-faq-q{margin:0 0 6px;padding-left:22px;position:relative;font-weight:600;font-size:15px;color:var(--ink)}
.jt-faq-q::before{content:"Q";position:absolute;left:0;top:0;font-weight:700;color:var(--brand-ink)}
.jt-faq-a{margin:0;padding-left:22px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.jt-faq-src{margin:12px 0 0;font-size:13px;color:var(--muted)}

/* 현장 상세 주요 섹션 구분 — 지도·이력·FAQ·메모를 얇은 선+여백으로 나눠 붐빔 완화(일관 적용) */
.jt-map-sec,.jt-hist,.jt-faq,.jt-memo{margin:34px 0 0;padding-top:30px;border-top:1px solid var(--line-2)}

/* ── 현장 페이지: 이 현장 글(현장 태그) ── */
.jt-siteposts{margin-top:18px}
.jt-sp-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);background:var(--card-2);overflow:hidden}
.jt-sp-list li+li{border-top:1px solid var(--line)}
.jt-sp-list a{display:flex;align-items:center;gap:10px;padding:11px 14px;color:var(--ink);font-size:14.5px}
.jt-sp-list a:hover .jt-sp-tt{text-decoration:underline}
.jt-sp-bo{flex:0 0 auto;font-size:12px;color:var(--muted);border:1px solid var(--line);padding:2px 7px;border-radius:20px;white-space:nowrap}
.jt-sp-tt{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jt-sp-c{color:var(--brand-ink);font-weight:600;font-size:13px}
.jt-sp-dt{flex:0 0 auto;color:var(--muted);font-size:12.5px;font-variant-numeric:tabular-nums}
