/* ══ 단품 (s14) – 2026-10-04 ══
   간략하고 깔끔하게. 새 색은 쓰지 않는다(01-token 그대로). 글자 크기도 여덟 단계 안에서만. */
#s14 .dpdoor{font-size:var(--fs-2xl);line-height:1.4;margin:1.2rem 0 .6rem;color:var(--ink)}
#s14 h3{font-size:var(--fs-xl);line-height:1.45;margin:.4rem 0 .8rem}

/* 몸 체크 */
.dpchks{display:grid;gap:.5rem;margin:1rem 0 .4rem}
.dpchk{display:flex;gap:.7rem;align-items:flex-start;padding:.75rem .9rem;border:1.5px solid var(--rule-2);
  border-radius:.7rem;background:var(--surface);cursor:pointer;font-size:var(--fs-md);line-height:1.6}
.dpchk input{margin:.3rem 0 0;width:1.1rem;height:1.1rem;accent-color:var(--btn);flex:none}
.dpchk.on{border-color:var(--accent);background:var(--accent-soft)}

/* 맛보기 */
.dpp p{margin:.7rem 0;line-height:1.85}
.dpsum{margin:1.2rem 0;padding:1rem 1.1rem;border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 .6rem .6rem 0}
.dpsum .t{margin:0 0 .3rem;font-size:var(--fs-sm);color:var(--accent-ink);font-weight:700;letter-spacing:.04em}
.dpsum p{margin:.4rem 0;line-height:1.85}
.dphook .more{font-size:var(--fs-sm);color:var(--muted);margin:.6rem 0 0}
.dplock{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.35rem}
.dplock li{display:flex;gap:.6rem;align-items:center;font-size:var(--fs-md);color:var(--muted)}
.dplock li::after{content:"🔒";font-size:var(--fs-xs);margin-left:auto;opacity:.7}
.dplock .n{width:1.5rem;height:1.5rem;border-radius:50%;border:1px solid var(--rule-2);display:inline-flex;
  align-items:center;justify-content:center;font-size:var(--fs-xs)}
.dpbuy{margin:1.4rem 0 .4rem;padding:1.1rem;border:1px solid var(--rule);border-radius:.8rem;background:var(--surface);text-align:center}
.dpbuy .price{font-size:var(--fs-2xl);font-weight:700;margin:0 0 .5rem;color:var(--ink)}
.dpbuy .btn{width:100%;max-width:22rem}
.dpbuy .back{display:block;margin:.9rem auto 0}

/* 풀이 일곱 장 */
.dpch{margin:2.2rem 0 0;padding-top:1.2rem;border-top:1px solid var(--rule)}
.dpch:first-child{border-top:none;margin-top:.6rem}
.dpch-n{margin:0;font-family:"IBM Plex Mono",monospace;font-size:var(--fs-xs);color:var(--accent-ink);letter-spacing:.16em}
.dplead .t{font-weight:700;font-size:var(--fs-lg);margin:.6rem 0 .2rem;line-height:1.5}
.dplead p{line-height:1.85}
.dpnote{margin:.6rem 0}
.dppq{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.dpitem{margin:1rem 0;padding:.2rem 0 .2rem .9rem;border-left:2px solid var(--rule-2)}
.dpitem .q{margin:0;font-weight:700;color:var(--ink)}
.dpitem p{margin:.35rem 0;line-height:1.8}
.dpitem .tail{color:var(--accent-ink)}
.dpcl{margin:1rem 0;padding:.9rem 1rem;background:var(--surface-2);border-radius:.6rem}
.dpcl p{margin:.15rem 0}
.dpcl .src{font-size:var(--fs-sm);color:var(--muted)}
.dpcl .han{font-size:var(--fs-lg);letter-spacing:.08em;color:var(--ink)}
.dpcl .ko{font-size:var(--fs-sm);color:var(--ink-2)}
.dpfact .dpoh{display:flex;gap:.4rem;margin:.6rem 0}
.dpfact .oh{flex:1;text-align:center;padding:.45rem 0;border-radius:.5rem;border:1px solid var(--rule-2);font-size:var(--fs-sm)}
.dpfact .oh b{display:block;font-size:var(--fs-md)}
.dpfact .oh.mok b{color:var(--oh-mok)} .dpfact .oh.hwa b{color:var(--oh-hwa)} .dpfact .oh.to b{color:var(--oh-to)}
.dpfact .oh.geum b{color:var(--oh-geum)} .dpfact .oh.su b{color:var(--oh-su)}
.dpfact .oh.none{opacity:.55;border-style:dashed}
.dpmon{margin:1.1rem 0;padding:1rem 1.1rem;border:1px solid var(--rule);border-radius:.7rem}
.dpmon .t{margin:0 0 .3rem;font-weight:700;line-height:1.55}
.dpmon p{margin:.4rem 0;line-height:1.8}
.dpmon .todo{margin:.7rem 0 0;padding:.6rem .8rem;background:var(--accent-soft);border-radius:.5rem}
.dpplan .t{font-weight:700;font-size:var(--fs-lg);margin:.6rem 0}
.dpplan .st{margin:1rem 0 .4rem;font-size:var(--fs-sm);color:var(--muted)}
.dpplan .w1{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}
.dpplan .w1 li{display:flex;gap:.7rem;line-height:1.6}
.dpplan .w1 .l{flex:none;width:4.6rem;color:var(--accent-ink);font-size:var(--fs-sm);padding-top:.1rem}
.dpplan .wk{width:100%;border-collapse:collapse;font-size:var(--fs-md)}
.dpplan .wk th{width:2.8rem;text-align:left;color:var(--accent-ink);font-weight:500;padding:.45rem 0;vertical-align:top}
.dpplan .wk td{padding:.45rem 0;border-bottom:1px solid var(--rule);line-height:1.6;vertical-align:top}
.dpplan .wk td.w{width:4rem;text-align:right;font-size:var(--fs-xs);color:var(--muted)}
.dpend{margin:1.6rem 0 0;padding:1.1rem 1.2rem;border-radius:.7rem;background:var(--surface-2)}
.dpend p{font-size:var(--fs-lg);line-height:1.8;margin:0}
.dpcp{margin:1rem 0 0;text-align:left;font-size:var(--fs-sm);color:var(--muted)}
.dpcp summary{cursor:pointer;text-align:center}
.dpcp .row{display:flex;gap:.5rem;margin:.6rem 0 0}
.dpcp input{flex:1;min-width:0;padding:.6rem .7rem;border:1.5px solid var(--rule-2);border-radius:.5rem;font:inherit;
  font-size:var(--fs-md);letter-spacing:.1em;text-transform:uppercase;background:var(--surface);color:var(--ink)}
.dpcp .btn{width:auto}

/* 10-05 단품 보강 – 체질 음식 · 식단 · 무너지는 날 · 12주 체크표 · 진료 메모 */
.dpfood,.dpmenu,.dpmemo{border:1px solid var(--rule);border-radius:.7rem;padding:.8rem 1rem;margin:1rem 0;background:var(--surface)}
.dpfood .t,.dpmenu .t,.dpmemo .t{font-weight:700;margin:.2rem 0 .5rem}
.dpfood .t.less{margin-top:1rem;color:var(--muted)}
.dpfood table,.dpmenu table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.dpfood th,.dpmenu th{width:6.5rem;text-align:left;vertical-align:top;color:var(--accent-ink);font-weight:500;padding:.35rem .5rem .35rem 0;border-top:1px solid var(--rule)}
.dpfood td,.dpmenu td{padding:.35rem 0;line-height:1.7;border-top:1px solid var(--rule)}
.dpfood .lessv{font-size:var(--fs-sm);line-height:1.7;margin:0}
.dpfood .how{margin-top:.8rem;border-left:2px solid var(--accent-ink);padding-left:.7rem}
.dpsos{border-left:3px solid var(--accent-ink);padding:.2rem 0 .2rem .9rem;margin:1.1rem 0}
.dpsos .t{font-weight:700;margin:.2rem 0 .4rem;display:flex;align-items:center;gap:.5rem}
.dpsos .n{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--accent-ink);color:#fff;font-size:var(--fs-xs)}
.dpchk{width:100%;border-collapse:collapse;font-size:var(--fs-xs);margin:1rem 0}
.dpchk th,.dpchk td{border:1px solid var(--rule-2);padding:.3rem .25rem;text-align:center}
.dpchk .tx{text-align:left;line-height:1.5}
.dpchk .d{width:1.9rem}
.dpchk td.d i{display:inline-block;width:.9rem;height:.9rem;border:1px solid var(--rule-2);border-radius:.2rem}
.dpmemo .pk{font-size:var(--fs-sm);line-height:1.7}
.dpmemo .ln{margin:.9rem 0 0;font-size:var(--fs-sm)}
.dpmemo .ln i{display:block;height:1.7rem;border-bottom:1px solid var(--rule-2)}

/* ══ 2026-10-16 단품 넷 ══ */
.dptgy{margin:.9rem 0 0}
.dptgy .lnk{background:none;border:none;padding:0;color:var(--accent-ink);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.dptouch{margin:.3rem 0 0;padding-left:1.1rem;line-height:1.7}

/* 속궁합 상대 결 칩 */
.dpmchips{display:grid;gap:.5rem;margin:.6rem 0 1rem}
.dpmchip{display:flex;flex-direction:column;gap:.15rem;text-align:left;padding:.75rem .9rem;border:1.5px solid var(--rule-2);border-radius:12px;background:transparent;color:var(--ink);font:inherit;cursor:pointer}
.dpmchip b{font-size:var(--fs-md)}
.dpmchip span{font-size:var(--fs-sm);color:var(--muted);line-height:1.5}

.dpleap{display:block;margin:.4rem 0 .2rem;color:var(--ink-2);font-size:var(--fs-md)}

/* 1024g – 이분 사주 전체 풀이 맨 위 원국표(네 기둥 상자 · 본인 풀이 첫 화면과 같은 .pil) */
.farpil{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin:.6rem 0 .4rem}
.farpil .pil{padding:.6rem .3rem;text-align:center}
.farpil .pil .gz{font-size:var(--fs-lg)}
/* 1024g – 이분 사주 전체 풀이는 어두운 사주 화면 안에 선다. 종이(fr-paper)가 제 글자색을 가지도록 한다. */
#farfull .fr-paper{--ink:#1A211F;--ink-2:#3E4A47;--muted:#5C6965;--faint:#636E68;--accent-ink:#0A6055;--accent-soft:#E3F0ED;--accent-line:#9FCEC6;--rule:#E3E7E5;--rule-2:#D0D8D5;--surface:#FFFFFF;--surface-2:#F3F5F4;color:var(--ink);background:#FFFFFF}
/* 1024g – 풀이 안 안내 상자: 원국표 아래, 서버 note_title · note 를 그대로 */
#farfull .farbox{margin:.8rem 0 .4rem;padding:.8rem 1rem;border:1px solid var(--accent-line);border-radius:10px;background:var(--accent-soft)}
#farfull .farbox-h{margin:0 0 .3rem;font-weight:700;color:var(--accent-ink)}
#farfull .farbox p{margin:.3rem 0;line-height:1.75}

/* 1024g 4 – 결제 전 안내 한 줄 상자(작은 글씨, 단추 바로 위) */
.farnote{margin:0 0 .6rem;padding:.5rem .7rem;border:1px solid var(--rule);border-radius:8px;font-size:var(--fs-sm);line-height:1.7}
