/* Jake 위젯 · 포스터 키트 (K ·) — 색은 전부 --k-* 변수
   기본값 = 사이트 공통 색(--jks-*, Jake 위젯 > 🎨 공통 색) → 위젯의 색 세트 → 위젯의 한 칸 덮어쓰기 순서로 이김 */
.jk{--k-bg:var(--jwm-bg,var(--jks-bg,#0e0e0e));--k-card:var(--jwm-surface,var(--jks-card,#1c1c1c));--k-card2:var(--jwm-surface2,var(--jks-card2,#232323));--k-ink:var(--jwm-ink,var(--jks-ink,#f5f5f5));--k-ink2:var(--jwm-ink3,var(--jks-ink2,#a3a3a3));
  --k-line:var(--jwm-line,var(--jks-line,#2c2c2c));--k-ac1:var(--jwm-brand,var(--jks-ac1,#c8f04a));--k-ac1fg:var(--jwm-on-brand,var(--jks-ac1fg,#0e0e0e));--k-ac2:var(--jwm-brand2,var(--jks-ac2,#b9a6ff));--k-ac2fg:var(--jwm-on-brand2,var(--jks-ac2fg,#0e0e0e));--k-ac3:var(--jwm-brand3,var(--jks-ac3,#ff8a3d));
  --k-rad:24px;--k-gap:10px;--k-ease:cubic-bezier(.22,.8,.24,1);--k-edge:color-mix(in srgb,var(--k-ink) 22%,transparent);
  color:var(--k-ink);word-break:keep-all;-webkit-font-smoothing:antialiased}
.jk.is-paint{background:var(--k-bg)}
.jk *,.jk *::before,.jk *::after{box-sizing:border-box}
.jk.jk a,.jk.jk a:hover,.jk.jk a:focus{color:inherit;text-decoration:none}
.jk h1,.jk h2,.jk h3,.jk p,.jk ol{margin:0}
.jk button{font:inherit;color:inherit;background:none;border:0;margin:0;padding:0;cursor:pointer;-webkit-appearance:none;appearance:none;box-shadow:none;text-transform:none;letter-spacing:inherit;min-height:0;line-height:inherit}
.jk button:hover,.jk button:focus{background:none;color:inherit}
.jk a:focus-visible,.jk button:focus-visible,.jk input:focus-visible{outline:2.5px solid var(--k-ac1);outline-offset:3px}
.jk .k-num{font-family:"Space Grotesk",system-ui,sans-serif;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}

/* 공통 머리 */
.jk .k-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}
.jk .k-ht{font-size:22px;font-weight:900;letter-spacing:-.04em;line-height:1.3;color:var(--k-ink)}
.jk .k-hs{margin-top:4px;font-size:14px;color:var(--k-ink2)}
.jk.jk .k-hm{font-size:13.5px;color:var(--k-ink2);white-space:nowrap}
.jk.jk .k-hm:hover{color:var(--k-ink)}

/* ── 포스터 제목 ── */
.jk .k-title{--k-tsize:64px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 28px}
.jk .k-title.lay-below{flex-direction:column;align-items:flex-start;justify-content:flex-start}
.jk .k-title.lay-center{flex-direction:column;align-items:center;text-align:center;justify-content:flex-start}
.jk .k-eb{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--k-ink2)}
.jk .k-eb i{width:9px;height:9px;border-radius:50%;background:var(--k-ac1)}
.jk .k-tt{font-size:var(--k-tsize);font-weight:900;line-height:1.08;letter-spacing:-.05em;color:var(--k-ink)}
.jk .k-tt em{font-style:normal;color:var(--k-ac1)}
.jk .k-td{max-width:var(--k-dmax,340px);font-size:16px;line-height:1.7;color:var(--k-ink2)}

/* ── 타일 (타일 그리드 · 메뉴 브라우저 공용) ── */
.jk .k-tiles,.jk .k-mtiles{display:grid;grid-template-columns:repeat(var(--k-cols,4),minmax(0,1fr));grid-auto-rows:var(--k-rowh,122px);grid-auto-flow:dense;gap:var(--k-gap)}
.jk .k-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:18px;border-radius:var(--k-rad);background:var(--k-card);color:var(--k-ink);
  overflow:hidden;isolation:isolate;transition:transform .25s var(--k-ease),box-shadow .25s,filter .2s}
.jk.jk .k-tile{color:var(--k-ink)}
.jk.jk .k-tile.tone-ac1{background:var(--k-ac1);color:var(--k-ac1fg)}
.jk.jk .k-tile.tone-ac2{background:var(--k-ac2);color:var(--k-ac2fg)}
.jk.jk .k-tile.tone-ac3{background:var(--k-ac3);color:var(--k-ac1fg)}
.jk.jk .k-tile.tone-line{background:transparent;box-shadow:inset 0 0 0 1.5px var(--k-edge)}
.jk.jk .k-tile.tone-img{background:#333 center/cover no-repeat;color:#fff}
.jk .k-tile.tone-img::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,.05) 60%,rgba(0,0,0,.3))}
.jk .k-tile.sz-big{grid-column:span 2;grid-row:span 2}.jk .k-tile.sz-wide{grid-column:span 2}.jk .k-tile.sz-tall{grid-row:span 2}
.jk.do-lift a.k-tile:hover{transform:translateY(-3px);box-shadow:0 16px 30px -18px rgba(0,0,0,.6)}
.jk .k-tl-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-size:13px;font-weight:500;line-height:1.35}
.jk .k-tl-l{opacity:.92;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jk .k-tl-top .k-num,.jk .k-arr{flex:0 0 auto;font-size:14px}
.jk .k-arr{font-family:system-ui,sans-serif;font-weight:700}
.jk .k-tl-t{display:block;font-size:var(--k-fsm,28px);font-weight:900;line-height:1.08;letter-spacing:-.045em;word-break:keep-all}
.jk .k-tile.sz-big .k-tl-t{font-size:var(--k-fbig,48px)}
.jk .k-tl-t small{font-size:.5em;font-weight:700;margin-left:2px;letter-spacing:0;opacity:.9}

/* ── 숏폼 카드 줄 ── */
.jk .k-reels{position:relative;--k-vis:5;--k-ratio:9/16}
.jk .k-rl{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--k-vis) - 1) * var(--k-gap)) / var(--k-vis));gap:var(--k-gap);
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.jk .k-rl::-webkit-scrollbar{display:none}
.jk .k-reels.is-grid .k-rl{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));overflow:visible}
.jk .k-rc{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:var(--k-ratio);padding:12px;border-radius:calc(var(--k-rad) * .8);
  background:var(--k-card2) center/cover no-repeat;overflow:hidden;isolation:isolate;scroll-snap-align:start;transition:transform .25s var(--k-ease)}
.jk.jk .k-rc{color:var(--k-ink)}
.jk.jk .k-rc[style]{color:#fff}
.jk .k-reels.has-shade .k-rc[style]::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,0) 55%)}
.jk.do-lift .k-rc:hover{transform:translateY(-3px)}
.jk .k-chip-s{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:12px;font-weight:800;line-height:1;padding:6px 9px;border-radius:99px;background:var(--k-ac1);color:var(--k-ac1fg)}
.jk .k-play{position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;border:2.5px solid currentColor;display:grid;place-items:center}
.jk .k-rc[style] .k-play{background:rgba(0,0,0,.25);filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}
.jk .k-play svg{width:22px;height:22px;margin-left:2px}
.jk .k-rc-b{display:block;min-width:0}
.jk .k-rc-n{display:block;font-size:15px;font-weight:800;letter-spacing:-.02em;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jk .k-rc-m{display:block;margin-top:2px;font-size:12px;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jk .k-ra{position:absolute;top:50%;z-index:3;width:40px;height:40px;margin-top:-20px;border-radius:50%;font-size:22px;line-height:1;display:grid;place-items:center;
  background:var(--k-ink);color:var(--k-bg);box-shadow:0 6px 16px rgba(0,0,0,.35);transition:opacity .2s}
.jk .k-ra.prev{left:-14px}.jk .k-ra.next{right:-14px}
.jk.jk .k-ra:hover{background:var(--k-ink);color:var(--k-bg)}
.jk .k-ra[disabled]{opacity:0;pointer-events:none}

/* ── 해시태그 칩 ── */
.jk .k-chips{--k-gap:8px;display:flex;flex-wrap:wrap;gap:var(--k-gap)}
.jk .k-chips.is-scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.jk .k-chips.is-scroll::-webkit-scrollbar{display:none}
.jk .k-chip{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;height:var(--k-chh,40px);padding:0 16px;border-radius:99px;font-size:14.5px;font-weight:700;white-space:nowrap;
  box-shadow:inset 0 0 0 1.5px var(--k-edge);transition:background-color .15s,color .15s,box-shadow .15s}
.jk.jk .k-chip{color:var(--k-ink)}
.jk.jk a.k-chip:hover{background:var(--k-card)}
.jk .k-chip small{font-size:12px;color:var(--k-ink2)}
.jk.jk .st-fill .k-chip{background:var(--k-card);box-shadow:none}
.jk.jk .st-first .k-chip:first-child,.jk.jk .st-accent .k-chip{background:var(--k-ac1);color:var(--k-ac1fg);box-shadow:none}
.jk .st-first .k-chip:first-child small,.jk .st-accent .k-chip small{color:inherit;opacity:.7}

/* ── 안내 카드 ── */
.jk .k-info{padding:24px;border-radius:var(--k-rad);background:var(--k-card)}
.jk .k-info.tone-ac1{background:var(--k-ac1);color:var(--k-ac1fg)}.jk .k-info.tone-ac2{background:var(--k-ac2);color:var(--k-ac2fg)}
.jk .k-info.tone-line{background:transparent;box-shadow:inset 0 0 0 1.5px var(--k-edge)}
.jk .k-info-i{display:block;font-size:28px;margin-bottom:10px}
.jk .k-info-t{font-size:17px;font-weight:800;letter-spacing:-.03em;margin-bottom:8px;color:inherit}
.jk .k-info-d{font-size:15px;line-height:1.75;color:var(--k-ink2)}
.jk .k-info.tone-ac1 .k-info-d,.jk .k-info.tone-ac2 .k-info-d{color:inherit;opacity:.8}
.jk.jk .k-btn{display:inline-flex;align-items:center;gap:6px;margin-top:16px;height:42px;padding:0 18px;border-radius:99px;background:var(--k-ac1);color:var(--k-ac1fg);font-size:14.5px;font-weight:800}
.jk.jk .tone-ac1 .k-btn{background:var(--k-ac1fg);color:var(--k-ac1)}

/* ── 페이지 탭 ── */
.jk .k-tabs{display:flex;gap:var(--k-tgap,28px);overflow-x:auto;scrollbar-width:none}
.jk .k-tabs::-webkit-scrollbar{display:none}
.jk .k-tabs.has-rule{box-shadow:inset 0 -1px 0 var(--k-line)}
.jk .k-tab{flex:0 0 auto;padding:16px 0 13px;border-bottom:3px solid transparent;font-size:var(--k-tfs,17px);font-weight:700;white-space:nowrap;transition:color .15s,border-color .15s}
.jk.jk .k-tab{color:var(--k-ink2)}
.jk.jk .k-tab:hover,.jk.jk .k-tab.is-on{color:var(--k-ink)}
.jk .k-tab.is-on{font-weight:900;border-color:var(--k-ac1)}
.jk .k-tabs.st-big{--k-tfs:22px}.jk .st-big .k-tab{font-weight:900;padding:10px 0 8px}
.jk .st-pill{--k-tgap:8px}.jk .st-pill .k-tab{padding:0 16px;height:40px;display:inline-flex;align-items:center;border:0;border-radius:99px}
.jk.jk .st-pill .k-tab.is-on{background:var(--k-ac1);color:var(--k-ac1fg)}

/* ── 지역 지도 + 리스트 ── */
.jk .k-areas{display:grid;grid-template-columns:minmax(200px,.85fr) 1fr;gap:34px;align-items:start}
.jk .k-areas.map-right .k-map{order:2}.jk .k-areas.map-none{grid-template-columns:1fr}
.jk .k-map{position:relative;display:block;height:var(--k-maph,460px);border-radius:var(--k-rad);background:var(--k-card) center/cover no-repeat;overflow:hidden}
.jk .k-map-svg{position:absolute;inset:0;width:100%;height:100%;color:color-mix(in srgb,var(--k-ink) 9%,transparent)}
.jk .k-pin{position:absolute;transform:translate(-50%,-50%);min-width:36px;padding:6px 10px;border-radius:99px;text-align:center;font-size:14px;background:var(--k-ac1);color:var(--k-ac1fg);box-shadow:0 6px 16px rgba(0,0,0,.35)}
.jk .k-map-b{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.jk .k-map-b b{font-size:15px;font-weight:800;color:var(--k-ink)}
.jk .k-map-b i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700;background:var(--k-ink);color:var(--k-bg);transition:transform .2s var(--k-ease)}
.jk a.k-map:hover .k-map-b i{transform:rotate(45deg)}
.jk .k-ar-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}
.jk .k-ar-h b{font-size:18px;font-weight:800}.jk .k-ar-h small{font-size:12.5px;color:var(--k-ink2)}
.jk .k-ar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--k-line)}
.jk.jk .k-ar{color:var(--k-ink)}
.jk .k-ar-i{font-size:13px;color:var(--k-ink2)}.jk .k-ar.is-open .k-ar-i{color:var(--k-ac1)}
.jk .k-ar-m{min-width:0}
.jk .k-ar-n{display:block;font-size:var(--k-fsoon,24px);font-weight:900;letter-spacing:-.04em;line-height:1.15}
.jk .k-ar.is-open .k-ar-n{font-size:var(--k-fopen,36px)}
.jk .k-ar.is-soon .k-ar-n{color:var(--k-ink2);opacity:.6}
.jk .k-ar-t{display:block;margin-top:4px;font-size:12.5px;color:var(--k-ink2)}
.jk .k-ar-c{font-size:30px;color:var(--k-ac1)}
.jk .k-soon{font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:5px 9px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--k-edge);color:var(--k-ink2)}
.jk.do-lift a.k-ar:hover .k-ar-n{color:var(--k-ac1)}

/* ── 메뉴 브라우저 ── */
.jk .k-mbody{display:grid;grid-template-columns:var(--k-lw,184px) minmax(0,1fr);gap:34px;align-items:start}
.jk .k-mps{display:flex;flex-direction:column;gap:8px}
.jk .k-mp{display:flex;align-items:center;justify-content:space-between;gap:8px;height:40px;padding:0 16px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--k-edge);font-size:14.5px;font-weight:700;transition:background-color .15s}
.jk.jk .k-mp{color:var(--k-ink)}
.jk.jk .k-mp:hover{background:var(--k-card)}
.jk.jk .k-mp.is-on{background:var(--k-ac1);color:var(--k-ac1fg);box-shadow:none}
.jk .k-mp small{font-size:13px;opacity:.7}
.jk .k-menu{--k-cols:3;--k-rowh:124px}
.jk .k-mtiles[hidden]{display:none}
.jk .k-mtiles.is-on{animation:k-in .35s var(--k-ease)}
@keyframes k-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.jk .k-search{display:none;align-items:center;gap:10px;height:48px;margin-bottom:14px;padding:0 18px;border-radius:99px;background:var(--k-card);color:var(--k-ink2)}
.jk .k-search.on-pc{display:flex}
.jk .k-search svg{width:18px;height:18px;flex:0 0 auto}
.jk .k-search input{flex:1;min-width:0;height:100%;border:0;background:transparent;color:var(--k-ink);font:inherit;font-size:15px;padding:0;box-shadow:none;outline:0}
.jk .k-search input::placeholder{color:var(--k-ink2)}

/* ── 순위 리스트 ── */
.jk .k-rank{list-style:none;padding:0}
.jk .k-rank li{border-bottom:1px solid var(--k-line)}
.jk .k-rk{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:8px;min-height:var(--k-rh,62px)}
.jk.jk .k-rk{color:var(--k-ink)}
.jk .k-rk-i{font-size:var(--k-rnum,30px);line-height:1}
.jk .first-ac li:first-child .k-rk-i{color:var(--k-ac1)}
.jk .k-rk-n{font-size:17px;font-weight:800;letter-spacing:-.03em}
.jk .k-rk-b{display:inline-flex;align-items:center;height:32px;padding:0 13px;border-radius:99px;background:var(--k-card);font-size:12.5px;font-weight:700;transition:background-color .15s}
.jk a.k-rk:hover .k-rk-b{background:var(--k-ac1);color:var(--k-ac1fg)}
.jk .k-rk-m{font-size:13px;color:var(--k-ink2)}

/* ── 태블릿 · 모바일 기본값 (Elementor 설정이 이김) ── */
@media (max-width:1024px){
  .jk .k-title{--k-tsize:52px}
  .jk .k-areas{gap:24px}
}
@media (max-width:767px){
  .jk{--k-gap:8px;--k-rad:18px}
  .jk .k-title{--k-tsize:34px;gap:10px}
  .jk .k-td{font-size:14.5px}
  .jk .k-ht{font-size:19px}
  .jk .k-tiles{--k-cols:2;--k-rowh:76px}
  .jk .k-tiles .k-tile.sz-big{grid-column:span 1;grid-row:span 2}
  .jk .k-tile{padding:13px 14px}
  .jk .k-tl-t{font-size:var(--k-fsm,21px)}.jk .k-tile.sz-big .k-tl-t{font-size:var(--k-fbig,27px)}
  .jk .k-tl-top{font-size:11.5px}
  .jk .k-reels{--k-vis:2.3}
  .jk .k-ra{display:none}
  .jk .k-chip{font-size:13.5px;--k-chh:36px;padding:0 13px}
  .jk .k-areas{grid-template-columns:1fr}
  .jk .k-areas .k-map{order:0;height:var(--k-maph,170px)}
  .jk .k-ar{padding:13px 0}.jk .k-ar.is-open .k-ar-n{font-size:var(--k-fopen,28px)}.jk .k-ar-n{font-size:var(--k-fsoon,21px)}.jk .k-ar-c{font-size:24px}
  .jk .k-mbody{grid-template-columns:1fr;gap:12px}
  .jk .k-mps{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}
  .jk .k-mps::-webkit-scrollbar{display:none}
  .jk .k-mp{flex:0 0 auto;height:38px;padding:0 15px}.jk .k-mp small{display:none}
  .jk .k-menu{--k-cols:2;--k-rowh:84px}
  .jk .k-mtiles .k-tile.sz-big{grid-column:1/-1;grid-row:span 2}
  .jk .k-search{display:flex}
  .jk .k-rk{grid-template-columns:40px 1fr auto}.jk .k-rk-i{font-size:var(--k-rnum,26px)}.jk .k-rk-n{font-size:16px}
}
@media (prefers-reduced-motion:reduce){.jk *{transition:none!important;animation:none!important}}
