/* 대운관 블랙 스킨 · 홈 (달빛 관청 컨셉). app.css 다음에 로드 */
body.dw{background:#0A0A0B}
.dw .hd{background:rgba(10,10,11,.92)}
.dw .coin{font:700 12px var(--body);color:var(--gold);border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:6px 10px;background:#141416}
.dw .hd .ic{align-items:center}
.dw .hd .ic svg{width:22px;height:22px;display:block}
.dtabs{display:flex;gap:18px;padding:6px 18px 0;border-bottom:1px solid rgba(255,255,255,.07);overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.dtabs::-webkit-scrollbar{display:none}
.dtabs a{font-size:15px;font-weight:700;color:var(--tx3);padding-bottom:11px;flex:none}
.dtabs a.on{color:var(--tx);box-shadow:inset 0 -2.5px 0 var(--red)}
/* 캐러셀 */
.car{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:16px 50px 4px;scrollbar-width:none}
.car::-webkit-scrollbar{display:none}
.cp{position:relative;flex:none;width:calc(100% - 0px);max-width:340px;aspect-ratio:3/4.1;border-radius:18px;overflow:hidden;scroll-snap-align:center;background:#16161a}
.cp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.cp .ov{position:absolute;inset:auto 0 0 0;padding:80px 16px 16px;background:linear-gradient(180deg,transparent,rgba(5,5,10,.94));color:#fff}
.cp .k{font:700 11.5px var(--body);color:#FFB3C3;letter-spacing:.04em}
.cp b{display:block;font:400 27px/1.25 var(--serif);margin:5px 0 4px;letter-spacing:-.03em}
.cp span{font-size:12.5px;color:#ddd}
.rib{position:absolute;top:0;right:14px;z-index:2;background:var(--red);color:#fff;font:800 10px/1 var(--body);text-align:center;padding:7px 7px 10px;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)}
.rib b{display:block;font:800 16px/1 var(--body);margin:2px 0 0;color:#fff}
.cdots{display:flex;justify-content:center;gap:6px;margin:10px 0 2px}
.cdots i{width:6px;height:6px;border-radius:99px;background:#333;transition:all .3s}
.cdots i.on{width:18px;background:var(--gold)}
/* 무료 배너 */
.free{margin:14px 16px 0;padding:14px 16px;border-radius:16px;background:linear-gradient(90deg,rgba(200,40,60,.18),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:12px}
.free i{font-style:normal;font-size:26px}.free b{display:block;font-size:14.5px}.free span{font-size:12px;color:var(--tx2)}
.free em{margin-left:auto;font-style:normal;font:800 12px var(--body);color:#fff;background:var(--red);border-radius:99px;padding:6px 11px;flex:none}
/* 섹션 */
.dsec{padding:30px 16px 0}
.dsec .s{font:700 12px var(--body);color:var(--tx3);letter-spacing:.04em}
.dsec h3{font:800 20px var(--body);margin-top:3px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.dsec h3 small{font:600 12.5px var(--body);color:var(--tx3)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 6px;margin-top:14px;text-align:center}
.grid a{font-size:12.5px;font-weight:600;color:var(--tx2)}
.grid i{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto 6px;border-radius:18px;background:#16161a;border:1px solid rgba(255,255,255,.07);font-style:normal;font-size:24px}
.best{margin-top:12px;display:flex;flex-direction:column;gap:10px}
.bi{display:flex;gap:12px;align-items:center;padding:10px 12px 10px 10px;border-radius:16px;background:#16161a;border:1px solid rgba(255,255,255,.07)}
.bi .n{font:800 18px var(--body);color:var(--red);width:18px;text-align:center;flex:none}
.bi img{width:56px;height:72px;border-radius:10px;object-fit:cover;object-position:50% 15%;flex:none}
.bi div{min-width:0}.bi b{display:block;font-size:15px}.bi span{font-size:12px;color:var(--tx2)}
.bi .pr{margin-left:auto;font:800 13px var(--body);color:var(--gold);white-space:nowrap;padding-left:6px}
.prow{display:flex;gap:10px;margin:14px -16px 0;padding:0 16px;overflow-x:auto;scrollbar-width:none}
.prow::-webkit-scrollbar{display:none}
.pc{flex:none;width:158px;cursor:pointer}
.pc .im{position:relative;width:158px;height:212px;border-radius:14px;overflow:hidden;background:#16161a}
.pc .im img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.pc.soon .im img{filter:saturate(.75) brightness(.8)}
.pc .ov{position:absolute;inset:auto 0 0 0;padding:44px 11px 11px;background:linear-gradient(180deg,transparent,rgba(5,5,10,.94));color:#fff}
.pc .ov b{display:block;font:800 15px/1.3 var(--body)}.pc .ov span{font-size:11px;color:#ccc}
.badge{position:absolute;top:9px;left:9px;font:800 10px var(--body);color:#fff;background:#E2483D;border-radius:99px;padding:3px 8px;z-index:2}
.badge.s{background:rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.25);color:#ddd}
.consult{margin-top:12px;padding:14px;border-radius:18px;background:#16161a;border:1px solid rgba(255,255,255,.07);display:flex;gap:12px;align-items:center}
.consult .av{width:54px;height:54px;border-radius:50%;background-position:50% 12%;background-size:cover;position:relative;flex:none;box-shadow:0 0 0 2px #C9A25E}
.consult .av em{position:absolute;top:-3px;right:-3px;width:18px;height:18px;border-radius:50%;background:var(--red);color:#fff;font:800 10.5px/18px var(--body);text-align:center;font-style:normal}
.consult small{font:700 11.5px var(--body);color:var(--tx3)}
.consult b{display:block;font-size:14.5px;margin:2px 0}
.consult p{font-size:13px;color:var(--tx2)}
.how{margin-top:12px;display:grid;gap:8px}
.how div{display:flex;gap:12px;align-items:center;padding:13px 14px;border-radius:14px;background:#16161a;border:1px solid rgba(255,255,255,.07)}
.how b{font:400 20px var(--serif);color:var(--gold);flex:none}
.how span{font-size:13px;color:var(--tx2);line-height:1.55}
.dw .foot{padding:34px 18px 130px}
