@charset "utf-8";
/* 와우씨씨엠 renew 영상 스킨
 * 흰 사이트 안에서 '무대'(추천·플레이어)만 어둡게, 목록은 흰 바탕. 주황은 포인트로만.
 */
.rv-board,.rv-watch,.rv-admin,.rv-toast{
  --rv-brand:#ef5a22; --rv-brand-dk:#d4481a; --rv-soft:#fff1e9;
  --rv-ink:#1f2328; --rv-sub:#555b63; --rv-mute:#9aa0a7; --rv-line:#e5e7eb; --rv-line2:#f0f1f3; --rv-band:#f6f7f8;
  --rv-dark:#101216; --rv-dark2:#1a1d23; --rv-dtext:#e9eaec; --rv-dmute:#9aa0a8;
  font-family:"Pretendard Variable",Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  letter-spacing:-.01em;
}
.rv-board,.rv-watch,.rv-admin{color:var(--rv-ink);font-size:15px;line-height:1.55;text-align:left;max-width:100%;margin:0 auto 40px;box-sizing:border-box}
.rv-board *,.rv-watch *,.rv-admin *{box-sizing:border-box}
.rv-board a,.rv-watch a,.rv-admin a{color:inherit;text-decoration:none}
.rv-board img,.rv-watch img,.rv-admin img{display:block;max-width:100%}
.rv-board [hidden],.rv-watch [hidden],.rv-admin [hidden]{display:none!important}
.rv-board button,.rv-watch button{font:inherit;cursor:pointer}

/* 버튼 */
.rv-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 16px;border:1px solid var(--rv-line);background:#fff;color:var(--rv-ink)!important;font:inherit;font-size:14px;font-weight:700;cursor:pointer;border-radius:0;white-space:nowrap}
.rv-btn:hover{border-color:var(--rv-brand);color:var(--rv-brand)!important}
.rv-btn-strong{background:var(--rv-brand);border-color:var(--rv-brand);color:#fff!important}
.rv-btn-strong:hover{background:var(--rv-brand-dk);border-color:var(--rv-brand-dk);color:#fff!important}
.rv-btn-danger{color:#d93a2b!important}

/* 위 메뉴 + 검색 */
.rv-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid var(--rv-line)}
.rv-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.rv-tabs::-webkit-scrollbar{display:none}
.rv-tabs a{flex:none;padding:12px 12px 11px;border-bottom:3px solid transparent;font-size:15.5px;font-weight:700;color:var(--rv-sub)}
.rv-tabs a:hover{color:var(--rv-ink)}
.rv-tabs a.on{color:var(--rv-ink);border-bottom-color:var(--rv-brand)}
.rv-tabs .rv-tab-ext{color:var(--rv-mute);font-weight:600}
.rv-tabs .rv-tab-ext::after{content:" ↗";font-size:12px}
.rv-search{display:flex;align-items:center;margin:6px 0;border:1px solid var(--rv-line);background:#fff}
.rv-search input{width:220px;height:36px;padding:0 12px;border:0;background:none;font:inherit;font-size:14px;outline:0}
.rv-search button{width:40px;height:36px;border:0;background:none;font-size:20px;color:var(--rv-sub)}
.rv-search:focus-within{border-color:var(--rv-brand)}

.rv-adminbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 18px;padding:8px 10px;background:var(--rv-band);font-size:13px}
.rv-adminbar > span{font-weight:800;color:var(--rv-brand);margin-right:4px}
.rv-adminbar a,.rv-adminbar button{display:inline-flex;align-items:center;height:30px;padding:0 10px;border:1px solid var(--rv-line);background:#fff;font-size:13px;font-weight:600;color:var(--rv-ink)}
.rv-adminbar a:hover,.rv-adminbar button:hover{border-color:var(--rv-brand);color:var(--rv-brand)}
.rv-adminbar form{margin:0}

/* ===== 어두운 무대 (화면 폭 끝까지 배경) ===== */
.rv-stage{position:relative;background:var(--rv-dark);color:var(--rv-dtext);box-shadow:0 0 0 100vmax var(--rv-dark);clip-path:inset(0 -100vmax);padding:28px 0;margin-bottom:34px}
.rv-stage a{color:var(--rv-dtext)}

/* 홈 추천 */
.rv-stage:not(.rv-stage-watch){display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:22px}
.rv-hero{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}
.rv-hero img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.rv-hero:hover img{transform:scale(1.03)}
.rv-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.25) 45%,rgba(0,0,0,0) 70%)}
.rv-hero-tx{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:26px 28px}
.rv-hero-tx em{display:inline-block;padding:3px 9px;background:var(--rv-brand);color:#fff;font-size:12px;font-style:normal;font-weight:800;letter-spacing:.02em}
.rv-hero-tx strong{display:block;margin-top:10px;font-size:clamp(20px,2.4vw,30px);font-weight:800;line-height:1.3;letter-spacing:-.03em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rv-hero-tx > span{display:block;margin-top:6px;font-size:14px;color:#d5d7db}
.rv-hero-play{display:inline-flex;align-items:center;gap:6px;margin-top:16px;height:42px;padding:0 20px;background:#fff;color:var(--rv-ink);font-size:15px;font-weight:800;transition:background .2s,color .2s}
.rv-hero:hover .rv-hero-play{background:var(--rv-brand);color:#fff}
.rv-hero-side{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.rv-hero-side a,.rv-upnext a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:start}
.rv-hero-side a:hover strong,.rv-upnext a:hover strong{color:#ffc3a6}
.rv-st{min-width:0}
.rv-st strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14.5px;font-weight:700;line-height:1.4;color:var(--rv-dtext)}
.rv-st span{display:block;margin-top:3px;font-size:12.5px;color:var(--rv-dmute)}

/* 썸네일 공통 */
.rv-th{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#20242b}
.rv-th img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.rv-dur{position:absolute;right:6px;bottom:6px;padding:1px 6px;background:rgba(0,0,0,.78);color:#fff;font-size:12px;font-style:normal;font-weight:700;font-variant-numeric:tabular-nums}
.rv-play{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(239,90,34,.92);opacity:0;transform:scale(.8);transition:opacity .2s,transform .2s}
.rv-play::after{content:"";position:absolute;left:18px;top:14px;border-style:solid;border-width:9px 0 9px 14px;border-color:transparent transparent transparent #fff}
a:hover > .rv-th img,a:focus-visible > .rv-th img{transform:scale(1.05)}
a:hover > .rv-th .rv-play,a:focus-visible > .rv-th .rv-play{opacity:1;transform:scale(1)}
.rv-now{position:absolute;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.6);color:#fff;font-size:12.5px;font-style:normal;font-weight:800;letter-spacing:.04em}

/* 상황별 카드 */
.rv-moods{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 34px}
.rv-mood{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:92px;padding:14px 16px;color:#fff!important;overflow:hidden;transition:transform .2s,box-shadow .2s}
.rv-mood i{font-style:normal;font-size:22px;line-height:1;opacity:.9}
.rv-mood b{font-size:15px;font-weight:800;line-height:1.3;word-break:keep-all}
.rv-mood:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(0,0,0,.15)}
.rv-mood.m-아침{background:linear-gradient(135deg,#f7a21b,#ef5a22)}
.rv-mood.m-묵상{background:linear-gradient(135deg,#3d5a80,#1f2f4a)}
.rv-mood.m-위로{background:linear-gradient(135deg,#7f8fa6,#4b5a70)}
.rv-mood.m-감사{background:linear-gradient(135deg,#e2507a,#b0305a)}
.rv-mood.m-잠들기전{background:linear-gradient(135deg,#3b2f63,#17142b)}
.rv-mood.m-연속듣기{background:linear-gradient(135deg,#1f9d77,#11654c)}
.rv-moods-sm{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:22px}
.rv-moods-sm .rv-mood{min-height:64px;opacity:.55}
.rv-moods-sm .rv-mood.on,.rv-moods-sm .rv-mood:hover{opacity:1}
.rv-moods-sm .rv-mood.on{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--rv-ink)}

/* 가로 줄 */
.rv-shelf{margin:0 0 36px}
.rv-shd{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.rv-shd h3{margin:0;font-size:20px;font-weight:800;letter-spacing:-.03em}
.rv-more{font-size:13.5px;font-weight:600;color:var(--rv-mute)!important}
.rv-more:hover{color:var(--rv-brand)!important}
.rv-arrows{display:flex;gap:4px;margin-left:auto}
.rv-arrows button{width:32px;height:32px;border:1px solid var(--rv-line);background:#fff;font-size:18px;line-height:1;color:var(--rv-ink)}
.rv-arrows button:hover:not(:disabled){border-color:var(--rv-brand);color:var(--rv-brand)}
.rv-arrows button:disabled{opacity:.3;cursor:default}
.rv-row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3 * 16px) / 4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.rv-row::-webkit-scrollbar{display:none}
.rv-row > .rv-card{scroll-snap-align:start}

/* 카드 */
.rv-card{position:relative;display:block;min-width:0}
.rv-tt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:10px;font-size:15px;font-weight:700;line-height:1.4;color:var(--rv-ink)}
.rv-card:hover .rv-tt{color:var(--rv-brand)}
.rv-meta{display:block;margin-top:3px;font-size:13px;color:var(--rv-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rv-unlike{position:absolute;right:6px;top:6px;z-index:2;width:28px;height:28px;border:0;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;font-size:16px;line-height:1}
.rv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}
/* 관리자 여러 개 고르기 */
.rv-cardwrap{position:relative;min-width:0}
.rv-cardwrap.is-hidden .rv-th{opacity:.45}
.rv-pickbox{position:absolute;left:8px;top:8px;z-index:3;cursor:pointer}
.rv-pickbox input{position:absolute;opacity:0;width:1px;height:1px}
.rv-pickbox span{display:grid;place-items:center;width:26px;height:26px;border:2px solid #fff;border-radius:50%;background:rgba(0,0,0,.35);box-shadow:0 1px 4px rgba(0,0,0,.3);opacity:0;transition:opacity .15s}
.rv-cardwrap:hover .rv-pickbox span,.rv-bulk.is-picking .rv-pickbox span,.rv-pickbox input:focus-visible + span{opacity:1}
.rv-pickbox input:checked + span{background:var(--rv-brand);border-color:var(--rv-brand);opacity:1}
.rv-pickbox input:checked + span::after{content:"✓";color:#fff;font-size:14px;font-weight:800}
.rv-cardwrap.is-picked .rv-th{outline:3px solid var(--rv-brand);outline-offset:-3px}
.rv-badge-pick,.rv-badge-hid{position:absolute;right:6px;top:6px;z-index:2;padding:1px 7px;font-size:11.5px;font-style:normal;font-weight:800;color:#fff;background:var(--rv-brand)}
.rv-badge-hid{background:#555b63;top:28px}
.rv-bulkbar{position:fixed;left:50%;bottom:20px;z-index:60;transform:translateX(-50%);display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;max-width:calc(100% - 24px);padding:10px 12px;background:#1f2328;color:#fff;box-shadow:0 8px 28px rgba(0,0,0,.3);font-size:14px}
.rv-bulkbar b{margin:0 6px 0 4px;color:#ffc3a6}
.rv-bulkbar button{height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.3);background:none;color:#fff;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;border-radius:0}
.rv-bulkbar button:hover{border-color:#fff}
.rv-bulkbar button.is-danger{background:#d93a2b;border-color:#d93a2b}

/* 아티스트 */
.rv-artists{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;padding:2px 2px 6px}
.rv-artists::-webkit-scrollbar{display:none}
.rv-artists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:26px 16px;overflow:visible}
.rv-artist{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;width:118px;text-align:center}
.rv-artists-grid .rv-artist{width:auto}
.rv-ava{display:grid;place-items:center;width:96px;height:96px;border-radius:50%;overflow:hidden;background:var(--rv-band);color:var(--rv-sub);font-size:28px;font-weight:800;border:3px solid transparent;transition:border-color .2s}
.rv-ava img{width:100%;height:100%;object-fit:cover}
.rv-artist:hover .rv-ava{border-color:var(--rv-brand)}
.rv-artist b{font-size:14px;font-weight:700;line-height:1.3;word-break:keep-all}
.rv-artist small{font-size:12px;color:var(--rv-mute)}
.rv-orphans{margin-top:40px;padding:18px 20px;border:1px dashed var(--rv-line);background:var(--rv-band)}
.rv-orphans h4{margin:0 0 4px;font-size:16px;font-weight:800}
.rv-orphans h4 small{margin-left:6px;font-size:12.5px;font-weight:600;color:var(--rv-brand)}
.rv-orphans p{margin:0 0 16px;font-size:13.5px;color:var(--rv-sub)}
.rv-orphans .rv-ava{width:72px;height:72px;font-size:22px;opacity:.7}
.rv-artist-head{display:flex;align-items:center;gap:18px;margin:4px 0 24px;padding-bottom:20px;border-bottom:1px solid var(--rv-line)}
.rv-ava-lg{width:88px;height:88px}
.rv-artist-head h3{margin:0;font-size:24px;font-weight:800}
.rv-artist-head p{margin:4px 0 0;font-size:14px;color:var(--rv-mute)}
.rv-artist-head p a:hover{color:var(--rv-brand)}
.rv-artist-head .rv-btn{margin-left:auto}

/* 목록 머리 · 분류 · 쪽 */
.rv-listhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 16px}
.rv-listhead h3{margin:0;font-size:22px;font-weight:800;letter-spacing:-.03em}
.rv-listhead small{margin-left:6px;font-size:14px;font-weight:600;color:var(--rv-mute)}
.rv-chips{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}
.rv-chips a{padding:6px 14px;border:1px solid var(--rv-line);font-size:14px;font-weight:600;color:var(--rv-sub);border-radius:999px}
.rv-chips a:hover{border-color:var(--rv-ink);color:var(--rv-ink)}
.rv-chips a.on{background:var(--rv-ink);border-color:var(--rv-ink);color:#fff}
.rv-pager{display:flex;justify-content:center;gap:4px;margin:34px 0 0}
.rv-pager a,.rv-pager strong{display:grid;place-items:center;min-width:36px;height:36px;padding:0 8px;border:1px solid var(--rv-line);font-size:14px;font-weight:600;color:var(--rv-sub)}
.rv-pager strong{background:var(--rv-ink);border-color:var(--rv-ink);color:#fff}
.rv-pager a:hover{border-color:var(--rv-brand);color:var(--rv-brand)}
.rv-empty{padding:48px 0;text-align:center;color:var(--rv-sub)}
.rv-empty-big{padding:80px 0;font-size:16px}
.rv-empty a{color:var(--rv-brand)!important;font-weight:700}
.rv-note{margin:-6px 0 18px;font-size:13.5px;color:var(--rv-mute)}

/* ===== 영상 보기 ===== */
.rv-stage-watch{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;padding:24px 0 26px}
.rv-player{position:relative;aspect-ratio:16/9;background:#000;box-shadow:0 12px 40px rgba(0,0,0,.45)}
.rv-player iframe,.rv-player > div{position:absolute;inset:0;width:100%;height:100%;border:0}
.rv-wtitle h2{margin:18px 0 0;font-size:22px;font-weight:800;line-height:1.35;letter-spacing:-.03em;color:#fff}
.rv-wmeta{margin:6px 0 0;font-size:14px;color:var(--rv-dmute)}
.rv-wmeta a{font-weight:700;color:var(--rv-dtext)!important}
.rv-wmeta a:hover{color:#ffc3a6!important}
.rv-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:16px}
.rv-act{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:var(--rv-dtext)!important;font-size:13.5px;font-weight:700;border-radius:999px;transition:background .2s,border-color .2s}
.rv-act:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4)}
.rv-act i{font-style:normal}
.rv-act[aria-pressed="true"]{background:var(--rv-brand);border-color:var(--rv-brand)}
#rv-radio{border-color:rgba(239,90,34,.7)}
.rv-auto{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:13px;color:var(--rv-dmute);cursor:pointer}
.rv-auto input{accent-color:var(--rv-brand)}
.rv-upnext{min-width:0;display:flex;flex-direction:column}
.rv-upnext h3{margin:0 0 12px;font-size:15px;font-weight:800;color:#fff}
.rv-upnext ol{margin:0;padding:0 6px 0 0;list-style:none;display:flex;flex-direction:column;gap:10px;overflow-y:auto;max-height:520px;scrollbar-width:thin;scrollbar-color:#3a3f48 transparent}
.rv-upnext a{grid-template-columns:140px minmax(0,1fr);gap:10px}
.rv-upnext li.on .rv-st strong{color:#ffc3a6}
.rv-watch.is-theater .rv-stage-watch{grid-template-columns:minmax(0,1fr)}
.rv-watch.is-theater .rv-player{max-height:78vh;aspect-ratio:auto;height:min(78vh,calc((100vw - 40px) * .5625))}
.rv-watch.is-theater .rv-upnext ol{flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:none;padding-bottom:6px}
.rv-watch.is-theater .rv-upnext li{flex:none;width:220px}
.rv-watch.is-theater .rv-upnext a{grid-template-columns:1fr}

.rv-below{max-width:100%}
.rv-desc{margin:0 0 18px;padding:18px 20px;background:var(--rv-band)}
.rv-desc h3{margin:0 0 8px;font-size:15px;font-weight:800}
.rv-desc-tx{font-size:14.5px;line-height:1.75;color:var(--rv-sub);overflow-wrap:anywhere}
.rv-desc-tx a{color:var(--rv-brand)!important}
.rv-desc-tx.is-folded{max-height:200px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.rv-desc-more{margin-top:8px;padding:0;border:0;background:none;font-size:14px;font-weight:700;color:var(--rv-ink)}
.rv-desc-link{margin:0 0 18px}
.rv-desc-link a{font-weight:700;color:var(--rv-brand)!important}
.rv-tagline{margin:0 0 24px}
.rv-tagline a{display:inline-block;margin:0 6px 6px 0;padding:4px 10px;background:var(--rv-band);font-size:13px;font-weight:600;color:var(--rv-sub)!important}
.rv-tagline a:hover{background:var(--rv-soft);color:var(--rv-brand)!important}
.rv-foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:20px}

.rv-toast{position:fixed;left:50%;bottom:32px;z-index:200;transform:translate(-50%,20px);padding:12px 20px;background:#1f2328;color:#fff;font-size:14px;font-weight:600;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}
.rv-toast.on{opacity:1;transform:translate(-50%,0)}

/* ===== 채널 관리 · 등록 화면 ===== */
.rv-ahead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:18px;border-bottom:2px solid var(--rv-ink)}
.rv-ahead h2{margin:0;font-size:24px;font-weight:800;letter-spacing:-.03em}
.rv-ahead p{margin:4px 0 0;font-size:14px;color:var(--rv-mute)}
.rv-ahead p a{text-decoration:underline}
.rv-abtns{display:flex;gap:6px;flex-wrap:wrap}
.rv-abtns form,.rv-chbtns form{margin:0}
.rv-keystat{margin:0 0 16px;padding:10px 12px;background:var(--rv-band);font-size:13.5px;color:var(--rv-sub)}
.rv-keystat.is-on{background:#e9f7ef;color:#17663f}
.rv-warn{margin:0 0 16px;padding:10px 12px;background:#fdecea;color:#d93a2b;font-size:14px}
.rv-chlist{margin:0;padding:0;list-style:none}
.rv-chlist li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rv-line2)}
.rv-chlist li.is-off{opacity:.55}
.rv-chlist .rv-ava{width:64px;height:64px;font-size:22px}
.rv-chinfo strong{display:block;font-size:16px;font-weight:800}
.rv-chinfo strong a{display:inline;font-size:inherit;color:var(--rv-ink)}
.rv-chinfo strong a:hover{color:var(--rv-brand)}
.rv-chinfo strong em{font-style:normal;font-size:12px;padding:1px 6px;background:var(--rv-band);color:var(--rv-sub);vertical-align:2px}
.rv-chinfo a{display:block;font-size:13px;color:var(--rv-mute);overflow-wrap:anywhere}
.rv-chinfo span{display:block;font-size:13px;color:var(--rv-sub)}
.rv-chstat{margin-top:2px;color:var(--rv-mute)!important}
.rv-chstat b{color:var(--rv-ink)}
.rv-chbtns{display:flex;gap:6px}
.rv-chbtns .rv-btn{height:34px;font-size:13px}
.rv-guide{margin-top:28px;padding:16px 18px;background:var(--rv-band);font-size:13.5px;color:var(--rv-sub)}
.rv-guide h3{margin:0 0 6px;font-size:14px;font-weight:800;color:var(--rv-ink)}
.rv-guide ul{margin:0;padding-left:18px}
.rv-guide li{margin:4px 0}
.rv-guide code{display:inline-block;margin-top:4px;padding:4px 8px;background:#fff;border:1px solid var(--rv-line);font-size:12.5px;overflow-wrap:anywhere}
.rv-chdl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 18px;margin:0;font-size:14.5px}
.rv-chdl dt{color:var(--rv-mute);font-weight:600}
.rv-chdl dd{margin:0;overflow-wrap:anywhere}
.rv-write .rv-lab{display:block;margin:16px 0 6px;font-size:14px;font-weight:700}
.rv-write .rv-lab em{font-style:normal;font-size:12px;color:var(--rv-brand);margin-left:4px}
.rv-in{display:block;width:100%;height:42px;padding:0 12px;border:1px solid var(--rv-line);background:#fff;font:inherit;font-size:15px;color:var(--rv-ink);border-radius:0}
textarea.rv-in{height:auto;padding:10px 12px;resize:vertical}
.rv-in:focus{outline:2px solid var(--rv-brand);outline-offset:-1px;border-color:var(--rv-brand)}
.rv-hint{margin:6px 0 0;font-size:13px;color:var(--rv-mute)}
.rv-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rv-tagpick{display:flex;flex-wrap:wrap;gap:6px}
.rv-tagpick label{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--rv-line);font-size:14px;cursor:pointer;border-radius:999px}
.rv-tagpick label:has(input:checked){border-color:var(--rv-brand);background:var(--rv-soft);color:var(--rv-brand-dk);font-weight:700}
.rv-tagpick input{accent-color:var(--rv-brand)}
.rv-chk{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:600;cursor:pointer}
.rv-chk input{width:17px;height:17px;accent-color:var(--rv-brand)}
.rv-editthumb{max-width:320px;margin-bottom:6px}

/* 좁은 화면 */
@media (max-width:1024px){
  .rv-row{grid-auto-columns:calc((100% - 2 * 14px) / 3);gap:14px}
  .rv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rv-moods{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rv-stage-watch{grid-template-columns:minmax(0,1fr)}
  .rv-upnext ol{flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:none;padding-bottom:6px}
  .rv-upnext li{flex:none;width:220px}
  .rv-upnext a{grid-template-columns:1fr}
  .rv-theater-btn{display:none!important}
}
@media (max-width:760px){
  .rv-stage:not(.rv-stage-watch){grid-template-columns:minmax(0,1fr);padding:16px 0}
  .rv-hero-side{display:grid;grid-auto-flow:column;grid-auto-columns:72%;overflow-x:auto;scrollbar-width:none}
  .rv-hero-side a{grid-template-columns:1fr}
  .rv-hero-tx{padding:16px}
  .rv-hero-play{height:36px;font-size:14px}
  .rv-row{grid-auto-columns:72%;gap:12px}
  .rv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
  .rv-tt{font-size:14px}
  .rv-moods,.rv-moods-sm{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rv-mood{min-height:72px}
  .rv-arrows{display:none}
  .rv-shd h3{font-size:18px}
  .rv-search{width:100%;margin:0 0 10px}
  .rv-search input{flex:1;width:auto}
  .rv-stage-watch{padding:12px 0 18px}
  .rv-wtitle h2{font-size:19px}
  .rv-auto{margin-left:0}
  .rv-chlist li{grid-template-columns:48px minmax(0,1fr)}
  .rv-chlist .rv-ava{width:48px;height:48px}
  .rv-chbtns{grid-column:1 / -1}
  .rv-row2{grid-template-columns:1fr}
  .rv-artist-head{flex-wrap:wrap}
  .rv-artist-head .rv-btn{margin-left:0}
}
@media (prefers-reduced-motion:reduce){
  .rv-hero img,.rv-th img,.rv-play,.rv-mood,.rv-toast{transition:none}
}
