/* 15차 프로필 테마 6종 + 크리에이터 페이지 새 칸 (핀 · 후원자 벽 · 소개 블록 · 주소 · 빈 상태 일러스트)
   테마 = [data-ptheme="키"] 한 곳의 변수 묶음. 크리에이터 페이지에서는 <main id="app"> 에, 스튜디오 미리보기에서는 카드에 붙음.
   테마가 없으면(빈 값) 사이트 라이트·다크(style.css 맨 위)를 그대로 따름. 보라(색상 225~320°) 없음.
   --pt-hf/--pt-hw/--pt-ht = 제목 글꼴·굵기·자간 · --pt-cover = 커버 위 덧칠(그라데이션·질감) · --pt-cover-filter = 커버 사진 보정 · --ill-c = 빈 상태 그림 색 */
:root { --ill-c: #0F5132; }
:root[data-theme="dark"] { --ill-c: var(--gold); }
[data-ptheme] {
  --pt-hf: inherit; --pt-hw: 800; --pt-ht: -.04em;
  --pt-cover: none; --pt-cover-filter: none; --pt-glow: none;
  color: var(--text);
}
/* 미니멀 화이트: 순백 · 먹색 포인트 · 모서리 0 · 커버 아래가 하얗게 풀림 */
[data-ptheme="white"] {
  --bg: #FFFFFF; --card: #FFFFFF; --card-rgb: 255, 255, 255; --line: #E6E6E6;
  --text: #0A0A0A; --text-2: #2B2B2B; --sub: #4A4A4A; --faint: #666666;
  --accent: #111111; --accent-rgb: 17, 17, 17; --accent-ink: #111111; --accent-2: #555555; --accent-soft: #F2F2F2; --accent-soft-2: #E4E4E4;
  --on-accent: #FFFFFF; --on-accent-rgb: 255, 255, 255; --soft: #F6F6F6; --hover: #EEEEEE; --track: #EAEAEA; --track-strong: #CFCFCF;
  --radius: 0px; --shadow: 0 0 0 1px #E6E6E6;
  --pt-hw: 700; --pt-ht: -.01em;
  --pt-cover: linear-gradient(180deg, rgba(255, 255, 255, 0) 55%, rgba(255, 255, 255, .6));
  --pt-cover-filter: saturate(.85);
  --ill-c: #0F5132; color-scheme: light;
}
/* 다크 골드: #0B0B0B · 골드 #C9A227 · 모서리 8 · 명조 제목 · 커버 비네트 + 아래 금선 */
[data-ptheme="gold"] {
  --bg: #0B0B0B; --card: #151515; --card-rgb: 21, 21, 21; --line: #2A2A2A;
  --text: #F5F1E6; --text-2: #E2DCCB; --sub: #BDB6A3; --faint: #A39C8A;
  --accent: #C9A227; --accent-rgb: 201, 162, 39; --accent-ink: #DDB84A; --accent-2: #8A6F1A; --accent-soft: #2A2412; --accent-soft-2: #3A3218;
  --on-accent: #0B0B0B; --on-accent-rgb: 11, 11, 11; --soft: #1C1C1C; --hover: #242424; --track: #2A2A2A; --track-strong: #3A3A3A;
  --sk1: #1C1C1C; --sk2: #262626; --gold: #C9A227; --gold-soft: #2A2412; --gold-ink: #E0BC4A; --on-gold: #0B0B0B; --ok-soft: #12261A;
  --radius: 8px; --shadow: 0 0 0 1px #2A2A2A, 0 10px 30px rgba(0, 0, 0, .5);
  --pt-hf: "Noto Serif KR", "Nanum Myeongjo", Batang, "AppleMyungjo", serif; --pt-hw: 600; --pt-ht: .01em;
  --pt-cover: linear-gradient(0deg, #C9A227 0 2px, transparent 2px), radial-gradient(ellipse at 50% 40%, transparent 35%, rgba(0, 0, 0, .7)), linear-gradient(180deg, transparent 50%, rgba(11, 11, 11, .55));
  --pt-cover-filter: saturate(.8) contrast(1.06);
  --ill-c: #C9A227; color-scheme: dark;
}
/* 딥그린: 숲처럼 짙은 바탕 #0F5132 · 크림 포인트 · 모서리 16 · 커버에 초록을 곱함 */
[data-ptheme="green"] {
  --bg: #0F5132; --card: #0B4128; --card-rgb: 11, 65, 40; --line: #23664A;
  --text: #F2F7F4; --text-2: #DCEAE2; --sub: #BFD6C9; --faint: #A9C7B6;
  --accent: #F2E6C2; --accent-rgb: 242, 230, 194; --accent-ink: #F2E6C2; --accent-2: #CDBF95; --accent-soft: #155E3C; --accent-soft-2: #1C6B46;
  --on-accent: #0B3D26; --on-accent-rgb: 11, 61, 38; --soft: #0D4A2E; --hover: #135A39; --track: #1E6646; --track-strong: #2E7A57;
  --sk1: #0D4A2E; --sk2: #135A39; --gold: #E0BC4A; --gold-soft: #164F33; --gold-ink: #F0D27A; --on-gold: #0B0B0B; --ok-soft: #155E3C;
  --radius: 16px; --shadow: 0 0 0 1px #1B5E41, 0 10px 28px rgba(0, 0, 0, .25);
  --pt-hw: 800; --pt-ht: -.04em;
  --pt-cover: linear-gradient(180deg, rgba(15, 81, 50, .15), rgba(15, 81, 50, .75));
  --pt-cover-filter: saturate(.9);
  --ill-c: #F2E6C2; color-scheme: dark;
}
/* 파스텔: 복숭아빛 크림 · 장밋빛 포인트 · 모서리 24 · 커버에 분홍·민트 안개 */
[data-ptheme="pastel"] {
  --bg: #FFF7F2; --card: #FFFFFF; --card-rgb: 255, 255, 255; --line: #F4E2D8;
  --text: #2E2420; --text-2: #4A3B34; --sub: #63524A; --faint: #75625A;
  --accent: #B04A6E; --accent-rgb: 176, 74, 110; --accent-ink: #9A3B5D; --accent-2: #D88AA4; --accent-soft: #FCE9EF; --accent-soft-2: #F8D6E1;
  --on-accent: #FFFFFF; --on-accent-rgb: 255, 255, 255; --soft: #FCEFE8; --hover: #F8E5DB; --track: #F3E1D7; --track-strong: #E8CDBF;
  --radius: 24px; --shadow: 0 0 0 1px #F6E6DD, 0 12px 30px rgba(176, 74, 110, .08);
  --pt-hw: 700; --pt-ht: -.02em;
  --pt-cover: linear-gradient(135deg, rgba(255, 205, 220, .55), rgba(255, 236, 214, .35) 50%, rgba(200, 240, 226, .5));
  --pt-cover-filter: saturate(.75) brightness(1.06);
  --ill-c: #0F5132; color-scheme: light;
}
/* 네온: 거의 검정 · 형광 초록 + 분홍 빛 · 모서리 12 · 커버에 주사선 + 네온 빛 */
[data-ptheme="neon"] {
  --bg: #070908; --card: #101412; --card-rgb: 16, 20, 18; --line: #1F2A25;
  --text: #EFFFF6; --text-2: #D2F0E0; --sub: #A9CDBB; --faint: #8FB3A2;
  --accent: #39FF88; --accent-rgb: 57, 255, 136; --accent-ink: #5CFFA0; --accent-2: #FF3D9A; --accent-soft: #10291B; --accent-soft-2: #163A26;
  --on-accent: #04120A; --on-accent-rgb: 4, 18, 10; --soft: #141A17; --hover: #1A221E; --track: #1F2A25; --track-strong: #2D3B34;
  --sk1: #141A17; --sk2: #1A221E; --gold: #FFD23F; --gold-soft: #2A2410; --gold-ink: #FFE07A; --on-gold: #070908; --ok-soft: #10291B;
  --radius: 12px; --shadow: 0 0 0 1px #1F2A25, 0 0 22px rgba(57, 255, 136, .08);
  --pt-hw: 900; --pt-ht: .02em; --pt-glow: 0 0 18px rgba(57, 255, 136, .55), 0 0 2px rgba(57, 255, 136, .9);
  --pt-cover: repeating-linear-gradient(0deg, rgba(0, 0, 0, .28) 0 1px, transparent 1px 4px), linear-gradient(120deg, rgba(255, 61, 154, .5), rgba(7, 9, 8, .1) 50%, rgba(0, 229, 255, .4)), linear-gradient(0deg, #39FF88 0 2px, transparent 2px);
  --pt-cover-filter: saturate(1.25) contrast(1.1) brightness(.85);
  --ill-c: #39FF88; color-scheme: dark;
}
/* 종이질감: 미색 종이 + 잡티(SVG 노이즈) · 갈색 잉크 포인트 · 모서리 6 · 명조 제목 · 커버 빛바램 */
[data-ptheme="paper"] {
  --bg: #F4EFE4; --card: #FBF8F1; --card-rgb: 251, 248, 241; --line: #E3DACA;
  --text: #2B2620; --text-2: #3F372E; --sub: #574D41; --faint: #6B6053;
  --accent: #7A4E2D; --accent-rgb: 122, 78, 45; --accent-ink: #6A4226; --accent-2: #A97F5A; --accent-soft: #EFE4D3; --accent-soft-2: #E6D6BF;
  --on-accent: #FFFFFF; --on-accent-rgb: 255, 255, 255; --soft: #EEE7D9; --hover: #E8DFCD; --track: #E3DACA; --track-strong: #D2C5AE;
  --radius: 6px; --shadow: 0 0 0 1px #E3DACA, 0 6px 16px rgba(80, 60, 30, .08);
  --pt-hf: "Noto Serif KR", "Nanum Myeongjo", Batang, "AppleMyungjo", serif; --pt-hw: 700; --pt-ht: -.01em;
  --pt-paper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .36 0 0 0 0 .28 0 0 0 0 .17 0 0 0 .1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --pt-cover: var(--pt-paper), linear-gradient(180deg, rgba(244, 239, 228, .1) 40%, rgba(244, 239, 228, .7));
  --pt-cover-filter: sepia(.28) saturate(.8);
  --ill-c: #0F5132; color-scheme: light;
}

/* 크리에이터 페이지 전체에 테마 바탕 (헤더·푸터는 사이트 색 그대로, 가운데 칸은 화면 끝까지) */
main[data-ptheme] { background: var(--bg); box-shadow: 0 0 0 100vmax var(--bg); clip-path: inset(0 -100vmax); }
main[data-ptheme="paper"], .pt-mini[data-ptheme="paper"], .pt-card[data-ptheme="paper"] { background-image: var(--pt-paper); }
main[data-ptheme] .ctabs { background: linear-gradient(var(--bg) 70%, transparent); }
main[data-ptheme="paper"] .ctabs { background: var(--bg); }
[data-ptheme] .profile .name, [data-ptheme] .sec-h, [data-ptheme] .pin-t, [data-ptheme] .pt-name { font-family: var(--pt-hf); font-weight: var(--pt-hw); letter-spacing: var(--pt-ht); }
[data-ptheme="neon"] .profile .name, [data-ptheme="neon"] .pt-name { text-shadow: var(--pt-glow); }
[data-ptheme] .profile .av { border-color: var(--bg); }
[data-ptheme="neon"] .profile .av { box-shadow: 0 0 0 2px #39FF88, 0 0 24px rgba(57, 255, 136, .45); }
[data-ptheme="gold"] .profile .av { box-shadow: 0 0 0 2px #C9A227, 0 10px 24px rgba(0, 0, 0, .5); }
[data-ptheme] .card, [data-ptheme] .post, [data-ptheme] .wish { border-radius: var(--radius); }
[data-ptheme] .cover { border-radius: var(--radius); }
[data-ptheme] .cover::after { content: ''; position: absolute; inset: 0; background: var(--pt-cover); pointer-events: none; }
[data-ptheme] .cover img { filter: var(--pt-cover-filter); }
[data-ptheme] .btn:not(.primary) { border-radius: min(var(--radius), 14px); }
[data-ptheme="white"] .btn, [data-ptheme="white"] .tabs a { border-radius: 0; }
[data-ptheme="white"] .tabs a:not(.on) { box-shadow: 0 0 0 1px var(--line); }

/* 커버 패럴랙스: 스크롤하면 커버 그림만 천천히 (transform 만 · 움직임 줄이기면 끔) */
.cover.plx img { transform: translate3d(0, var(--plx, 0px), 0) scale(1.12); will-change: transform; }
@media (prefers-reduced-motion: reduce) { .cover.plx img { transform: none; will-change: auto; } }
/* 탭 줄이 위에 붙으면 아래 그림자 */
.ctabs.stuck { box-shadow: 0 8px 14px -12px rgba(0, 0, 0, .35); }

/* 이름 옆 "활동 중" (최근 7일 안 글) */
.live-b { display: inline-flex; align-items: center; gap: 6px; vertical-align: middle; margin-left: 10px; padding: 4px 10px 4px 9px; border-radius: 999px; font-size: 12px; font-weight: 800; letter-spacing: 0; font-family: Pretendard, "Malgun Gothic", sans-serif; text-shadow: none; background: var(--accent-soft); color: var(--accent-ink); }
.live-b i { width: 8px; height: 8px; border-radius: 50%; background: #12A150; box-shadow: 0 0 0 3px rgba(18, 161, 80, .2); }
@media (prefers-reduced-motion: no-preference) { .live-b i { animation: liveDot 2s ease-in-out infinite; } }
@keyframes liveDot { 50% { box-shadow: 0 0 0 6px rgba(18, 161, 80, 0); } }

/* 소개 블록: 소개글 + 활동 링크 아이콘 */
.about15 { margin-top: 14px; display: grid; gap: 12px; }
.about15 .cbio { margin: 0; }
.lk15 { display: flex; flex-wrap: wrap; gap: 8px; }
.lk15 a { display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px 0 11px; border-radius: 999px; background: var(--card); box-shadow: var(--shadow); font-size: 13px; font-weight: 700; color: var(--text); transition: transform .15s; }
.lk15 a:hover { transform: translateY(-1px); }
.lk15 a svg { width: 17px; height: 17px; color: var(--accent-ink); }
[data-ptheme="white"] .lk15 a, [data-ptheme="paper"] .lk15 a { border-radius: var(--radius); }
/* 커스텀 주소 eon8.co.kr/@handle + 링크 복사 */
.addr15 { display: inline-flex; align-items: center; gap: 4px; height: 36px; padding: 0 4px 0 12px; border-radius: 999px; background: var(--soft); font-size: 13px; max-width: 100%; }
.addr15 .addr-t { font-weight: 700; color: var(--text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.addr15 .addr-t b { color: var(--accent-ink); }
.addr15 .linkbtn { flex: none; height: 28px; padding: 0 12px; border-radius: 999px; background: var(--accent); color: var(--on-accent); font-size: 12px; font-weight: 800; text-decoration: none; }
[data-ptheme="white"] .addr15, [data-ptheme="white"] .addr15 .linkbtn { border-radius: 0; }

/* 하이라이트 핀: 큰 카드 3열(PC) · 가로 스크롤(폰) */
.pins15 { margin-top: 22px; }
.pins15 .sec-h { margin: 0 0 12px; display: flex; align-items: center; gap: 8px; }
.pins15 .sec-h svg { width: 20px; height: 20px; color: var(--accent-ink); }
.pin-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pin { position: relative; display: block; border-radius: var(--radius); overflow: hidden; background: var(--card); box-shadow: var(--shadow); transition: transform .18s, box-shadow .18s; }
.pin:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(0, 0, 0, .14); }
.pin-ph { aspect-ratio: 16 / 10; position: relative; overflow: hidden; background: var(--soft); }
.pin-ph img { width: 100%; height: 100%; object-fit: cover; }
.pin-ph img.blur { filter: blur(14px); transform: scale(1.15); }
.pin-ph .txt { padding: 16px; font-size: 14px; line-height: 1.55; color: var(--sub); height: 100%; overflow: hidden; }
.pin-ph::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, .35)); }
.pin-lock { position: absolute; z-index: 1; left: 12px; top: 12px; display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 800; background: rgba(0, 0, 0, .62); color: #FFFFFF; }
.pin-lock svg { width: 13px; height: 13px; }
.pin-no { position: absolute; z-index: 1; right: 12px; top: 12px; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 900; background: var(--accent); color: var(--on-accent); }
.pin-b { padding: 12px 14px 14px; }
.pin-t { font-size: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pin-m { margin-top: 3px; font-size: 12px; color: var(--faint); }
@media (max-width: 700px) {
  .pin-row { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 0 -16px; padding: 2px 16px 10px; scrollbar-width: none; }
  .pin-row::-webkit-scrollbar { display: none; }
  .pin { flex: 0 0 78%; scroll-snap-align: start; }
}

/* 후원자 벽: TOP 3 단상(1등 가운데 크게 · 금·은·동 테두리) + 최근 후원 흐름 */
.sup15 { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 14px; margin-bottom: 14px; }
.sup15 > .card { padding: 18px; }
.sup15 h3 { font-size: 15px; font-weight: 800; margin: 0 0 12px; display: flex; align-items: baseline; gap: 6px; }
.sup15 h3 small { font-size: 12px; font-weight: 600; color: var(--faint); }
.podium { display: grid; grid-template-columns: 1fr 1.25fr 1fr; align-items: end; gap: 8px; text-align: center; }
.pd { min-width: 0; display: grid; justify-items: center; gap: 6px; }
.pd .ring { position: relative; width: 64px; height: 64px; border-radius: 50%; padding: 3px; background: var(--ring); }
.pd.r1 .ring { width: 92px; height: 92px; padding: 4px; }
.pd .ring > * { width: 100% !important; height: 100% !important; border-radius: 50%; border: 3px solid var(--card); object-fit: cover; display: block; background: var(--card); }
.pd .crown { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); width: 26px; height: 18px; color: #D4A82A; }
.pd.r1 { --ring: conic-gradient(from 210deg, #8C6A12, #F3D36B, #C9A227, #F6E08F, #8C6A12); }
.pd.r2 { --ring: conic-gradient(from 210deg, #7E848A, #E9ECEF, #A9B0B6, #F4F6F8, #7E848A); }
.pd.r3 { --ring: conic-gradient(from 210deg, #7A4A26, #E3A673, #B87333, #F0C39A, #7A4A26); }
.pd .rk { font-size: 11px; font-weight: 900; height: 20px; min-width: 20px; padding: 0 6px; border-radius: 999px; display: inline-grid; place-items: center; color: #111111; background: var(--ring); }
.pd .nm { font-size: 13px; font-weight: 800; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd.r1 .nm { font-size: 15px; }
.pd .am { font-size: 12px; color: var(--faint); font-weight: 700; }
.pd .stand { width: 100%; border-radius: min(var(--radius), 10px) min(var(--radius), 10px) 0 0; background: var(--soft); height: 26px; }
.pd.r1 .stand { height: 44px; background: var(--accent-soft); }
.pd.r3 .stand { height: 16px; }
.pd.empty .ring > * { opacity: .45; }
.sil { color: var(--faint); background: var(--soft) !important; padding: 0; }
.flow { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; max-height: 360px; overflow: auto; }
.flow li { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 4px; border-bottom: 1px solid var(--line); }
.flow li:last-child { border-bottom: 0; }
.flow .av34 { width: 34px; height: 34px; border-radius: 50%; overflow: hidden; display: grid; place-items: center; }
.flow .av34 > * { width: 34px !important; height: 34px !important; border-radius: 50%; object-fit: cover; }
.flow .who { font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.flow .who span { font-weight: 500; color: var(--faint); margin-left: 6px; font-size: 12px; }
.flow .msg { font-size: 13px; color: var(--text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.flow .amt { font-size: 13px; font-weight: 800; color: var(--accent-ink); }
@media (max-width: 760px) { .sup15 { grid-template-columns: 1fr; } }

/* 빈 상태 일러스트 8종 (public/img/empty/ · 딥그린 라인, 다크·테마에서는 --ill-c 색) — 하트 그림 자리에 마스크로 */
.ill15 { background: var(--accent-soft); }
.ill15 svg { display: none; }
.ill15::before { content: ''; width: 44px; height: 44px; background: var(--ill-c); -webkit-mask: var(--ill) center / contain no-repeat; mask: var(--ill) center / contain no-repeat; }
.e-post { --ill: url("/img/empty/post.svg"); }
.e-support { --ill: url("/img/empty/support.svg"); }
.e-notif { --ill: url("/img/empty/notif.svg"); }
.e-message { --ill: url("/img/empty/message.svg"); }
.e-search { --ill: url("/img/empty/search.svg"); }
.e-wish { --ill: url("/img/empty/wish.svg"); }
.e-error { --ill: url("/img/empty/error.svg"); }
.e-loading { --ill: url("/img/empty/loading.svg"); }

/* 스튜디오 → 테마: 미리보기 카드 6개 + 바로 바뀌는 페이지 미리보기 */
.pt-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 18px; align-items: start; }
.pt-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.pt-card { position: relative; border: 0; padding: 0; cursor: pointer; text-align: left; background: var(--bg); color: var(--text); border-radius: 16px; overflow: hidden; box-shadow: 0 0 0 1px var(--line); transition: transform .15s, box-shadow .15s; }
.pt-card:hover { transform: translateY(-2px); }
.pt-card.on { box-shadow: 0 0 0 3px var(--ring-on, #0F5132), 0 10px 24px rgba(0, 0, 0, .12); }
.pt-card .pc-cv { height: 54px; position: relative; background: linear-gradient(120deg, var(--accent-soft), var(--accent)); }
.pt-card .pc-cv::after { content: ''; position: absolute; inset: 0; background: var(--pt-cover); }
.pt-card .pc-b { padding: 0 12px 12px; position: relative; }
.pt-card .pc-av { width: 34px; height: 34px; border-radius: 50%; margin-top: -17px; background: var(--card); border: 3px solid var(--bg); position: relative; }
.pt-card .pc-av::after { content: ''; position: absolute; inset: 5px; border-radius: 50%; background: var(--accent); }
.pt-card .pc-n { margin-top: 6px; font-size: 14px; font-family: var(--pt-hf); font-weight: var(--pt-hw); letter-spacing: var(--pt-ht); }
.pt-card .pc-l { display: flex; gap: 5px; margin-top: 8px; }
.pt-card .pc-l i { height: 22px; flex: 1; border-radius: var(--radius); background: var(--card); box-shadow: var(--shadow); }
.pt-card .pc-l i:first-child { background: var(--accent); }
.pt-card .pc-ok { position: absolute; right: 8px; top: 8px; width: 22px; height: 22px; border-radius: 50%; background: #FFFFFF; color: #0F5132; font-size: 13px; font-weight: 900; display: none; place-items: center; z-index: 1; }
.pt-card.on .pc-ok { display: grid; }
:root[data-theme="dark"] .pt-card.on { --ring-on: #C9A227; }
.pt-mini { border-radius: 22px; overflow: hidden; background: var(--bg); color: var(--text); box-shadow: 0 0 0 8px #111111, 0 20px 50px rgba(0, 0, 0, .25); position: sticky; top: 80px; }
.pt-mini .cover { height: 132px; margin: 0; border-radius: 0; }
.pt-mini .pm-b { padding: 0 16px 18px; }
.pt-mini .pm-av { width: 72px; height: 72px; border-radius: 50%; overflow: hidden; margin-top: -36px; position: relative; z-index: 2; border: 3px solid var(--bg); background: var(--card); }
.pt-mini .pm-av > * { width: 100% !important; height: 100% !important; object-fit: cover; }
.pt-mini .pt-name { font-size: 22px; margin-top: 8px; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 0; }
.pt-mini .live-b { font-size: 11px; margin-left: 8px; }
.pt-mini .pm-tag { font-size: 13px; color: var(--sub); margin-top: 4px; }
.pt-mini .lk15 { margin-top: 10px; gap: 6px; }
.pt-mini .lk15 a { height: 30px; font-size: 12px; padding: 0 10px 0 8px; }
.pt-mini .pin-row { display: flex; overflow: hidden; gap: 8px; margin: 0; padding: 0; }
.pt-mini .pin { flex: 0 0 62%; }
.pt-mini .pin-t { font-size: 13px; }
.pt-mini .pins15 { margin-top: 14px; }
.pt-mini .pins15 .sec-h { font-size: 15px; margin-bottom: 8px; }
.pt-mini .pm-btn { margin-top: 12px; display: flex; gap: 6px; }
.pt-mini .pm-btn .btn { flex: 1; height: 38px; }
.pt-opts { margin-top: 16px; display: grid; gap: 10px; }
@media (max-width: 900px) { .pt-wrap { grid-template-columns: 1fr; } .pt-mini { position: static; max-width: 380px; margin: 0 auto; } }
@media (max-width: 560px) { .pt-cards { grid-template-columns: repeat(2, 1fr); } }

/* 달성한 위시 카드 바탕 · 테마별 (style.css --ok-tint 덮기) */
[data-ptheme="white"] { --ok-tint: #F6FAF7; }
[data-ptheme="gold"] { --ok-tint: #121A15; }
[data-ptheme="green"] { --ok-tint: #0C4A2B; }
[data-ptheme="pastel"] { --ok-tint: #F3FAF5; }
[data-ptheme="neon"] { --ok-tint: #0C1A12; }
[data-ptheme="paper"] { --ok-tint: #EDEEDF; }
/* 후원자 벽 카드 높이 맞추고 단상은 가운데 */
.sup15 > .card { display: flex; flex-direction: column; }
.sup15 .podium { margin: auto 0; padding-top: 14px; }
.pd .ring > .crown { width: 26px !important; height: 18px !important; border: 0; border-radius: 0; background: none; }
/* 14차 빠른 후원 바(.qbar, PC 오른쪽 고정)와 겹치지 않게: 넓은 화면에서 가운데 칸 폭만 줄임 (바는 그대로) */
@media (min-width: 1200px) { body:has(.qbar) main.creator-page { max-width: min(1120px, calc(100vw - 552px)); } }
/* 스튜디오 칸(.field > span) 안에 넣은 주소 칩은 칩 모양 그대로 */
.field > .addr15 { display: flex; width: fit-content; max-width: 100%; margin: 0; font-weight: 400; color: inherit; }
