*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
:root{
  --bg:#FAFAFA;--surface:#F0F1F2;--ink:#16181A;--ink2:#5C6368;
  --line:#DCDEE0;--accent:#3D4A52;--accent2:#8E979C;
}
body{background:var(--bg);color:var(--ink);font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;
     font-size:15.5px;line-height:1.62;word-break:keep-all;overflow-wrap:anywhere;
     -webkit-font-smoothing:antialiased}
.rp-wrap{max-width:1180px;margin:0 auto;padding:0 22px 96px}

/* 상단 */
.rp-top{display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:26px 0 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.rp-logo{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;
  font-size:1.5rem;color:var(--ink)}
.rp-logo b{color:var(--accent)}
.rp-nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.9rem}
.rp-nav a{color:var(--ink2);}
.rp-nav a:hover,.rp-nav a[aria-current]{color:var(--accent)}

/* 히어로 */
.rp-hero{padding:52px 0 40px}
.rp-h1{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;
  font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.12;text-wrap:balance;max-width:22ch}
.rp-lead{margin-top:16px;font-size:1.02rem;color:var(--ink2);max-width:60ch}
.rp-kicker{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);font-weight:700;margin-bottom:14px}

/* 편집국 — 홈 두 번째 블록 */
.rp-desk{margin:22px 0;padding:22px 24px;background:var(--surface);
  border-left:3px solid var(--accent);display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}
.rp-desk .n{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;font-size:1.05rem}
.rp-desk .b{color:var(--ink2);font-size:.92rem;flex:1;min-width:240px}

/* 섹션 제목 */
.rp-sec{margin-top:40px}
.rp-sech{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding-bottom:12px;margin-bottom:18px;
  border-bottom:2px solid var(--ink)}
.rp-sech h2{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;font-size:1.35rem}
.rp-sech a{font-size:.82rem;color:var(--ink2)}

/* 카드 목록 */
.rp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;background:var(--line)}
.rp-card{background:var(--bg);padding:18px}
.rp-card:hover .rp-t{color:var(--accent)}
/* ★ 목록 카드에 사진을 쓰지 않는다 — 색면 + 타이포 + 연번.
   기사당 필요 이미지가 0이 되어 이미지 조달이 발행을 막지 않는다. (서울에디트 초판 방식) */
.rp-tone{aspect-ratio:4/3;position:relative;overflow:hidden;margin-bottom:10px;
  display:flex;align-items:flex-end;padding:14px}
/* 심볼 워터마크 — 잘리지 않게 안쪽에 두고, 얇은 기호(| ~ ›)도 보이게 굵기를 준다 */
.rp-tone .sym{position:absolute;right:10px;top:6px;line-height:1;pointer-events:none;
  font-size:clamp(40px,6vw,76px);font-weight:900;opacity:.16}
.rp-tone .no{position:absolute;top:12px;right:14px;font-size:.72rem;
  letter-spacing:.1em;opacity:.55;font-variant-numeric:tabular-nums}
.rp-tone .ct{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;opacity:.7}

/* 임베드 월 — 가십 섹션의 키 비주얼.
   Wavve 방식: 세로 2:3 스트립 + 첫 칸 타이틀 카드 + 배경이 카드를 가로질러 이어진다.
   원본이 지워지면 폴백 카드가 자리를 지킨다. */
.rp-wall{display:grid;gap:8px;margin-top:14px}
/* 열이 적은 매체(SeoulEdits cols:1)에서 카드가 거대해지지 않게 높이를 묶는다 */
.rp-wall .cell{position:relative;aspect-ratio:2/3;max-height:460px;overflow:hidden;border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  background-image:linear-gradient(100deg,var(--accent) 0%,var(--surface) 40%,var(--accent2) 72%,var(--surface) 100%);
  background-size:calc(var(--wall-n,6) * 100%) 100%}
.rp-wall .cell .fb{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:6px;color:var(--ink);font-size:.76rem;text-align:center;padding:12px}
.rp-wall .cell .fb b{font-size:1.5rem;opacity:.5}
.rp-wall .cell.ttl{align-items:center;justify-content:center;padding:16px;text-align:center}
.rp-wall .cell.ttl span{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;
  font-size:clamp(1.1rem,2.2vw,1.9rem);line-height:1.2;color:var(--ink);text-wrap:balance}
.rp-wall .cell.ttl small{display:block;font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:600;font-size:.68rem;
  letter-spacing:.14em;text-transform:uppercase;opacity:.55;margin-bottom:8px}
.rp-wall blockquote{margin:0!important;min-width:0!important;width:100%!important}
.rp-wallcap{margin-top:8px;font-size:.78rem;color:var(--ink2);line-height:1.6}

/* 편집부 선정 — 좌 큰 카드 1 + 우 번호 리스트 4 (닥스노트 편집장 추천 자리) */
.rp-pick{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}
/* 피처 카드는 목록과 다른 비율 — 목록 비율을 그대로 쓰면 세로로 늘어진다 */
.rp-pick .rp-tone{aspect-ratio:16/10;max-height:300px}
.rp-pick .rp-t{font-size:1.5rem}
.rp-rank{display:flex;flex-direction:column}
.rp-rank a{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:13px 0;
  border-bottom:1px solid var(--line);align-items:baseline}
.rp-rank a:last-child{border-bottom:none}
.rp-rank .no{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:800;font-size:1.05rem;color:var(--accent);
  font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.rp-rank .rt{font-size:.94rem;font-weight:650;line-height:1.4}
.rp-rank .rs{font-size:.74rem;color:var(--ink2);letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:3px}
.rp-rank a:hover .rt{color:var(--accent)}

/* 압축 리스트 + 페이지네이션 — 카드 그리드만으로는 기사가 쌓이면 답이 없다 */
.rp-rows a{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:baseline;
  padding:11px 0;border-bottom:1px solid var(--line);font-size:.92rem}
.rp-rows .rk{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);white-space:nowrap}
.rp-rows .rd{font-size:.76rem;color:var(--ink2);font-variant-numeric:tabular-nums;white-space:nowrap}
.rp-rows a:hover{color:var(--accent)}
.rp-pg{display:flex;gap:6px;justify-content:center;margin-top:22px}
.rp-pg a,.rp-pg span{min-width:30px;height:30px;display:flex;align-items:center;justify-content:center;
  font-size:.82rem;border:1px solid var(--line);font-variant-numeric:tabular-nums}
.rp-pg span{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* 섹션 인덱스 — "몇 편 있다"가 보여야 매체가 두꺼워 보인다 */
.rp-idx a.row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:baseline;
  padding:14px 0;border-bottom:1px solid var(--line)}
.rp-idx a.row:last-of-type{border-bottom:none}
.rp-idx .nm{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;font-size:1.1rem}
.rp-idx .ct{font-size:.8rem;color:var(--ink2);font-variant-numeric:tabular-nums}
.rp-idx .cn{display:flex;gap:10px;flex-wrap:wrap;padding:0 0 14px;border-bottom:1px solid var(--line)}
.rp-idx .cn a{font-size:.78rem;color:var(--ink2);border:1px solid var(--line);padding:3px 9px;border-radius:2px}
.rp-idx .cn a:hover{border-color:var(--accent);color:var(--accent)}

/* 히어로 섹션 칩 · 롤링 인디케이터 */
.rp-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.rp-chips a{font-size:.82rem;padding:6px 14px;border:1px solid var(--line);border-radius:999px;color:var(--ink2)}
.rp-chips a:hover{border-color:var(--accent);color:var(--accent)}
.rp-ind{display:flex;gap:5px;align-items:center;margin-top:26px}
.rp-ind i{display:block;width:7px;height:4px;background:var(--ink2);opacity:.3;border-radius:2px}
.rp-ind i.on{width:26px;opacity:.8;background:var(--accent)}

/* 기사 상단 심볼 뱃지 */
.rp-badge{width:34px;height:34px;background:var(--ink);color:var(--bg);
  display:flex;align-items:center;justify-content:center;font-weight:800;
  font-size:1rem;margin-bottom:18px;border-radius:3px}

/* 임베드는 세로 비율로 — 릴스가 정사각 컨테이너에 들어가면 좌우 검은 여백이 크다 */
.rp-ig blockquote{margin:0 auto!important;max-width:540px!important}
.rp-meta{display:flex;gap:8px;align-items:center;font-size:.72rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:6px}
.rp-meta .cn{color:var(--accent);font-weight:700}
.rp-t{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;
  letter-spacing:-.01em;font-size:1.02rem;line-height:1.32;text-wrap:balance}
.rp-sub{margin-top:6px;color:var(--ink2);font-size:.88rem;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rp-by{margin-top:8px;font-size:.76rem;color:var(--ink2);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 광고 배지 */
.rp-ad{display:inline-block;font-size:.66rem;letter-spacing:.1em;font-weight:800;
  padding:2px 7px;border:1px solid var(--accent);color:var(--accent);border-radius:2px}

/* 기사 */
.rp-art{max-width:740px;margin:0 auto;padding-top:38px}
.rp-art .rp-h1{font-size:clamp(1.9rem,4.4vw,2.9rem);max-width:26ch}
/* 광고 표기(강) — disclosure:"paid" */
.rp-notice{margin:22px 0;padding:13px 16px;border:1px solid var(--accent);
  background:var(--surface);font-size:.9rem;font-weight:700;color:var(--accent)}
/* 관계 고지(약) — disclosure:"relation". 대가는 인스타에 지급됐고 이 기사는 편집국 재량 */
.rp-rel{margin:20px 0;padding:11px 14px;border-left:2px solid var(--line);
  color:var(--ink2);font-size:.82rem;line-height:1.7}
.rp-body{margin-top:30px;font-size:1.02rem}
.rp-body p{margin:0 0 1.35em}
.rp-body h2{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,'Malgun Gothic',sans-serif;font-weight:700;letter-spacing:-.01em;
  font-size:1.4rem;margin:2em 0 .7em;text-wrap:balance}
.rp-body h3{font-size:1.1rem;font-weight:700;margin:1.7em 0 .5em}
.rp-body ul{margin:0 0 1.35em;padding-left:1.1em;list-style:disc}
.rp-body li{margin:.35em 0}
.rp-body blockquote{margin:1.6em 0;padding:16px 20px;background:var(--surface);
  border-left:3px solid var(--accent);font-size:1.06rem}
.rp-body table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.92rem}
.rp-body th,.rp-body td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.rp-body th{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}
.rp-scroll{overflow-x:auto}
.rp-ig{margin:1.6em 0}
.rp-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:34px}
.rp-tags span{font-size:.76rem;color:var(--ink2);border:1px solid var(--line);padding:4px 10px;border-radius:2px}

footer{margin-top:70px;padding:26px 0;border-top:1px solid var(--line);
  color:var(--ink2);font-size:.82rem;line-height:1.8}
.rp-fnav{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:14px}

@media (max-width:760px){
  .rp-pick{grid-template-columns:1fr;gap:22px}
}
@media (max-width:640px){
  .rp-wrap{padding:0 16px 80px}
  .rp-list{grid-template-columns:1fr!important}
  .rp-wall{grid-template-columns:repeat(3,1fr)!important}
  .rp-rows a{grid-template-columns:1fr;gap:3px}
  .rp-rows .rd{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}